@openprd/cli 0.1.19 → 0.1.21
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/.openprd/changes/openprd-control-plane-v020/.openprd.yaml +2 -0
- package/.openprd/changes/openprd-control-plane-v020/design.md +78 -0
- package/.openprd/changes/openprd-control-plane-v020/proposal.md +54 -0
- package/.openprd/changes/openprd-control-plane-v020/specs/agent-requirements/spec.md +16 -0
- package/.openprd/changes/openprd-control-plane-v020/task-events.jsonl +27 -0
- package/.openprd/changes/openprd-control-plane-v020/tasks-002.md +35 -0
- package/.openprd/changes/openprd-control-plane-v020/tasks.md +427 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/.openprd.yaml +2 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/design.md +52 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/proposal.md +35 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/specs/agent-requirements/spec.md +16 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/task-events.jsonl +1 -0
- package/.openprd/changes/remove-session-tracking-humane-approval/tasks.md +170 -0
- package/.openprd/design/active/asset-spec.md +19 -14
- package/.openprd/design/active/direction-plan.md +19 -3
- package/.openprd/design/active/facts-sheet.md +16 -7
- package/.openprd/design/active/image-preflight.md +6 -5
- package/.openprd/design/active/review-studio-v020-directions/compare-plan.json +34 -0
- package/.openprd/design/active/review-studio-v020-directions/contact-sheet.jpg +0 -0
- package/.openprd/design/active/review-studio-v020-directions/crops/01.png +0 -0
- package/.openprd/design/active/review-studio-v020-directions/crops/02.png +0 -0
- package/.openprd/design/active/review-studio-v020-directions/crops/03.png +0 -0
- package/.openprd/design/active/review-studio-v020-directions/focus-board.template.json +69 -0
- package/.openprd/design/active/review-studio-v020-directions/parallel-board.template.json +45 -0
- package/.openprd/design/active/review-studio-v020-directions/reference-set.json +143 -0
- package/.openprd/design/active/review-studio-v020-directions/source.png +0 -0
- package/.openprd/design/active/selected-direction.md +23 -9
- package/.openprd/engagements/active/control-plane-architecture.json +203 -0
- package/.openprd/engagements/active/control-plane-intake.json +418 -0
- package/.openprd/engagements/active/prd.md +183 -119
- package/.openprd/engagements/active/review-presentation-v0018.json +176 -0
- package/.openprd/i18n-config.json +12 -0
- package/.openprd/ledger/events.jsonl +6 -0
- package/.openprd/ledger/heads/ebea1a71a9daa566f1c91b53.json +10 -0
- package/.openprd/manifest.json +21 -0
- package/AGENTS.md +1 -0
- package/README.md +2 -0
- package/README_EN.md +2 -0
- package/package.json +1 -1
- package/skills/openprd-frontend-design/SKILL.md +16 -0
- package/skills/openprd-harness/SKILL.md +1 -1
- package/skills/openprd-quality/SKILL.md +1 -1
- package/skills/openprd-requirement-intake/SKILL.md +1 -1
- package/skills/openprd-shared/SKILL.md +1 -1
- package/src/adapters/adapter-spi.js +193 -0
- package/src/adapters/capability-envelope.js +98 -0
- package/src/adapters/event-normalizer.js +55 -0
- package/src/adapters/index.js +4 -0
- package/src/adapters/install-safety.js +249 -0
- package/src/agent-canonical-content.js +4 -2
- package/src/agent-integration.js +147 -42
- package/src/cli/args.js +63 -4
- package/src/cli/gate-print.js +17 -0
- package/src/cli/quality-commands.js +18 -0
- package/src/cli/quality-print.js +10 -0
- package/src/cli/runtime-print.js +24 -0
- package/src/codex-hook-runner-template.mjs +65 -77
- package/src/codex-runtime.js +48 -5
- package/src/context/cache.js +245 -0
- package/src/context/compiler.js +438 -0
- package/src/context/constants.js +30 -0
- package/src/context/index.js +39 -0
- package/src/context/redaction.js +84 -0
- package/src/context/stable.js +69 -0
- package/src/context/telemetry.js +42 -0
- package/src/dev-standards.js +57 -0
- package/src/fleet.js +112 -95
- package/src/gates/index.js +2 -0
- package/src/gates/scoped-gates.js +256 -0
- package/src/gates/store.js +126 -0
- package/src/gates/workspace.js +41 -0
- package/src/html-artifacts.js +725 -28
- package/src/kernel/atomic-store.js +299 -0
- package/src/kernel/event-envelope.js +166 -0
- package/src/kernel/index.js +4 -0
- package/src/kernel/project-ledger.js +467 -0
- package/src/kernel/project-manifest.js +205 -0
- package/src/knowledge-v3/index.js +1 -0
- package/src/knowledge-v3/lifecycle.js +290 -0
- package/src/knowledge.js +14 -7
- package/src/openprd.js +71 -2
- package/src/review-model.js +413 -0
- package/src/review-presentation.js +1 -1
- package/src/run-harness.js +431 -37
- package/src/runtime/cli_runtime_README.md +28 -0
- package/src/runtime/errors.js +66 -0
- package/src/runtime/index.js +44 -0
- package/src/runtime/lane-schema.js +141 -0
- package/src/runtime/lane-store.js +279 -0
- package/src/runtime/task-runtime.js +449 -0
- package/src/runtime/workspace.js +179 -0
- package/src/runtime/write-set.js +206 -0
- package/src/session-binding.js +16 -3
- package/src/session-registry.js +59 -1
- package/src/upgrade/fleet-mutation.js +166 -0
- package/src/upgrade/fleet-transaction.js +398 -0
- package/src/upgrade/transaction-store.js +416 -0
- package/src/visual-compare-core.js +66 -27
- package/src/visual-compare.js +18 -12
- package/src/workspace-core.js +109 -7
- package/src/workspace-registry.js +39 -1
- package/src/workspace-workflow.js +18 -15
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# 设计
|
|
2
|
+
|
|
3
|
+
## 背景
|
|
4
|
+
|
|
5
|
+
0.1.19 已暴露多真相源、并发和跨版本迁移风险,需要在 0.1.20 建立兼容控制平面
|
|
6
|
+
|
|
7
|
+
## 目标
|
|
8
|
+
|
|
9
|
+
- 用唯一 Project Ledger 管理项目业务事实,并把 current、task graph、review、knowledge index 等降为可重建投影
|
|
10
|
+
- 用 Lane/Task Runtime 支持同项目多线程、多 Agent、多 worktree 安全 claim、lease、heartbeat、write-set 与 CAS
|
|
11
|
+
- 用 Context Compiler 向 Agent 提供最精准、最小 token、可缓存、可增量、可解释且默认只读的上下文
|
|
12
|
+
- 用 scoped Evidence 和 Gate 让局部任务不被无关项目债务阻断,同时保持发布级门禁
|
|
13
|
+
- 从同一 ReviewModel 生成小白可懂的业务视图和工程可执行视图,并保持同一 digest 与决策链
|
|
14
|
+
- 统一 Codex、Cursor、Claude Code 的 Adapter SPI、能力协商、事件归一和跨版本协议
|
|
15
|
+
- 把 Knowledge Evolution 变为有作用域、证据、有效期、替代链和可回滚的持续维护系统
|
|
16
|
+
- 安全将产品版本升级到 0.1.20,并刷新所有真实本地 OpenPrd 安装与旧项目
|
|
17
|
+
|
|
18
|
+
## 范围
|
|
19
|
+
|
|
20
|
+
- Project Manifest、Event Envelope、Atomic Store、Project Ledger 与可重建投影
|
|
21
|
+
- Session/Lane/Task Runtime:claim、lease、heartbeat、write-set、CAS、worktree/branch trace
|
|
22
|
+
- Context Capsule、Delta、Cache、token budget、authority/freshness、引用解析与 secret redaction
|
|
23
|
+
- project/change/work-unit/task/lane/operation 分级 Gate 与 Evidence
|
|
24
|
+
- Review canonical model、业务/工程双投影、决策与 Canvas 标注绑定
|
|
25
|
+
- Knowledge v3 生命周期、检索预算、telemetry 分离、Learning/Growth 边界
|
|
26
|
+
- Codex/Cursor/Claude Code Adapter SPI、能力协商、runtime detection 与生成文件漂移修复
|
|
27
|
+
- 协议/reader/writer/adapter/projection 版本、N/N-1 兼容、幂等迁移、备份与回滚
|
|
28
|
+
- fleet nested legacy 扫描、symlink 安全、registry 隔离/压缩和真实本地项目批量刷新
|
|
29
|
+
- 面向普通用户的中文产品文案、i18n 提醒和 Review Studio 视觉交互验证
|
|
30
|
+
|
|
31
|
+
## 约束
|
|
32
|
+
|
|
33
|
+
- 保持现有 CLI、JSONL/JSON workspace 与 Codex/Claude/Cursor 生成路径的向后兼容
|
|
34
|
+
- 当前 git worktree 含既有 i18n 和 unfinished session 修改,必须保留用户改动并分层整合,禁止 reset/stash
|
|
35
|
+
- Repo-local canonical source 与生成文件必须区分,写入前检查任一路径祖先是否为 symlink
|
|
36
|
+
- 测试必须使用隔离 OPENPRD_HOME,禁止污染真实全局 registry
|
|
37
|
+
- Review Studio 改动必须复用现有视觉系统并提供前后、焦点、验证与对齐证据
|
|
38
|
+
- 上下文与日志不得包含 API key、token、账号、个人隐私或未脱敏 prompt 原文
|
|
39
|
+
- 迁移备份只包含当前任务需要的最小文件并保留本机权限,不向外发送
|
|
40
|
+
- 不修改用户归档、远程仓库或生产环境
|
|
41
|
+
- 现有 OpenPrd CLI、skills、hooks、workspace schema、review renderer、quality/standards/test infrastructure
|
|
42
|
+
- 本机 Node.js、npm 全局软链接与真实 OpenPrd 项目 inventory
|
|
43
|
+
- Codex、Cursor、Claude Code 当前可观测的 runtime capability 与生成协议
|
|
44
|
+
|
|
45
|
+
## 业务护栏
|
|
46
|
+
|
|
47
|
+
- 成本来源: 全量线程与项目扫描、并发压力测试、Review 视觉验证、旧项目备份和批量迁移
|
|
48
|
+
- 成本来源: 重复上下文注入和过宽文档读取造成的 token 与执行时间
|
|
49
|
+
- 额度限制: 默认 context Capsule 800 tokens,Delta 250 tokens;超预算需可解释裁剪
|
|
50
|
+
- 额度限制: 真实 fleet 按 Home、Projects、Context、活跃 worktree 分批执行,归档不纳入
|
|
51
|
+
- 额度限制: 单项目迁移失败不继续覆盖该项目,也不阻断已经验证成功的其他项目
|
|
52
|
+
- 滥用防护: 高风险操作绑定明确 lane/operation approval ID,短句确认不能放行其他 lane
|
|
53
|
+
- 滥用防护: Symlink 路径、too-new schema、dirty archive 分类不明时拒绝破坏性写入
|
|
54
|
+
- 滥用防护: Context 编译进行 secret redaction,Knowledge promotion 需要证据和 reviewer
|
|
55
|
+
- 监控信号: context token、cold/warm p50/p95、cache hit、included/excluded reason
|
|
56
|
+
- 监控信号: claim 冲突、lease recovery、CAS conflict、lost update、write-set overlap
|
|
57
|
+
- 监控信号: projection digest、migration digest、rollback result、adapter drift、registry stale count
|
|
58
|
+
- 监控信号: 业务 Review 完成率、需求修订次数、用户可理解性检查与技术词泄漏
|
|
59
|
+
- 报警阈值: 任何 lost update、错误项目写入、归档 checksum 变化、secret 泄漏或无法回滚均为阻断
|
|
60
|
+
- 报警阈值: Context 超预算、p95 超 SLO、adapter fixture 不一致或 migration 对账不一致阻断真实 fleet
|
|
61
|
+
- 报警阈值: 质量报告 productionReady=false 时不得声称整体完成
|
|
62
|
+
- 止损动作: 切回 legacy read/storageMode,停止后续批次并按项目 restore preimage
|
|
63
|
+
- 止损动作: 保留失败报告、revision、digest 和 capability gap,不用写死逻辑绕过门禁
|
|
64
|
+
- 止损动作: 对分类不明的归档、副本或 symlink 目标保持只读
|
|
65
|
+
|
|
66
|
+
## 风险与开放问题
|
|
67
|
+
|
|
68
|
+
- 假设: 0.1.20 可在不移除 legacy 文件的前提下交付兼容控制平面纵向能力
|
|
69
|
+
- 假设: 现有 43 个活跃真实项目与历史 0.1.15/0.1.19 fixture 足以覆盖主要迁移形态
|
|
70
|
+
- 假设: Codex、Cursor、Claude Code 平台差异可通过 capability negotiation 明确表达
|
|
71
|
+
- 风险: 改造横跨状态、hook、CLI、review、knowledge 与迁移,若没有兼容分层会形成大爆炸式回归
|
|
72
|
+
- 风险: 当前 dirty worktree 与语义污染状态可能把既有用户改动误当成稳定基线
|
|
73
|
+
- 风险: Home 级 Skill symlink 与通用 skills-sync 可能再次制造跨适配器漂移
|
|
74
|
+
- 风险: 全局 registry 已被测试临时目录污染,直接 compact 或 fleet 可能误删仍需的定位索引
|
|
75
|
+
- 风险: Review 双投影若没有 canonical digest 会再次产生两套真相
|
|
76
|
+
- 问题: Ledger 默认读路径在 0.1.20 是否切换到 dual-read,或先保持 legacy-read + shadow ledger;本轮以安全对账结果决定
|
|
77
|
+
- 问题: Home 全局 Skill 最终采用 adapter-neutral shared 内容还是让外部 skills-sync 排除 OpenPrd;本轮优先实现兼容 shared 内容与 symlink fence
|
|
78
|
+
- 问题: 历史 Documents 归档保持不可变,只验证 scanner 排除,不纳入版本刷新
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# OpenPrd 可解释项目控制平面与跨工具上下文升级
|
|
2
|
+
|
|
3
|
+
## 背景与原因
|
|
4
|
+
|
|
5
|
+
统一项目事实、并发运行态和上下文编译,降低 token、延迟、错误目标与长期维护成本
|
|
6
|
+
|
|
7
|
+
## 变更内容
|
|
8
|
+
|
|
9
|
+
- Project Manifest、Event Envelope、Atomic Store、Project Ledger 与可重建投影
|
|
10
|
+
- Session/Lane/Task Runtime:claim、lease、heartbeat、write-set、CAS、worktree/branch trace
|
|
11
|
+
- Context Capsule、Delta、Cache、token budget、authority/freshness、引用解析与 secret redaction
|
|
12
|
+
- project/change/work-unit/task/lane/operation 分级 Gate 与 Evidence
|
|
13
|
+
- Review canonical model、业务/工程双投影、决策与 Canvas 标注绑定
|
|
14
|
+
- Knowledge v3 生命周期、检索预算、telemetry 分离、Learning/Growth 边界
|
|
15
|
+
- Codex/Cursor/Claude Code Adapter SPI、能力协商、runtime detection 与生成文件漂移修复
|
|
16
|
+
- 协议/reader/writer/adapter/projection 版本、N/N-1 兼容、幂等迁移、备份与回滚
|
|
17
|
+
- fleet nested legacy 扫描、symlink 安全、registry 隔离/压缩和真实本地项目批量刷新
|
|
18
|
+
- 面向普通用户的中文产品文案、i18n 提醒和 Review Studio 视觉交互验证
|
|
19
|
+
- 提供 project manifest、ledger append/read/head/verify/rebuild、projection replay API
|
|
20
|
+
- 提供 task claim/heartbeat/release、lease recovery、write-set conflict、lane binding API 与 CLI
|
|
21
|
+
- 提供 context compile/diff/cache/render/reference API,保持 run --context 兼容入口
|
|
22
|
+
- 提供 scoped gate/evidence evaluation 与明确 approval ID 绑定
|
|
23
|
+
- 提供 ReviewModel 业务/工程投影与稳定确认合同
|
|
24
|
+
- 提供 adapter detect/capabilities/install/normalize/render/handoff SPI
|
|
25
|
+
- 提供 Knowledge v3 validate/promote/deprecate/supersede/query 生命周期
|
|
26
|
+
- 提供 upgrade plan/dry-run/backup/atomic apply/restore 与 fleet 安全批处理
|
|
27
|
+
- 提供 registry prune/compact 与测试环境 OPENPRD_HOME 隔离
|
|
28
|
+
- 全量单元、集成、并发、迁移、回滚、性能和三平台契约测试通过
|
|
29
|
+
- 最新 Markdown/HTML 测试报告、质量报告、架构与视觉证据可追溯
|
|
30
|
+
- standards、quality、run verify 与 doctor 在发布/刷新前全部健康
|
|
31
|
+
- 所有真实项目刷新报告包含版本、checksum、备份、迁移结果和失败回滚状态
|
|
32
|
+
|
|
33
|
+
## 能力范围
|
|
34
|
+
|
|
35
|
+
- `agent-requirements`: OpenPrd 可解释项目控制平面与跨工具上下文升级 需求。
|
|
36
|
+
|
|
37
|
+
## 影响范围
|
|
38
|
+
|
|
39
|
+
- 主要用户: 用自然语言驱动 Codex、Cursor、Claude Code 完成产品开发的非专业或半专业用户
|
|
40
|
+
- 主要用户: 在同一代码项目中并发运行多个 Agent、线程、worktree 的开发者
|
|
41
|
+
- 主要用户: 需要持续维护需求、代码健康、知识与版本迁移的项目负责人
|
|
42
|
+
- 成本来源: 全量线程与项目扫描、并发压力测试、Review 视觉验证、旧项目备份和批量迁移
|
|
43
|
+
- 成本来源: 重复上下文注入和过宽文档读取造成的 token 与执行时间
|
|
44
|
+
- 额度限制: 默认 context Capsule 800 tokens,Delta 250 tokens;超预算需可解释裁剪
|
|
45
|
+
- 额度限制: 真实 fleet 按 Home、Projects、Context、活跃 worktree 分批执行,归档不纳入
|
|
46
|
+
- 额度限制: 单项目迁移失败不继续覆盖该项目,也不阻断已经验证成功的其他项目
|
|
47
|
+
- 依赖: 现有 OpenPrd CLI、skills、hooks、workspace schema、review renderer、quality/standards/test infrastructure
|
|
48
|
+
- 依赖: 本机 Node.js、npm 全局软链接与真实 OpenPrd 项目 inventory
|
|
49
|
+
- 依赖: Codex、Cursor、Claude Code 当前可观测的 runtime capability 与生成协议
|
|
50
|
+
- 风险: 改造横跨状态、hook、CLI、review、knowledge 与迁移,若没有兼容分层会形成大爆炸式回归
|
|
51
|
+
- 风险: 当前 dirty worktree 与语义污染状态可能把既有用户改动误当成稳定基线
|
|
52
|
+
- 风险: Home 级 Skill symlink 与通用 skills-sync 可能再次制造跨适配器漂移
|
|
53
|
+
- 风险: 全局 registry 已被测试临时目录污染,直接 compact 或 fleet 可能误删仍需的定位索引
|
|
54
|
+
- 风险: Review 双投影若没有 canonical digest 会再次产生两套真相
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
## 新增需求
|
|
2
|
+
|
|
3
|
+
### 需求:OpenPrd 可解释项目控制平面与跨工具上下文升级
|
|
4
|
+
统一项目事实、并发运行态和上下文编译,降低 token、延迟、错误目标与长期维护成本
|
|
5
|
+
|
|
6
|
+
#### 场景:主流程成功
|
|
7
|
+
- **当** Agent 进入已有项目,Adapter 识别运行环境,Context Compiler 基于 lane/task/revision 在预算内生成 Capsule 或 Delta
|
|
8
|
+
- **则** 全量单元、集成、并发、迁移、回滚、性能和三平台契约测试通过
|
|
9
|
+
|
|
10
|
+
#### 场景:边界情况保持可见
|
|
11
|
+
- **当** 同一 session ID 在多个工作区有线索时不语义猜测,返回候选和安全阻断
|
|
12
|
+
- **则** 产品应保持该情况明确可见,以支持实现和验证
|
|
13
|
+
|
|
14
|
+
#### 场景:失败模式得到处理
|
|
15
|
+
- **当** expectedRevision 不一致时返回 OPENPRD_REVISION_CONFLICT,不覆盖新状态
|
|
16
|
+
- **则** 产品应提供有边界且可评审的结果
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{"version":1,"at":"2026-07-11 03:10:46","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.01","taskTitle":"评审生成的 spec 覆盖","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"Spec、PRD、架构、可视评审与验收边界已覆盖并由报告索引。"}
|
|
2
|
+
{"version":1,"at":"2026-07-11 03:10:58","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.02","taskTitle":"对齐共享契约与 Host API 调用边界","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
3
|
+
{"version":1,"at":"2026-07-11 03:10:58","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.03","taskTitle":"接通界面入口、导航与页面挂载","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
4
|
+
{"version":1,"at":"2026-07-11 03:10:58","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.04","taskTitle":"提供 project manifest、ledger append/read/head/verify/rebuild、projection replay API","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
5
|
+
{"version":1,"at":"2026-07-11 03:10:59","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.05","taskTitle":"提供 task claim/heartbeat/release、lease recovery、write-set conflict、lane binding API 与 CLI","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
6
|
+
{"version":1,"at":"2026-07-11 03:10:59","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.06","taskTitle":"提供 context compile/diff/cache/render/reference API,保持 run --context 兼容入口","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
7
|
+
{"version":1,"at":"2026-07-11 03:10:59","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.07","taskTitle":"提供 scoped gate/evidence evaluation 与明确 approval ID 绑定","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
8
|
+
{"version":1,"at":"2026-07-11 03:10:59","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.08","taskTitle":"提供 ReviewModel 业务/工程投影与稳定确认合同","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
9
|
+
{"version":1,"at":"2026-07-11 03:10:59","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.09","taskTitle":"提供 adapter detect/capabilities/install/normalize/render/handoff SPI","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
10
|
+
{"version":1,"at":"2026-07-11 03:10:59","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.10","taskTitle":"提供 Knowledge v3 validate/promote/deprecate/supersede/query 生命周期","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
11
|
+
{"version":1,"at":"2026-07-11 03:10:59","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.11","taskTitle":"提供 upgrade plan/dry-run/backup/atomic apply/restore 与 fleet 安全批处理","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
12
|
+
{"version":1,"at":"2026-07-11 03:10:59","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.12","taskTitle":"提供 registry prune/compact 与测试环境 OPENPRD_HOME 隔离","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
13
|
+
{"version":1,"at":"2026-07-11 03:11:00","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.13","taskTitle":"打通主流程闭环:Agent 进入已有项目,Adapter 识别运行环境,Context Compiler 基于 lane/tas 等 6 项","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
14
|
+
{"version":1,"at":"2026-07-11 03:11:00","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.14","taskTitle":"验证全量单元、集成、并发、迁移、回滚、性能和三平台契约测试通过","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
15
|
+
{"version":1,"at":"2026-07-11 03:11:00","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.15","taskTitle":"验证最新 Markdown/HTML 测试报告、质量报告、架构与视觉证据可追溯","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现与任务级证据已登记,完整测试、交互和环境刷新结果见统一验证报告。"}
|
|
16
|
+
{"version":1,"at":"2026-07-11 03:17:38","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.16","taskTitle":"验证standards、quality、run verify 与 doctor 在发布/刷新前全部健康","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"standards、run verify 与 doctor 已通过;quality 唯一 attention 为尚未闭合的后续任务账本,待全部任务登记后最终复跑。"}
|
|
17
|
+
{"version":1,"at":"2026-07-11 03:17:38","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.17","taskTitle":"验证所有真实项目刷新报告包含版本、checksum、备份、迁移结果和失败回滚状态","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现、非功能约束、真实环境刷新、文档与治理证据已登记。"}
|
|
18
|
+
{"version":1,"at":"2026-07-11 03:17:38","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.18","taskTitle":"回归非功能约束:Node.js 20.19+,优先零新增运行时依赖,复用现有 YAML 与 Sharp 等 2 项","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现、非功能约束、真实环境刷新、文档与治理证据已登记。"}
|
|
19
|
+
{"version":1,"at":"2026-07-11 03:17:39","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.19","taskTitle":"回归非功能约束:读取路径默认无业务状态写入;telemetry 与事实真相分离 等 2 项","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现、非功能约束、真实环境刷新、文档与治理证据已登记。"}
|
|
20
|
+
{"version":1,"at":"2026-07-11 03:17:39","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.20","taskTitle":"回归非功能约束:新旧 CLI 在一个兼容周期内保持字段与退出码兼容,并标注 deprecated 字段 等 2 项","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现、非功能约束、真实环境刷新、文档与治理证据已登记。"}
|
|
21
|
+
{"version":1,"at":"2026-07-11 03:17:39","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.21","taskTitle":"回归边界条件与失败处理:边界情况:同一 session ID 在多个工作区有线索时不语义猜测,返回候选和安全阻断 等 12 项","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现、非功能约束、真实环境刷新、文档与治理证据已登记。"}
|
|
22
|
+
{"version":1,"at":"2026-07-11 03:17:39","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.22","taskTitle":"验证成本与额度护栏","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现、非功能约束、真实环境刷新、文档与治理证据已登记。"}
|
|
23
|
+
{"version":1,"at":"2026-07-11 03:17:40","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.23","taskTitle":"验证滥用与越权路径","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现、非功能约束、真实环境刷新、文档与治理证据已登记。"}
|
|
24
|
+
{"version":1,"at":"2026-07-11 03:17:40","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.24","taskTitle":"验证成本监控、报警和止损","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现、非功能约束、真实环境刷新、文档与治理证据已登记。"}
|
|
25
|
+
{"version":1,"at":"2026-07-11 03:17:40","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.25","taskTitle":"维护 docs/basic 项目基础文档","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现、非功能约束、真实环境刷新、文档与治理证据已登记。"}
|
|
26
|
+
{"version":1,"at":"2026-07-11 03:17:40","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.26","taskTitle":"更新文件说明书和文件夹 README","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现、非功能约束、真实环境刷新、文档与治理证据已登记。"}
|
|
27
|
+
{"version":1,"at":"2026-07-11 03:17:40","changeId":"openprd-control-plane-v020","action":"advance","taskId":"T001.27","taskTitle":"运行 OpenPrd spec 校验","ok":true,"verify":null,"evidence":".openprd/harness/test-reports/openprd-control-plane-v020-20260711.md","notes":"实现、非功能约束、真实环境刷新、文档与治理证据已登记。"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# 任务
|
|
2
|
+
|
|
3
|
+
- [x] T001.26 更新文件说明书和文件夹 README
|
|
4
|
+
- type: documentation
|
|
5
|
+
- deps: T001.25
|
|
6
|
+
- done: 本次变更涉及的文件说明书和文件夹 README 已检查;缺失的已补齐,过期的已更新
|
|
7
|
+
- verify: openprd standards . --verify
|
|
8
|
+
- test-layer: manual
|
|
9
|
+
- test-size: manual
|
|
10
|
+
- test-scope: docs
|
|
11
|
+
- evidence-plan: openprd standards . --verify
|
|
12
|
+
- upgrade-reason: 文档任务以标准校验和人工审查证据为主
|
|
13
|
+
- execution-mode: parallel-workers
|
|
14
|
+
- parallel-group: docs
|
|
15
|
+
- write-scope: docs/basic/**, README*.md
|
|
16
|
+
- owner-role: worker
|
|
17
|
+
- local-verify: openprd standards . --verify
|
|
18
|
+
- integration-owner: main-agent
|
|
19
|
+
|
|
20
|
+
- [x] T001.27 运行 OpenPrd spec 校验
|
|
21
|
+
- type: governance
|
|
22
|
+
- deps: T001.26
|
|
23
|
+
- done: 生成的 change 通过 OpenPrd 校验
|
|
24
|
+
- verify: openprd change . --validate --change openprd-control-plane-v020
|
|
25
|
+
- test-layer: manual
|
|
26
|
+
- test-size: manual
|
|
27
|
+
- test-scope: governance
|
|
28
|
+
- evidence-plan: openprd change . --validate --change openprd-control-plane-v020
|
|
29
|
+
- upgrade-reason: 治理任务以结构校验、评审确认和变更状态证据为主
|
|
30
|
+
- execution-mode: serial
|
|
31
|
+
- parallel-group: governance
|
|
32
|
+
- write-scope: .openprd/changes/**, .openprd/**
|
|
33
|
+
- owner-role: main-agent
|
|
34
|
+
- local-verify: openprd change . --validate --change openprd-control-plane-v020
|
|
35
|
+
- integration-owner: main-agent
|