@accelerator-mzq/forge 3.0.0 → 4.0.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/README.md +12 -12
- package/dist/cli/commands/ack.d.ts.map +1 -1
- package/dist/cli/commands/ack.js +87 -12
- package/dist/cli/commands/ack.js.map +1 -1
- package/dist/cli/commands/archive.d.ts +32 -33
- package/dist/cli/commands/archive.d.ts.map +1 -1
- package/dist/cli/commands/archive.js +339 -667
- package/dist/cli/commands/archive.js.map +1 -1
- package/dist/cli/commands/legacy-bridge.js +1 -1
- package/dist/cli/commands/legacy-bridge.js.map +1 -1
- package/dist/cli/commands/upgrade.d.ts.map +1 -1
- package/dist/cli/commands/upgrade.js +2 -51
- package/dist/cli/commands/upgrade.js.map +1 -1
- package/dist/cli/commands/validate.d.ts.map +1 -1
- package/dist/cli/commands/validate.js +4 -25
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/index.js +0 -9
- package/dist/cli/index.js.map +1 -1
- package/dist/core/ack/marker-ack.d.ts +28 -0
- package/dist/core/ack/marker-ack.d.ts.map +1 -0
- package/dist/core/ack/marker-ack.js +155 -0
- package/dist/core/ack/marker-ack.js.map +1 -0
- package/dist/core/ack-log.d.ts.map +1 -1
- package/dist/core/ack-log.js +10 -7
- package/dist/core/ack-log.js.map +1 -1
- package/dist/core/archive/index.d.ts +2 -3
- package/dist/core/archive/index.d.ts.map +1 -1
- package/dist/core/archive/index.js +7 -5
- package/dist/core/archive/index.js.map +1 -1
- package/dist/core/archive/pause-decisions-fence.js +12 -12
- package/dist/core/archive/pause-decisions-fence.js.map +1 -1
- package/dist/core/archive/summary-builder.d.ts +26 -21
- package/dist/core/archive/summary-builder.d.ts.map +1 -1
- package/dist/core/archive/summary-builder.js +115 -223
- package/dist/core/archive/summary-builder.js.map +1 -1
- package/dist/core/archive/summary-render.d.ts +5 -3
- package/dist/core/archive/summary-render.d.ts.map +1 -1
- package/dist/core/archive/summary-render.js +38 -44
- package/dist/core/archive/summary-render.js.map +1 -1
- package/dist/core/lock.d.ts +46 -0
- package/dist/core/lock.d.ts.map +1 -0
- package/dist/core/lock.js +98 -0
- package/dist/core/lock.js.map +1 -0
- package/dist/core/markers/types.d.ts +27 -134
- package/dist/core/markers/types.d.ts.map +1 -1
- package/dist/core/markers/types.js +10 -1
- package/dist/core/markers/types.js.map +1 -1
- package/dist/core/migrate/index.js +1 -1
- package/dist/core/migrate/index.js.map +1 -1
- package/dist/core/monitor/artifact-observer.d.ts.map +1 -1
- package/dist/core/monitor/artifact-observer.js +28 -78
- package/dist/core/monitor/artifact-observer.js.map +1 -1
- package/dist/core/monitor/divergence-map.d.ts.map +1 -1
- package/dist/core/monitor/divergence-map.js +9 -7
- package/dist/core/monitor/divergence-map.js.map +1 -1
- package/dist/core/monitor/health-verdict.d.ts.map +1 -1
- package/dist/core/monitor/health-verdict.js +2 -1
- package/dist/core/monitor/health-verdict.js.map +1 -1
- package/dist/core/monitor/trace-store.d.ts +1 -1
- package/dist/core/monitor/trace-store.js +2 -2
- package/dist/core/monitor/trace-store.js.map +1 -1
- package/dist/core/monitor/types.d.ts +1 -1
- package/dist/core/monitor/types.d.ts.map +1 -1
- package/dist/core/monitor/types.js +0 -1
- package/dist/core/monitor/types.js.map +1 -1
- package/dist/core/schemas/archive-summary.d.ts +39 -109
- package/dist/core/schemas/archive-summary.d.ts.map +1 -1
- package/dist/core/schemas/archive-summary.js +15 -23
- package/dist/core/schemas/archive-summary.js.map +1 -1
- package/dist/core/templates/commands/ack-confirm.md +1 -1
- package/dist/core/templates/commands/apply.md +51 -114
- package/dist/core/templates/commands/archive.md +43 -160
- package/dist/core/templates/commands/review.md +49 -74
- package/dist/core/templates/commands/upgrade.md +21 -40
- package/dist/core/templates/commands/verify.md +43 -146
- package/dist/core/templates/skills/_shared/tier23-command-bridge.md +34 -0
- package/dist/core/templates/skills/exploring.md +3 -3
- package/dist/core/templates/skills/finishing-a-development-branch.md +6 -21
- package/dist/core/templates/skills/receiving-code-review.md +14 -45
- package/dist/core/templates/skills/requesting-code-review.md +11 -0
- package/dist/core/templates/skills/subagent-driven-development.md +33 -29
- package/dist/core/templates/skills/subagent-driven-discipline.md +28 -28
- package/dist/core/templates/skills/using-forge.md +25 -24
- package/dist/core/templates/skills/verification-before-completion.md +7 -18
- package/dist/core/templates/skills/verifying-three-dimensions.md +93 -169
- package/dist/core/templates/skills/writing-plans.md +6 -17
- package/dist/core/validate/archive-summary-schema.d.ts +1 -1
- package/dist/core/validate/archive-summary-schema.d.ts.map +1 -1
- package/dist/core/validate/archive-summary-schema.js +101 -125
- package/dist/core/validate/archive-summary-schema.js.map +1 -1
- package/dist/core/validate/index.d.ts +0 -1
- package/dist/core/validate/index.d.ts.map +1 -1
- package/dist/core/validate/index.js +2 -1
- package/dist/core/validate/index.js.map +1 -1
- package/dist/core/validate/marker-schema.d.ts +12 -4
- package/dist/core/validate/marker-schema.d.ts.map +1 -1
- package/dist/core/validate/marker-schema.js +98 -605
- package/dist/core/validate/marker-schema.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -1
- package/dist/index.js.map +1 -1
- package/package.json +5 -4
- package/scripts/codex-review-helper.mjs +337 -0
- package/src/core/codex-review/prompts/adversarial-default.md +105 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact-observer.js","sourceRoot":"","sources":["../../../src/core/monitor/artifact-observer.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAGrF,
|
|
1
|
+
{"version":3,"file":"artifact-observer.js","sourceRoot":"","sources":["../../../src/core/monitor/artifact-observer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"divergence-map.d.ts","sourceRoot":"","sources":["../../../src/core/monitor/divergence-map.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEpE,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"divergence-map.d.ts","sourceRoot":"","sources":["../../../src/core/monitor/divergence-map.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEpE,eAAO,MAAM,cAAc,EAAE,aAgH5B,CAAC;AAEF,uBAAuB;AACvB,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAEvE"}
|
|
@@ -62,15 +62,17 @@ export const DIVERGENCE_MAP = {
|
|
|
62
62
|
regression_signal: 'verify 阶段 trace 只有 Correctness 维度 record,缺 Completeness/Coherence → forge 塌回 superpowers 基线',
|
|
63
63
|
},
|
|
64
64
|
// ── archive ───────────────────────────────────────────────────────────
|
|
65
|
+
// v4(2026-05-21):原 archive-unresolved-warning scenario 已删(plan-v4 Phase 1 整删
|
|
66
|
+
// 13 fence,WARNING 给用户自管,沿 OpenSpec 行为)。新写 v4-aligned 场景:
|
|
65
67
|
{
|
|
66
68
|
stage: 'archive',
|
|
67
|
-
scenario_id: 'archive-
|
|
68
|
-
desc: '
|
|
69
|
-
openspec: 'openspec archive
|
|
70
|
-
superpowers: '
|
|
71
|
-
forge: '
|
|
72
|
-
rationale: '
|
|
73
|
-
regression_signal: 'archive
|
|
69
|
+
scenario_id: 'archive-spec-deltas-application',
|
|
70
|
+
desc: 'archive 时 change/specs/ 含 spec deltas,要怎样写入 forge/specs/?',
|
|
71
|
+
openspec: 'openspec archive 用 specs/apply 写 capability 文件,delta 风格(`## ADDED Requirements` 等行级块)',
|
|
72
|
+
superpowers: 'superpowers 无 specs 体系,archive ≈ git merge / cleanup,无 specs 同步语义',
|
|
73
|
+
forge: 'forge archive 6 步用 readDeltas + applyDeltas(operation-driven,create/replace/delete 整文件),并在 archive_summary v2 的 spec_updates_applied 字段记录;archive 末尾自动 generateBacklog 同步 forge/backlog/',
|
|
74
|
+
rationale: 'forge 独有亮点 —— spec deltas 体系 + 自动 backlog 同步,把 archive 从"挪文件"提升为"产物链入库"',
|
|
75
|
+
regression_signal: 'archive 阶段 trace 无 archive_summary_observed 事件 / spec_updates_applied_count=0 但 change/specs/ 有真实改动 / forge/backlog/ 未被更新 → forge 塌回 OpenSpec 弱 spec-sync 或 superpowers 无 spec 基线',
|
|
74
76
|
},
|
|
75
77
|
// ── explore ───────────────────────────────────────────────────────────
|
|
76
78
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"divergence-map.js","sourceRoot":"","sources":["../../../src/core/monitor/divergence-map.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,IAAI,EAAE;QACJ,MAAM,EAAE,iCAAiC;QACzC,gFAAgF;QAChF,cAAc,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE;QAC/D,SAAS,EAAE,YAAY;KACxB;IACD,SAAS,EAAE;QACT,yEAAyE;QACzE;YACE,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,0BAA0B;YACvC,IAAI,EAAE,yCAAyC;YAC/C,QAAQ,EAAE,8DAA8D;YACxE,WAAW,EACT,+EAA+E;YACjF,KAAK,EACH,oFAAoF;YACtF,SAAS,EAAE,uCAAuC;YAClD,iBAAiB,EACf,+FAA+F;SAClG;QACD,yEAAyE;QACzE;YACE,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,+BAA+B;YAC5C,IAAI,EAAE,qDAAqD;YAC3D,QAAQ,EACN,+DAA+D;YACjE,WAAW,EACT,gEAAgE;YAClE,KAAK,EACH,oGAAoG;YACtG,SAAS,EAAE,2CAA2C;YACtD,iBAAiB,EACf,kGAAkG;SACrG;QACD,yEAAyE;QACzE;YACE,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,4BAA4B;YACzC,IAAI,EAAE,wCAAwC;YAC9C,QAAQ,EACN,oDAAoD;YACtD,WAAW,EACT,8EAA8E;YAChF,KAAK,EACH,wIAAwI;YAC1I,SAAS,EAAE,+CAA+C;YAC1D,iBAAiB,EACf,oGAAoG;SACvG;QACD,yEAAyE;QACzE;YACE,KAAK,EAAE,QAAQ;YACf,WAAW,EAAE,6BAA6B;YAC1C,IAAI,EAAE,oCAAoC;YAC1C,QAAQ,EACN,6EAA6E;YAC/E,WAAW,EACT,4FAA4F;YAC9F,KAAK,EACH,mGAAmG;YACrG,SAAS,EAAE,0DAA0D;YACrE,iBAAiB,EACf,4HAA4H;SAC/H;QACD,yEAAyE;QACzE;YACE,KAAK,EAAE,QAAQ;YACf,WAAW,EAAE,oBAAoB;YACjC,IAAI,EAAE,mBAAmB;YACzB,QAAQ,EAAE,iCAAiC;YAC3C,WAAW,EAAE,uDAAuD;YACpE,KAAK,EACH,kFAAkF;YACpF,SAAS,EAAE,wBAAwB;YACnC,iBAAiB,EACf,6FAA6F;SAChG;QACD,yEAAyE;QACzE;YACE,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"divergence-map.js","sourceRoot":"","sources":["../../../src/core/monitor/divergence-map.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,IAAI,EAAE;QACJ,MAAM,EAAE,iCAAiC;QACzC,gFAAgF;QAChF,cAAc,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE;QAC/D,SAAS,EAAE,YAAY;KACxB;IACD,SAAS,EAAE;QACT,yEAAyE;QACzE;YACE,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,0BAA0B;YACvC,IAAI,EAAE,yCAAyC;YAC/C,QAAQ,EAAE,8DAA8D;YACxE,WAAW,EACT,+EAA+E;YACjF,KAAK,EACH,oFAAoF;YACtF,SAAS,EAAE,uCAAuC;YAClD,iBAAiB,EACf,+FAA+F;SAClG;QACD,yEAAyE;QACzE;YACE,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,+BAA+B;YAC5C,IAAI,EAAE,qDAAqD;YAC3D,QAAQ,EACN,+DAA+D;YACjE,WAAW,EACT,gEAAgE;YAClE,KAAK,EACH,oGAAoG;YACtG,SAAS,EAAE,2CAA2C;YACtD,iBAAiB,EACf,kGAAkG;SACrG;QACD,yEAAyE;QACzE;YACE,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,4BAA4B;YACzC,IAAI,EAAE,wCAAwC;YAC9C,QAAQ,EACN,oDAAoD;YACtD,WAAW,EACT,8EAA8E;YAChF,KAAK,EACH,wIAAwI;YAC1I,SAAS,EAAE,+CAA+C;YAC1D,iBAAiB,EACf,oGAAoG;SACvG;QACD,yEAAyE;QACzE;YACE,KAAK,EAAE,QAAQ;YACf,WAAW,EAAE,6BAA6B;YAC1C,IAAI,EAAE,oCAAoC;YAC1C,QAAQ,EACN,6EAA6E;YAC/E,WAAW,EACT,4FAA4F;YAC9F,KAAK,EACH,mGAAmG;YACrG,SAAS,EAAE,0DAA0D;YACrE,iBAAiB,EACf,4HAA4H;SAC/H;QACD,yEAAyE;QACzE;YACE,KAAK,EAAE,QAAQ;YACf,WAAW,EAAE,oBAAoB;YACjC,IAAI,EAAE,mBAAmB;YACzB,QAAQ,EAAE,iCAAiC;YAC3C,WAAW,EAAE,uDAAuD;YACpE,KAAK,EACH,kFAAkF;YACpF,SAAS,EAAE,wBAAwB;YACnC,iBAAiB,EACf,6FAA6F;SAChG;QACD,yEAAyE;QACzE,6EAA6E;QAC7E,0DAA0D;QAC1D;YACE,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,iCAAiC;YAC9C,IAAI,EAAE,2DAA2D;YACjE,QAAQ,EACN,uFAAuF;YACzF,WAAW,EAAE,mEAAmE;YAChF,KAAK,EACH,0LAA0L;YAC5L,SAAS,EACP,yEAAyE;YAC3E,iBAAiB,EACf,mLAAmL;SACtL;QACD,yEAAyE;QACzE;YACE,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,4BAA4B;YACzC,IAAI,EAAE,0CAA0C;YAChD,QAAQ,EAAE,oDAAoD;YAC9D,WAAW,EACT,sFAAsF;YACxF,KAAK,EACH,8IAA8I;YAChJ,SAAS,EAAE,wCAAwC;YACnD,iBAAiB,EACf,+GAA+G;SAClH;KACF;CACF,CAAC;AAEF,uBAAuB;AACvB,MAAM,UAAU,YAAY,CAAC,EAAU;IACrC,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC;AACpE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"health-verdict.d.ts","sourceRoot":"","sources":["../../../src/core/monitor/health-verdict.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,aAAa,EAGnB,MAAM,YAAY,CAAC;AAKpB;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,
|
|
1
|
+
{"version":3,"file":"health-verdict.d.ts","sourceRoot":"","sources":["../../../src/core/monitor/health-verdict.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,aAAa,EAGnB,MAAM,YAAY,CAAC;AAKpB;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,CA4ClE"}
|
|
@@ -31,8 +31,9 @@ export function computeVerdict(events) {
|
|
|
31
31
|
stagesWithAiEnter.add(e.stage);
|
|
32
32
|
}
|
|
33
33
|
for (const stage of stagesWithCli) {
|
|
34
|
-
// 只对可对比阶段判 AI trace 缺失;forge 专属阶段(
|
|
34
|
+
// 只对可对比阶段判 AI trace 缺失;forge 专属阶段(upgrade/codex-adversarial)
|
|
35
35
|
// 按 spec §1.3 本就 CLI-only、注入内容不要求 AI record,跳过避免假阳性(M-3)
|
|
36
|
+
// v4(2026-05-21):删 ack-confirm — 反加固两步 ack 协议消亡(plan-v4 Phase 1)
|
|
36
37
|
if (!COMPARABLE_STAGE_SET.has(stage))
|
|
37
38
|
continue;
|
|
38
39
|
if (!stagesWithAiEnter.has(stage)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"health-verdict.js","sourceRoot":"","sources":["../../../src/core/monitor/health-verdict.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,OAAO,EACL,iBAAiB,GAKlB,MAAM,YAAY,CAAC;AAEpB,mEAAmE;AACnE,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAe,iBAAiB,CAAC,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,MAAoB;IACjD,MAAM,KAAK,GAAkB,EAAE,CAAC;IAEhC,4BAA4B;IAC5B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,KAAK,KAAK,gBAAgB,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAClF,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,MAAM,EAAE,WAAW,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE;gBACnD,QAAQ,EAAE,SAAS,CAAC,CAAC,EAAE,gCAAgC;aACxD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAgB,CAAC;IAC9C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAgB,CAAC;IAClD,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK;YAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,KAAK,KAAK,aAAa;YAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACpF,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;QAClC,
|
|
1
|
+
{"version":3,"file":"health-verdict.js","sourceRoot":"","sources":["../../../src/core/monitor/health-verdict.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,OAAO,EACL,iBAAiB,GAKlB,MAAM,YAAY,CAAC;AAEpB,mEAAmE;AACnE,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAe,iBAAiB,CAAC,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,MAAoB;IACjD,MAAM,KAAK,GAAkB,EAAE,CAAC;IAEhC,4BAA4B;IAC5B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,KAAK,KAAK,gBAAgB,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAClF,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,MAAM,EAAE,WAAW,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE;gBACnD,QAAQ,EAAE,SAAS,CAAC,CAAC,EAAE,gCAAgC;aACxD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAgB,CAAC;IAC9C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAgB,CAAC;IAClD,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK;YAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,KAAK,KAAK,aAAa;YAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACpF,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;QAClC,6DAA6D;QAC7D,yDAAyD;QACzD,iEAAiE;QACjE,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,SAAS;QAC/C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,SAAS;gBACf,KAAK;gBACL,MAAM,EAAE,GAAG,KAAK,qCAAqC;gBACrD,QAAQ,EAAE,GAAG,KAAK,0BAA0B;aAC7C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,MAAM,KAAK,GAA2B,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC;QAC9E,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAChB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,IAAI,CAAC;IACX,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC1B,CAAC"}
|
|
@@ -20,7 +20,7 @@ export declare function readTrace(projectRoot: string, changeId: string): {
|
|
|
20
20
|
* 故多个工作流运行的 pre-change 事件会累积在同一 _session 桶 —— report 合并时
|
|
21
21
|
* 会带入跨 run 的 pre-change 噪声。spec §2.4/§3.2 接受此 best-effort 行为。
|
|
22
22
|
* TOCTOU:existsSync + readFileSync 间(及并发 writeFileSync)有竞争窗口;
|
|
23
|
-
* 单进程 CLI 场景可接受(
|
|
23
|
+
* 单进程 CLI 场景可接受(同 readTrace,v4 沿用 best-effort 容忍 TOCTOU)。
|
|
24
24
|
*/
|
|
25
25
|
export declare function sessionChangeId(projectRoot: string): string;
|
|
26
26
|
/**
|
|
@@ -20,7 +20,7 @@ export function appendTraceEvent(projectRoot, event) {
|
|
|
20
20
|
mkdirSync(dirname(file), { recursive: true });
|
|
21
21
|
appendFileSync(file, JSON.stringify(event) + '\n', 'utf8');
|
|
22
22
|
}
|
|
23
|
-
// existsSync + readFileSync 间有 TOCTOU 窗口;单进程 CLI 场景可接受(
|
|
23
|
+
// existsSync + readFileSync 间有 TOCTOU 窗口;单进程 CLI 场景可接受(v4 沿用,单进程容忍 TOCTOU)
|
|
24
24
|
/** 读某 change 的 trace;逐行解析,坏行跳过并计数 */
|
|
25
25
|
export function readTrace(projectRoot, changeId) {
|
|
26
26
|
const file = traceFilePath(projectRoot, changeId);
|
|
@@ -52,7 +52,7 @@ function sessionIdFile(projectRoot) {
|
|
|
52
52
|
* 故多个工作流运行的 pre-change 事件会累积在同一 _session 桶 —— report 合并时
|
|
53
53
|
* 会带入跨 run 的 pre-change 噪声。spec §2.4/§3.2 接受此 best-effort 行为。
|
|
54
54
|
* TOCTOU:existsSync + readFileSync 间(及并发 writeFileSync)有竞争窗口;
|
|
55
|
-
* 单进程 CLI 场景可接受(
|
|
55
|
+
* 单进程 CLI 场景可接受(同 readTrace,v4 沿用 best-effort 容忍 TOCTOU)。
|
|
56
56
|
*/
|
|
57
57
|
export function sessionChangeId(projectRoot) {
|
|
58
58
|
const file = sessionIdFile(projectRoot);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-store.js","sourceRoot":"","sources":["../../../src/core/monitor/trace-store.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,OAAO,EACL,UAAU,EACV,SAAS,EACT,cAAc,EACd,YAAY,EACZ,aAAa,EACb,WAAW,GACZ,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,kCAAkC;AAClC,MAAM,UAAU,UAAU,CAAC,WAAmB;IAC5C,OAAO,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;AAChD,CAAC;AAED,gCAAgC;AAChC,MAAM,UAAU,aAAa,CAAC,WAAmB,EAAE,QAAgB;IACjE,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;AAChE,CAAC;AAED,6BAA6B;AAC7B,MAAM,UAAU,YAAY,CAAC,WAAmB;IAC9C,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAC,CAAC;AAC1D,CAAC;AAED,0CAA0C;AAC1C,MAAM,UAAU,gBAAgB,CAAC,WAAmB,EAAE,KAAiB;IACrE,MAAM,IAAI,GAAG,aAAa,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACzD,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;AAC7D,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"trace-store.js","sourceRoot":"","sources":["../../../src/core/monitor/trace-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** 所有受监控的工作阶段(运行时数组;MonitorStage 类型由它派生 —— 单一数据源) */
|
|
2
|
-
export declare const MONITOR_STAGES: readonly ["brainstorm", "propose", "apply", "review", "verify", "archive", "explore", "
|
|
2
|
+
export declare const MONITOR_STAGES: readonly ["brainstorm", "propose", "apply", "review", "verify", "archive", "explore", "upgrade", "codex-adversarial", "unknown"];
|
|
3
3
|
/** 受监控的工作阶段;主流程 6 步 + explore 可进三方对比,forge 专属命令仅 CLI 层 */
|
|
4
4
|
export type MonitorStage = (typeof MONITOR_STAGES)[number];
|
|
5
5
|
/** 可与 OpenSpec/superpowers 三方对比的阶段(spec §1.3:forge 专属命令不进对比) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/monitor/types.ts"],"names":[],"mappings":"AAEA,qDAAqD;AACrD,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/monitor/types.ts"],"names":[],"mappings":"AAEA,qDAAqD;AACrD,eAAO,MAAM,cAAc,kIAWjB,CAAC;AAEX,0DAA0D;AAC1D,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D,gEAAgE;AAChE,eAAO,MAAM,iBAAiB,uFAQc,CAAC;AAE7C,oDAAoD;AACpD,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,IAAI,CAAC;AAEtC,oCAAoC;AACpC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,wBAAwB,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED,2CAA2C;AAC3C,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,+BAA+B;AAC/B,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,YAAY,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,kDAAkD;AAClD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE;QACJ,MAAM,EAAE,iCAAiC,CAAC;QAC1C,cAAc,EAAE;YACd,QAAQ,EAAE,MAAM,CAAC;YACjB,WAAW,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,SAAS,EAAE,kBAAkB,EAAE,CAAC;CACjC;AAED,uBAAuB;AACvB,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,YAAY,GAAG,SAAS,CAAC;AAE3D,kBAAkB;AAClB,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,YAAY,GAAG,SAAS,CAAC;IAC/B,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,8BAA8B;AAC9B,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/monitor/types.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAE7E,qDAAqD;AACrD,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,YAAY;IACZ,SAAS;IACT,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,SAAS;IACT,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/monitor/types.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAE7E,qDAAqD;AACrD,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,YAAY;IACZ,SAAS;IACT,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,SAAS;IACT,SAAS;IACT,mBAAmB;IACnB,SAAS;CACD,CAAC;AAKX,gEAAgE;AAChE,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,YAAY;IACZ,SAAS;IACT,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,SAAS;CACiC,CAAC"}
|
|
@@ -1,131 +1,61 @@
|
|
|
1
|
-
|
|
2
|
-
/** archive_summary 顶级 schema(9 业务字段 + 1 schema identifier,沿 master §3.12.1bis + v2 BLOCKER 2 注脚) */
|
|
1
|
+
/** archive_summary v2 顶级 schema(v4 简版) */
|
|
3
2
|
export interface ArchiveSummary {
|
|
4
|
-
/**
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
*/
|
|
8
|
-
schema: 'forge-archive-summary/v1';
|
|
9
|
-
/** semver(沿 forge 自身版本号叙事 §1.4,9e1 写 '1.0.0') */
|
|
3
|
+
/** YAML schema identifier(v4 BREAKING:v2) */
|
|
4
|
+
schema: 'forge-archive-summary/v2';
|
|
5
|
+
/** archive_summary 自身版本(沿 forge 大版本号) */
|
|
10
6
|
version: string;
|
|
11
|
-
/** ISO 8601 UTC */
|
|
7
|
+
/** archive 操作时刻(ISO 8601 UTC,允许 ms 精度) */
|
|
12
8
|
archived_at: string;
|
|
13
9
|
/** change id(非空) */
|
|
14
10
|
change_id: string;
|
|
15
|
-
/**
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
|
|
11
|
+
/** archive 目录名(YYYY-MM-DD-changeId) */
|
|
12
|
+
archive_name: string;
|
|
13
|
+
/** verify 执行者(沿 marker.verified_by) */
|
|
14
|
+
verified_by: string;
|
|
15
|
+
/** review 执行者(沿 marker.reviewed_by) */
|
|
16
|
+
reviewed_by: string;
|
|
17
|
+
/** applied_commits — user/AI 想填就填,无 fence */
|
|
18
|
+
applied_commits?: string[];
|
|
19
|
+
/** spec deltas 应用记录 — v4 按 forge applyDeltas operation 风格 */
|
|
20
|
+
spec_updates_applied: SpecUpdateApplied[];
|
|
21
|
+
/** 跨 change backlog 收集(forge 独有亮点)— scope_entries / pause_decisions 两来源 */
|
|
23
22
|
handoff_to_backlog: HandoffEntry[];
|
|
24
|
-
/** 给用户回顾用 — verify/review 中 WARNING + acked 的引用 */
|
|
25
|
-
acked_warnings: AckedWarningRef[];
|
|
26
|
-
/** SUGGESTION + resolved=false 的引用(handoff 子集,但单独列出方便 §2.4.4 输出按类分段) */
|
|
27
|
-
pending_suggestions: SuggestionRef[];
|
|
28
23
|
}
|
|
29
|
-
/**
|
|
30
|
-
export interface
|
|
31
|
-
/**
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
export interface ReviewPassedRef {
|
|
36
|
-
/** reviewer 列表(actor 值;'ai-agent' / 'human-override' / 具体用户名) */
|
|
37
|
-
reviewers: string[];
|
|
24
|
+
/** spec deltas 应用一项 — v4 forge operation 风格 */
|
|
25
|
+
export interface SpecUpdateApplied {
|
|
26
|
+
/** capability 名(对应 specs/<name>.md) */
|
|
27
|
+
capability: string;
|
|
28
|
+
/** forge SpecDelta.operation,沿 specs-sync/deltas.ts:11 */
|
|
29
|
+
operation: 'create' | 'replace' | 'delete';
|
|
38
30
|
}
|
|
39
31
|
/**
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
* placeholder=true 表示本字段是 9e1 占位,9e2 实施时改为真实统计:
|
|
43
|
-
* - placeholder: false
|
|
44
|
-
* - invariants_passed: number(经 mapper 优先级筛选后仍为 status='pass' 的 invariant 数)
|
|
45
|
-
* - invariants_with_warning: number(经 mapper 优先级筛选后仍为 status='warning' 的 invariant 数)
|
|
46
|
-
* - invariants_failed: number(v1.0 永远 = 0,fence.ok=false 时 archive 直接 exit 1,summary 不写入)
|
|
47
|
-
* - legacy_exempt: number(legacy marker 豁免数 — verify || review 任一为 legacy 即触发,沿 §3.4.4.1)
|
|
32
|
+
* handoff_to_backlog 一项 — v4 简化版,只两类来源
|
|
48
33
|
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
* 或 stderr(rerun-time)双路径不丢,仅 summary 中 invariants_with_warning 计数偏低;
|
|
53
|
-
* v1.1+ side-aware mapper 修复。
|
|
54
|
-
*
|
|
55
|
-
* **sum 不变式**:invariants_passed + invariants_with_warning + invariants_failed + legacy_exempt
|
|
56
|
-
* === FENCE_INVARIANT_NAMES.length(14)
|
|
34
|
+
* - scope_entries:来自 archived change 的 proposal.md/design.md `## Out of Scope` /
|
|
35
|
+
* `## Future Work` / `## Non-Goals` YAML 块(沿 forge-scope-entries/v1 schema)
|
|
36
|
+
* - pause_decisions:apply 中段 Fluid Pause option=3(转 out-of-scope)的软记录
|
|
57
37
|
*/
|
|
58
|
-
export interface ProcessEvidenceSummary {
|
|
59
|
-
/** true = 9e1 占位;false = 9e2 真实统计 */
|
|
60
|
-
placeholder: boolean;
|
|
61
|
-
/** placeholder=true 时填说明 */
|
|
62
|
-
note?: string;
|
|
63
|
-
/** placeholder=false 时填具体数;9e2 接 9g */
|
|
64
|
-
invariants_passed?: number;
|
|
65
|
-
/** placeholder=false 时填具体数;9e2 v2 codex 一轮 MAJOR 修订新增字段;legacy 路径下被豁免 invariant 的 WARNING 不计入(精度损失,见上述说明) */
|
|
66
|
-
invariants_with_warning?: number;
|
|
67
|
-
/** placeholder=false 时填具体数;v1.0 永远 = 0(fence.ok=false 时 archive exit 1,summary 不写入) */
|
|
68
|
-
invariants_failed?: number;
|
|
69
|
-
/** placeholder=false 时填具体数;verify || review 任一为 legacy 时该 invariant 在 §3.4.4.1 豁免表内被跳 */
|
|
70
|
-
legacy_exempt?: number;
|
|
71
|
-
}
|
|
72
|
-
/** handoff_to_backlog 一项 — 三类 source 聚合(沿 design §2.4.3) */
|
|
73
38
|
export interface HandoffEntry {
|
|
74
|
-
/** 来源类别 */
|
|
75
|
-
source: '
|
|
76
|
-
/** 来源 id(
|
|
39
|
+
/** 来源类别(v4 删 verify_findings / review_outcomes,反加固协议消亡) */
|
|
40
|
+
source: 'pause_decisions' | 'scope_entries';
|
|
41
|
+
/** 来源 id(pause_decisions 数字索引 / scope_entries 字符串 id) */
|
|
77
42
|
id: number | string;
|
|
78
|
-
/**
|
|
79
|
-
|
|
80
|
-
/**
|
|
81
|
-
dimension?: string;
|
|
82
|
-
/** verify/review 来源时的 check_type 字段(沿 9d VerifyFinding) */
|
|
83
|
-
check_type?: string;
|
|
84
|
-
/** 证据定位字符串(沿 9a EVIDENCE_FORMATS) */
|
|
85
|
-
evidence?: string;
|
|
86
|
-
/** 建议(可选) */
|
|
87
|
-
recommendation?: string;
|
|
88
|
-
/** pause_decisions 来源时的 chosen_option(应固定 = 3 才进 handoff) */
|
|
43
|
+
/** scope_entries 来源时的 category */
|
|
44
|
+
category?: 'out-of-scope' | 'non-goal' | 'future-work';
|
|
45
|
+
/** pause_decisions 来源时的 chosen_option(应固定 = 3) */
|
|
89
46
|
chosen_option?: 3;
|
|
90
|
-
/** pause_decisions 来源时的 target_artifact */
|
|
91
|
-
target_artifact?: string;
|
|
92
|
-
/** pause_decisions 来源时的 target_anchor */
|
|
93
|
-
target_anchor?: string;
|
|
94
47
|
/** pause_decisions 来源时的 issue_summary */
|
|
95
48
|
issue_summary?: string;
|
|
96
|
-
/** scope_entries 来源时的
|
|
97
|
-
|
|
98
|
-
/** scope_entries 来源时的 reason */
|
|
49
|
+
/** scope_entries 来源时的 description / reason */
|
|
50
|
+
description?: string;
|
|
99
51
|
reason?: string;
|
|
100
52
|
}
|
|
101
|
-
/**
|
|
102
|
-
export
|
|
103
|
-
|
|
104
|
-
id: number;
|
|
105
|
-
dimension?: string;
|
|
106
|
-
check_type?: string;
|
|
107
|
-
evidence?: string;
|
|
108
|
-
acked_by: string;
|
|
109
|
-
acked_at: string;
|
|
110
|
-
rationale?: string;
|
|
111
|
-
}
|
|
112
|
-
/** pending_suggestions 一项 — SUGGESTION + resolved=false 的引用(handoff_to_backlog 子集) */
|
|
113
|
-
export interface SuggestionRef {
|
|
114
|
-
source: 'verify_findings' | 'review_outcomes';
|
|
115
|
-
id: number;
|
|
116
|
-
dimension?: string;
|
|
117
|
-
check_type?: string;
|
|
118
|
-
evidence?: string;
|
|
119
|
-
recommendation?: string;
|
|
120
|
-
}
|
|
121
|
-
/** 9e1 当前 version 常量 */
|
|
122
|
-
export declare const ARCHIVE_SUMMARY_VERSION = "1.0.0";
|
|
123
|
-
/** 9e1 placeholder process_evidence_summary(9e2 接 9g 替换) */
|
|
124
|
-
export declare const PLACEHOLDER_PROCESS_EVIDENCE_SUMMARY: ProcessEvidenceSummary;
|
|
125
|
-
/** ISO 8601 UTC 校验正则(沿 marker-schema.ts:20 同形式) */
|
|
53
|
+
/** v4 当前 version 常量 */
|
|
54
|
+
export declare const ARCHIVE_SUMMARY_VERSION = "2.0.0";
|
|
55
|
+
/** ISO 8601 UTC 校验正则(v4 允许 ms 精度,沿 marker-schema.ts 同步) */
|
|
126
56
|
export declare const ARCHIVE_SUMMARY_ISO_8601_RE: RegExp;
|
|
127
|
-
/** semver 弱校验
|
|
57
|
+
/** semver 弱校验 */
|
|
128
58
|
export declare const SEMVER_RE: RegExp;
|
|
129
|
-
/** 类型守卫:对象具备 ArchiveSummary 顶级字段(运行时浅校验) */
|
|
59
|
+
/** 类型守卫:对象具备 ArchiveSummary v2 顶级字段(运行时浅校验) */
|
|
130
60
|
export declare function looksLikeArchiveSummary(v: unknown): v is ArchiveSummary;
|
|
131
61
|
//# sourceMappingURL=archive-summary.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive-summary.d.ts","sourceRoot":"","sources":["../../../src/core/schemas/archive-summary.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"archive-summary.d.ts","sourceRoot":"","sources":["../../../src/core/schemas/archive-summary.ts"],"names":[],"mappings":"AAUA,0CAA0C;AAC1C,MAAM,WAAW,cAAc;IAC7B,6CAA6C;IAC7C,MAAM,EAAE,0BAA0B,CAAC;IACnC,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,6DAA6D;IAC7D,oBAAoB,EAAE,iBAAiB,EAAE,CAAC;IAC1C,2EAA2E;IAC3E,kBAAkB,EAAE,YAAY,EAAE,CAAC;CACpC;AAED,+CAA+C;AAC/C,MAAM,WAAW,iBAAiB;IAChC,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,SAAS,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;CAC5C;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,2DAA2D;IAC3D,MAAM,EAAE,iBAAiB,GAAG,eAAe,CAAC;IAC5C,yDAAyD;IACzD,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,cAAc,GAAG,UAAU,GAAG,aAAa,CAAC;IACvD,kDAAkD;IAClD,aAAa,CAAC,EAAE,CAAC,CAAC;IAClB,yCAAyC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,uBAAuB;AACvB,eAAO,MAAM,uBAAuB,UAAU,CAAC;AAE/C,2DAA2D;AAC3D,eAAO,MAAM,2BAA2B,QAAuD,CAAC;AAEhG,iBAAiB;AACjB,eAAO,MAAM,SAAS,QAA+C,CAAC;AAEtE,+CAA+C;AAC/C,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,cAAc,CAIvE"}
|
|
@@ -1,31 +1,23 @@
|
|
|
1
|
-
// src/core/schemas/archive-summary.ts — plan-
|
|
2
|
-
// §3.12.1bis Interface Freeze:archive_summary 9 业务字段冻结 + 1 schema identifier
|
|
3
|
-
// 沿 design §2.4.3 YAML 字面格式 + master §3.12.1bis 字段表
|
|
1
|
+
// src/core/schemas/archive-summary.ts — v4 OpenSpec alignment 简版(plan-v4 Phase 1 Task 1.4)
|
|
4
2
|
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
7
|
-
//
|
|
8
|
-
//
|
|
9
|
-
//
|
|
10
|
-
//
|
|
11
|
-
//
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
placeholder: true,
|
|
18
|
-
note: 'process_evidence 14 不变量统计待 9g + 9e2 实施',
|
|
19
|
-
};
|
|
20
|
-
/** ISO 8601 UTC 校验正则(沿 marker-schema.ts:20 同形式) */
|
|
21
|
-
export const ARCHIVE_SUMMARY_ISO_8601_RE = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/;
|
|
22
|
-
/** semver 弱校验(major.minor.patch[-prerelease][+build]) */
|
|
3
|
+
// v4 BREAKING change(schema v1 → v2):
|
|
4
|
+
// - 删反加固字段:process_evidence_summary / acked_warnings / pending_suggestions /
|
|
5
|
+
// verify_passed.verified_invariants(14 不变量) / review_passed.reviewers(simcode 兼容)
|
|
6
|
+
// - 简化 handoff_to_backlog source 枚举(删 verify_findings / review_outcomes,仅留
|
|
7
|
+
// pause_decisions + scope_entries)
|
|
8
|
+
// - 字段对齐 forge `applyDeltas` operation 风格(spec_updates_applied:
|
|
9
|
+
// create/replace/delete 操作类型),不再是 OpenSpec delta-block 风格
|
|
10
|
+
/** v4 当前 version 常量 */
|
|
11
|
+
export const ARCHIVE_SUMMARY_VERSION = '2.0.0';
|
|
12
|
+
/** ISO 8601 UTC 校验正则(v4 允许 ms 精度,沿 marker-schema.ts 同步) */
|
|
13
|
+
export const ARCHIVE_SUMMARY_ISO_8601_RE = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,9})?Z$/;
|
|
14
|
+
/** semver 弱校验 */
|
|
23
15
|
export const SEMVER_RE = /^\d+\.\d+\.\d+(?:-[\w.-]+)?(?:\+[\w.-]+)?$/;
|
|
24
|
-
/** 类型守卫:对象具备 ArchiveSummary 顶级字段(运行时浅校验) */
|
|
16
|
+
/** 类型守卫:对象具备 ArchiveSummary v2 顶级字段(运行时浅校验) */
|
|
25
17
|
export function looksLikeArchiveSummary(v) {
|
|
26
18
|
if (!v || typeof v !== 'object')
|
|
27
19
|
return false;
|
|
28
20
|
const o = v;
|
|
29
|
-
return o.schema === 'forge-archive-summary/
|
|
21
|
+
return o.schema === 'forge-archive-summary/v2';
|
|
30
22
|
}
|
|
31
23
|
//# sourceMappingURL=archive-summary.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive-summary.js","sourceRoot":"","sources":["../../../src/core/schemas/archive-summary.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"archive-summary.js","sourceRoot":"","sources":["../../../src/core/schemas/archive-summary.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,EAAE;AACF,sCAAsC;AACtC,6EAA6E;AAC7E,oFAAoF;AACpF,2EAA2E;AAC3E,qCAAqC;AACrC,gEAAgE;AAChE,4DAA4D;AAyD5D,uBAAuB;AACvB,MAAM,CAAC,MAAM,uBAAuB,GAAG,OAAO,CAAC;AAE/C,2DAA2D;AAC3D,MAAM,CAAC,MAAM,2BAA2B,GAAG,oDAAoD,CAAC;AAEhG,iBAAiB;AACjB,MAAM,CAAC,MAAM,SAAS,GAAG,4CAA4C,CAAC;AAEtE,+CAA+C;AAC/C,MAAM,UAAU,uBAAuB,CAAC,CAAU;IAChD,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9C,MAAM,CAAC,GAAG,CAA4B,CAAC;IACvC,OAAO,CAAC,CAAC,MAAM,KAAK,0BAA0B,CAAC;AACjD,CAAC"}
|
|
@@ -17,7 +17,7 @@ You are about to handle `/forge:ack-confirm $ARGUMENTS`。
|
|
|
17
17
|
- `reject`(拒绝 + 让用户写 rationale)
|
|
18
18
|
- `modify-rationale`(用户改 rationale 后再 confirm)
|
|
19
19
|
5. 根据用户选择:
|
|
20
|
-
- `confirm` → 调 `forge ack confirm <change-id> <finding-id>`(CLI 写 marker
|
|
20
|
+
- `confirm` → 调 `forge ack confirm <change-id> <finding-id>`(CLI 对 severity-ack(ack-warning / ack-pause-warning / downgrade)写 marker ack 字段、写 ack-log、删 pending;其余 action 仅写 ack-log + 删 pending)
|
|
21
21
|
- `reject` → 用 AskUserQuestion 让用户输入 `rejection rationale` → 调 `forge ack reject <change-id> <finding-id> --rationale "<text>"`
|
|
22
22
|
- `modify-rationale` → 用 AskUserQuestion 让用户输入新 rationale → 重写 pending file → 回到 step 4
|
|
23
23
|
|