@entelligentsia/forgecli 1.0.21 → 1.0.25
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/CHANGELOG.md +88 -0
- package/dist/CHANGELOG-forge-plugin.md +118 -0
- package/dist/extensions/forgecli/forge-tools.d.ts +1 -0
- package/dist/extensions/forgecli/forge-tools.js +73 -0
- package/dist/extensions/forgecli/forge-tools.js.map +1 -1
- package/dist/extensions/forgecli/lib/forge-root.d.ts +5 -0
- package/dist/extensions/forgecli/lib/forge-root.js +14 -1
- package/dist/extensions/forgecli/lib/forge-root.js.map +1 -1
- package/dist/extensions/forgecli/orchestrators/fix-bug.d.ts +1 -0
- package/dist/extensions/forgecli/orchestrators/fix-bug.js +26 -0
- package/dist/extensions/forgecli/orchestrators/fix-bug.js.map +1 -1
- package/dist/extensions/forgecli/orchestrators/run-sprint.js +49 -0
- package/dist/extensions/forgecli/orchestrators/run-sprint.js.map +1 -1
- package/dist/forge-payload/.base-pack/workflows/_fragments/event-emission-schema.md +4 -0
- package/dist/forge-payload/.base-pack/workflows/_fragments/event-vocabulary.md +88 -0
- package/dist/forge-payload/.base-pack/workflows/commit_task.md +41 -38
- package/dist/forge-payload/.base-pack/workflows/implement_plan.md +3 -3
- package/dist/forge-payload/.base-pack/workflows-js/wfl-fix-bug.js +42 -6
- package/dist/forge-payload/.base-pack/workflows-js/wfl-run-task.js +32 -1
- package/dist/forge-payload/.claude-plugin/plugin.json +1 -1
- package/dist/forge-payload/.schemas/enum-catalog.json +2 -2
- package/dist/forge-payload/.schemas/event.schema.json +8 -3
- package/dist/forge-payload/.schemas/migrations.json +56 -0
- package/dist/forge-payload/integrity.json +3 -3
- package/dist/forge-payload/meta/store-schema/event.schema.md +7 -0
- package/dist/forge-payload/meta/workflows/_fragments/event-emission-schema.md +4 -0
- package/dist/forge-payload/meta/workflows/_fragments/event-vocabulary.md +88 -0
- package/dist/forge-payload/meta/workflows/meta-commit.md +46 -43
- package/dist/forge-payload/meta/workflows/meta-fix-bug.md +7 -2
- package/dist/forge-payload/meta/workflows/meta-implement.md +3 -3
- package/dist/forge-payload/meta/workflows/meta-orchestrate.md +4 -1
- package/dist/forge-payload/schemas/enum-catalog.json +2 -2
- package/dist/forge-payload/schemas/event.schema.json +8 -3
- package/dist/forge-payload/schemas/structure-manifest.json +4 -2
- package/dist/forge-payload/tools/commit-task.cjs +218 -0
- package/dist/forge-payload/tools/store-cli.cjs +6 -1
- package/node_modules/@mariozechner/clipboard/package.json +2 -1
- package/node_modules/@mariozechner/clipboard-linux-x64-musl/README.md +3 -0
- package/node_modules/@mariozechner/clipboard-linux-x64-musl/package.json +25 -0
- package/package.json +2 -2
- package/dist/extensions/forgecli/add-pipeline.d.ts +0 -19
- package/dist/extensions/forgecli/add-pipeline.js +0 -143
- package/dist/extensions/forgecli/add-pipeline.js.map +0 -1
- package/dist/extensions/forgecli/add-task.d.ts +0 -20
- package/dist/extensions/forgecli/add-task.js +0 -154
- package/dist/extensions/forgecli/add-task.js.map +0 -1
- package/dist/extensions/forgecli/approve.d.ts +0 -22
- package/dist/extensions/forgecli/approve.js +0 -152
- package/dist/extensions/forgecli/approve.js.map +0 -1
- package/dist/extensions/forgecli/banner.d.ts +0 -10
- package/dist/extensions/forgecli/banner.js +0 -36
- package/dist/extensions/forgecli/banner.js.map +0 -1
- package/dist/extensions/forgecli/calibrate.d.ts +0 -64
- package/dist/extensions/forgecli/calibrate.js +0 -481
- package/dist/extensions/forgecli/calibrate.js.map +0 -1
- package/dist/extensions/forgecli/collate.d.ts +0 -22
- package/dist/extensions/forgecli/collate.js +0 -134
- package/dist/extensions/forgecli/collate.js.map +0 -1
- package/dist/extensions/forgecli/commit.d.ts +0 -22
- package/dist/extensions/forgecli/commit.js +0 -152
- package/dist/extensions/forgecli/commit.js.map +0 -1
- package/dist/extensions/forgecli/config-command.d.ts +0 -8
- package/dist/extensions/forgecli/config-command.js +0 -67
- package/dist/extensions/forgecli/config-command.js.map +0 -1
- package/dist/extensions/forgecli/config-layer.d.ts +0 -53
- package/dist/extensions/forgecli/config-layer.js +0 -72
- package/dist/extensions/forgecli/config-layer.js.map +0 -1
- package/dist/extensions/forgecli/config-writer.d.ts +0 -16
- package/dist/extensions/forgecli/config-writer.js +0 -69
- package/dist/extensions/forgecli/config-writer.js.map +0 -1
- package/dist/extensions/forgecli/enhance.d.ts +0 -27
- package/dist/extensions/forgecli/enhance.js +0 -199
- package/dist/extensions/forgecli/enhance.js.map +0 -1
- package/dist/extensions/forgecli/fix-bug.d.ts +0 -85
- package/dist/extensions/forgecli/fix-bug.js +0 -1580
- package/dist/extensions/forgecli/fix-bug.js.map +0 -1
- package/dist/extensions/forgecli/forge-header.d.ts +0 -12
- package/dist/extensions/forgecli/forge-header.js +0 -114
- package/dist/extensions/forgecli/forge-header.js.map +0 -1
- package/dist/extensions/forgecli/forge-init.d.ts +0 -26
- package/dist/extensions/forgecli/forge-init.js +0 -514
- package/dist/extensions/forgecli/forge-init.js.map +0 -1
- package/dist/extensions/forgecli/forge-root.d.ts +0 -10
- package/dist/extensions/forgecli/forge-root.js +0 -62
- package/dist/extensions/forgecli/forge-root.js.map +0 -1
- package/dist/extensions/forgecli/forge-update-command.d.ts +0 -100
- package/dist/extensions/forgecli/forge-update-command.js +0 -435
- package/dist/extensions/forgecli/forge-update-command.js.map +0 -1
- package/dist/extensions/forgecli/friction-emit.d.ts +0 -99
- package/dist/extensions/forgecli/friction-emit.js +0 -245
- package/dist/extensions/forgecli/friction-emit.js.map +0 -1
- package/dist/extensions/forgecli/implement.d.ts +0 -22
- package/dist/extensions/forgecli/implement.js +0 -170
- package/dist/extensions/forgecli/implement.js.map +0 -1
- package/dist/extensions/forgecli/init-context.d.ts +0 -99
- package/dist/extensions/forgecli/init-context.js +0 -178
- package/dist/extensions/forgecli/init-context.js.map +0 -1
- package/dist/extensions/forgecli/init-progress.d.ts +0 -39
- package/dist/extensions/forgecli/init-progress.js +0 -117
- package/dist/extensions/forgecli/init-progress.js.map +0 -1
- package/dist/extensions/forgecli/input-router.d.ts +0 -33
- package/dist/extensions/forgecli/input-router.js +0 -136
- package/dist/extensions/forgecli/input-router.js.map +0 -1
- package/dist/extensions/forgecli/lib/halt-advisor.d.ts +0 -59
- package/dist/extensions/forgecli/lib/halt-advisor.js +0 -113
- package/dist/extensions/forgecli/lib/halt-advisor.js.map +0 -1
- package/dist/extensions/forgecli/lib/orchestrator-preflight.d.ts +0 -46
- package/dist/extensions/forgecli/lib/orchestrator-preflight.js +0 -64
- package/dist/extensions/forgecli/lib/orchestrator-preflight.js.map +0 -1
- package/dist/extensions/forgecli/materialize.d.ts +0 -16
- package/dist/extensions/forgecli/materialize.js +0 -195
- package/dist/extensions/forgecli/materialize.js.map +0 -1
- package/dist/extensions/forgecli/migrate.d.ts +0 -22
- package/dist/extensions/forgecli/migrate.js +0 -260
- package/dist/extensions/forgecli/migrate.js.map +0 -1
- package/dist/extensions/forgecli/migration-engine.d.ts +0 -117
- package/dist/extensions/forgecli/migration-engine.js +0 -563
- package/dist/extensions/forgecli/migration-engine.js.map +0 -1
- package/dist/extensions/forgecli/model-registry.d.ts +0 -61
- package/dist/extensions/forgecli/model-registry.js +0 -127
- package/dist/extensions/forgecli/model-registry.js.map +0 -1
- package/dist/extensions/forgecli/model-resolver.d.ts +0 -32
- package/dist/extensions/forgecli/model-resolver.js +0 -65
- package/dist/extensions/forgecli/model-resolver.js.map +0 -1
- package/dist/extensions/forgecli/model-validator.d.ts +0 -29
- package/dist/extensions/forgecli/model-validator.js +0 -107
- package/dist/extensions/forgecli/model-validator.js.map +0 -1
- package/dist/extensions/forgecli/orchestrator-status-bar.d.ts +0 -26
- package/dist/extensions/forgecli/orchestrator-status-bar.js +0 -213
- package/dist/extensions/forgecli/orchestrator-status-bar.js.map +0 -1
- package/dist/extensions/forgecli/plan.d.ts +0 -22
- package/dist/extensions/forgecli/plan.js +0 -167
- package/dist/extensions/forgecli/plan.js.map +0 -1
- package/dist/extensions/forgecli/quiz-agent.d.ts +0 -17
- package/dist/extensions/forgecli/quiz-agent.js +0 -98
- package/dist/extensions/forgecli/quiz-agent.js.map +0 -1
- package/dist/extensions/forgecli/read-command.d.ts +0 -2
- package/dist/extensions/forgecli/read-command.js +0 -100
- package/dist/extensions/forgecli/read-command.js.map +0 -1
- package/dist/extensions/forgecli/regenerate.d.ts +0 -40
- package/dist/extensions/forgecli/regenerate.js +0 -438
- package/dist/extensions/forgecli/regenerate.js.map +0 -1
- package/dist/extensions/forgecli/remove-command.d.ts +0 -17
- package/dist/extensions/forgecli/remove-command.js +0 -124
- package/dist/extensions/forgecli/remove-command.js.map +0 -1
- package/dist/extensions/forgecli/report-bug.d.ts +0 -25
- package/dist/extensions/forgecli/report-bug.js +0 -159
- package/dist/extensions/forgecli/report-bug.js.map +0 -1
- package/dist/extensions/forgecli/retrospective.d.ts +0 -20
- package/dist/extensions/forgecli/retrospective.js +0 -126
- package/dist/extensions/forgecli/retrospective.js.map +0 -1
- package/dist/extensions/forgecli/review-code.d.ts +0 -35
- package/dist/extensions/forgecli/review-code.js +0 -196
- package/dist/extensions/forgecli/review-code.js.map +0 -1
- package/dist/extensions/forgecli/review-plan.d.ts +0 -35
- package/dist/extensions/forgecli/review-plan.js +0 -200
- package/dist/extensions/forgecli/review-plan.js.map +0 -1
- package/dist/extensions/forgecli/run-sprint.d.ts +0 -27
- package/dist/extensions/forgecli/run-sprint.js +0 -716
- package/dist/extensions/forgecli/run-sprint.js.map +0 -1
- package/dist/extensions/forgecli/run-task.d.ts +0 -204
- package/dist/extensions/forgecli/run-task.js +0 -1403
- package/dist/extensions/forgecli/run-task.js.map +0 -1
- package/dist/extensions/forgecli/skill-curation-flag.d.ts +0 -21
- package/dist/extensions/forgecli/skill-curation-flag.js +0 -71
- package/dist/extensions/forgecli/skill-curation-flag.js.map +0 -1
- package/dist/extensions/forgecli/skill-curator-subagent.d.ts +0 -102
- package/dist/extensions/forgecli/skill-curator-subagent.js +0 -339
- package/dist/extensions/forgecli/skill-curator-subagent.js.map +0 -1
- package/dist/extensions/forgecli/skill-retriever.d.ts +0 -84
- package/dist/extensions/forgecli/skill-retriever.js +0 -246
- package/dist/extensions/forgecli/skill-retriever.js.map +0 -1
- package/dist/extensions/forgecli/skill-usage-tracker.d.ts +0 -91
- package/dist/extensions/forgecli/skill-usage-tracker.js +0 -224
- package/dist/extensions/forgecli/skill-usage-tracker.js.map +0 -1
- package/dist/extensions/forgecli/sprint-intake.d.ts +0 -10
- package/dist/extensions/forgecli/sprint-intake.js +0 -91
- package/dist/extensions/forgecli/sprint-intake.js.map +0 -1
- package/dist/extensions/forgecli/sprint-plan.d.ts +0 -14
- package/dist/extensions/forgecli/sprint-plan.js +0 -122
- package/dist/extensions/forgecli/sprint-plan.js.map +0 -1
- package/dist/extensions/forgecli/status-command.d.ts +0 -19
- package/dist/extensions/forgecli/status-command.js +0 -140
- package/dist/extensions/forgecli/status-command.js.map +0 -1
- package/dist/extensions/forgecli/store-error-remediation.d.ts +0 -65
- package/dist/extensions/forgecli/store-error-remediation.js +0 -307
- package/dist/extensions/forgecli/store-error-remediation.js.map +0 -1
- package/dist/extensions/forgecli/store-query.d.ts +0 -22
- package/dist/extensions/forgecli/store-query.js +0 -107
- package/dist/extensions/forgecli/store-query.js.map +0 -1
- package/dist/extensions/forgecli/store-repair.d.ts +0 -17
- package/dist/extensions/forgecli/store-repair.js +0 -123
- package/dist/extensions/forgecli/store-repair.js.map +0 -1
- package/dist/extensions/forgecli/store-resolver.d.ts +0 -56
- package/dist/extensions/forgecli/store-resolver.js +0 -263
- package/dist/extensions/forgecli/store-resolver.js.map +0 -1
- package/dist/extensions/forgecli/store-validator.d.ts +0 -16
- package/dist/extensions/forgecli/store-validator.js +0 -32
- package/dist/extensions/forgecli/store-validator.js.map +0 -1
- package/dist/extensions/forgecli/test-orchestrate.d.ts +0 -2
- package/dist/extensions/forgecli/test-orchestrate.js +0 -182
- package/dist/extensions/forgecli/test-orchestrate.js.map +0 -1
- package/dist/extensions/forgecli/thread-switcher.d.ts +0 -5
- package/dist/extensions/forgecli/thread-switcher.js +0 -189
- package/dist/extensions/forgecli/thread-switcher.js.map +0 -1
- package/dist/extensions/forgecli/transition-guard.d.ts +0 -20
- package/dist/extensions/forgecli/transition-guard.js +0 -89
- package/dist/extensions/forgecli/transition-guard.js.map +0 -1
- package/dist/extensions/forgecli/update-check.d.ts +0 -37
- package/dist/extensions/forgecli/update-check.js +0 -185
- package/dist/extensions/forgecli/update-check.js.map +0 -1
- package/dist/extensions/forgecli/update-tools.d.ts +0 -23
- package/dist/extensions/forgecli/update-tools.js +0 -135
- package/dist/extensions/forgecli/update-tools.js.map +0 -1
- package/dist/extensions/forgecli/validate.d.ts +0 -22
- package/dist/extensions/forgecli/validate.js +0 -152
- package/dist/extensions/forgecli/validate.js.map +0 -1
- package/dist/extensions/forgecli/viewport-events.d.ts +0 -78
- package/dist/extensions/forgecli/viewport-events.js +0 -243
- package/dist/extensions/forgecli/viewport-events.js.map +0 -1
- package/dist/extensions/forgecli/viewport-renderer.d.ts +0 -83
- package/dist/extensions/forgecli/viewport-renderer.js +0 -233
- package/dist/extensions/forgecli/viewport-renderer.js.map +0 -1
- package/dist/extensions/forgecli/viewport-theme.d.ts +0 -11
- package/dist/extensions/forgecli/viewport-theme.js +0 -128
- package/dist/extensions/forgecli/viewport-theme.js.map +0 -1
- package/dist/extensions/forgecli/whats-new-widget.d.ts +0 -26
- package/dist/extensions/forgecli/whats-new-widget.js +0 -376
- package/dist/extensions/forgecli/whats-new-widget.js.map +0 -1
- package/dist/extensions/forgecli/whats-new.d.ts +0 -120
- package/dist/extensions/forgecli/whats-new.js +0 -470
- package/dist/extensions/forgecli/whats-new.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,94 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [1.0.25] — 2026-06-06
|
|
11
|
+
|
|
12
|
+
Coordinated release matching forge plugin **v1.2.21**. Both changes come from
|
|
13
|
+
the first live firing of the deterministic commit phase (HELLO-BUG-002
|
|
14
|
+
transcript analysis).
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
- **`forge_commit` named tool** — the commit phase's primary invocation
|
|
19
|
+
surface on forgecli: typed TypeBox params (`entity`, `id`, `message`,
|
|
20
|
+
`trailer`, `also[]`, `dryRun`, `skipGate`; deliberately **no `force`** —
|
|
21
|
+
operator-gated, never reachable from a subagent), argv-array spawn of
|
|
22
|
+
`commit-task.cjs` (no shell-quoting of the commit message), terminal-status
|
|
23
|
+
phase-ownership guard, full hook/governor visibility. Injected into every
|
|
24
|
+
subagent via the standard `ForgeToolDefs` surface.
|
|
25
|
+
|
|
26
|
+
### Fixed
|
|
27
|
+
|
|
28
|
+
- **fix-bug pipeline now performs the orchestrator-owned post-triage status
|
|
29
|
+
transitions** (`reported → triaged → in-progress`, per `meta-fix-bug.md`
|
|
30
|
+
step 2). Previously unimplemented: every bug reached the commit phase still
|
|
31
|
+
`reported`, tripping `commit-task`'s status guard and sending the subagent
|
|
32
|
+
through an illegal-transition recovery loop. Idempotent on resume
|
|
33
|
+
(`postTriageTransitions` helper, unit-tested).
|
|
34
|
+
- Re-vendored plugin payload at **v1.2.21** (commit-task check-ignore
|
|
35
|
+
pre-filter + nothing-to-commit no-op success).
|
|
36
|
+
|
|
37
|
+
## [1.0.24] — 2026-06-06
|
|
38
|
+
|
|
39
|
+
### Added
|
|
40
|
+
|
|
41
|
+
- **`forgeRoot` self-heal** (testbench clone-portability). A git-tracked
|
|
42
|
+
`.forge/config.json` may carry a `paths.forgeRoot` stamped on another
|
|
43
|
+
machine (global npm prefix, Claude plugin cache). When the configured path
|
|
44
|
+
does not exist, `discoverForgeConfig` now falls back to this forgecli's
|
|
45
|
+
bundled payload instead of handing callers a dangling root that breaks
|
|
46
|
+
`forge_store` (and every Forge command) on a fresh clone. The original
|
|
47
|
+
path is preserved in `healedFrom` for diagnostics. Enables the
|
|
48
|
+
forge-testbench *clone → main → run* contract.
|
|
49
|
+
|
|
50
|
+
## [1.0.23] — 2026-06-06
|
|
51
|
+
|
|
52
|
+
Coordinated release matching forge plugin **v1.2.20** (deterministic commit
|
|
53
|
+
choreography — forge-engineering#40).
|
|
54
|
+
|
|
55
|
+
### Changed
|
|
56
|
+
|
|
57
|
+
- **Commit phase cost collapse.** `forge.bundledVersion` 1.2.18 → 1.2.20:
|
|
58
|
+
the bundled `commit_task.md` now routes the entire commit choreography
|
|
59
|
+
through the new `commit-task.cjs` (added to `TOOLS_TO_COPY`) — preflight
|
|
60
|
+
gate, status precondition, staging from `files_changed` provenance,
|
|
61
|
+
commit-boundary guard, `git commit`, terminal transition in ONE tool call.
|
|
62
|
+
The commit phase, previously the most expensive phase of the pipeline
|
|
63
|
+
(15–31% of run input tokens; 25–55 turns on glm-4.7), shrinks to
|
|
64
|
+
inspect-once → craft message → one tool call. The generated workflow also
|
|
65
|
+
shrank 5.2KB → 3.9KB of per-turn context.
|
|
66
|
+
- New allowlist pin: workflow-referenced tools (invisible to the TS
|
|
67
|
+
source-scan) are now asserted present in `TOOLS_TO_COPY` —
|
|
68
|
+
`commit-task.cjs` is the first entry.
|
|
69
|
+
|
|
70
|
+
## [1.0.22] — 2026-06-06
|
|
71
|
+
|
|
72
|
+
Coordinated release matching forge plugin **v1.2.18** (event-type vocabulary
|
|
73
|
+
spec owner — forge-engineering#39).
|
|
74
|
+
|
|
75
|
+
### Fixed
|
|
76
|
+
|
|
77
|
+
- **Bug-pipeline fail events are no longer dropped.** `BUG_TYPE_TOKENS`'
|
|
78
|
+
`fix-revision-requested` (approve fail) and `bug-commit-failed` (commit
|
|
79
|
+
fail) were rejected by the bundled event schema since their introduction —
|
|
80
|
+
every fix-bug approve-revision/commit-failure event and its token telemetry
|
|
81
|
+
was silently discarded (warn-and-continue). The re-vendored v1.2.18 payload
|
|
82
|
+
accepts them; `forge.bundledVersion` pin moved 1.0.10 → 1.2.18.
|
|
83
|
+
|
|
84
|
+
### Added
|
|
85
|
+
|
|
86
|
+
- **Sprint-grain lifecycle events.** `forge:run-sprint` now store-emits
|
|
87
|
+
`sprint-start` (once, before the task loop, fresh starts only) and
|
|
88
|
+
`task-dispatch` (before each task dispatch), completing the four-token
|
|
89
|
+
sprint vocabulary it already half-emitted (`sprint-complete`/
|
|
90
|
+
`sprint-halted`) — parity with the `wfl:run-sprint` JS driver.
|
|
91
|
+
- **Event-vocabulary contract test**
|
|
92
|
+
(`test/extensions/forgecli/event-vocabulary-contract.test.ts`): every
|
|
93
|
+
store-emitted `type` token in the orchestrators and skill-curation
|
|
94
|
+
emitters must be a member of the vendored schema enum. This is the
|
|
95
|
+
recurrence guard for the #39 drift class — an invented token now fails CI
|
|
96
|
+
instead of silently dropping events at runtime.
|
|
97
|
+
|
|
10
98
|
## [1.0.21] — 2026-06-05
|
|
11
99
|
|
|
12
100
|
The transcript-archive release: every orchestrator run is now permanently
|
|
@@ -5,6 +5,124 @@ Format: newest first. Breaking changes are marked **△ Breaking**.
|
|
|
5
5
|
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
+
## [1.2.21] — 2026-06-06
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- **`commit-task.cjs` hardened from its first live firing** (HELLO-BUG-002
|
|
13
|
+
transcript analysis, forge-engineering#40):
|
|
14
|
+
- Gitignored staging paths are pre-filtered (`git check-ignore`) and
|
|
15
|
+
warn-skipped — one ignored path no longer aborts the all-or-nothing
|
|
16
|
+
`git add` (the agent had retried the identical failing command).
|
|
17
|
+
- A clean staging set is now a **no-op success**: the tool still seals the
|
|
18
|
+
record's terminal status and returns
|
|
19
|
+
`{ok:true, committed:false, reason:"nothing-to-commit"}` — a bug whose
|
|
20
|
+
fix is already at HEAD ends `fixed` without the agent improvising manual
|
|
21
|
+
transitions. Result JSON gains an explicit `committed` flag.
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
|
|
25
|
+
- **`meta-commit.md`: `forge_commit` named tool is the primary surface on
|
|
26
|
+
forgecli** — typed arguments, no shell-quoting of the commit message, full
|
|
27
|
+
hook/governor visibility. The `node .forge/tools/commit-task.cjs` bash form
|
|
28
|
+
remains the Claude Code fallback. The no-op outcome is documented as
|
|
29
|
+
success ("do not 'fix' a no-op by staging things yourself").
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## [1.2.20] — 2026-06-06
|
|
34
|
+
|
|
35
|
+
### Added
|
|
36
|
+
|
|
37
|
+
- **`tools/commit-task.cjs` — deterministic commit choreography**
|
|
38
|
+
(forge-engineering#40). The commit phase was the most expensive phase of
|
|
39
|
+
the pipeline (15–31% of run input tokens across nine instrumented runs)
|
|
40
|
+
because an LLM re-derived deterministic choreography turn-by-turn. The new
|
|
41
|
+
tool owns the whole sequence in one call: preflight gate → status
|
|
42
|
+
precondition (task `approved` / bug `in-progress`) → staging-set derivation
|
|
43
|
+
(record artifact dir + implementation `files_changed` provenance +
|
|
44
|
+
validated `--also` extras) → commit-boundary guard (aborts loudly when the
|
|
45
|
+
index already has staged changes) → `git commit` → terminal transition
|
|
46
|
+
(task → `committed`, bug → `fixed`). `--dry-run` honored, argv-array
|
|
47
|
+
spawns only, `--force` operator-gated transitively via store-cli's
|
|
48
|
+
`FORGE_ALLOW_FORCE`. 11 tests.
|
|
49
|
+
- **Implementation file provenance.** `PHASE_SUMMARY_SCHEMA` gains optional
|
|
50
|
+
`files_changed` (≤100 repo-relative paths); `meta-implement.md` instructs
|
|
51
|
+
recording every created/modified/deleted source path in
|
|
52
|
+
`IMPLEMENTATION-SUMMARY.json` — the commit phase no longer re-derives the
|
|
53
|
+
change surface from git.
|
|
54
|
+
|
|
55
|
+
### Fixed
|
|
56
|
+
|
|
57
|
+
- **`meta-commit.md` no longer commands an impossible store write.** The old
|
|
58
|
+
step 5 said *"Write the SUMMARY and return"* — but `commit` is not in
|
|
59
|
+
`VALID_SUMMARY_PHASES`, so obedient agents hunted for a format that doesn't
|
|
60
|
+
exist and then burned the 3-retry write-verification loop on a write that
|
|
61
|
+
can never validate. The workflow now states the no-summary contract
|
|
62
|
+
explicitly.
|
|
63
|
+
- **Commit-phase flail loops closed at the prompt layer**: batched inspection
|
|
64
|
+
(`git diff --stat` once, one combined diff — never per-file), staging policy
|
|
65
|
+
owned by the tool (manual `git add`/`git commit`/`git reset` forbidden), and
|
|
66
|
+
the premature-commit/reset/redo loop explicitly banned.
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## [1.2.19] — 2026-06-06
|
|
71
|
+
|
|
72
|
+
### Fixed
|
|
73
|
+
|
|
74
|
+
- **JS workflow drivers no longer let subagents guess event `type` tokens**
|
|
75
|
+
(forge-engineering#39 Phase 3). `wfl-run-task.js` / `wfl-fix-bug.js` now
|
|
76
|
+
carry `TASK_TYPE_TOKENS` / `BUG_TYPE_TOKENS` maps (verbatim ports of
|
|
77
|
+
`_fragments/event-vocabulary.md`) and inject explicit per-phase guidance
|
|
78
|
+
into the emit instructions: start events MUST NOT carry `type`, complete
|
|
79
|
+
events set the exact pass/fail token, and copying the action value
|
|
80
|
+
(`start`/`complete`) into `type` is explicitly forbidden — that guess-leak
|
|
81
|
+
produced the schema-rejected `type:"start"`/`type:"complete"` store
|
|
82
|
+
residue observed in `events/bugs/`.
|
|
83
|
+
- **`wfl-run-task.js` `emitSkip()` skip events are no longer silently
|
|
84
|
+
rejected** — the event carried `iteration: 0` against the schema's
|
|
85
|
+
`minimum: 1`; every pre-task SKIP_STATUS event was dropped. Now `1`.
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## [1.2.18] — 2026-06-06
|
|
90
|
+
|
|
91
|
+
### Added
|
|
92
|
+
|
|
93
|
+
- **Event-type vocabulary now has a spec owner** (forge-engineering#39). New
|
|
94
|
+
canonical fragment `_fragments/event-vocabulary.md` defines the phase→`type`
|
|
95
|
+
token tables for task, bug, and sprint events (pass/fail tokens per phase,
|
|
96
|
+
conditional field requirements, kebab-case convention). The schema enum in
|
|
97
|
+
`event.schema.json` mirrors the fragment; emitters never invent tokens.
|
|
98
|
+
`meta-fix-bug.md`, `meta-orchestrate.md`, `event-emission-schema.md`, and
|
|
99
|
+
the store-schema docs reference it.
|
|
100
|
+
|
|
101
|
+
### Fixed
|
|
102
|
+
|
|
103
|
+
- **Bug-pipeline fail events are no longer silently dropped.**
|
|
104
|
+
`event.schema.json` now accepts `fix-revision-requested` (approve fail) and
|
|
105
|
+
`bug-commit-failed` (commit fail) — the tokens forge-cli's fix-bug
|
|
106
|
+
orchestrator has emitted since 2026-05-15 but the enum rejected, discarding
|
|
107
|
+
the events and their token telemetry (observed live on testbench
|
|
108
|
+
CART-BUG-001).
|
|
109
|
+
- **`bug-skipped` pre-loop skip event is now schema-valid.** New enum token +
|
|
110
|
+
conditional (requires `bugId`, no phase/iteration). The base-pack
|
|
111
|
+
`wfl-fix-bug.js` skip emit was triple-broken: underscore `bug_skipped`
|
|
112
|
+
token (not in enum), missing required `eventId`/`model`/`provider`, and an
|
|
113
|
+
undeclared `reason` key (`additionalProperties: false`). It now emits a
|
|
114
|
+
valid event with the skip reason in `notes` and `model`/`provider` `"n/a"`.
|
|
115
|
+
`meta-fix-bug.md` step 1 references the canonical shape.
|
|
116
|
+
|
|
117
|
+
### Removed
|
|
118
|
+
|
|
119
|
+
- **`bug-fixed` enum token retired** — defined since the bug-pipeline schema
|
|
120
|
+
landed, emitted by no surface, zero occurrences in any store. The
|
|
121
|
+
vocabulary fragment's invariant (every enum token has a named emitter)
|
|
122
|
+
forbids dead tokens.
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
8
126
|
## [1.2.17] — 2026-06-04
|
|
9
127
|
|
|
10
128
|
### Fixed
|
|
@@ -116,6 +116,7 @@ export function registerForgeTools(pi, forgeRoot, projectRoot) {
|
|
|
116
116
|
const defs = {
|
|
117
117
|
collate: buildForgeCollate(toolDir, projectRoot),
|
|
118
118
|
store: buildForgeStore(toolDir, projectRoot),
|
|
119
|
+
commit: buildForgeCommit(toolDir, projectRoot),
|
|
119
120
|
validateStore: buildForgeValidateStore(toolDir, projectRoot),
|
|
120
121
|
config: buildForgeConfig(toolDir, projectRoot),
|
|
121
122
|
storeDescribe: buildForgeStoreDescribe(toolDir, projectRoot),
|
|
@@ -210,6 +211,78 @@ function buildForgeCollate(toolDir, projectRoot) {
|
|
|
210
211
|
},
|
|
211
212
|
};
|
|
212
213
|
}
|
|
214
|
+
// ── forge_commit ─────────────────────────────────────────────────────────────
|
|
215
|
+
function buildForgeCommit(toolDir, projectRoot) {
|
|
216
|
+
return {
|
|
217
|
+
name: "forge_commit",
|
|
218
|
+
label: "Forge Commit",
|
|
219
|
+
description: "Direct exec of forge/tools/commit-task.cjs — the deterministic commit choreography " +
|
|
220
|
+
"(forge-engineering#40). ONE call owns: preflight gate, status precondition " +
|
|
221
|
+
"(task 'approved' / bug 'in-progress'), staging-set derivation (record artifact dir + " +
|
|
222
|
+
"summaries.implementation.files_changed provenance + 'also' extras; gitignored paths " +
|
|
223
|
+
"warn-skipped), commit-boundary guard (aborts on a pre-staged index), git commit, and the " +
|
|
224
|
+
"terminal status transition (task→committed / bug→fixed).\n\n" +
|
|
225
|
+
"Success JSON: {ok:true, committed:true, sha, staged[]} — or the no-op success " +
|
|
226
|
+
"{ok:true, committed:false, reason:'nothing-to-commit'} when the staging set is already " +
|
|
227
|
+
"clean (e.g. the fix was at HEAD): the record is STILL sealed; do not improvise staging.\n\n" +
|
|
228
|
+
"Never run git add / git commit / git reset yourself in the commit phase.",
|
|
229
|
+
promptSnippet: "Commit phase: inspect once (git diff --stat), craft the message, then call forge_commit " +
|
|
230
|
+
"ONCE. Typed args — never pass the commit message through a bash string. " +
|
|
231
|
+
"committed:false with reason nothing-to-commit is SUCCESS.",
|
|
232
|
+
parameters: Type.Object({
|
|
233
|
+
entity: Type.Union([Type.Literal("task"), Type.Literal("bug")], {
|
|
234
|
+
description: "Record kind to seal.",
|
|
235
|
+
}),
|
|
236
|
+
id: Type.String({ description: "Record id, e.g. FORGE-S01-T01 or FORGE-BUG-001." }),
|
|
237
|
+
message: Type.String({
|
|
238
|
+
description: "Commit message (subject [+ body]). Include the record id; follow project conventions.",
|
|
239
|
+
}),
|
|
240
|
+
trailer: Type.Optional(Type.String({ description: "Optional Co-authored-by trailer line." })),
|
|
241
|
+
also: Type.Optional(Type.Array(Type.String(), {
|
|
242
|
+
description: "Extra repo-relative paths to stage — used when the implementation summary lacks files_changed provenance.",
|
|
243
|
+
})),
|
|
244
|
+
dryRun: Type.Optional(Type.Boolean({ description: "Print the staging plan without writing." })),
|
|
245
|
+
skipGate: Type.Optional(Type.Boolean({ description: "Skip the embedded preflight gate (orchestrator already ran it)." })),
|
|
246
|
+
// NOTE: no `force` parameter by design — --force is operator-gated
|
|
247
|
+
// (FORGE_ALLOW_FORCE) and must never be reachable from a subagent.
|
|
248
|
+
}, { additionalProperties: false }),
|
|
249
|
+
async execute(_toolCallId, _params, signal) {
|
|
250
|
+
const params = _params;
|
|
251
|
+
// Terminal-status ownership: forge_commit performs the terminal
|
|
252
|
+
// update-status internally — only the commit phase (or the
|
|
253
|
+
// orchestrator) may seal a record. Mirrors the forge_store
|
|
254
|
+
// update-status guard for `fixed`.
|
|
255
|
+
try {
|
|
256
|
+
if (params.entity === "bug" && !params.dryRun) {
|
|
257
|
+
assertBugStatusOwnership("forge_commit", "fixed");
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
catch (err) {
|
|
261
|
+
if (err instanceof PhaseOwnershipError)
|
|
262
|
+
return errResult(err.message);
|
|
263
|
+
throw err;
|
|
264
|
+
}
|
|
265
|
+
const toolPath = path.join(toolDir, "commit-task.cjs");
|
|
266
|
+
const argv = [`--${params.entity}`, params.id, "--message", params.message];
|
|
267
|
+
if (params.trailer)
|
|
268
|
+
argv.push("--trailer", params.trailer);
|
|
269
|
+
for (const p of params.also ?? [])
|
|
270
|
+
argv.push("--also", p);
|
|
271
|
+
if (params.dryRun)
|
|
272
|
+
argv.push("--dry-run");
|
|
273
|
+
if (params.skipGate)
|
|
274
|
+
argv.push("--skip-gate");
|
|
275
|
+
try {
|
|
276
|
+
const { stdout } = await runCjs(toolPath, argv, signal, 30_000, projectRoot);
|
|
277
|
+
return okResult(stdout);
|
|
278
|
+
}
|
|
279
|
+
catch (err) {
|
|
280
|
+
const e = err;
|
|
281
|
+
return errResult(`forge_commit failed: ${e.message ?? "unknown error"}`);
|
|
282
|
+
}
|
|
283
|
+
},
|
|
284
|
+
};
|
|
285
|
+
}
|
|
213
286
|
// ── forge_store ──────────────────────────────────────────────────────────────
|
|
214
287
|
function buildForgeStore(toolDir, projectRoot) {
|
|
215
288
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forge-tools.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/forge-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"forge-tools.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/forge-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
export interface ForgeConfig {
|
|
2
2
|
forgeRoot: string;
|
|
3
3
|
configPath: string;
|
|
4
|
+
/** Set when the configured forgeRoot did not exist and resolution fell
|
|
5
|
+
* back to this forgecli's bundled payload (testbench clone-portability:
|
|
6
|
+
* tracked configs carry another machine's global npm / plugin-cache
|
|
7
|
+
* path). Carries the original dangling path for diagnostics. */
|
|
8
|
+
healedFrom?: string;
|
|
4
9
|
}
|
|
5
10
|
/**
|
|
6
11
|
* Discover the forge plugin root AND return the config path so callers can
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
// `subagent/agents.ts:96-106`.
|
|
9
9
|
import * as fs from "node:fs";
|
|
10
10
|
import * as path from "node:path";
|
|
11
|
-
import {
|
|
11
|
+
import { resolveBundledPayloadRoot } from "./catalog-loader.js";
|
|
12
|
+
import { isDirectory, isFile } from "./shared-fs-utils.js";
|
|
12
13
|
function findNearestForgeConfig(cwd) {
|
|
13
14
|
let currentDir = cwd;
|
|
14
15
|
while (true) {
|
|
@@ -57,6 +58,18 @@ export function discoverForgeConfig(cwd = process.cwd()) {
|
|
|
57
58
|
// `<projectDir>/forge/forge`.
|
|
58
59
|
const projectDir = path.dirname(path.dirname(configPath));
|
|
59
60
|
const resolved = path.isAbsolute(forgeRootValue) ? forgeRootValue : path.resolve(projectDir, forgeRootValue);
|
|
61
|
+
// Self-heal a dangling forgeRoot (forge-engineering testbench parity):
|
|
62
|
+
// a git-tracked config may carry a path stamped on another machine
|
|
63
|
+
// (global npm prefix, Claude plugin cache). Handing callers a nonexistent
|
|
64
|
+
// root breaks forge_store (tools spawn from forgeRoot/tools) on every
|
|
65
|
+
// fresh clone. Fall back to this forgecli's bundled payload, which always
|
|
66
|
+
// exists in an installed or built package.
|
|
67
|
+
if (!isDirectory(resolved)) {
|
|
68
|
+
const bundled = resolveBundledPayloadRoot();
|
|
69
|
+
if (isDirectory(bundled)) {
|
|
70
|
+
return { forgeRoot: bundled, configPath, healedFrom: resolved };
|
|
71
|
+
}
|
|
72
|
+
}
|
|
60
73
|
return { forgeRoot: resolved, configPath };
|
|
61
74
|
}
|
|
62
75
|
//# sourceMappingURL=forge-root.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forge-root.js","sourceRoot":"","sources":["../../../../src/extensions/forgecli/lib/forge-root.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,2EAA2E;AAC3E,yEAAyE;AACzE,uGAAuG;AACvG,oEAAoE;AACpE,EAAE;AACF,uDAAuD;AACvD,+BAA+B;AAE/B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"forge-root.js","sourceRoot":"","sources":["../../../../src/extensions/forgecli/lib/forge-root.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,2EAA2E;AAC3E,yEAAyE;AACzE,uGAAuG;AACvG,oEAAoE;AACpE,EAAE;AACF,uDAAuD;AACvD,+BAA+B;AAE/B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE3D,SAAS,sBAAsB,CAAC,GAAW;IAC1C,IAAI,UAAU,GAAG,GAAG,CAAC;IACrB,OAAO,IAAI,EAAE,CAAC;QACb,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QACjE,IAAI,MAAM,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;QAExC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,SAAS,KAAK,UAAU;YAAE,OAAO,IAAI,CAAC;QAC1C,UAAU,GAAG,SAAS,CAAC;IACxB,CAAC;AACF,CAAC;AAYD;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc,OAAO,CAAC,GAAG,EAAE;IAC9D,MAAM,UAAU,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC/C,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAE7B,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACJ,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACJ,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,cAAc,GACnB,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAI,MAAM;QACxD,CAAC,CAAE,MAA8C,CAAC,KAAK,EAAE,SAAS;QAClE,CAAC,CAAC,SAAS,CAAC;IAEd,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,0EAA0E;IAC1E,uEAAuE;IACvE,sEAAsE;IACtE,2DAA2D;IAC3D,8BAA8B;IAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAE7G,uEAAuE;IACvE,mEAAmE;IACnE,0EAA0E;IAC1E,sEAAsE;IACtE,0EAA0E;IAC1E,2CAA2C;IAC3C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,yBAAyB,EAAE,CAAC;QAC5C,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;QACjE,CAAC;IACF,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;AAC5C,CAAC"}
|
|
@@ -110,6 +110,21 @@ export const BUG_TYPE_TOKENS = {
|
|
|
110
110
|
// `approved` and `verified` enum values were dropped in forge v0.44.0
|
|
111
111
|
// (FORGE-BUG-002 trap). The canonical source is store-cli.cjs.
|
|
112
112
|
const BUG_TERMINAL_STATES = new Set(["fixed"]);
|
|
113
|
+
// Post-triage status transitions the ORCHESTRATOR owns (meta-fix-bug.md
|
|
114
|
+
// step 2: "On return, orchestrator transitions status: triaged then
|
|
115
|
+
// in-progress" — a required two-step state-machine contract; the FSM
|
|
116
|
+
// forbids the one-step reported → in-progress jump). First live firing of
|
|
117
|
+
// commit-task.cjs exposed this as unimplemented: bugs reached the commit
|
|
118
|
+
// phase still 'reported' and the terminal-status guard fired every run.
|
|
119
|
+
// Returns the ordered list of statuses to write from the given status —
|
|
120
|
+
// idempotent on resume (already in-progress / terminal → no-op).
|
|
121
|
+
export function postTriageTransitions(status) {
|
|
122
|
+
if (status === "reported")
|
|
123
|
+
return ["triaged", "in-progress"];
|
|
124
|
+
if (status === "triaged")
|
|
125
|
+
return ["in-progress"];
|
|
126
|
+
return [];
|
|
127
|
+
}
|
|
113
128
|
function bugStateFilePath(cwd, bugId, sessionId) {
|
|
114
129
|
if (!validateId(bugId)) {
|
|
115
130
|
throw new Error(`Invalid bugId for state file path: ${bugId}`);
|
|
@@ -1391,6 +1406,17 @@ async function runBugPipelineInner(opts, onOrchestratorTranscript) {
|
|
|
1391
1406
|
// bug status proves the work happened.
|
|
1392
1407
|
if (phase.role === "triage") {
|
|
1393
1408
|
const bugAfterTriage = readBugRecord(bugId, storeCli, cwd);
|
|
1409
|
+
// Orchestrator-owned post-triage transitions (meta-fix-bug.md
|
|
1410
|
+
// step 2). Two sequential writes through store-cli (the FSM
|
|
1411
|
+
// authority); failure warns but does not halt — the commit
|
|
1412
|
+
// phase's status guard is the backstop.
|
|
1413
|
+
for (const target of postTriageTransitions(bugAfterTriage?.status)) {
|
|
1414
|
+
const upd = spawnSync("node", [storeCli, "update-status", "bug", bugId, "status", target], { cwd, encoding: "utf8" });
|
|
1415
|
+
if (upd.status !== 0) {
|
|
1416
|
+
ctx.ui.notify(`⚠ forge:fix-bug — post-triage transition to '${target}' failed: ${(upd.stderr ?? "").toString().trim()}`, "warning");
|
|
1417
|
+
break;
|
|
1418
|
+
}
|
|
1419
|
+
}
|
|
1394
1420
|
const triageSummary = bugAfterTriage?.summaries?.triage;
|
|
1395
1421
|
const route = triageSummary?.route;
|
|
1396
1422
|
if (route === "A") {
|