@haiyangbg/buildbeat 3.2.0 → 3.3.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.
Files changed (43) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.en.md +3 -3
  3. package/SKILL.md +5 -7
  4. package/docs/CAPABILITY-MATRIX.md +1 -1
  5. package/docs/README.md +1 -0
  6. package/docs/RELEASING.md +3 -3
  7. package/docs/v2/RFC-0001-product-definition.md +1 -1
  8. package/docs/v2/RFC-0002-domain-model.md +1 -1
  9. package/docs/v2/RFC-0003-workflow-policy.md +1 -1
  10. package/docs/v2/SPEC-0001-events-v1.md +2 -2
  11. package/docs/v2/guide/00-how-to-talk.en.md +61 -0
  12. package/docs/v2/guide/00-how-to-talk.md +2 -0
  13. package/docs/v2/guide/01-quickstart.en.md +2 -2
  14. package/docs/v2/guide/01-quickstart.md +2 -2
  15. package/docs/v2/guide/02-workflow-guide.en.md +127 -0
  16. package/docs/v2/guide/02-workflow-guide.md +7 -3
  17. package/docs/v2/guide/03-policy-guide.en.md +55 -0
  18. package/docs/v2/guide/03-policy-guide.md +2 -0
  19. package/docs/v2/guide/04-adapter-guide.en.md +66 -0
  20. package/docs/v2/guide/04-adapter-guide.md +2 -0
  21. package/docs/v2/guide/05-worker-contract.en.md +60 -0
  22. package/docs/v2/guide/05-worker-contract.md +2 -0
  23. package/docs/v2/guide/07-approval-guide.en.md +2 -2
  24. package/docs/v2/guide/07-approval-guide.md +4 -3
  25. package/docs/v2/guide/09-security-boundaries.en.md +41 -0
  26. package/docs/v2/guide/09-security-boundaries.md +3 -1
  27. package/docs/v2/guide/README.en.md +36 -0
  28. package/docs/v2/guide/README.md +8 -6
  29. package/docs/v2/skill/03-collaboration-rules.md +1 -1
  30. package/docs/v2/skill/04-rhythm-and-rituals.md +3 -1
  31. package/docs/v2/skill/06-bootstrap-and-takeover.md +1 -1
  32. package/example/AGENTS.md +1 -1
  33. package/example/delivery/work/WORK-EXPORT-DATE-FILTER/run-config.yaml +1 -3
  34. package/example/delivery/work/WORK-EXPORT-DATE-FILTER/workflow.yaml +3 -5
  35. package/package.json +3 -3
  36. package/src/v2/cli/run.js +43 -22
  37. package/src/v2/presets/software-delivery.yaml +3 -5
  38. package/src/v2/runtime/decisions.js +16 -0
  39. package/src/v2/runtime/notify.js +1 -1
  40. package/src/v2/runtime/orchestrator.js +504 -404
  41. package/src/v2/runtime/overview.js +2 -1
  42. package/templates/v2/AGENTS.md +1 -1
  43. package/templates/v2/run-config.example.yaml +5 -7
@@ -196,7 +196,8 @@ export function computeOverview(repoRoot, { work = null, repoLabel = "." } = {})
196
196
  : `buildbeat accept --repo ${repoLabel} --work ${workId} --artifact intent --by <you>`;
