@tea-agent/loop-agent 0.13.0-beta.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +157 -155
- package/CHANGELOG.md +301 -322
- package/README.md +335 -345
- package/bin/agent-worker.js +22 -22
- package/bin/loop-agent.js +21 -21
- package/dist/commands/cursor-prompt.js +6 -6
- package/dist/commands/init.js +597 -528
- package/dist/commands/loop-benchmark.js +11 -11
- package/dist/commands/pi-reuse-benchmark.js +16 -16
- package/dist/executors/shell-executor.js +200 -21
- package/dist/infrastructure/evaluation/candidate-store.js +5 -1
- package/dist/sidecars/cursor-prompt/executor.js +1 -1
- package/dist/task/runtime.js +27 -27
- package/dist/worker/observe/static/api.js +46 -46
- package/dist/worker/observe/static/app.js +150 -150
- package/dist/worker/observe/static/constants.js +148 -148
- package/dist/worker/observe/static/copy.js +67 -67
- package/dist/worker/observe/static/dag-helpers.js +172 -172
- package/dist/worker/observe/static/dag-layout.d.ts +31 -31
- package/dist/worker/observe/static/dag-layout.js +83 -83
- package/dist/worker/observe/static/dag-model.js +72 -72
- package/dist/worker/observe/static/dom.js +212 -53
- package/dist/worker/observe/static/format-pool.js +67 -67
- package/dist/worker/observe/static/format.js +292 -292
- package/dist/worker/observe/static/index.html +308 -308
- package/dist/worker/observe/static/kpi.js +94 -94
- package/dist/worker/observe/static/relations.js +133 -133
- package/dist/worker/observe/static/router.js +93 -93
- package/dist/worker/observe/static/run-processing.js +148 -148
- package/dist/worker/observe/static/shell-chrome.js +68 -68
- package/dist/worker/observe/static/state.js +267 -253
- package/dist/worker/observe/static/styles.css +1902 -1902
- package/dist/worker/observe/static/views/batch.js +227 -227
- package/dist/worker/observe/static/views/dag-graph.js +172 -172
- package/dist/worker/observe/static/views/dag-inspector.js +627 -607
- package/dist/worker/observe/static/views/dag.js +371 -362
- package/dist/worker/observe/static/views/dashboard.js +509 -252
- package/dist/worker/observe/static/views/failures.js +143 -143
- package/dist/worker/observe/static/views/feature.js +492 -492
- package/dist/worker/observe/static/views/pool.js +350 -350
- package/dist/worker/observe/static/views/run.js +453 -453
- package/dist/worker/observe/static/views/session-timeline.js +219 -205
- package/dist/worker/observe/static/views/shell.js +7 -7
- package/dist/worker/observe/static/views/task.js +314 -314
- package/dist/worker/observe/static/views/timeline.js +163 -163
- package/dist/workflows/dag/backend-test-case-manifest.js +503 -0
- package/dist/workflows/dag/backend-test-execution-contract.js +353 -0
- package/dist/workflows/dag/backend-test-result-contract.js +568 -0
- package/dist/workflows/dag/canvas-observer.js +275 -275
- package/dist/workflows/dag/decision-envelope.js +57 -2
- package/dist/workflows/dag/frontend-implementation-contract.js +240 -0
- package/dist/workflows/dag/frontend-project-capability.js +309 -0
- package/dist/workflows/dag/frontend-repair.js +341 -0
- package/dist/workflows/dag/frontend-risk.js +161 -0
- package/dist/workflows/dag/frontend-verification-trace.js +190 -0
- package/dist/workflows/dag/init-hybrid.js +1020 -125
- package/dist/workflows/dag/repair-artifact.js +43 -3
- package/dist/workflows/dag/skill-instructions.js +4 -2
- package/dist/workflows/dag/types.js +29 -8
- package/docs/README.md +105 -104
- package/docs/agent-dag-recovery-playbook.md +195 -195
- package/docs/agent-dag-runner.md +67 -67
- package/docs/architecture/README.md +26 -26
- package/docs/architecture/dag-execution.md +140 -140
- package/docs/architecture/evolution.md +54 -54
- package/docs/architecture/facts-and-state.md +71 -71
- package/docs/architecture/runtime-boundaries.md +191 -191
- package/docs/architecture/system-overview.md +93 -93
- package/docs/architecture/worker-and-feature.md +85 -85
- package/docs/cursor-prompt-sidecar.md +36 -36
- package/docs/decisions/README.md +18 -18
- package/docs/design/README.md +167 -167
- package/docs/development-principles.md +73 -73
- package/docs/exec-plans/README.md +6 -6
- package/docs/exec-plans/active/README.md +1 -4
- package/docs/exec-plans/completed/README.md +106 -84
- package/docs/feature-workflow.md +414 -389
- package/docs/harness-methodology-debugging.md +153 -153
- package/docs/harness-methodology-tdd.md +130 -130
- package/docs/harness-methodology-verification.md +27 -27
- package/docs/init-surface.manifest.json +307 -289
- package/docs/loop-agent-harness.md +142 -142
- package/docs/production-readiness.md +96 -96
- package/docs/progress/README.md +76 -60
- package/docs/reports/README.md +150 -108
- package/docs/skills/README.md +7 -7
- package/docs/skills/vetted-skill-registry.md +29 -29
- package/docs/templates/adr.md +60 -60
- package/docs/templates/agent-dag-authority-surface-audit.prompt.md +94 -94
- package/docs/templates/agent-dag-decision-envelope.schema.json +213 -213
- package/docs/templates/agent-dag-decision-gate-dogfood-report.md +117 -117
- package/docs/templates/agent-dag-decision-gate.prompt.md +246 -246
- package/docs/templates/agent-dag-process-supervisor.prompt.md +98 -98
- package/docs/templates/agent-dag-report.schema.json +473 -473
- package/docs/templates/agent-dag-review-verdict.prompt.md +68 -68
- package/docs/templates/agent-dag.base.json +190 -190
- package/docs/templates/agent-dag.final-verification.json +185 -185
- package/docs/templates/agent-dag.schema.json +411 -411
- package/docs/templates/agent-dag.supervised-implementation.json +620 -501
- package/docs/templates/backend-test-analysis.schema.json +44 -44
- package/docs/templates/backend-test-case-manifest.schema.json +190 -0
- package/docs/templates/backend-test-dag.classify.prompt.md +75 -0
- package/docs/templates/backend-test-dag.generate-pytest.prompt.md +204 -202
- package/docs/templates/backend-test-dag.json +559 -311
- package/docs/templates/backend-test-dag.retrospect.prompt.md +139 -125
- package/docs/templates/backend-test-dag.review-cases.prompt.md +83 -81
- package/docs/templates/backend-test-execution.schema.json +133 -0
- package/docs/templates/backend-test-result.schema.json +99 -0
- package/docs/templates/branch-merge-report.md +93 -0
- package/docs/templates/exec-plan.md +64 -64
- package/docs/templates/feature-spec.md +53 -53
- package/docs/templates/frontend-design-contract.md +42 -42
- package/docs/templates/frontend-eval/fixtures/failures/01-type-build-error.md +17 -0
- package/docs/templates/frontend-eval/fixtures/failures/02-unit-component-test-fail.md +16 -0
- package/docs/templates/frontend-eval/fixtures/failures/03-fixture-schema-drift.md +16 -0
- package/docs/templates/frontend-eval/fixtures/failures/04-missing-loading-empty-error-state.md +16 -0
- package/docs/templates/frontend-eval/fixtures/failures/05-forbidden-write-writeset-expansion.md +16 -0
- package/docs/templates/frontend-eval/fixtures/failures/06-unapproved-dependency-add.md +16 -0
- package/docs/templates/frontend-eval/fixtures/failures/07-mock-production-on.md +21 -0
- package/docs/templates/frontend-eval/fixtures/functional/01-simple-component-style.md +29 -0
- package/docs/templates/frontend-eval/fixtures/functional/02-form-validation.md +28 -0
- package/docs/templates/frontend-eval/fixtures/functional/03-list-detail-page.md +28 -0
- package/docs/templates/frontend-eval/fixtures/functional/04-api-mock.md +29 -0
- package/docs/templates/frontend-eval/fixtures/functional/05-permission-auth-gated-ui.md +27 -0
- package/docs/templates/frontend-eval/fixtures/functional/06-ssr-server-client-boundary.md +28 -0
- package/docs/templates/frontend-eval/fixtures/functional/07-shared-public-component-api.md +28 -0
- package/docs/templates/frontend-eval/fixtures/functional/08-pure-local-no-remote.md +27 -0
- package/docs/templates/frontend-eval/metrics.md +138 -0
- package/docs/templates/frontend-eval/smoke-targets.md +53 -0
- package/docs/templates/frontend-implementation-contract.schema.json +27 -0
- package/docs/templates/frontend-task-constraints.md +35 -35
- package/docs/templates/frontend-task-requirement.md +70 -70
- package/docs/templates/frontend-test-dag.generate-cases.prompt.md +5 -5
- package/docs/templates/frontend-test-dag.json +23 -23
- package/docs/templates/frontend-test-dag.retrieve-context.prompt.md +3 -3
- package/docs/templates/frontend-test-dag.retrospect.prompt.md +3 -3
- package/docs/templates/frontend-test-dag.review-cases.prompt.md +3 -3
- package/docs/templates/frontend-test-dag.review-execution.prompt.md +3 -3
- package/docs/templates/harness.schema.json +221 -221
- package/docs/templates/hybrid-dag.json +188 -188
- package/docs/templates/init-evolution-review.md +35 -35
- package/docs/templates/interactive-ui-round2-experiment.md +66 -66
- package/docs/templates/knowledge-graph-bootstrap-dag.json +118 -118
- package/docs/templates/knowledge-sync-dag.json +178 -178
- package/docs/templates/knowledge-sync-draft.schema.json +71 -71
- package/docs/templates/product-line/AGENTS.md +8 -8
- package/docs/templates/product-line/README.md +9 -9
- package/docs/templates/product-line/acceptance.yaml +14 -14
- package/docs/templates/product-line/closeout.yaml +9 -9
- package/docs/templates/product-line/design.md +13 -13
- package/docs/templates/product-line/links.md +10 -10
- package/docs/templates/product-line/requirement.md +17 -17
- package/docs/templates/product-line/task-graph.yaml +15 -15
- package/docs/templates/product-line/task.yaml +64 -64
- package/docs/templates/product-line/test-plan.md +7 -7
- package/docs/templates/production-readiness-checklist.md +57 -57
- package/docs/templates/progress-log.md +17 -17
- package/docs/templates/project-start-checklist.md +9 -9
- package/docs/templates/qa-report.md +48 -48
- package/docs/templates/sprint-contract.md +29 -29
- package/docs/templates/worker-dogfood-evidence.md +80 -80
- package/docs/templates/worker-dogfood-setup.md +68 -68
- package/docs/verification-matrix.md +70 -70
- package/examples/decision-gate-agent-dag.json +177 -177
- package/examples/example-dag.json +46 -46
- package/examples/hybrid-loop-agent-dag.json +189 -189
- package/harness.json +66 -66
- package/package.json +52 -88
- package/scripts/check-product-line-docs.sh +29 -29
- package/scripts/check-task-pool-root.sh +32 -32
- package/scripts/kb-bootstrap-init-skeleton.sh +240 -240
- package/scripts/kb-graph-incremental-prepare.mjs +386 -386
- package/scripts/kb-graph-incremental-prepare.sh +5 -5
- package/scripts/kb-graph-materialize.mjs +105 -105
- package/scripts/kb-graph-materialize.sh +4 -4
- package/scripts/kb-graph-promote.mjs +164 -164
- package/scripts/kb-graph-promote.sh +4 -4
- package/scripts/kb-query.mjs +554 -554
- package/scripts/kb-query.sh +5 -5
- package/skills/agent-worker/SKILL.md +39 -39
- package/skills/agent-worker/references/agent-worker-operator.md +60 -60
- package/skills/ai-engineering-context/SKILL.md +48 -48
- package/skills/analyze-product-dependencies/SKILL.md +67 -67
- package/skills/analyze-product-dependencies/agents/openai.yaml +4 -4
- package/skills/analyze-product-dependencies/references/api-documentation-schema.md +30 -30
- package/skills/analyze-product-dependencies/references/dependency-analysis-schema.md +28 -28
- package/skills/analyze-product-dependencies/references/example.md +76 -76
- package/skills/analyze-product-dependencies/references/forward-test-cases.md +35 -35
- package/skills/analyze-product-dependencies/references/input-contract.md +11 -11
- package/skills/analyze-product-dependencies/references/scouting-rules.md +61 -61
- package/skills/analyze-product-dependencies/scripts/test-validators.mjs +267 -267
- package/skills/analyze-product-dependencies/scripts/validate-api-documentation.mjs +101 -101
- package/skills/analyze-product-dependencies/scripts/validate-dependency-analysis.mjs +142 -142
- package/skills/analyze-product-dependencies/scripts/validate-product-requirement-input.mjs +76 -76
- package/skills/analyze-product-dependencies/scripts/validation-helpers.mjs +146 -146
- package/skills/analyze-product-requirements/SKILL.md +90 -90
- package/skills/analyze-product-requirements/agents/openai.yaml +4 -4
- package/skills/analyze-product-requirements/references/acceptance-criteria.md +91 -91
- package/skills/analyze-product-requirements/references/clarification-and-knowledge.md +56 -56
- package/skills/analyze-product-requirements/references/example.md +86 -86
- package/skills/analyze-product-requirements/references/forward-test-cases.md +66 -66
- package/skills/analyze-product-requirements/references/product-analysis-schema.md +32 -32
- package/skills/analyze-product-requirements/references/product-requirement-schema.md +33 -33
- package/skills/analyze-product-requirements/references/requirement-clarification-schema.md +35 -35
- package/skills/analyze-product-requirements/scripts/test-validators.mjs +193 -193
- package/skills/analyze-product-requirements/scripts/validate-product-analysis.mjs +69 -69
- package/skills/analyze-product-requirements/scripts/validate-product-requirement.mjs +97 -97
- package/skills/analyze-product-requirements/scripts/validate-requirement-clarification.mjs +98 -98
- package/skills/analyze-product-requirements/scripts/validation-helpers.mjs +156 -156
- package/skills/browser-tools/SKILL.md +196 -0
- package/skills/browser-tools/browser-content.js +103 -0
- package/skills/browser-tools/browser-cookies.js +35 -0
- package/skills/browser-tools/browser-eval.js +53 -0
- package/skills/browser-tools/browser-hn-scraper.js +108 -0
- package/skills/browser-tools/browser-nav.js +44 -0
- package/skills/browser-tools/browser-pick.js +162 -0
- package/skills/browser-tools/browser-screenshot.js +34 -0
- package/skills/browser-tools/browser-start.js +86 -0
- package/skills/browser-tools/package-lock.json +2556 -0
- package/skills/browser-tools/package.json +19 -0
- package/skills/code-review-core/SKILL.md +20 -20
- package/skills/codebase-scout/SKILL.md +19 -19
- package/skills/frontend-design-review/SKILL.md +66 -66
- package/skills/frontend-design-review/references/review-checklist.md +58 -58
- package/skills/frontend-implementation/SKILL.md +49 -47
- package/skills/frontend-implementation/references/code-standards.md +32 -32
- package/skills/frontend-implementation/references/design-spec.md +46 -46
- package/skills/frontend-implementation/references/node-contracts.md +27 -76
- package/skills/frontend-review/SKILL.md +59 -59
- package/skills/frontend-review/references/review-findings.md +47 -47
- package/skills/frontend-verification/SKILL.md +53 -53
- package/skills/frontend-verification/references/verification-checklist.md +68 -68
- package/skills/grill-me/SKILL.md +10 -10
- package/skills/grill-with-docs/SKILL.md +88 -88
- package/skills/grill-with-docs/adr-format.md +47 -47
- package/skills/grill-with-docs/context-format.md +60 -60
- package/skills/init-capability-evolution/SKILL.md +70 -70
- package/skills/loop-agent/SKILL.md +151 -151
- package/skills/loop-agent/references/README.md +67 -67
- package/skills/loop-agent/references/command-reference.md +527 -505
- package/skills/loop-agent/references/docs-converge.md +126 -126
- package/skills/loop-agent/references/harness-policy.md +263 -263
- package/skills/loop-agent/references/hybrid-dag.md +243 -238
- package/skills/loop-agent/references/learned/README.md +21 -21
- package/skills/loop-agent/references/long-running-loop.md +57 -57
- package/skills/loop-agent/references/model-routing.md +36 -36
- package/skills/loop-agent/references/multi-worktree.md +54 -54
- package/skills/loop-agent/references/one-shot-runs.md +85 -85
- package/skills/loop-agent/references/orchestrator-and-interventions.md +169 -169
- package/skills/loop-agent/references/pi-prompt.md +23 -23
- package/skills/loop-agent/references/pi-subagent-assisted-mode.md +84 -84
- package/skills/loop-agent/references/post-implementation-and-patterns.md +44 -44
- package/skills/loop-agent/references/task-workflow.md +89 -89
- package/skills/loop-agent/references/verification-and-failure-handling.md +141 -139
- package/skills/playwright-cli/SKILL.md +420 -420
- package/skills/playwright-cli/references/element-attributes.md +23 -23
- package/skills/playwright-cli/references/playwright-tests.md +39 -39
- package/skills/playwright-cli/references/request-mocking.md +87 -87
- package/skills/playwright-cli/references/running-code.md +241 -241
- package/skills/playwright-cli/references/session-management.md +225 -225
- package/skills/playwright-cli/references/storage-state.md +275 -275
- package/skills/playwright-cli/references/test-generation.md +433 -433
- package/skills/playwright-cli/references/tracing.md +139 -139
- package/skills/playwright-cli/references/video-recording.md +143 -143
- package/skills/playwright-cli-case-generator/SKILL.md +74 -74
- package/skills/requesting-code-review/SKILL.md +101 -101
- package/skills/requesting-code-review/code-reviewer.md +168 -168
- package/skills/systematic-debugging/CREATION-LOG.md +119 -119
- package/skills/systematic-debugging/SKILL.md +296 -296
- package/skills/systematic-debugging/condition-based-waiting-example.ts +158 -158
- package/skills/systematic-debugging/condition-based-waiting.md +115 -115
- package/skills/systematic-debugging/defense-in-depth.md +122 -122
- package/skills/systematic-debugging/find-polluter.sh +63 -63
- package/skills/systematic-debugging/root-cause-tracing.md +169 -169
- package/skills/systematic-debugging/test-academic.md +14 -14
- package/skills/systematic-debugging/test-pressure-1.md +58 -58
- package/skills/systematic-debugging/test-pressure-2.md +68 -68
- package/skills/systematic-debugging/test-pressure-3.md +69 -69
- package/skills/test-driven-development/SKILL.md +20 -20
- package/skills/using-git-worktrees/SKILL.md +215 -215
- package/skills/verification-before-completion/SKILL.md +154 -154
- package/skills/webapp-testing/SKILL.md +19 -19
|
@@ -1,85 +1,85 @@
|
|
|
1
|
-
# Worker 与 Feature 架构
|
|
2
|
-
|
|
3
|
-
本页说明 `agent-worker` 如何通过冻结的已发布 `loop-agent` 子进程执行 DAG(不 in-process import runtime kernel),以及其上的产品线 read model:TaskSpec、Task Pool、Feature 与 Observe。边界契约权威是 `runtime-boundaries.md` §Worker adapter。
|
|
4
|
-
|
|
5
|
-
## 核心事实:子进程,非 in-process
|
|
6
|
-
|
|
7
|
-
`agent-worker` 真正执行 DAG 时通过 Node `child_process.spawn` 启动**已发布**的 `loop-agent`,**不** in-process import runtime kernel:
|
|
8
|
-
|
|
9
|
-
| 事实 | 源码入口 |
|
|
10
|
-
| --- | --- |
|
|
11
|
-
| 客户端 | `src/worker/loop-agent/loop-agent-client.ts` `LoopAgentClient` |
|
|
12
|
-
| 执行入口 | `LoopAgentClient.run(args, options)` |
|
|
13
|
-
| spawn 实现 | `spawnCommand(...)` → `spawn(input.command, input.args, { cwd, env, shell: false, stdio: ["ignore", "pipe", "pipe"] })` |
|
|
14
|
-
| 治理禁止 | `scripts/check-architecture-boundaries.sh` 禁止 `src/worker/**` → `src/{cli,commands,application}/**`,transitional allowlist 为空 |
|
|
15
|
-
|
|
16
|
-
`shell: false` + 绝对 launch spec(见下)意味着 Worker 不走 PATH 重新解析,也不在当前进程内加载 CLI command 实现。
|
|
17
|
-
|
|
18
|
-
## controller identity(冻结的已发布 controller)
|
|
19
|
-
|
|
20
|
-
每次写入型 Feature/batch/Task/final verification 在任何目标仓库或 Task Pool 状态写入前,`LoopAgentClient` 解析并冻结 schemaVersion 1 identity(`ControllerIdentityV1`,定义在 `src/shared/package-metadata.ts`):
|
|
21
|
-
|
|
22
|
-
| 字段 | 含义 |
|
|
23
|
-
| --- | --- |
|
|
24
|
-
| `schemaVersion` | 固定 `1` |
|
|
25
|
-
| `packageName` | 必须为 `@tea-agent/loop-agent` |
|
|
26
|
-
| `binName` / `requested` / `entry` / `realEntry` | 入口解析链(realEntry 经 `realpathSync`) |
|
|
27
|
-
| `launch.command` / `launch.argsPrefix` | 直接可执行的绝对 launch spec |
|
|
28
|
-
| `binarySha256` | `actualEntry` 二进制 hash |
|
|
29
|
-
| `packageVersion` | `package.json` version |
|
|
30
|
-
| `packageFingerprint` | 覆盖 `package.json`、`bin/**`、`dist
|
|
31
|
-
|
|
32
|
-
关键方法:
|
|
33
|
-
|
|
34
|
-
- `resolveIdentity()`(`loop-agent-client.ts`):首次解析并冻结 identity;`this._identityResolved = true`。
|
|
35
|
-
- `assertControllerIdentityUnchangedBeforeSpawn(identity)`(`loop-agent-client.ts`):**每次 spawn 前**重验,漂移即 throw(`run` 与 `runCommand` 路径都调)。
|
|
36
|
-
- `getIdentity()` / `observeReportedVersion(reportedVersion)`:读取/校验子进程回报的版本须与 `packageVersion` 一致。
|
|
37
|
-
|
|
38
|
-
CLI 层(`src/worker/cli.ts`)在写入型命令传 `resolveIdentity: true` 构造 `LoopAgentClient`,并支持 `--expected-controller-version` / `--expected-controller-fingerprint` fail-fast(见 `src/worker/preflight.ts`)。
|
|
39
|
-
|
|
40
|
-
controller identity 与 DAG skill snapshot 是两个不同冻结层(前者跨 Worker/Task Pool/Feature 生命周期,后者单个 DAG run),见 `runtime-boundaries.md` §版本化自举边界。
|
|
41
|
-
|
|
42
|
-
## 独立 CLI
|
|
43
|
-
|
|
44
|
-
`agent-worker` 是独立 CLI(`bin/agent-worker.js` → `src/worker/cli.ts`),有自己的命令面(`task`、`batch`、`feature`、`report`、`observe` 等)。它**不是**第二套 executor 或 DAG kernel;它编排产品线 Task 并把执行委托给 `loop-agent` 子进程。
|
|
45
|
-
|
|
46
|
-
## 产品线 read model
|
|
47
|
-
|
|
48
|
-
### TaskSpec
|
|
49
|
-
|
|
50
|
-
- schema/validate:`src/worker/task-spec/{schema,validate}.ts`。
|
|
51
|
-
- 校验验收条件、依赖、验证命令;`agent-worker task validate-feature` 等用之。
|
|
52
|
-
|
|
53
|
-
### Task Pool
|
|
54
|
-
|
|
55
|
-
- 唯一 runtime root:`src/worker/pool/run-store.ts`
|
|
56
|
-
`TASK_POOL_RELATIVE_ROOT = ".harness/task-pool"`(ADR 0002)。
|
|
57
|
-
- 此前的顶层 Task Pool 位置不读取、不迁移、不合并、不重映射。
|
|
58
|
-
- **Feature-scoped identity(ADR 0004)**:canonical Task 身份为复合键 `TaskPoolTaskRef = { featureId, taskId }`。`taskId` 仅 Feature 内唯一;同仓库多 Feature 可安全共用同名 Task ID。
|
|
59
|
-
- **State schema v2**:新 state 必须 `schemaVersion: 2` 且显式携带 `featureId` / `taskId`;canonical 路径为 `.harness/task-pool/states/<featureId>/<taskId>.json`。
|
|
60
|
-
- **Consumers**:runner Ready Queue、retry、Follow-up、Feature review、Delivery / Closeout、morning report / metrics 均按 Feature 作用域读写,不得把裸 `taskId` 当作仓库全局唯一键。
|
|
61
|
-
- **Operator**:`pool doctor` 只读 inventory;`pool migrate-state` 默认 dry-run,apply 需 `--owner` + `--reason`;legacy v1 写入路径 fail-closed。
|
|
62
|
-
- batch / retry / morning report 等都基于此根。
|
|
63
|
-
|
|
64
|
-
### Feature(M2 交付闭环)
|
|
65
|
-
|
|
66
|
-
- review/run/approve-followup/delivery/closeout/verify-final:`src/worker/feature/{review,run}.ts` 及相关。
|
|
67
|
-
- Follow-up:`src/worker/` 下 draft-followup + approve-followup 事务,覆盖全部失败分类(可执行/Spec/Risk/Human/EnvFailure)。
|
|
68
|
-
- Delivery / Closeout:clean Delivery HEAD 上生成 canonical QA/最终验证证据、Delivery Package、Acceptance Coverage、PR 草稿;Closeout 默认预览,显式 `--apply --owner` 才原子写回。
|
|
69
|
-
- 权威证据:`CHANGELOG.md [0.10.0]`、`
|
|
70
|
-
|
|
71
|
-
### Observe(只读 read model)
|
|
72
|
-
|
|
73
|
-
- 模块:`src/worker/observe/`、`src/worker/observability/{read-model,event-store}.ts`。
|
|
74
|
-
- 全局快照:`buildGlobalSnapshot({ repoRoot })`(`src/worker/observability/read-model.ts`),是 **derived** 视图,消费 `.harness/` 与 Task Pool 事实,**不**改变执行成败。
|
|
75
|
-
- Observe 是本地只读暖白控制台;snapshot 投影失败返回安全错误摘要而非全零健康状态(见 `CHANGELOG.md [0.9.0]`)。
|
|
76
|
-
|
|
77
|
-
## 版本化自举的 deterministic canary
|
|
78
|
-
|
|
79
|
-
源码仓库的 deterministic candidate canary(`scripts/self-host-canary.mjs`,`npm run self-host:canary -- --deterministic`)是只读/确定性接棒证据:候选 tarball 安装到隔离 slot,两个 bin 从包内绝对入口启动,PATH 中放置 controller fallback trap,只执行 Feature dry-run 与 static/shell DAG。它必须证明 `piExecutorObserved=false` / `modelExecutorObserved=false` / `featureExecutedTasks=[]`,因此**不是** live Pi takeover。该脚本**不**属于发布 package surface(`package.json` `files` 不含它)。
|
|
80
|
-
|
|
81
|
-
## 不变式
|
|
82
|
-
|
|
83
|
-
- Worker 不得 in-process import `src/cli/**`、`src/commands/**` 或 `src/application/**`(governance 机器校验)。
|
|
84
|
-
- Worker 不实现 executor、scheduler、prompt 或 write guard。
|
|
85
|
-
- `agent-worker` skill
|
|
1
|
+
# Worker 与 Feature 架构
|
|
2
|
+
|
|
3
|
+
本页说明 `agent-worker` 如何通过冻结的已发布 `loop-agent` 子进程执行 DAG(不 in-process import runtime kernel),以及其上的产品线 read model:TaskSpec、Task Pool、Feature 与 Observe。边界契约权威是 `runtime-boundaries.md` §Worker adapter。
|
|
4
|
+
|
|
5
|
+
## 核心事实:子进程,非 in-process
|
|
6
|
+
|
|
7
|
+
`agent-worker` 真正执行 DAG 时通过 Node `child_process.spawn` 启动**已发布**的 `loop-agent`,**不** in-process import runtime kernel:
|
|
8
|
+
|
|
9
|
+
| 事实 | 源码入口 |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
| 客户端 | `src/worker/loop-agent/loop-agent-client.ts` `LoopAgentClient` |
|
|
12
|
+
| 执行入口 | `LoopAgentClient.run(args, options)` |
|
|
13
|
+
| spawn 实现 | `spawnCommand(...)` → `spawn(input.command, input.args, { cwd, env, shell: false, stdio: ["ignore", "pipe", "pipe"] })` |
|
|
14
|
+
| 治理禁止 | `scripts/check-architecture-boundaries.sh` 禁止 `src/worker/**` → `src/{cli,commands,application}/**`,transitional allowlist 为空 |
|
|
15
|
+
|
|
16
|
+
`shell: false` + 绝对 launch spec(见下)意味着 Worker 不走 PATH 重新解析,也不在当前进程内加载 CLI command 实现。
|
|
17
|
+
|
|
18
|
+
## controller identity(冻结的已发布 controller)
|
|
19
|
+
|
|
20
|
+
每次写入型 Feature/batch/Task/final verification 在任何目标仓库或 Task Pool 状态写入前,`LoopAgentClient` 解析并冻结 schemaVersion 1 identity(`ControllerIdentityV1`,定义在 `src/shared/package-metadata.ts`):
|
|
21
|
+
|
|
22
|
+
| 字段 | 含义 |
|
|
23
|
+
| --- | --- |
|
|
24
|
+
| `schemaVersion` | 固定 `1` |
|
|
25
|
+
| `packageName` | 必须为 `@tea-agent/loop-agent` |
|
|
26
|
+
| `binName` / `requested` / `entry` / `realEntry` | 入口解析链(realEntry 经 `realpathSync`) |
|
|
27
|
+
| `launch.command` / `launch.argsPrefix` | 直接可执行的绝对 launch spec |
|
|
28
|
+
| `binarySha256` | `actualEntry` 二进制 hash |
|
|
29
|
+
| `packageVersion` | `package.json` version |
|
|
30
|
+
| `packageFingerprint` | 覆盖 `package.json`、`bin/**`、`dist/**`、`.agents/skills/**` 的 portable fingerprint(`computePackageFingerprint`) |
|
|
31
|
+
|
|
32
|
+
关键方法:
|
|
33
|
+
|
|
34
|
+
- `resolveIdentity()`(`loop-agent-client.ts`):首次解析并冻结 identity;`this._identityResolved = true`。
|
|
35
|
+
- `assertControllerIdentityUnchangedBeforeSpawn(identity)`(`loop-agent-client.ts`):**每次 spawn 前**重验,漂移即 throw(`run` 与 `runCommand` 路径都调)。
|
|
36
|
+
- `getIdentity()` / `observeReportedVersion(reportedVersion)`:读取/校验子进程回报的版本须与 `packageVersion` 一致。
|
|
37
|
+
|
|
38
|
+
CLI 层(`src/worker/cli.ts`)在写入型命令传 `resolveIdentity: true` 构造 `LoopAgentClient`,并支持 `--expected-controller-version` / `--expected-controller-fingerprint` fail-fast(见 `src/worker/preflight.ts`)。
|
|
39
|
+
|
|
40
|
+
controller identity 与 DAG skill snapshot 是两个不同冻结层(前者跨 Worker/Task Pool/Feature 生命周期,后者单个 DAG run),见 `runtime-boundaries.md` §版本化自举边界。
|
|
41
|
+
|
|
42
|
+
## 独立 CLI
|
|
43
|
+
|
|
44
|
+
`agent-worker` 是独立 CLI(`bin/agent-worker.js` → `src/worker/cli.ts`),有自己的命令面(`task`、`batch`、`feature`、`report`、`observe` 等)。它**不是**第二套 executor 或 DAG kernel;它编排产品线 Task 并把执行委托给 `loop-agent` 子进程。
|
|
45
|
+
|
|
46
|
+
## 产品线 read model
|
|
47
|
+
|
|
48
|
+
### TaskSpec
|
|
49
|
+
|
|
50
|
+
- schema/validate:`src/worker/task-spec/{schema,validate}.ts`。
|
|
51
|
+
- 校验验收条件、依赖、验证命令;`agent-worker task validate-feature` 等用之。
|
|
52
|
+
|
|
53
|
+
### Task Pool
|
|
54
|
+
|
|
55
|
+
- 唯一 runtime root:`src/worker/pool/run-store.ts`
|
|
56
|
+
`TASK_POOL_RELATIVE_ROOT = ".harness/task-pool"`(ADR 0002)。
|
|
57
|
+
- 此前的顶层 Task Pool 位置不读取、不迁移、不合并、不重映射。
|
|
58
|
+
- **Feature-scoped identity(ADR 0004)**:canonical Task 身份为复合键 `TaskPoolTaskRef = { featureId, taskId }`。`taskId` 仅 Feature 内唯一;同仓库多 Feature 可安全共用同名 Task ID。
|
|
59
|
+
- **State schema v2**:新 state 必须 `schemaVersion: 2` 且显式携带 `featureId` / `taskId`;canonical 路径为 `.harness/task-pool/states/<featureId>/<taskId>.json`。
|
|
60
|
+
- **Consumers**:runner Ready Queue、retry、Follow-up、Feature review、Delivery / Closeout、morning report / metrics 均按 Feature 作用域读写,不得把裸 `taskId` 当作仓库全局唯一键。
|
|
61
|
+
- **Operator**:`pool doctor` 只读 inventory;`pool migrate-state` 默认 dry-run,apply 需 `--owner` + `--reason`;legacy v1 写入路径 fail-closed。
|
|
62
|
+
- batch / retry / morning report 等都基于此根。
|
|
63
|
+
|
|
64
|
+
### Feature(M2 交付闭环)
|
|
65
|
+
|
|
66
|
+
- review/run/approve-followup/delivery/closeout/verify-final:`src/worker/feature/{review,run}.ts` 及相关。
|
|
67
|
+
- Follow-up:`src/worker/` 下 draft-followup + approve-followup 事务,覆盖全部失败分类(可执行/Spec/Risk/Human/EnvFailure)。
|
|
68
|
+
- Delivery / Closeout:clean Delivery HEAD 上生成 canonical QA/最终验证证据、Delivery Package、Acceptance Coverage、PR 草稿;Closeout 默认预览,显式 `--apply --owner` 才原子写回。
|
|
69
|
+
- 权威证据:`CHANGELOG.md [0.10.0]`、`ai_workspace/loop-agent/reports/2026-07-12-m2-completion-audit.md`。
|
|
70
|
+
|
|
71
|
+
### Observe(只读 read model)
|
|
72
|
+
|
|
73
|
+
- 模块:`src/worker/observe/`、`src/worker/observability/{read-model,event-store}.ts`。
|
|
74
|
+
- 全局快照:`buildGlobalSnapshot({ repoRoot })`(`src/worker/observability/read-model.ts`),是 **derived** 视图,消费 `.harness/` 与 Task Pool 事实,**不**改变执行成败。
|
|
75
|
+
- Observe 是本地只读暖白控制台;snapshot 投影失败返回安全错误摘要而非全零健康状态(见 `CHANGELOG.md [0.9.0]`)。
|
|
76
|
+
|
|
77
|
+
## 版本化自举的 deterministic canary
|
|
78
|
+
|
|
79
|
+
源码仓库的 deterministic candidate canary(`scripts/self-host-canary.mjs`,`npm run self-host:canary -- --deterministic`)是只读/确定性接棒证据:候选 tarball 安装到隔离 slot,两个 bin 从包内绝对入口启动,PATH 中放置 controller fallback trap,只执行 Feature dry-run 与 static/shell DAG。它必须证明 `piExecutorObserved=false` / `modelExecutorObserved=false` / `featureExecutedTasks=[]`,因此**不是** live Pi takeover。该脚本**不**属于发布 package surface(`package.json` `files` 不含它)。
|
|
80
|
+
|
|
81
|
+
## 不变式
|
|
82
|
+
|
|
83
|
+
- Worker 不得 in-process import `src/cli/**`、`src/commands/**` 或 `src/application/**`(governance 机器校验)。
|
|
84
|
+
- Worker 不实现 executor、scheduler、prompt 或 write guard。
|
|
85
|
+
- `agent-worker` skill(`.agents/skills/agent-worker/`)不加入 `DEFAULT_SKILLS_BY_ROLE`;DAG leaf node 不得递归启动 `agent-worker`(`runtime-boundaries.md` §Skill layer)。
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
# cursor-prompt Sidecar
|
|
2
|
-
|
|
3
|
-
`cursor-prompt` 是显式、手工触发的 one-shot sidecar。它不是受治理 Agent runtime,也不参与 DAG、Loop 自动写入、Delegate `--auto-run` 或 task writer 选择。
|
|
4
|
-
|
|
5
|
-
## 产品定位
|
|
6
|
-
|
|
7
|
-
| 路径 | 角色 |
|
|
8
|
-
|---|---|
|
|
9
|
-
| Pi DAG (`implement-pi` / `repair-pi`) | 唯一受治理 Agent writer |
|
|
10
|
-
| shell / static | 确定性验证与静态输出 |
|
|
11
|
-
| `cursor-prompt` | 人工 one-shot 干预;成功不等于任务完成 |
|
|
12
|
-
|
|
13
|
-
## 用法
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
loop-agent cursor-prompt --cwd . "bounded task prompt"
|
|
17
|
-
loop-agent cursor-prompt --file <path>
|
|
18
|
-
loop-agent cursor-prompt --stdin
|
|
19
|
-
loop-agent cursor-prompt --model <id>
|
|
20
|
-
loop-agent cursor-prompt --timeout <ms>
|
|
21
|
-
loop-agent cursor-prompt --stream
|
|
22
|
-
loop-agent cursor-prompt --list-models
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
调用时才加载 `@cursor/sdk`。缺少 SDK 或 `CURSOR_API_KEY` 时,只有这条命令失败;普通 Agent DAG / doctor / init 不要求 Cursor。
|
|
26
|
-
|
|
27
|
-
## 约束
|
|
28
|
-
|
|
29
|
-
- 不读取 `harness.json` task config / DAG facts 作为授权来源。
|
|
30
|
-
- 不复制 DAG `writeSet`、repair、resume 或 Loop auto-execute 能力。
|
|
31
|
-
- 返回后由主会话检查 diff,并显式运行 shell verification。
|
|
32
|
-
- one-shot evidence 写入 `.harness/runs/{active,completed,failed}`。
|
|
33
|
-
|
|
34
|
-
## 迁移说明
|
|
35
|
-
|
|
36
|
-
旧 `executor: "cursor"` DAG、`executors.cursor`、`loopAutoWritePolicy` 与 `cursor-fix` 已硬切删除。需要写入时请重新生成 Pi-only DAG,或仅在人工干预场景使用本 sidecar。
|
|
1
|
+
# cursor-prompt Sidecar
|
|
2
|
+
|
|
3
|
+
`cursor-prompt` 是显式、手工触发的 one-shot sidecar。它不是受治理 Agent runtime,也不参与 DAG、Loop 自动写入、Delegate `--auto-run` 或 task writer 选择。
|
|
4
|
+
|
|
5
|
+
## 产品定位
|
|
6
|
+
|
|
7
|
+
| 路径 | 角色 |
|
|
8
|
+
|---|---|
|
|
9
|
+
| Pi DAG (`implement-pi` / `repair-pi`) | 唯一受治理 Agent writer |
|
|
10
|
+
| shell / static | 确定性验证与静态输出 |
|
|
11
|
+
| `cursor-prompt` | 人工 one-shot 干预;成功不等于任务完成 |
|
|
12
|
+
|
|
13
|
+
## 用法
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
loop-agent cursor-prompt --cwd . "bounded task prompt"
|
|
17
|
+
loop-agent cursor-prompt --file <path>
|
|
18
|
+
loop-agent cursor-prompt --stdin
|
|
19
|
+
loop-agent cursor-prompt --model <id>
|
|
20
|
+
loop-agent cursor-prompt --timeout <ms>
|
|
21
|
+
loop-agent cursor-prompt --stream
|
|
22
|
+
loop-agent cursor-prompt --list-models
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
调用时才加载 `@cursor/sdk`。缺少 SDK 或 `CURSOR_API_KEY` 时,只有这条命令失败;普通 Agent DAG / doctor / init 不要求 Cursor。
|
|
26
|
+
|
|
27
|
+
## 约束
|
|
28
|
+
|
|
29
|
+
- 不读取 `harness.json` task config / DAG facts 作为授权来源。
|
|
30
|
+
- 不复制 DAG `writeSet`、repair、resume 或 Loop auto-execute 能力。
|
|
31
|
+
- 返回后由主会话检查 diff,并显式运行 shell verification。
|
|
32
|
+
- one-shot evidence 写入 `.harness/runs/{active,completed,failed}`。
|
|
33
|
+
|
|
34
|
+
## 迁移说明
|
|
35
|
+
|
|
36
|
+
旧 `executor: "cursor"` DAG、`executors.cursor`、`loopAutoWritePolicy` 与 `cursor-fix` 已硬切删除。需要写入时请重新生成 Pi-only DAG,或仅在人工干预场景使用本 sidecar。
|
package/docs/decisions/README.md
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
# 决策
|
|
2
|
-
|
|
3
|
-
本目录存放架构决策记录(ADR)。模板见 `docs/templates/adr.md`。
|
|
4
|
-
|
|
5
|
-
## 索引
|
|
6
|
-
|
|
7
|
-
| ADR | 状态 | 摘要 |
|
|
8
|
-
| --- | --- | --- |
|
|
9
|
-
| [`0001-pi-only-agent-runtime.md`](0001-pi-only-agent-runtime.md) | accepted | 受治理 Agent 仅 Pi;`cursor-prompt` 为显式 sidecar |
|
|
10
|
-
| [`0002-task-pool-runtime-root.md`](0002-task-pool-runtime-root.md) | accepted | Task Pool 唯一根 `.harness/task-pool/`,旧 `.task-pool/` 不兼容 |
|
|
11
|
-
| [`0003-docs-dual-tree-converge.md`](0003-docs-dual-tree-converge.md) | accepted | `website/docs/` 用法 vs `docs/` 治理;docs-converge 检查表 |
|
|
12
|
-
| [`0004-task-pool-feature-scoped-task-identity.md`](0004-task-pool-feature-scoped-task-identity.md) | accepted | Task Pool 复合身份 `{featureId,taskId}`、state v2、legacy fail-closed、Observe composite route |
|
|
13
|
-
|
|
14
|
-
**读者注意(M4)**:ADR 0004 **决策边界**仍有效;正文中「M2+ 未改 consumers/Observe」段落是 M0/M1 当时的切片叙述,现已过时。实现进度以 `docs/progress/2026-07-15-task-pool-v2-feature-scoped-task-identity.md`、最终报告 `docs/reports/2026-07-15-task-pool-v2-feature-scoped-task-identity.md` 与 `CHANGELOG.md [Unreleased]` 为准。本任务 **不修改** ADR 0004 正文(不在 closeout allowedPaths)。
|
|
15
|
-
|
|
16
|
-
新增跨版本架构取舍时:用模板新增 `NNNN-title.md`,并更新本表。不要把 ADR 正文复制进 `website/docs/`。
|
|
17
|
-
|
|
18
|
-
实施细节与证据仍以对应 `docs/exec-plans/completed/` 与 `CHANGELOG.md` 为准;ADR 只固化决策边界。
|
|
1
|
+
# 决策
|
|
2
|
+
|
|
3
|
+
本目录存放架构决策记录(ADR)。模板见 `docs/templates/adr.md`。
|
|
4
|
+
|
|
5
|
+
## 索引
|
|
6
|
+
|
|
7
|
+
| ADR | 状态 | 摘要 |
|
|
8
|
+
| --- | --- | --- |
|
|
9
|
+
| [`0001-pi-only-agent-runtime.md`](0001-pi-only-agent-runtime.md) | accepted | 受治理 Agent 仅 Pi;`cursor-prompt` 为显式 sidecar |
|
|
10
|
+
| [`0002-task-pool-runtime-root.md`](0002-task-pool-runtime-root.md) | accepted | Task Pool 唯一根 `.harness/task-pool/`,旧 `.task-pool/` 不兼容 |
|
|
11
|
+
| [`0003-docs-dual-tree-converge.md`](0003-docs-dual-tree-converge.md) | accepted | `website/docs/` 用法 vs `docs/` 治理;docs-converge 检查表 |
|
|
12
|
+
| [`0004-task-pool-feature-scoped-task-identity.md`](0004-task-pool-feature-scoped-task-identity.md) | accepted | Task Pool 复合身份 `{featureId,taskId}`、state v2、legacy fail-closed、Observe composite route |
|
|
13
|
+
|
|
14
|
+
**读者注意(M4)**:ADR 0004 **决策边界**仍有效;正文中「M2+ 未改 consumers/Observe」段落是 M0/M1 当时的切片叙述,现已过时。实现进度以 `docs/progress/2026-07-15-task-pool-v2-feature-scoped-task-identity.md`、最终报告 `docs/reports/2026-07-15-task-pool-v2-feature-scoped-task-identity.md` 与 `CHANGELOG.md [Unreleased]` 为准。本任务 **不修改** ADR 0004 正文(不在 closeout allowedPaths)。
|
|
15
|
+
|
|
16
|
+
新增跨版本架构取舍时:用模板新增 `NNNN-title.md`,并更新本表。不要把 ADR 正文复制进 `website/docs/`。
|
|
17
|
+
|
|
18
|
+
实施细节与证据仍以对应 `docs/exec-plans/completed/` 与 `CHANGELOG.md` 为准;ADR 只固化决策边界。
|
package/docs/design/README.md
CHANGED
|
@@ -1,167 +1,167 @@
|
|
|
1
|
-
# 设计笔记
|
|
2
|
-
|
|
3
|
-
`docs/design/` 存放将 `loop-agent` 作为更大产品线 agent 平台内仓库本地 runtime 的规划笔记。这些是设计输入,不是 `src/` 已具备该能力的证明——**除非**页首明确写了实现校准条,且有 `src/` / CHANGELOG / completed plan 旁证。
|
|
4
|
-
|
|
5
|
-
**维护日:2026-07-16** — 索引与归档建议按当前代码(`@tea-agent/loop-agent@0.12.0` + 主干 Unreleased)再采样。
|
|
6
|
-
|
|
7
|
-
| 文档 | 用途 |
|
|
8
|
-
|---|---|
|
|
9
|
-
| `taskspec-to-loop-agent-mapping.md` | 将产品线 TaskSpec 适配为 `loop-agent` task 的契约 |
|
|
10
|
-
| `taskspec-to-loop-agent-mapping.yaml` | 同上契约的结构化对照表 |
|
|
11
|
-
| `state-and-failure-taxonomy.md` | 文档、Task Pool、DAG、Loop 共用的 canonical status 与 failure taxonomy |
|
|
12
|
-
| `frontend-implementation-workflow.md` | 前端 DAG 实现 / 评审 / 验证工作流与证据约定 |
|
|
13
|
-
| `frontend-mock-data-workflow.md` | 前端任务先读取规范、识别项目 Mock 服务、生成 Mock 合同并做专项验证的已实现设计 |
|
|
14
|
-
| `dag-source-binding-and-recovery.md` | 新生成 DAG 的权威任务源绑定、前端需求编号覆盖门禁与中断后完整重生成规则 |
|
|
15
|
-
| `full-chain-test-knowledge-base.md` | 全流程测试知识库分层、目录、对象模型、与 backend-test-dag / Feature QA 的读写映射 |
|
|
16
|
-
| `full-chain-testing-system-redesign.md` | **综合重设计**:知识库权威层 + I/T/V/K 四类 DAG + knowledge-sync v2 硬化与迁移 |
|
|
17
|
-
| `testing-knowledge-base-impl-spec.md` | **知识库实现细节 v1(先冻结)**:目录、schema、ID、读写矩阵、校验规则、MVP 清单 |
|
|
18
|
-
| `knowledge-graph-and-query-spec.md` | **业务知识图谱 + 查询协议 v1**:实体/边、knowledge-links、kb-query 分层、索引 materialize |
|
|
19
|
-
| `knowledge-graph-ai-bootstrap.md` | **AI 构建图谱 + 初始化 B0–B6**:staging 提案、人审晋升、bootstrap DAG、增量更新 |
|
|
20
|
-
| `verification-subdag-plugin.md` | 独立测试全流程 Verification DAG 与三种实现 DAG 的 compose 设计(若分支存在) |
|
|
21
|
-
## 归档策略(何时迁入 `archive/`)
|
|
22
|
-
|
|
23
|
-
满足以下**多数**条件时可归档:
|
|
24
|
-
|
|
25
|
-
1. 对应能力已在 `src/` 落地,且有 `docs/exec-plans/completed/*` 或 dated report / CHANGELOG 版本说明;
|
|
26
|
-
2. 文档主体是**阶段性计划 / 月度 WBS / 已关闭路线图**,不再驱动实现决策;
|
|
27
|
-
3. 继续放在 design 根目录会让新人误判为「未做完」或「下一件必做」。
|
|
28
|
-
|
|
29
|
-
**不要归档**(仍放根目录):
|
|
30
|
-
|
|
31
|
-
- 仍被代码/CLI/映射表**持续引用**的契约(taxonomy、taskspec mapping、frontend workflow 等);
|
|
32
|
-
- 仍有 **active exec-plan** 或大段 **planned/deferred** 的设计真源(如 Eval Lab);
|
|
33
|
-
- 长期路线与方法论笔记(六个月规划、腾讯实践、研发模式)——可加校准条,不必塞进 archive;
|
|
34
|
-
- 纯视觉 token 参考(`DESIGN-*.md`)。
|
|
35
|
-
|
|
36
|
-
---
|
|
37
|
-
|
|
38
|
-
## 契约与实现映射(优先读 · 仍活)
|
|
39
|
-
|
|
40
|
-
| 文档 | 用途 | 归档建议 |
|
|
41
|
-
|---|---|---|
|
|
42
|
-
| `taskspec-to-loop-agent-mapping.md` / `.yaml` | TaskSpec → loop-agent task 契约 | **保留**(随 schema 更新) |
|
|
43
|
-
| `state-and-failure-taxonomy.md` | 状态 / failure taxonomy | **保留** |
|
|
44
|
-
| `frontend-implementation-workflow.md` | 前端 DAG 实现/评审/验证约定 | **保留**(活工作流) |
|
|
45
|
-
| `full-chain-test-knowledge-base.md` | 测试知识库分层与对象模型 | **保留**(K 族权威设计) |
|
|
46
|
-
| `full-chain-testing-system-redesign.md` | I/T/V/K 综合重设计 | **保留**(后续 T/V 与 hardening 仍可能引用;MVP 已部分 ship) |
|
|
47
|
-
| `testing-knowledge-base-impl-spec.md` | 知识库实现细节 v1 | **保留**(规格冻结;DAG 细节另文) |
|
|
48
|
-
| `knowledge-graph-and-query-spec.md` | 图谱 + 查询协议 v1 | **保留**(Phase A 已实现,规格仍真源) |
|
|
49
|
-
| `knowledge-graph-ai-bootstrap.md` | AI bootstrap B0–B6 / staging | **保留**(bootstrap MVP 已实现,增量/产品化仍引用) |
|
|
50
|
-
|
|
51
|
-
**执行 Contract(knowledge 已完成归档):** `docs/exec-plans/completed/2026-07-14-knowledge-sync-and-graph.md`
|
|
52
|
-
|
|
53
|
-
---
|
|
54
|
-
|
|
55
|
-
## 实验 / 评测(设计输入 · 进行中)
|
|
56
|
-
|
|
57
|
-
| 文档 | 用途 | 归档建议 |
|
|
58
|
-
|---|---|---|
|
|
59
|
-
| `recursive-self-improvement-eval-lab.md` | Harness Eval Lab 设计真源 | **保留 active**:M1 + M2 W2.1–W2.3 已实现;W2.4 / M3+ 未做。执行计划:`docs/exec-plans/active/2026-07-16-recursive-self-improvement-eval-lab.md` |
|
|
60
|
-
|
|
61
|
-
> 设计 README 旧句「W2.3 仍未实现」已过时:W2.3 run association **已合入**(见 active plan 进度与 `CHANGELOG.md [Unreleased]`)。
|
|
62
|
-
|
|
63
|
-
---
|
|
64
|
-
|
|
65
|
-
## 路线与产品线笔记(非实现证明 · 保留 + 校准条)
|
|
66
|
-
|
|
67
|
-
| 文档 | 用途 | 归档建议 |
|
|
68
|
-
|---|---|---|
|
|
69
|
-
| `dynamic-workflow-dag-engine-roadmap.md` | Dynamic Workflow 阶段规划 | **保留**:页首有落地校准;高风险 shard/merge 等仍是 roadmap |
|
|
70
|
-
| `六个月规划.md` | 长期路线 | **保留**:页首 **2026-07-16** 已补 0.12.0 / Task Pool v2 / Ready Planner / Eval 指针;第 3–6 月仍有效前瞻 |
|
|
71
|
-
| `产品线共享知识库.md` | 产品线文档仓库上游事实源 | **保留**(docs-sync 等仍多为未来) |
|
|
72
|
-
| `研发模式.md` | 10 日 Feature 团队工作流 | **保留**(方法论) |
|
|
73
|
-
| `腾讯实践对当前项目的指引.md` | 外部实践映射 | **保留**(背景;源文在 website practices) |
|
|
74
|
-
|
|
75
|
-
---
|
|
76
|
-
|
|
77
|
-
## 视觉参考(保留)
|
|
78
|
-
|
|
79
|
-
| 文档 | 用途 | 归档建议 |
|
|
80
|
-
|---|---|---|
|
|
81
|
-
| `DESIGN-cursor.md` | Observe 暖白 / Cursor 风格 token | **保留**(视觉参考) |
|
|
82
|
-
| `DESIGN-lovable.md` | Lovable 暖色视觉参考 | **保留** |
|
|
83
|
-
|
|
84
|
-
---
|
|
85
|
-
|
|
86
|
-
## 本次已迁入 `archive/`(2026-07-16)
|
|
87
|
-
|
|
88
|
-
| 文档 | 原因 |
|
|
89
|
-
|---|---|
|
|
90
|
-
| `archive/2026-07-14-loop-agent-self-update-notifier.md` | 自更新提醒 **已实现**(0.11.0 + report/completed plan);设计不再是「尚未实现」 |
|
|
91
|
-
| `archive/2026-07-16-priority-ready-planner-contract.md` | Ready Planner **已实现并 closeout**;原 M0 RED「未实现」状态条会误导 |
|
|
92
|
-
|
|
93
|
-
---
|
|
94
|
-
|
|
95
|
-
## 已归档(历史)
|
|
96
|
-
|
|
97
|
-
| 文档 | 用途 |
|
|
98
|
-
|---|---|
|
|
99
|
-
| `archive/2026-07-07-agent-worker-plan.md` | Worker 落地计划(已实现于 `src/worker/`) |
|
|
100
|
-
| `archive/2026-07-07-taskspec-plan.md` | TaskSpec v0.1 设计(已实现) |
|
|
101
|
-
| `archive/2026-07-10-下一阶段任务-功能开发完成.md` | 样本/失败硬化完成记录 |
|
|
102
|
-
| `archive/2026-07-10-observe-ui.md` | Observe UI v0(OBS-001~010) |
|
|
103
|
-
| `archive/2026-07-10-observe-ui-optimization.md` | 中文 DAG-first / 过程时间线 |
|
|
104
|
-
| `archive/2026-07-10-observe-ui-goal.md` | OBS 进度看板(全部 done) |
|
|
105
|
-
| `archive/2026-07-14-observe-ui-roadmap.md` | Observe R1–R5 路线图(已完成) |
|
|
106
|
-
| `archive/2026-07-11-第一月规划.md` / `第一月wbs.md` | 首月闭环历史 |
|
|
107
|
-
| `archive/2026-07-12-第二月规划.md` | 第二月 Feature 闭环历史 |
|
|
108
|
-
| `archive/2026-07-14-loop-agent-self-update-notifier.md` | CLI 自更新提醒设计(已实现) |
|
|
109
|
-
| `archive/2026-07-16-priority-ready-planner-contract.md` | Ready Planner M0 合同(已实现) |
|
|
110
|
-
|
|
111
|
-
---
|
|
112
|
-
|
|
113
|
-
## 根目录文件 — 归档建议一览(2026-07-16)
|
|
114
|
-
|
|
115
|
-
| 文件 | 建议 | 说明 |
|
|
116
|
-
|---|---|---|
|
|
117
|
-
| `README.md` | 保留 | 本索引 |
|
|
118
|
-
| `taskspec-to-loop-agent-mapping.*` | 保留 | 活契约 |
|
|
119
|
-
| `state-and-failure-taxonomy.md` | 保留 | 活契约 |
|
|
120
|
-
| `frontend-implementation-workflow.md` | 保留 | 活工作流 |
|
|
121
|
-
| `full-chain-test-knowledge-base.md` | 保留 | K 族设计真源 |
|
|
122
|
-
| `full-chain-testing-system-redesign.md` | 保留(可选日后拆「已落地摘要」) | 综合草案;部分已 ship |
|
|
123
|
-
| `testing-knowledge-base-impl-spec.md` | 保留 | 规格冻结 |
|
|
124
|
-
| `knowledge-graph-and-query-spec.md` | 保留 | 协议真源 |
|
|
125
|
-
| `knowledge-graph-ai-bootstrap.md` | 保留 | bootstrap 设计真源 |
|
|
126
|
-
| `recursive-self-improvement-eval-lab.md` | **保留 active** | Eval Lab 真源 |
|
|
127
|
-
| `dynamic-workflow-dag-engine-roadmap.md` | 保留 | roadmap + 校准 |
|
|
128
|
-
| `六个月规划.md` | 保留 | 路线;校准条已含 0.12 / Unreleased |
|
|
129
|
-
| `产品线共享知识库.md` | 保留 | 上游知识库愿景 |
|
|
130
|
-
| `研发模式.md` | 保留 | 方法论 |
|
|
131
|
-
| `腾讯实践对当前项目的指引.md` | 保留 | 实践映射 |
|
|
132
|
-
| `DESIGN-cursor.md` / `DESIGN-lovable.md` | 保留 | 视觉 |
|
|
133
|
-
| ~~`2026-07-14-loop-agent-self-update-notifier.md`~~ | **已归档** | 见上 |
|
|
134
|
-
| ~~`2026-07-16-priority-ready-planner-contract.md`~~ | **已归档** | 见上 |
|
|
135
|
-
|
|
136
|
-
### 暂不建议归档(但可标注「部分落地」)
|
|
137
|
-
|
|
138
|
-
- **knowledge 四件套 + full-chain\***:exec-plan 已 complete,但设计文仍是目录/schema/增量协议的权威;归档会切断引用习惯。若未来拆出「实现状态」短页,可把**纯进度段落**迁 archive,规格正文仍留根。
|
|
139
|
-
- **六个月规划 / Dynamic Workflow roadmap**:含未来月与未完成 primitive;只做页首校准,整篇归档会丢前瞻。
|
|
140
|
-
|
|
141
|
-
---
|
|
142
|
-
|
|
143
|
-
## 命名约定(2026-07-09 起)
|
|
144
|
-
|
|
145
|
-
| 名称 | 含义 | 状态 |
|
|
146
|
-
|---|---|---|
|
|
147
|
-
| `loop-agent` | 仓库本地 runtime / 治理控制器 CLI | 已发布 |
|
|
148
|
-
| `agent-worker` | 产品线 TaskSpec 批处理适配层 CLI | 已发布 |
|
|
149
|
-
| `agent-platform` | 早期规划设想名;**不是**当前 CLI | 仅未来 monorepo/上层服务语境 |
|
|
150
|
-
|
|
151
|
-
```text
|
|
152
|
-
产品线 docs / TaskSpec / TaskGraph
|
|
153
|
-
→ agent-worker(本地批处理适配)
|
|
154
|
-
→ loop-agent(runtime kernel)
|
|
155
|
-
→ Pi(受治理 Agent) / shell / static
|
|
156
|
-
→ cursor-prompt(显式手工 one-shot sidecar,非受治理 writer)
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
## 维护规则
|
|
160
|
-
|
|
161
|
-
1. 保持 TaskSpec 字段、status、failure category、命令示例与契约文档一致。
|
|
162
|
-
2. 未来平台组件标为目标架构,除非已存在于 `src/` 或 `scripts/`。
|
|
163
|
-
3. 命令示例只用 `agent-worker` / `loop-agent`。
|
|
164
|
-
4. `config-types` / profile routing 变更时更新 mapping 文档。
|
|
165
|
-
5. failure / Task Pool state 变更时更新 taxonomy。
|
|
166
|
-
6. **过期月规划 / 已关闭实现合同**迁入 `archive/`,并更新本 README。
|
|
167
|
-
7. 运行 `bash scripts/check-repo.sh`(或至少 check-doc-index / check-doc-links)。
|
|
1
|
+
# 设计笔记
|
|
2
|
+
|
|
3
|
+
`docs/design/` 存放将 `loop-agent` 作为更大产品线 agent 平台内仓库本地 runtime 的规划笔记。这些是设计输入,不是 `src/` 已具备该能力的证明——**除非**页首明确写了实现校准条,且有 `src/` / CHANGELOG / completed plan 旁证。
|
|
4
|
+
|
|
5
|
+
**维护日:2026-07-16** — 索引与归档建议按当前代码(`@tea-agent/loop-agent@0.12.0` + 主干 Unreleased)再采样。
|
|
6
|
+
|
|
7
|
+
| 文档 | 用途 |
|
|
8
|
+
|---|---|
|
|
9
|
+
| `taskspec-to-loop-agent-mapping.md` | 将产品线 TaskSpec 适配为 `loop-agent` task 的契约 |
|
|
10
|
+
| `taskspec-to-loop-agent-mapping.yaml` | 同上契约的结构化对照表 |
|
|
11
|
+
| `state-and-failure-taxonomy.md` | 文档、Task Pool、DAG、Loop 共用的 canonical status 与 failure taxonomy |
|
|
12
|
+
| `frontend-implementation-workflow.md` | 前端 DAG 实现 / 评审 / 验证工作流与证据约定 |
|
|
13
|
+
| `frontend-mock-data-workflow.md` | 前端任务先读取规范、识别项目 Mock 服务、生成 Mock 合同并做专项验证的已实现设计 |
|
|
14
|
+
| `dag-source-binding-and-recovery.md` | 新生成 DAG 的权威任务源绑定、前端需求编号覆盖门禁与中断后完整重生成规则 |
|
|
15
|
+
| `full-chain-test-knowledge-base.md` | 全流程测试知识库分层、目录、对象模型、与 backend-test-dag / Feature QA 的读写映射 |
|
|
16
|
+
| `full-chain-testing-system-redesign.md` | **综合重设计**:知识库权威层 + I/T/V/K 四类 DAG + knowledge-sync v2 硬化与迁移 |
|
|
17
|
+
| `testing-knowledge-base-impl-spec.md` | **知识库实现细节 v1(先冻结)**:目录、schema、ID、读写矩阵、校验规则、MVP 清单 |
|
|
18
|
+
| `knowledge-graph-and-query-spec.md` | **业务知识图谱 + 查询协议 v1**:实体/边、knowledge-links、kb-query 分层、索引 materialize |
|
|
19
|
+
| `knowledge-graph-ai-bootstrap.md` | **AI 构建图谱 + 初始化 B0–B6**:staging 提案、人审晋升、bootstrap DAG、增量更新 |
|
|
20
|
+
| `verification-subdag-plugin.md` | 独立测试全流程 Verification DAG 与三种实现 DAG 的 compose 设计(若分支存在) |
|
|
21
|
+
## 归档策略(何时迁入 `archive/`)
|
|
22
|
+
|
|
23
|
+
满足以下**多数**条件时可归档:
|
|
24
|
+
|
|
25
|
+
1. 对应能力已在 `src/` 落地,且有 `docs/exec-plans/completed/*` 或 dated report / CHANGELOG 版本说明;
|
|
26
|
+
2. 文档主体是**阶段性计划 / 月度 WBS / 已关闭路线图**,不再驱动实现决策;
|
|
27
|
+
3. 继续放在 design 根目录会让新人误判为「未做完」或「下一件必做」。
|
|
28
|
+
|
|
29
|
+
**不要归档**(仍放根目录):
|
|
30
|
+
|
|
31
|
+
- 仍被代码/CLI/映射表**持续引用**的契约(taxonomy、taskspec mapping、frontend workflow 等);
|
|
32
|
+
- 仍有 **active exec-plan** 或大段 **planned/deferred** 的设计真源(如 Eval Lab);
|
|
33
|
+
- 长期路线与方法论笔记(六个月规划、腾讯实践、研发模式)——可加校准条,不必塞进 archive;
|
|
34
|
+
- 纯视觉 token 参考(`DESIGN-*.md`)。
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## 契约与实现映射(优先读 · 仍活)
|
|
39
|
+
|
|
40
|
+
| 文档 | 用途 | 归档建议 |
|
|
41
|
+
|---|---|---|
|
|
42
|
+
| `taskspec-to-loop-agent-mapping.md` / `.yaml` | TaskSpec → loop-agent task 契约 | **保留**(随 schema 更新) |
|
|
43
|
+
| `state-and-failure-taxonomy.md` | 状态 / failure taxonomy | **保留** |
|
|
44
|
+
| `frontend-implementation-workflow.md` | 前端 DAG 实现/评审/验证约定 | **保留**(活工作流) |
|
|
45
|
+
| `full-chain-test-knowledge-base.md` | 测试知识库分层与对象模型 | **保留**(K 族权威设计) |
|
|
46
|
+
| `full-chain-testing-system-redesign.md` | I/T/V/K 综合重设计 | **保留**(后续 T/V 与 hardening 仍可能引用;MVP 已部分 ship) |
|
|
47
|
+
| `testing-knowledge-base-impl-spec.md` | 知识库实现细节 v1 | **保留**(规格冻结;DAG 细节另文) |
|
|
48
|
+
| `knowledge-graph-and-query-spec.md` | 图谱 + 查询协议 v1 | **保留**(Phase A 已实现,规格仍真源) |
|
|
49
|
+
| `knowledge-graph-ai-bootstrap.md` | AI bootstrap B0–B6 / staging | **保留**(bootstrap MVP 已实现,增量/产品化仍引用) |
|
|
50
|
+
|
|
51
|
+
**执行 Contract(knowledge 已完成归档):** `docs/exec-plans/completed/2026-07-14-knowledge-sync-and-graph.md`
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## 实验 / 评测(设计输入 · 进行中)
|
|
56
|
+
|
|
57
|
+
| 文档 | 用途 | 归档建议 |
|
|
58
|
+
|---|---|---|
|
|
59
|
+
| `recursive-self-improvement-eval-lab.md` | Harness Eval Lab 设计真源 | **保留 active**:M1 + M2 W2.1–W2.3 已实现;W2.4 / M3+ 未做。执行计划:`docs/exec-plans/active/2026-07-16-recursive-self-improvement-eval-lab.md` |
|
|
60
|
+
|
|
61
|
+
> 设计 README 旧句「W2.3 仍未实现」已过时:W2.3 run association **已合入**(见 active plan 进度与 `CHANGELOG.md [Unreleased]`)。
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## 路线与产品线笔记(非实现证明 · 保留 + 校准条)
|
|
66
|
+
|
|
67
|
+
| 文档 | 用途 | 归档建议 |
|
|
68
|
+
|---|---|---|
|
|
69
|
+
| `dynamic-workflow-dag-engine-roadmap.md` | Dynamic Workflow 阶段规划 | **保留**:页首有落地校准;高风险 shard/merge 等仍是 roadmap |
|
|
70
|
+
| `六个月规划.md` | 长期路线 | **保留**:页首 **2026-07-16** 已补 0.12.0 / Task Pool v2 / Ready Planner / Eval 指针;第 3–6 月仍有效前瞻 |
|
|
71
|
+
| `产品线共享知识库.md` | 产品线文档仓库上游事实源 | **保留**(docs-sync 等仍多为未来) |
|
|
72
|
+
| `研发模式.md` | 10 日 Feature 团队工作流 | **保留**(方法论) |
|
|
73
|
+
| `腾讯实践对当前项目的指引.md` | 外部实践映射 | **保留**(背景;源文在 website practices) |
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## 视觉参考(保留)
|
|
78
|
+
|
|
79
|
+
| 文档 | 用途 | 归档建议 |
|
|
80
|
+
|---|---|---|
|
|
81
|
+
| `DESIGN-cursor.md` | Observe 暖白 / Cursor 风格 token | **保留**(视觉参考) |
|
|
82
|
+
| `DESIGN-lovable.md` | Lovable 暖色视觉参考 | **保留** |
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## 本次已迁入 `archive/`(2026-07-16)
|
|
87
|
+
|
|
88
|
+
| 文档 | 原因 |
|
|
89
|
+
|---|---|
|
|
90
|
+
| `archive/2026-07-14-loop-agent-self-update-notifier.md` | 自更新提醒 **已实现**(0.11.0 + report/completed plan);设计不再是「尚未实现」 |
|
|
91
|
+
| `archive/2026-07-16-priority-ready-planner-contract.md` | Ready Planner **已实现并 closeout**;原 M0 RED「未实现」状态条会误导 |
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## 已归档(历史)
|
|
96
|
+
|
|
97
|
+
| 文档 | 用途 |
|
|
98
|
+
|---|---|
|
|
99
|
+
| `archive/2026-07-07-agent-worker-plan.md` | Worker 落地计划(已实现于 `src/worker/`) |
|
|
100
|
+
| `archive/2026-07-07-taskspec-plan.md` | TaskSpec v0.1 设计(已实现) |
|
|
101
|
+
| `archive/2026-07-10-下一阶段任务-功能开发完成.md` | 样本/失败硬化完成记录 |
|
|
102
|
+
| `archive/2026-07-10-observe-ui.md` | Observe UI v0(OBS-001~010) |
|
|
103
|
+
| `archive/2026-07-10-observe-ui-optimization.md` | 中文 DAG-first / 过程时间线 |
|
|
104
|
+
| `archive/2026-07-10-observe-ui-goal.md` | OBS 进度看板(全部 done) |
|
|
105
|
+
| `archive/2026-07-14-observe-ui-roadmap.md` | Observe R1–R5 路线图(已完成) |
|
|
106
|
+
| `archive/2026-07-11-第一月规划.md` / `第一月wbs.md` | 首月闭环历史 |
|
|
107
|
+
| `archive/2026-07-12-第二月规划.md` | 第二月 Feature 闭环历史 |
|
|
108
|
+
| `archive/2026-07-14-loop-agent-self-update-notifier.md` | CLI 自更新提醒设计(已实现) |
|
|
109
|
+
| `archive/2026-07-16-priority-ready-planner-contract.md` | Ready Planner M0 合同(已实现) |
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## 根目录文件 — 归档建议一览(2026-07-16)
|
|
114
|
+
|
|
115
|
+
| 文件 | 建议 | 说明 |
|
|
116
|
+
|---|---|---|
|
|
117
|
+
| `README.md` | 保留 | 本索引 |
|
|
118
|
+
| `taskspec-to-loop-agent-mapping.*` | 保留 | 活契约 |
|
|
119
|
+
| `state-and-failure-taxonomy.md` | 保留 | 活契约 |
|
|
120
|
+
| `frontend-implementation-workflow.md` | 保留 | 活工作流 |
|
|
121
|
+
| `full-chain-test-knowledge-base.md` | 保留 | K 族设计真源 |
|
|
122
|
+
| `full-chain-testing-system-redesign.md` | 保留(可选日后拆「已落地摘要」) | 综合草案;部分已 ship |
|
|
123
|
+
| `testing-knowledge-base-impl-spec.md` | 保留 | 规格冻结 |
|
|
124
|
+
| `knowledge-graph-and-query-spec.md` | 保留 | 协议真源 |
|
|
125
|
+
| `knowledge-graph-ai-bootstrap.md` | 保留 | bootstrap 设计真源 |
|
|
126
|
+
| `recursive-self-improvement-eval-lab.md` | **保留 active** | Eval Lab 真源 |
|
|
127
|
+
| `dynamic-workflow-dag-engine-roadmap.md` | 保留 | roadmap + 校准 |
|
|
128
|
+
| `六个月规划.md` | 保留 | 路线;校准条已含 0.12 / Unreleased |
|
|
129
|
+
| `产品线共享知识库.md` | 保留 | 上游知识库愿景 |
|
|
130
|
+
| `研发模式.md` | 保留 | 方法论 |
|
|
131
|
+
| `腾讯实践对当前项目的指引.md` | 保留 | 实践映射 |
|
|
132
|
+
| `DESIGN-cursor.md` / `DESIGN-lovable.md` | 保留 | 视觉 |
|
|
133
|
+
| ~~`2026-07-14-loop-agent-self-update-notifier.md`~~ | **已归档** | 见上 |
|
|
134
|
+
| ~~`2026-07-16-priority-ready-planner-contract.md`~~ | **已归档** | 见上 |
|
|
135
|
+
|
|
136
|
+
### 暂不建议归档(但可标注「部分落地」)
|
|
137
|
+
|
|
138
|
+
- **knowledge 四件套 + full-chain\***:exec-plan 已 complete,但设计文仍是目录/schema/增量协议的权威;归档会切断引用习惯。若未来拆出「实现状态」短页,可把**纯进度段落**迁 archive,规格正文仍留根。
|
|
139
|
+
- **六个月规划 / Dynamic Workflow roadmap**:含未来月与未完成 primitive;只做页首校准,整篇归档会丢前瞻。
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## 命名约定(2026-07-09 起)
|
|
144
|
+
|
|
145
|
+
| 名称 | 含义 | 状态 |
|
|
146
|
+
|---|---|---|
|
|
147
|
+
| `loop-agent` | 仓库本地 runtime / 治理控制器 CLI | 已发布 |
|
|
148
|
+
| `agent-worker` | 产品线 TaskSpec 批处理适配层 CLI | 已发布 |
|
|
149
|
+
| `agent-platform` | 早期规划设想名;**不是**当前 CLI | 仅未来 monorepo/上层服务语境 |
|
|
150
|
+
|
|
151
|
+
```text
|
|
152
|
+
产品线 docs / TaskSpec / TaskGraph
|
|
153
|
+
→ agent-worker(本地批处理适配)
|
|
154
|
+
→ loop-agent(runtime kernel)
|
|
155
|
+
→ Pi(受治理 Agent) / shell / static
|
|
156
|
+
→ cursor-prompt(显式手工 one-shot sidecar,非受治理 writer)
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
## 维护规则
|
|
160
|
+
|
|
161
|
+
1. 保持 TaskSpec 字段、status、failure category、命令示例与契约文档一致。
|
|
162
|
+
2. 未来平台组件标为目标架构,除非已存在于 `src/` 或 `scripts/`。
|
|
163
|
+
3. 命令示例只用 `agent-worker` / `loop-agent`。
|
|
164
|
+
4. `config-types` / profile routing 变更时更新 mapping 文档。
|
|
165
|
+
5. failure / Task Pool state 变更时更新 taxonomy。
|
|
166
|
+
6. **过期月规划 / 已关闭实现合同**迁入 `archive/`,并更新本 README。
|
|
167
|
+
7. 运行 `bash scripts/check-repo.sh`(或至少 check-doc-index / check-doc-links)。
|