docs: make artificer defaults yaml-owned
Pipelines as Code CI / agentrun-nc01-v02-ci-887acc28ee050cc37a3ec2b742d41bf9b8ca5ed6 Success
Pipelines as Code CI / agentrun-nc01-v02-ci-887acc28ee050cc37a3ec2b742d41bf9b8ca5ed6 Success
This commit is contained in:
@@ -18,14 +18,14 @@
|
||||
apiVersion: agentrun.pikastech.local/v0.1
|
||||
kind: AipodSpec
|
||||
metadata:
|
||||
name: Artificer
|
||||
name: ExampleAgent
|
||||
spec:
|
||||
imageRef:
|
||||
kind: env-image-dockerfile
|
||||
repoUrl: git@github.com:pikasTech/agentrun.git
|
||||
commitId: 0000000000000000000000000000000000000000
|
||||
dockerfilePath: deploy/container/Containerfile
|
||||
backendProfile: sub2api
|
||||
backendProfile: example-profile
|
||||
executionPolicy:
|
||||
sandbox: workspace-write
|
||||
approval: never
|
||||
@@ -34,9 +34,9 @@ spec:
|
||||
secretScope:
|
||||
allowCredentialEcho: false
|
||||
providerCredentials:
|
||||
- profile: sub2api
|
||||
- profile: example-profile
|
||||
secretRef:
|
||||
name: agentrun-v01-provider-sub2api
|
||||
name: example-provider-secret
|
||||
keys: [auth.json, config.toml]
|
||||
resourceBundleRef:
|
||||
kind: gitbundle
|
||||
@@ -87,9 +87,9 @@ imageRef:
|
||||
|
||||
仓库内置 `config/aipods/artificer.yaml`,名称为 `Artificer`。它的长期目标是承接 UniDesk 分布式开发任务:
|
||||
|
||||
- 使用 `backendProfile=sub2api`,模型声明为 `gpt-5.5`,reasoning effort 为 `xhigh`。
|
||||
- `backendProfile`、`credential.profile`、`model` 与 `reasoningEffort` 的唯一可调事实来自 `config/aipods/artificer.yaml`;本 SPEC 不复制默认值。任务级显式 override 只允许改变 `model` 与 `reasoningEffort`,不得改变 provider、credential profile 或 SecretRef。
|
||||
- 通过 `imageRef` 引用 AgentRun `v0.1` env image Dockerfile source;当前默认值是 `repoUrl=git@github.com:pikasTech/agentrun.git`、`commitId=6601b4afb4870ecec62f14459e14202e5ccca7ec`、`dockerfilePath=deploy/container/Containerfile`。启动时必须复用已物化的 digest-pinned env image,不能把依赖安装留给任务运行时。
|
||||
- 通过 provider SecretRef `agentrun-v01-provider-sub2api` 获取 `auth.json` 与 `config.toml`。
|
||||
- provider SecretRef 只读取 `config/aipods/artificer.yaml` 的声明,用于获取 `auth.json` 与 `config.toml`;本 SPEC 不复制 SecretRef 名称。
|
||||
- 通过 `toolCredentials` 获取 GitHub Issue/PR 写入 token:`agentrun-v01-tool-github-pr` -> env `GH_TOKEN`。
|
||||
- 通过 `toolCredentials` 获取 UniDesk SSH 透传 token:`agentrun-v01-tool-unidesk-ssh` -> env `UNIDESK_SSH_CLIENT_TOKEN`。
|
||||
- 通过 `toolCredentials` 获取 GitHub SSH 凭据:`agentrun-v01-tool-github-ssh` -> volume `/home/agentrun/.ssh`。
|
||||
@@ -163,7 +163,7 @@ CLI:
|
||||
|
||||
## 测试规格
|
||||
|
||||
- A1:`config/aipods/artificer.yaml` 能被 manager list/show/render,render 结果包含 `imageRef.kind=env-image-dockerfile`、`repoUrl`、`commitId`、`dockerfilePath`、`backendProfile=sub2api`、`model=gpt-5.5`、`reasoningEffort=xhigh`、provider SecretRef、GitHub PR token env projection、UniDesk SSH env projection、GitHub SSH volume projection、无 `resourceBundleRef.gitMirror` 字段、AgentRun runner tools gitbundle 和 gitbundle requiredSkills。
|
||||
- A1:`config/aipods/artificer.yaml` 能被 manager list/show/render,render 结果中的 `backendProfile`、`credential.profile`、`model`、`reasoningEffort` 与 provider SecretRef 必须逐项等于 owning YAML;显式 model/reasoning override 只改变对应两项。结果还必须包含 `imageRef.kind=env-image-dockerfile`、`repoUrl`、`commitId`、`dockerfilePath`、GitHub PR token env projection、UniDesk SSH env projection、GitHub SSH volume projection、无 `resourceBundleRef.gitMirror` 字段、AgentRun runner tools gitbundle 和 gitbundle requiredSkills。
|
||||
- A2:`queue submit --aipod Artificer --dry-run` 输出标准 `queue-submit-plan`,且 `idempotencyKey`、prompt 与 metadata 被保留。
|
||||
- A2b:`queue submit --aipod Artificer --dry-run` 或 `render Artificer` 在没有显式 `sessionRef` 时必须输出默认 `sessionRef.sessionId` / `conversationId`;显式传入 `sessionRef` 时不得覆盖。
|
||||
- A3:Artificer 规格只声明 GitHub URL,不声明 `gitMirror`;runner 默认把 GitHub URL 改写到 mirror base URL,非 GitHub URL 不改写。请求体显式携带 `resourceBundleRef.gitMirror` 必须 schema-invalid,避免把基础设施策略下放到 AipodSpec。
|
||||
|
||||
Reference in New Issue
Block a user