197
197
  } else if (!plan.accepted) {
198
198
  stage = plan.stale ? "PLAN_STALE" : "PLAN_DRAFT";
199
- next = `buildbeat accept --repo ${repoLabel} --work ${workId} --artifact plan --by <you>${plan.stale ? " # plan changed since acceptance" : ""}`;
199
+ const artifacts = intent.accepted ? "plan" : "intent,plan";
200
+ next = `buildbeat accept --repo ${repoLabel} --work ${workId} --artifact ${artifacts} --by <you>${plan.stale ? " # plan changed since acceptance" : ""}`;
200
201
  } else {
201
202
  stage = "READY_TO_RUN";
202
203
  const configs = readdirSync(workDir).filter((name) => /^run-config.*\.ya?ml$/.test(name));
@@ -44,7 +44,7 @@
44
44
  **③ 交接靠 candidate hash + 台账** —— Run 停在合并决定时 candidate 已由 Git 回读固定;跨会话接力读 `delivery/work/<id>/` 即知全部事实,hash 不得编造。
45
45
  **④ 护栏与不可逆动作** —— 开工 `overview`;部署/改契约/migration 等不可逆动作前再核一次并走人批;exit 0 不消除 `warning/unverified`。
46
46
  **⑤ 风险分轨** —— Risk Preset:`fast`(仅 merge 人批)/ `standard`(plan+merge,默认)/ `controlled`(intent+plan+merge+release)/ `release`(上线回读车道)。
47
- **⑥ 核查门** —— Run 内 reviewer 只读、结构化 findings;`reviewTriage: required` 时 P0/P1 先过人分诊再派 fixer;review 每 Run 默认 2 轮封顶。**完成 = hash + 可核验证据**;标准轨最低 L3,上线必须 L4。`UNVERIFIED` 永不当作通过。
47
+ **⑥ 核查门** —— Run 内 reviewer 只读、结构化 findings;`reviewTriage: required` 时 P0/P1 先过人分诊再派 fixer;review 不收敛(修过的 finding 又出现,或阻断数多于上一轮)即停人,每 Work 默认 6 轮兜底(`reviewRoundsPerWork`)。**完成 = hash + 可核验证据**;标准轨最低 L3,上线必须 L4。`UNVERIFIED` 永不当作通过。
48
48
  **⑦ 状态单点** —— 事实进 Run 证据与 Work 记录;进度看 `overview`,度量看 `metrics`(本地只读)。
49
49
  **⑧ 视觉问题带图对比** —— 提 UI bug 必附『实现截图 ⟷ 设计稿截图』并排 + 标注差异点。
50
50
  **⑨ 单点事实** —— 线上版本只信实查(`observe status` / 部署平台);任何文档不写「当前线上 vX」;每个收敛后的真实决策包只在 `pm/decisions.md` 记一行;历史台账不回改。
@@ -14,14 +14,12 @@ entry: build
14
14
  allowedPaths:
15
15
  - src
16
16
  - tests
17
- # P0/P1 finding 先过人分诊再派 fixer;不需要就删掉这行
18
- reviewTriage: required
19
- # 非只读步成功不扣次数;review 按轮计费。到顶的阻断 review 在 enter-fix 一次批准修复、重验、再审。
20
- # Run/Work 上限同时到顶只问一次;总 attempt 超过(配置值 + 人批扩额)的 3 倍前仍兜底停人。
21
- # 可省;run 配置 > 预设 > 默认。reviewRoundsPerWork 是跨本 Work 所有 Run 累计的 review 轮数上限(对应 intent 的止损线)
17
+ # off = P0/P1 finding 直接派 fixer;高风险项目改成 required,每轮先停人分诊再派 fixer
18
+ reviewTriage: off
19
+ # 非只读步成功不扣次数;review 按轮计费。review 不收敛(修过的 finding 又出现,或阻断数多于上一轮)才在 enter-fix 停人。
20
+ # reviewRoundsPerWork 是 review 轮数唯一的上限(默认 6),跨本 Work 所有 Run 累计,对应 intent 的止损线;
21
+ # 到顶的阻断 review 在 enter-fix 一次批准修复、重验、再审。总 attempt 超过(配置值 + 人批扩额)的 3 倍前仍兜底停人。
22
22
  budgets:
23
- maxAttempts:
24
- review: 2
25
23
  reviewRoundsPerWork: 6
26
24
  # 默认一个仓库同时只驱动一个 Run。确认本项目的测试不抢固定端口、不共用数据库后,
27
25
  # 可加 parallel: true,让本 Work 的 Run 与其他同样打开开关的 Work 并行(同一 Work 仍互斥)