@entelligentsia/forgecli 1.0.20 → 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 +131 -0
- package/README.md +7 -1
- package/dist/CHANGELOG-forge-plugin.md +118 -0
- package/dist/bin/config.js +4 -4
- package/dist/bin/config.js.map +1 -1
- package/dist/bin/update-cli.d.ts +1 -1
- package/dist/bin/update-cli.js +1 -1
- package/dist/bin/update-cli.js.map +1 -1
- package/dist/extensions/forgecli/ask-user-tool.js +1 -1
- package/dist/extensions/forgecli/ask-user-tool.js.map +1 -1
- package/dist/extensions/forgecli/{add-pipeline.js → commands/add-pipeline.js} +1 -1
- package/dist/extensions/forgecli/commands/add-pipeline.js.map +1 -0
- package/dist/extensions/forgecli/{add-task.js → commands/add-task.js} +1 -1
- package/dist/extensions/forgecli/commands/add-task.js.map +1 -0
- package/dist/extensions/forgecli/{approve.d.ts → commands/approve.d.ts} +2 -2
- package/dist/extensions/forgecli/{approve.js → commands/approve.js} +8 -8
- package/dist/extensions/forgecli/commands/approve.js.map +1 -0
- package/dist/extensions/forgecli/{collate.d.ts → commands/collate.d.ts} +2 -2
- package/dist/extensions/forgecli/{collate.js → commands/collate.js} +6 -6
- package/dist/extensions/forgecli/commands/collate.js.map +1 -0
- package/dist/extensions/forgecli/{commit.d.ts → commands/commit.d.ts} +2 -2
- package/dist/extensions/forgecli/{commit.js → commands/commit.js} +8 -8
- package/dist/extensions/forgecli/commands/commit.js.map +1 -0
- package/dist/extensions/forgecli/{config-command.js → commands/config-command.js} +3 -3
- package/dist/extensions/forgecli/commands/config-command.js.map +1 -0
- package/dist/extensions/forgecli/commands/enhance.d.ts +45 -0
- package/dist/extensions/forgecli/{enhance.js → commands/enhance.js} +95 -75
- package/dist/extensions/forgecli/commands/enhance.js.map +1 -0
- package/dist/extensions/forgecli/{implement.d.ts → commands/implement.d.ts} +2 -2
- package/dist/extensions/forgecli/{implement.js → commands/implement.js} +8 -8
- package/dist/extensions/forgecli/commands/implement.js.map +1 -0
- package/dist/extensions/forgecli/{plan.d.ts → commands/plan.d.ts} +2 -2
- package/dist/extensions/forgecli/{plan.js → commands/plan.js} +8 -8
- package/dist/extensions/forgecli/commands/plan.js.map +1 -0
- package/dist/extensions/forgecli/{quiz-agent.js → commands/quiz-agent.js} +1 -1
- package/dist/extensions/forgecli/commands/quiz-agent.js.map +1 -0
- package/dist/extensions/forgecli/{read-command.js → commands/read-command.js} +2 -2
- package/dist/extensions/forgecli/commands/read-command.js.map +1 -0
- package/dist/extensions/forgecli/{regenerate.js → commands/regenerate.js} +7 -19
- package/dist/extensions/forgecli/commands/regenerate.js.map +1 -0
- package/dist/extensions/forgecli/{remove-command.js → commands/remove-command.js} +1 -1
- package/dist/extensions/forgecli/commands/remove-command.js.map +1 -0
- package/dist/extensions/forgecli/{report-bug.js → commands/report-bug.js} +1 -1
- package/dist/extensions/forgecli/commands/report-bug.js.map +1 -0
- package/dist/extensions/forgecli/{retrospective.d.ts → commands/retrospective.d.ts} +1 -1
- package/dist/extensions/forgecli/{retrospective.js → commands/retrospective.js} +5 -5
- package/dist/extensions/forgecli/commands/retrospective.js.map +1 -0
- package/dist/extensions/forgecli/{review-code.d.ts → commands/review-code.d.ts} +2 -2
- package/dist/extensions/forgecli/{review-code.js → commands/review-code.js} +9 -9
- package/dist/extensions/forgecli/commands/review-code.js.map +1 -0
- package/dist/extensions/forgecli/{review-plan.d.ts → commands/review-plan.d.ts} +2 -2
- package/dist/extensions/forgecli/{review-plan.js → commands/review-plan.js} +9 -9
- package/dist/extensions/forgecli/commands/review-plan.js.map +1 -0
- package/dist/extensions/forgecli/commands/sprint-intake.js.map +1 -0
- package/dist/extensions/forgecli/commands/sprint-plan.js.map +1 -0
- package/dist/extensions/forgecli/{status-command.js → commands/status-command.js} +1 -1
- package/dist/extensions/forgecli/commands/status-command.js.map +1 -0
- package/dist/extensions/forgecli/{store-query.js → commands/store-query.js} +1 -1
- package/dist/extensions/forgecli/commands/store-query.js.map +1 -0
- package/dist/extensions/forgecli/{store-repair.js → commands/store-repair.js} +1 -1
- package/dist/extensions/forgecli/commands/store-repair.js.map +1 -0
- package/dist/extensions/forgecli/{test-orchestrate.js → commands/test-orchestrate.js} +1 -1
- package/dist/extensions/forgecli/commands/test-orchestrate.js.map +1 -0
- package/dist/extensions/forgecli/commands/transcripts-command.d.ts +87 -0
- package/dist/extensions/forgecli/commands/transcripts-command.js +418 -0
- package/dist/extensions/forgecli/commands/transcripts-command.js.map +1 -0
- package/dist/extensions/forgecli/{validate.d.ts → commands/validate.d.ts} +2 -2
- package/dist/extensions/forgecli/{validate.js → commands/validate.js} +8 -8
- package/dist/extensions/forgecli/commands/validate.js.map +1 -0
- package/dist/extensions/forgecli/{config-layer.js → config/config-layer.js} +2 -2
- package/dist/extensions/forgecli/config/config-layer.js.map +1 -0
- package/dist/extensions/forgecli/{config-writer.js → config/config-writer.js} +2 -2
- package/dist/extensions/forgecli/config/config-writer.js.map +1 -0
- package/dist/extensions/forgecli/{model-registry.js → config/model-registry.js} +1 -1
- package/dist/extensions/forgecli/config/model-registry.js.map +1 -0
- package/dist/extensions/forgecli/config/model-resolver.js.map +1 -0
- package/dist/extensions/forgecli/config/model-validator.js.map +1 -0
- package/dist/extensions/forgecli/config-tui/component.js +1 -1
- package/dist/extensions/forgecli/config-tui/component.js.map +1 -1
- package/dist/extensions/forgecli/config-tui/handler.js +1 -1
- package/dist/extensions/forgecli/config-tui/handler.js.map +1 -1
- package/dist/extensions/forgecli/config-tui/screens/override-editor.js +1 -1
- package/dist/extensions/forgecli/config-tui/screens/override-editor.js.map +1 -1
- package/dist/extensions/forgecli/config-tui/screens/overrides-list-phases.js +1 -1
- package/dist/extensions/forgecli/config-tui/screens/overrides-list-phases.js.map +1 -1
- package/dist/extensions/forgecli/config-tui/screens/show-resolved.js +1 -1
- package/dist/extensions/forgecli/config-tui/screens/show-resolved.js.map +1 -1
- package/dist/extensions/forgecli/config-tui/state/buffer.d.ts +2 -2
- package/dist/extensions/forgecli/config-tui/state/model.d.ts +1 -1
- package/dist/extensions/forgecli/config-tui/state/reducer.js.map +1 -1
- package/dist/extensions/forgecli/config-tui/state/selectors.d.ts +2 -2
- package/dist/extensions/forgecli/config-tui/state/selectors.js +1 -1
- package/dist/extensions/forgecli/config-tui/state/selectors.js.map +1 -1
- package/dist/extensions/forgecli/context-governor-compaction.d.ts +13 -2
- package/dist/extensions/forgecli/context-governor-compaction.js +66 -41
- package/dist/extensions/forgecli/context-governor-compaction.js.map +1 -1
- package/dist/extensions/forgecli/context-governor.d.ts +3 -7
- package/dist/extensions/forgecli/context-governor.js +43 -69
- package/dist/extensions/forgecli/context-governor.js.map +1 -1
- package/dist/extensions/forgecli/dashboard/component.d.ts +10 -1
- package/dist/extensions/forgecli/dashboard/component.js +84 -18
- package/dist/extensions/forgecli/dashboard/component.js.map +1 -1
- package/dist/extensions/forgecli/dashboard/register.js +1 -1
- package/dist/extensions/forgecli/dashboard/register.js.map +1 -1
- package/dist/extensions/forgecli/forge-artifact-tool.js +1 -1
- package/dist/extensions/forgecli/forge-commands.js +1 -1
- package/dist/extensions/forgecli/forge-commands.js.map +1 -1
- package/dist/extensions/forgecli/{forge-init.js → forge-init/forge-init.js} +10 -10
- package/dist/extensions/forgecli/forge-init/forge-init.js.map +1 -0
- package/dist/extensions/forgecli/forge-init/init-context.js.map +1 -0
- package/dist/extensions/forgecli/forge-init/init-progress.js.map +1 -0
- package/dist/extensions/forgecli/forge-init/phase4-register.js +1 -1
- package/dist/extensions/forgecli/forge-init/phase4-register.js.map +1 -1
- package/dist/extensions/forgecli/forge-init/run-phases.js +2 -2
- package/dist/extensions/forgecli/forge-init/run-phases.js.map +1 -1
- package/dist/extensions/forgecli/forge-subagent.d.ts +22 -0
- package/dist/extensions/forgecli/forge-subagent.js +42 -15
- package/dist/extensions/forgecli/forge-subagent.js.map +1 -1
- package/dist/extensions/forgecli/forge-tools.d.ts +1 -25
- package/dist/extensions/forgecli/forge-tools.js +79 -37
- package/dist/extensions/forgecli/forge-tools.js.map +1 -1
- package/dist/extensions/forgecli/governor-config.d.ts +19 -0
- package/dist/extensions/forgecli/governor-config.js +58 -0
- package/dist/extensions/forgecli/governor-config.js.map +1 -0
- package/dist/extensions/forgecli/health-check.js +1 -1
- package/dist/extensions/forgecli/health-check.js.map +1 -1
- package/dist/extensions/forgecli/hook-dispatcher.js +2 -2
- package/dist/extensions/forgecli/hook-dispatcher.js.map +1 -1
- package/dist/extensions/forgecli/hooks/post-init-hook.js +11 -6
- package/dist/extensions/forgecli/hooks/post-init-hook.js.map +1 -1
- package/dist/extensions/forgecli/hooks/post-sprint-hook.js +11 -6
- package/dist/extensions/forgecli/hooks/post-sprint-hook.js.map +1 -1
- package/dist/extensions/forgecli/hooks/write-guard.js +1 -1
- package/dist/extensions/forgecli/hooks/write-guard.js.map +1 -1
- package/dist/extensions/forgecli/index.js +37 -35
- package/dist/extensions/forgecli/index.js.map +1 -1
- package/dist/extensions/forgecli/kickoff.d.ts +9 -0
- package/dist/extensions/forgecli/kickoff.js +15 -0
- package/dist/extensions/forgecli/kickoff.js.map +1 -1
- package/dist/extensions/forgecli/lib/forge-config.d.ts +1 -1
- package/dist/extensions/forgecli/lib/forge-config.js +1 -1
- package/dist/extensions/forgecli/lib/forge-config.js.map +1 -1
- package/dist/extensions/forgecli/{forge-root.d.ts → lib/forge-root.d.ts} +5 -0
- package/dist/extensions/forgecli/{forge-root.js → lib/forge-root.js} +14 -1
- package/dist/extensions/forgecli/lib/forge-root.js.map +1 -0
- package/dist/extensions/forgecli/lib/run-cjs.d.ts +26 -0
- package/dist/extensions/forgecli/lib/run-cjs.js +42 -0
- package/dist/extensions/forgecli/lib/run-cjs.js.map +1 -0
- package/dist/extensions/forgecli/orchestrator-tree.d.ts +4 -0
- package/dist/extensions/forgecli/orchestrator-tree.js +21 -3
- package/dist/extensions/forgecli/orchestrator-tree.js.map +1 -1
- package/dist/extensions/forgecli/{calibrate.d.ts → orchestrators/calibrate.d.ts} +2 -2
- package/dist/extensions/forgecli/{calibrate.js → orchestrators/calibrate.js} +4 -4
- package/dist/extensions/forgecli/orchestrators/calibrate.js.map +1 -0
- package/dist/extensions/forgecli/{fix-bug.d.ts → orchestrators/fix-bug.d.ts} +14 -5
- package/dist/extensions/forgecli/{fix-bug.js → orchestrators/fix-bug.js} +212 -61
- package/dist/extensions/forgecli/orchestrators/fix-bug.js.map +1 -0
- package/dist/extensions/forgecli/{lib → orchestrators}/halt-advisor.d.ts +1 -1
- package/dist/extensions/forgecli/{lib → orchestrators}/halt-advisor.js +1 -1
- package/dist/extensions/forgecli/orchestrators/halt-advisor.js.map +1 -0
- package/dist/extensions/forgecli/{materialize.js → orchestrators/materialize.js} +1 -1
- package/dist/extensions/forgecli/orchestrators/materialize.js.map +1 -0
- package/dist/extensions/forgecli/{migrate.d.ts → orchestrators/migrate.d.ts} +1 -1
- package/dist/extensions/forgecli/{migrate.js → orchestrators/migrate.js} +5 -5
- package/dist/extensions/forgecli/orchestrators/migrate.js.map +1 -0
- package/dist/extensions/forgecli/{lib → orchestrators}/orchestrator-preflight.d.ts +2 -2
- package/dist/extensions/forgecli/{lib → orchestrators}/orchestrator-preflight.js +2 -2
- package/dist/extensions/forgecli/orchestrators/orchestrator-preflight.js.map +1 -0
- package/dist/extensions/forgecli/{run-sprint.d.ts → orchestrators/run-sprint.d.ts} +1 -1
- package/dist/extensions/forgecli/{run-sprint.js → orchestrators/run-sprint.js} +85 -18
- package/dist/extensions/forgecli/orchestrators/run-sprint.js.map +1 -0
- package/dist/extensions/forgecli/{run-task.d.ts → orchestrators/run-task.d.ts} +14 -3
- package/dist/extensions/forgecli/{run-task.js → orchestrators/run-task.js} +121 -33
- package/dist/extensions/forgecli/orchestrators/run-task.js.map +1 -0
- package/dist/extensions/forgecli/paths/paths.d.ts +8 -0
- package/dist/extensions/forgecli/paths/paths.js +17 -0
- package/dist/extensions/forgecli/paths/paths.js.map +1 -1
- package/dist/extensions/forgecli/phase-vocab.d.ts +31 -0
- package/dist/extensions/forgecli/phase-vocab.js +82 -0
- package/dist/extensions/forgecli/phase-vocab.js.map +1 -0
- package/dist/extensions/forgecli/session-registry.d.ts +2 -2
- package/dist/extensions/forgecli/session-registry.js +6 -2
- package/dist/extensions/forgecli/session-registry.js.map +1 -1
- package/dist/extensions/forgecli/{friction-emit.d.ts → skill-curation/friction-emit.d.ts} +1 -1
- package/dist/extensions/forgecli/{friction-emit.js → skill-curation/friction-emit.js} +2 -2
- package/dist/extensions/forgecli/skill-curation/friction-emit.js.map +1 -0
- package/dist/extensions/forgecli/{skill-curation-flag.js → skill-curation/skill-curation-flag.js} +1 -1
- package/dist/extensions/forgecli/skill-curation/skill-curation-flag.js.map +1 -0
- package/dist/extensions/forgecli/{skill-curator-subagent.d.ts → skill-curation/skill-curator-subagent.d.ts} +2 -2
- package/dist/extensions/forgecli/{skill-curator-subagent.js → skill-curation/skill-curator-subagent.js} +1 -1
- package/dist/extensions/forgecli/skill-curation/skill-curator-subagent.js.map +1 -0
- package/dist/extensions/forgecli/{skill-retriever.js → skill-curation/skill-retriever.js} +1 -1
- package/dist/extensions/forgecli/skill-curation/skill-retriever.js.map +1 -0
- package/dist/extensions/forgecli/{skill-usage-tracker.js → skill-curation/skill-usage-tracker.js} +1 -1
- package/dist/extensions/forgecli/skill-curation/skill-usage-tracker.js.map +1 -0
- package/dist/extensions/forgecli/store/store-error-remediation.js.map +1 -0
- package/dist/extensions/forgecli/{store-resolver.js → store/store-resolver.js} +2 -2
- package/dist/extensions/forgecli/store/store-resolver.js.map +1 -0
- package/dist/extensions/forgecli/{store-validator.js → store/store-validator.js} +1 -1
- package/dist/extensions/forgecli/store/store-validator.js.map +1 -0
- package/dist/extensions/forgecli/{transition-guard.js → store/transition-guard.js} +2 -2
- package/dist/extensions/forgecli/store/transition-guard.js.map +1 -0
- package/dist/extensions/forgecli/subagent/orchestrator-transcript.js +5 -0
- package/dist/extensions/forgecli/subagent/orchestrator-transcript.js.map +1 -1
- package/dist/extensions/forgecli/transcript-archive-types.d.ts +171 -0
- package/dist/extensions/forgecli/transcript-archive-types.js +130 -0
- package/dist/extensions/forgecli/transcript-archive-types.js.map +1 -0
- package/dist/extensions/forgecli/transcript-archive.d.ts +127 -0
- package/dist/extensions/forgecli/transcript-archive.js +656 -0
- package/dist/extensions/forgecli/transcript-archive.js.map +1 -0
- package/dist/extensions/forgecli/transcript-replay.d.ts +28 -0
- package/dist/extensions/forgecli/transcript-replay.js +153 -0
- package/dist/extensions/forgecli/transcript-replay.js.map +1 -0
- package/dist/extensions/forgecli/transcripts-tui/component.d.ts +36 -0
- package/dist/extensions/forgecli/transcripts-tui/component.js +112 -0
- package/dist/extensions/forgecli/transcripts-tui/component.js.map +1 -0
- package/dist/extensions/forgecli/transcripts-tui/index.d.ts +4 -0
- package/dist/extensions/forgecli/transcripts-tui/index.js +5 -0
- package/dist/extensions/forgecli/transcripts-tui/index.js.map +1 -0
- package/dist/extensions/forgecli/transcripts-tui/screens/browse.d.ts +21 -0
- package/dist/extensions/forgecli/transcripts-tui/screens/browse.js +172 -0
- package/dist/extensions/forgecli/transcripts-tui/screens/browse.js.map +1 -0
- package/dist/extensions/forgecli/transcripts-tui/screens/types.d.ts +22 -0
- package/dist/extensions/forgecli/transcripts-tui/screens/types.js +4 -0
- package/dist/extensions/forgecli/transcripts-tui/screens/types.js.map +1 -0
- package/dist/extensions/forgecli/transcripts-tui/state/index.d.ts +4 -0
- package/dist/extensions/forgecli/transcripts-tui/state/index.js +5 -0
- package/dist/extensions/forgecli/transcripts-tui/state/index.js.map +1 -0
- package/dist/extensions/forgecli/transcripts-tui/state/init.d.ts +8 -0
- package/dist/extensions/forgecli/transcripts-tui/state/init.js +18 -0
- package/dist/extensions/forgecli/transcripts-tui/state/init.js.map +1 -0
- package/dist/extensions/forgecli/transcripts-tui/state/model.d.ts +56 -0
- package/dist/extensions/forgecli/transcripts-tui/state/model.js +6 -0
- package/dist/extensions/forgecli/transcripts-tui/state/model.js.map +1 -0
- package/dist/extensions/forgecli/transcripts-tui/state/reducer.d.ts +2 -0
- package/dist/extensions/forgecli/transcripts-tui/state/reducer.js +51 -0
- package/dist/extensions/forgecli/transcripts-tui/state/reducer.js.map +1 -0
- package/dist/extensions/forgecli/transcripts-tui/state/selectors.d.ts +10 -0
- package/dist/extensions/forgecli/transcripts-tui/state/selectors.js +62 -0
- package/dist/extensions/forgecli/transcripts-tui/state/selectors.js.map +1 -0
- package/dist/extensions/forgecli/transcripts-tui/theme.d.ts +20 -0
- package/dist/extensions/forgecli/transcripts-tui/theme.js +47 -0
- package/dist/extensions/forgecli/transcripts-tui/theme.js.map +1 -0
- package/dist/extensions/forgecli/tui/banner.js.map +1 -0
- package/dist/extensions/forgecli/tui/forge-header.js.map +1 -0
- package/dist/extensions/forgecli/tui/input-router.js.map +1 -0
- package/dist/extensions/forgecli/{orchestrator-status-bar.d.ts → tui/orchestrator-status-bar.d.ts} +1 -1
- package/dist/extensions/forgecli/{orchestrator-status-bar.js → tui/orchestrator-status-bar.js} +1 -1
- package/dist/extensions/forgecli/tui/orchestrator-status-bar.js.map +1 -0
- package/dist/extensions/forgecli/tui/thread-switcher.d.ts +18 -0
- package/dist/extensions/forgecli/{thread-switcher.js → tui/thread-switcher.js} +17 -12
- package/dist/extensions/forgecli/tui/thread-switcher.js.map +1 -0
- package/dist/extensions/forgecli/{forge-update-command.js → update/forge-update-command.js} +3 -3
- package/dist/extensions/forgecli/update/forge-update-command.js.map +1 -0
- package/dist/extensions/forgecli/{migration-engine.js → update/migration-engine.js} +1 -1
- package/dist/extensions/forgecli/update/migration-engine.js.map +1 -0
- package/dist/extensions/forgecli/{update-check.js → update/update-check.js} +1 -1
- package/dist/extensions/forgecli/update/update-check.js.map +1 -0
- package/dist/extensions/forgecli/{update-tools.js → update/update-tools.js} +1 -1
- package/dist/extensions/forgecli/update/update-tools.js.map +1 -0
- package/dist/extensions/forgecli/{whats-new-widget.js → update/whats-new-widget.js} +2 -2
- package/dist/extensions/forgecli/update/whats-new-widget.js.map +1 -0
- package/dist/extensions/forgecli/{whats-new.js → update/whats-new.js} +1 -1
- package/dist/extensions/forgecli/update/whats-new.js.map +1 -0
- package/dist/extensions/forgecli/{viewport-events.d.ts → viewport/events.d.ts} +37 -2
- package/dist/extensions/forgecli/{viewport-events.js → viewport/events.js} +70 -23
- package/dist/extensions/forgecli/viewport/events.js.map +1 -0
- package/dist/extensions/forgecli/{viewport-renderer.d.ts → viewport/renderer.d.ts} +19 -0
- package/dist/extensions/forgecli/{viewport-renderer.js → viewport/renderer.js} +46 -2
- package/dist/extensions/forgecli/viewport/renderer.js.map +1 -0
- package/dist/extensions/forgecli/{viewport-theme.js → viewport/theme.js} +13 -10
- package/dist/extensions/forgecli/viewport/theme.js.map +1 -0
- package/dist/extensions/forgecli/wf-engine/engine.js +1 -1
- package/dist/extensions/forgecli/wf-engine/engine.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 +5 -3
- package/dist/extensions/forgecli/add-pipeline.js.map +0 -1
- package/dist/extensions/forgecli/add-task.js.map +0 -1
- package/dist/extensions/forgecli/approve.js.map +0 -1
- package/dist/extensions/forgecli/banner.js.map +0 -1
- package/dist/extensions/forgecli/calibrate.js.map +0 -1
- package/dist/extensions/forgecli/collate.js.map +0 -1
- package/dist/extensions/forgecli/commit.js.map +0 -1
- package/dist/extensions/forgecli/config-command.js.map +0 -1
- package/dist/extensions/forgecli/config-layer.js.map +0 -1
- 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.map +0 -1
- package/dist/extensions/forgecli/fix-bug.js.map +0 -1
- package/dist/extensions/forgecli/forge-header.js.map +0 -1
- package/dist/extensions/forgecli/forge-init.js.map +0 -1
- package/dist/extensions/forgecli/forge-root.js.map +0 -1
- package/dist/extensions/forgecli/forge-update-command.js.map +0 -1
- package/dist/extensions/forgecli/friction-emit.js.map +0 -1
- package/dist/extensions/forgecli/implement.js.map +0 -1
- package/dist/extensions/forgecli/init-context.js.map +0 -1
- package/dist/extensions/forgecli/init-progress.js.map +0 -1
- package/dist/extensions/forgecli/input-router.js.map +0 -1
- package/dist/extensions/forgecli/lib/halt-advisor.js.map +0 -1
- package/dist/extensions/forgecli/lib/orchestrator-preflight.js.map +0 -1
- package/dist/extensions/forgecli/materialize.js.map +0 -1
- package/dist/extensions/forgecli/migrate.js.map +0 -1
- package/dist/extensions/forgecli/migration-engine.js.map +0 -1
- package/dist/extensions/forgecli/model-registry.js.map +0 -1
- package/dist/extensions/forgecli/model-resolver.js.map +0 -1
- package/dist/extensions/forgecli/model-validator.js.map +0 -1
- package/dist/extensions/forgecli/orchestrator-status-bar.js.map +0 -1
- package/dist/extensions/forgecli/plan.js.map +0 -1
- package/dist/extensions/forgecli/quiz-agent.js.map +0 -1
- package/dist/extensions/forgecli/read-command.js.map +0 -1
- package/dist/extensions/forgecli/regenerate.js.map +0 -1
- package/dist/extensions/forgecli/remove-command.js.map +0 -1
- package/dist/extensions/forgecli/report-bug.js.map +0 -1
- package/dist/extensions/forgecli/retrospective.js.map +0 -1
- package/dist/extensions/forgecli/review-code.js.map +0 -1
- package/dist/extensions/forgecli/review-plan.js.map +0 -1
- package/dist/extensions/forgecli/run-sprint.js.map +0 -1
- package/dist/extensions/forgecli/run-task.js.map +0 -1
- package/dist/extensions/forgecli/skill-curation-flag.js.map +0 -1
- package/dist/extensions/forgecli/skill-curator-subagent.js.map +0 -1
- package/dist/extensions/forgecli/skill-retriever.js.map +0 -1
- package/dist/extensions/forgecli/skill-usage-tracker.js.map +0 -1
- package/dist/extensions/forgecli/sprint-intake.js.map +0 -1
- package/dist/extensions/forgecli/sprint-plan.js.map +0 -1
- package/dist/extensions/forgecli/status-command.js.map +0 -1
- package/dist/extensions/forgecli/store-error-remediation.js.map +0 -1
- package/dist/extensions/forgecli/store-query.js.map +0 -1
- package/dist/extensions/forgecli/store-repair.js.map +0 -1
- package/dist/extensions/forgecli/store-resolver.js.map +0 -1
- package/dist/extensions/forgecli/store-validator.js.map +0 -1
- 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.map +0 -1
- package/dist/extensions/forgecli/transition-guard.js.map +0 -1
- package/dist/extensions/forgecli/update-check.js.map +0 -1
- package/dist/extensions/forgecli/update-tools.js.map +0 -1
- package/dist/extensions/forgecli/validate.js.map +0 -1
- package/dist/extensions/forgecli/viewport-events.js.map +0 -1
- package/dist/extensions/forgecli/viewport-renderer.js.map +0 -1
- package/dist/extensions/forgecli/viewport-theme.js.map +0 -1
- package/dist/extensions/forgecli/whats-new-widget.js.map +0 -1
- package/dist/extensions/forgecli/whats-new.js.map +0 -1
- /package/dist/extensions/forgecli/{add-pipeline.d.ts → commands/add-pipeline.d.ts} +0 -0
- /package/dist/extensions/forgecli/{add-task.d.ts → commands/add-task.d.ts} +0 -0
- /package/dist/extensions/forgecli/{config-command.d.ts → commands/config-command.d.ts} +0 -0
- /package/dist/extensions/forgecli/{quiz-agent.d.ts → commands/quiz-agent.d.ts} +0 -0
- /package/dist/extensions/forgecli/{read-command.d.ts → commands/read-command.d.ts} +0 -0
- /package/dist/extensions/forgecli/{regenerate.d.ts → commands/regenerate.d.ts} +0 -0
- /package/dist/extensions/forgecli/{remove-command.d.ts → commands/remove-command.d.ts} +0 -0
- /package/dist/extensions/forgecli/{report-bug.d.ts → commands/report-bug.d.ts} +0 -0
- /package/dist/extensions/forgecli/{sprint-intake.d.ts → commands/sprint-intake.d.ts} +0 -0
- /package/dist/extensions/forgecli/{sprint-intake.js → commands/sprint-intake.js} +0 -0
- /package/dist/extensions/forgecli/{sprint-plan.d.ts → commands/sprint-plan.d.ts} +0 -0
- /package/dist/extensions/forgecli/{sprint-plan.js → commands/sprint-plan.js} +0 -0
- /package/dist/extensions/forgecli/{status-command.d.ts → commands/status-command.d.ts} +0 -0
- /package/dist/extensions/forgecli/{store-query.d.ts → commands/store-query.d.ts} +0 -0
- /package/dist/extensions/forgecli/{store-repair.d.ts → commands/store-repair.d.ts} +0 -0
- /package/dist/extensions/forgecli/{test-orchestrate.d.ts → commands/test-orchestrate.d.ts} +0 -0
- /package/dist/extensions/forgecli/{config-layer.d.ts → config/config-layer.d.ts} +0 -0
- /package/dist/extensions/forgecli/{config-writer.d.ts → config/config-writer.d.ts} +0 -0
- /package/dist/extensions/forgecli/{model-registry.d.ts → config/model-registry.d.ts} +0 -0
- /package/dist/extensions/forgecli/{model-resolver.d.ts → config/model-resolver.d.ts} +0 -0
- /package/dist/extensions/forgecli/{model-resolver.js → config/model-resolver.js} +0 -0
- /package/dist/extensions/forgecli/{model-validator.d.ts → config/model-validator.d.ts} +0 -0
- /package/dist/extensions/forgecli/{model-validator.js → config/model-validator.js} +0 -0
- /package/dist/extensions/forgecli/{forge-init.d.ts → forge-init/forge-init.d.ts} +0 -0
- /package/dist/extensions/forgecli/{init-context.d.ts → forge-init/init-context.d.ts} +0 -0
- /package/dist/extensions/forgecli/{init-context.js → forge-init/init-context.js} +0 -0
- /package/dist/extensions/forgecli/{init-progress.d.ts → forge-init/init-progress.d.ts} +0 -0
- /package/dist/extensions/forgecli/{init-progress.js → forge-init/init-progress.js} +0 -0
- /package/dist/extensions/forgecli/{materialize.d.ts → orchestrators/materialize.d.ts} +0 -0
- /package/dist/extensions/forgecli/{skill-curation-flag.d.ts → skill-curation/skill-curation-flag.d.ts} +0 -0
- /package/dist/extensions/forgecli/{skill-retriever.d.ts → skill-curation/skill-retriever.d.ts} +0 -0
- /package/dist/extensions/forgecli/{skill-usage-tracker.d.ts → skill-curation/skill-usage-tracker.d.ts} +0 -0
- /package/dist/extensions/forgecli/{store-error-remediation.d.ts → store/store-error-remediation.d.ts} +0 -0
- /package/dist/extensions/forgecli/{store-error-remediation.js → store/store-error-remediation.js} +0 -0
- /package/dist/extensions/forgecli/{store-resolver.d.ts → store/store-resolver.d.ts} +0 -0
- /package/dist/extensions/forgecli/{store-validator.d.ts → store/store-validator.d.ts} +0 -0
- /package/dist/extensions/forgecli/{transition-guard.d.ts → store/transition-guard.d.ts} +0 -0
- /package/dist/extensions/forgecli/{banner.d.ts → tui/banner.d.ts} +0 -0
- /package/dist/extensions/forgecli/{banner.js → tui/banner.js} +0 -0
- /package/dist/extensions/forgecli/{forge-header.d.ts → tui/forge-header.d.ts} +0 -0
- /package/dist/extensions/forgecli/{forge-header.js → tui/forge-header.js} +0 -0
- /package/dist/extensions/forgecli/{input-router.d.ts → tui/input-router.d.ts} +0 -0
- /package/dist/extensions/forgecli/{input-router.js → tui/input-router.js} +0 -0
- /package/dist/extensions/forgecli/{forge-update-command.d.ts → update/forge-update-command.d.ts} +0 -0
- /package/dist/extensions/forgecli/{migration-engine.d.ts → update/migration-engine.d.ts} +0 -0
- /package/dist/extensions/forgecli/{update-check.d.ts → update/update-check.d.ts} +0 -0
- /package/dist/extensions/forgecli/{update-tools.d.ts → update/update-tools.d.ts} +0 -0
- /package/dist/extensions/forgecli/{whats-new-widget.d.ts → update/whats-new-widget.d.ts} +0 -0
- /package/dist/extensions/forgecli/{whats-new.d.ts → update/whats-new.d.ts} +0 -0
- /package/dist/extensions/forgecli/{viewport-theme.d.ts → viewport/theme.d.ts} +0 -0
|
@@ -18,19 +18,34 @@
|
|
|
18
18
|
// - IL7 fallback: entire session_before_compact handler wrapped in try/catch.
|
|
19
19
|
// On any error, returns undefined — lets pi compact normally with generateSummary.
|
|
20
20
|
// - IL10/Pack 07: only reads summary files, never writes .forge/store/ or summaries.
|
|
21
|
-
// -
|
|
21
|
+
// - Wired per-phase by run-task.ts (FORGE_CTX_GOVERNOR=1) with cwd/phaseKey/
|
|
22
|
+
// entityId/sprintId opts; project config (prefix, paths.engineering) loads
|
|
23
|
+
// once at factory construction (FORGE-BUG-043 PR 2).
|
|
22
24
|
import * as fs from "node:fs";
|
|
23
25
|
import * as path from "node:path";
|
|
26
|
+
import { loadGovernorProjectConfig } from "./governor-config.js";
|
|
27
|
+
import { summaryFilenameFor } from "./phase-vocab.js";
|
|
24
28
|
// ---------------------------------------------------------------------------
|
|
25
|
-
// Pattern
|
|
29
|
+
// Pattern builders (parameterized by project config — FORGE-BUG-043 PR 2)
|
|
26
30
|
// ---------------------------------------------------------------------------
|
|
27
|
-
/**
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
|
|
31
|
+
/**
|
|
32
|
+
* Build the store-ID pattern for a project prefix. Standard forms:
|
|
33
|
+
* <P>-S30-T09 (sprint+task)
|
|
34
|
+
* <P>-S30 (sprint)
|
|
35
|
+
* <P>-BUG-042 (bug, with category letters + digit suffix)
|
|
36
|
+
* Pattern: prefix followed by alternating ALPHANUM segments separated by
|
|
37
|
+
* hyphens; two variants ordered longest-first so overlapping (sprint+task
|
|
38
|
+
* before sprint) works.
|
|
39
|
+
*
|
|
40
|
+
* The prefix was previously the literal "FORGE", so any project with a
|
|
41
|
+
* different project.prefix (e.g. CART) extracted zero store IDs (FORGE-BUG-043).
|
|
42
|
+
* The prefix is identifier-validated by loadGovernorProjectConfig before it
|
|
43
|
+
* reaches this builder; escaping here is defence in depth.
|
|
44
|
+
*/
|
|
45
|
+
function buildStoreIdRe(prefix) {
|
|
46
|
+
const p = prefix.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
47
|
+
return new RegExp(`${p}-[A-Z]+\\d*-(?:T?\\d+|[A-Z]+\\d*)|${p}-[A-Z]+\\d*`, "g");
|
|
48
|
+
}
|
|
34
49
|
/** Matches Markdown checkbox lines. */
|
|
35
50
|
const CHECKBOX_RE = /^\s*[-*]?\s*\[[ xX]\].*$/gm;
|
|
36
51
|
/** Matches status transition patterns:
|
|
@@ -38,8 +53,15 @@ const CHECKBOX_RE = /^\s*[-*]?\s*\[[ xX]\].*$/gm;
|
|
|
38
53
|
* - store-cli: "update-status task FORGE-S30-T09 status implementing"
|
|
39
54
|
* Using a broad match to capture both forms reliably. */
|
|
40
55
|
const TRANSITION_RE = /(?:→\s*[\w][\w-]*|update-status\s+\S+\s+\S+\s+status\s+[\w][\w-]*)/g;
|
|
41
|
-
/**
|
|
42
|
-
|
|
56
|
+
/**
|
|
57
|
+
* Build the file-reference pattern. The engineering directory segment comes
|
|
58
|
+
* from paths.engineering (default "engineering"); `.forge/` is the product's
|
|
59
|
+
* fixed instance directory (it hosts config.json itself) and stays literal.
|
|
60
|
+
*/
|
|
61
|
+
function buildFileRefRe(engineeringPath) {
|
|
62
|
+
const e = engineeringPath.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
63
|
+
return new RegExp(`(?:${e}\\/[^\\s"'\`,;)]+|\\.forge\\/[^\\s"'\`,;)]+|\\b[\\w./\\-]+\\.(?:ts|md|cjs|json)\\b)`, "g");
|
|
64
|
+
}
|
|
43
65
|
// ---------------------------------------------------------------------------
|
|
44
66
|
// extractForgeFacts — pure extractor
|
|
45
67
|
// ---------------------------------------------------------------------------
|
|
@@ -52,9 +74,15 @@ const FILE_REF_RE = /(?:engineering\/[^\s"'`,;)]+|\.forge\/[^\s"'`,;)]+|\b[\w./\
|
|
|
52
74
|
* and from direct string entries.
|
|
53
75
|
*
|
|
54
76
|
* @param messagesToSummarize Array of message-like objects from preparation.
|
|
77
|
+
* @param extractOpts Optional project-config parameters (FORGE-BUG-043 PR 2):
|
|
78
|
+
* prefix (store-ID prefix, default "FORGE") and
|
|
79
|
+
* engineeringPath (file-ref directory, default "engineering").
|
|
80
|
+
* Omitting them preserves the historical behaviour exactly.
|
|
55
81
|
* @returns ForgeFactSummary with all extracted patterns.
|
|
56
82
|
*/
|
|
57
|
-
export function extractForgeFacts(messagesToSummarize) {
|
|
83
|
+
export function extractForgeFacts(messagesToSummarize, extractOpts) {
|
|
84
|
+
const storeIdRe = buildStoreIdRe(extractOpts?.prefix ?? "FORGE");
|
|
85
|
+
const fileRefRe = buildFileRefRe(extractOpts?.engineeringPath ?? "engineering");
|
|
58
86
|
const storeIdSet = new Set();
|
|
59
87
|
const acStateLines = [];
|
|
60
88
|
const transitionLineSet = new Set();
|
|
@@ -63,8 +91,8 @@ export function extractForgeFacts(messagesToSummarize) {
|
|
|
63
91
|
for (const msg of messagesToSummarize) {
|
|
64
92
|
const texts = extractTextContent(msg);
|
|
65
93
|
for (const text of texts) {
|
|
66
|
-
// Store IDs —
|
|
67
|
-
const storeMatches = text.matchAll(new RegExp(
|
|
94
|
+
// Store IDs — fresh RegExp per text so lastIndex never leaks
|
|
95
|
+
const storeMatches = text.matchAll(new RegExp(storeIdRe.source, "g"));
|
|
68
96
|
for (const m of storeMatches) {
|
|
69
97
|
storeIdSet.add(m[0]);
|
|
70
98
|
}
|
|
@@ -81,7 +109,7 @@ export function extractForgeFacts(messagesToSummarize) {
|
|
|
81
109
|
transitionLineSet.add(m[0].trim());
|
|
82
110
|
}
|
|
83
111
|
// File refs
|
|
84
|
-
const fileRefMatches = text.matchAll(new RegExp(
|
|
112
|
+
const fileRefMatches = text.matchAll(new RegExp(fileRefRe.source, "g"));
|
|
85
113
|
for (const m of fileRefMatches) {
|
|
86
114
|
const ref = m[0].trim();
|
|
87
115
|
if (ref.length > 2) {
|
|
@@ -134,26 +162,6 @@ function extractTextContent(msg) {
|
|
|
134
162
|
}
|
|
135
163
|
return texts;
|
|
136
164
|
}
|
|
137
|
-
// ---------------------------------------------------------------------------
|
|
138
|
-
// Warm-tier helpers
|
|
139
|
-
// ---------------------------------------------------------------------------
|
|
140
|
-
/** Map phase key to canonical {PHASE}-SUMMARY.json filename. */
|
|
141
|
-
function phaseSummaryFilename(phaseKey) {
|
|
142
|
-
const map = {
|
|
143
|
-
// Real run-task PHASE_PIPELINE keys (`${personaNoun}/${role}`):
|
|
144
|
-
"engineer/plan": "PLAN-SUMMARY.json",
|
|
145
|
-
"supervisor/review-plan": "REVIEW_PLAN-SUMMARY.json",
|
|
146
|
-
"engineer/implement": "IMPLEMENTATION-SUMMARY.json",
|
|
147
|
-
"supervisor/review-code": "CODE_REVIEW-SUMMARY.json",
|
|
148
|
-
"qa-engineer/validate": "VALIDATION-SUMMARY.json",
|
|
149
|
-
"architect/approve": "APPROVE-SUMMARY.json",
|
|
150
|
-
// Legacy design-time keys (test fixtures only):
|
|
151
|
-
"architect/plan": "PLAN-SUMMARY.json",
|
|
152
|
-
"engineer/review": "REVIEW-SUMMARY.json",
|
|
153
|
-
"engineer/code-review": "CODE_REVIEW-SUMMARY.json",
|
|
154
|
-
};
|
|
155
|
-
return map[phaseKey] ?? "{PHASE}-SUMMARY.json";
|
|
156
|
-
}
|
|
157
165
|
/** Default summaryReader: synchronous fs.readFileSync. Returns null on any error. */
|
|
158
166
|
function defaultSummaryReader(filePath) {
|
|
159
167
|
try {
|
|
@@ -167,15 +175,23 @@ function defaultSummaryReader(filePath) {
|
|
|
167
175
|
* Read and parse the warm-tier {PHASE}-SUMMARY.json (synchronous).
|
|
168
176
|
* Returns the parsed object or null on any failure (IL7).
|
|
169
177
|
*
|
|
178
|
+
* The summary filename comes from phase-vocab (mirror of the plugin's
|
|
179
|
+
* artifact-kinds.cjs catalog — FORGE-BUG-043). Unknown phase keys and phases
|
|
180
|
+
* without a summary artifact skip the warm-tier read entirely; no placeholder
|
|
181
|
+
* paths are ever constructed.
|
|
182
|
+
*
|
|
170
183
|
* When summaryReader is provided but cwd/phaseKey/entityId/sprintId are not,
|
|
171
184
|
* calls summaryReader("") — enables test seams that don't need path resolution.
|
|
172
185
|
*/
|
|
173
|
-
function readWarmTierSummary(opts) {
|
|
186
|
+
function readWarmTierSummary(opts, engineeringPath) {
|
|
174
187
|
try {
|
|
175
188
|
let filePath;
|
|
176
189
|
const reader = opts.summaryReader ?? defaultSummaryReader;
|
|
177
190
|
if (opts.cwd && opts.phaseKey && opts.entityId && opts.sprintId) {
|
|
178
|
-
|
|
191
|
+
const filename = summaryFilenameFor(opts.phaseKey);
|
|
192
|
+
if (filename === null)
|
|
193
|
+
return null; // unknown key / no artifact — skip warm tier
|
|
194
|
+
filePath = path.join(opts.cwd, engineeringPath, "sprints", opts.sprintId, opts.entityId, filename);
|
|
179
195
|
}
|
|
180
196
|
else if (opts.summaryReader) {
|
|
181
197
|
// Test seam: summaryReader present but no path context — call with empty string.
|
|
@@ -260,12 +276,17 @@ function assembleSummary(facts, warmTier) {
|
|
|
260
276
|
*
|
|
261
277
|
* Pack 07: reads summary files but never writes .forge/store/.
|
|
262
278
|
* IL10: no pi-mono edits, no dispatch contract changes.
|
|
263
|
-
*
|
|
279
|
+
* Wired per-phase by run-task.ts via RunSubagentOptions.extensionFactories.
|
|
280
|
+
*
|
|
281
|
+
* Project config (store-ID prefix, paths.engineering) is loaded ONCE here at
|
|
282
|
+
* factory construction from `<opts.cwd>/.forge/config.json` — never per
|
|
283
|
+
* compaction event. Without cwd the historical defaults apply (FORGE-BUG-043 PR 2).
|
|
264
284
|
*
|
|
265
285
|
* @param opts ForgeCompactionOptions (default: empty — no warm-tier).
|
|
266
286
|
* @returns ExtensionFactory for passing to DefaultResourceLoader.extensionFactories.
|
|
267
287
|
*/
|
|
268
288
|
export function buildForgeCompactionFactory(opts = {}) {
|
|
289
|
+
const projectConfig = loadGovernorProjectConfig(opts.cwd);
|
|
269
290
|
return (pi) => {
|
|
270
291
|
pi.on("session_before_compact", (event) => {
|
|
271
292
|
try {
|
|
@@ -278,11 +299,15 @@ export function buildForgeCompactionFactory(opts = {}) {
|
|
|
278
299
|
if (typeof firstKeptEntryId !== "string" || typeof tokensBefore !== "number") {
|
|
279
300
|
return undefined; // IL7 — malformed preparation fields
|
|
280
301
|
}
|
|
281
|
-
// Extract Forge facts from message history
|
|
302
|
+
// Extract Forge facts from message history (patterns built from
|
|
303
|
+
// the project config loaded at factory construction).
|
|
282
304
|
const msgs = Array.isArray(messagesToSummarize) ? messagesToSummarize : [];
|
|
283
|
-
const facts = extractForgeFacts(msgs
|
|
305
|
+
const facts = extractForgeFacts(msgs, {
|
|
306
|
+
prefix: projectConfig.prefix,
|
|
307
|
+
engineeringPath: projectConfig.engineeringPath,
|
|
308
|
+
});
|
|
284
309
|
// Read warm-tier summary (best-effort, IL7).
|
|
285
|
-
const warmTier = readWarmTierSummary(opts);
|
|
310
|
+
const warmTier = readWarmTierSummary(opts, projectConfig.engineeringPath);
|
|
286
311
|
// Assemble summary string.
|
|
287
312
|
const summary = assembleSummary(facts, warmTier);
|
|
288
313
|
const compaction = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-governor-compaction.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/context-governor-compaction.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,gBAAgB;AAChB,EAAE;AACF,WAAW;AACX,2DAA2D;AAC3D,iEAAiE;AACjE,yDAAyD;AACzD,iEAAiE;AACjE,EAAE;AACF,UAAU;AACV,kFAAkF;AAClF,kFAAkF;AAClF,sFAAsF;AACtF,oCAAoC;AACpC,6EAA6E;AAC7E,mFAAmF;AACnF,qBAAqB;AACrB,gFAAgF;AAChF,uFAAuF;AACvF,uFAAuF;AACvF,
|
|
1
|
+
{"version":3,"file":"context-governor-compaction.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/context-governor-compaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -63,8 +63,6 @@ export interface ContextGovernor {
|
|
|
63
63
|
* not pass a governor see zero behavioural change.
|
|
64
64
|
*/
|
|
65
65
|
export declare function createNoOpGovernor(): ContextGovernor;
|
|
66
|
-
/** Fallback context window when neither ctx.model nor modelRegistry can supply one. */
|
|
67
|
-
export declare const DEFAULT_CONTEXT_WINDOW = 200000;
|
|
68
66
|
/**
|
|
69
67
|
* Create a governor backed by the given policy table and model registry.
|
|
70
68
|
*
|
|
@@ -95,11 +93,9 @@ export declare const DEFAULT_CONTEXT_WINDOW = 200000;
|
|
|
95
93
|
* The sentinel MUST NOT write to .forge/store/ or the summary itself (Pack 07).
|
|
96
94
|
* Errors inside the sentinel are silently caught and cause retain, not eviction (IL7).
|
|
97
95
|
*
|
|
98
|
-
* contextWindow resolution
|
|
99
|
-
*
|
|
100
|
-
*
|
|
101
|
-
* 3. ctx.modelRegistry.find(provider, modelId)?.contextWindow — registry backup
|
|
102
|
-
* 4. DEFAULT_CONTEXT_WINDOW (200_000) — conservative fallback
|
|
96
|
+
* contextWindow resolution (provider-neutral): usage.contextWindow from
|
|
97
|
+
* ctx.getContextUsage(), used directly when available; otherwise the budget
|
|
98
|
+
* meter is cleared for the turn and no steer/compact decision is made.
|
|
103
99
|
* @param compactFn opt callback injected at construction (Mechanism E / T09).
|
|
104
100
|
* Called proactively once when fraction >= policy.steerThreshold,
|
|
105
101
|
* via a single-fire `compactFired` flag distinct from `steerFired`.
|
|
@@ -22,16 +22,20 @@
|
|
|
22
22
|
// Design notes:
|
|
23
23
|
// - The policy table is a TypeScript literal loaded at module init — no disk I/O,
|
|
24
24
|
// no .forge/store/ reads or writes (Pack 07 compliance).
|
|
25
|
-
// - contextWindow resolution:
|
|
26
|
-
//
|
|
27
|
-
//
|
|
28
|
-
// when getContextUsage() returns undefined.
|
|
25
|
+
// - contextWindow resolution: Mechanism B uses usage.contextWindow from
|
|
26
|
+
// ctx.getContextUsage() directly; when usage is unavailable the meter is
|
|
27
|
+
// cleared and no steer/compact decision is made that turn.
|
|
29
28
|
// No provider names, model-family strings, or tier logic appear here.
|
|
29
|
+
// - Phase/summary vocabulary (summary keys, {PHASE}-SUMMARY.json filenames)
|
|
30
|
+
// is imported from phase-vocab.ts — the single mirror of the plugin's
|
|
31
|
+
// artifact-kinds.cjs catalog (FORGE-BUG-043).
|
|
30
32
|
// - Governor methods MUST NOT throw; failures fall through to undefined (IL7).
|
|
31
33
|
// - IL10: registerHookDispatcher's public signature and orchestrator event paths
|
|
32
34
|
// are untouched. The third arg is optional; all existing callers unaffected.
|
|
33
35
|
import * as fs from "node:fs";
|
|
34
36
|
import * as path from "node:path";
|
|
37
|
+
import { loadGovernorProjectConfig } from "./governor-config.js";
|
|
38
|
+
import { summaryFilenameFor, summaryKeyFor } from "./phase-vocab.js";
|
|
35
39
|
// ---------------------------------------------------------------------------
|
|
36
40
|
// No-op governor (default before T04/T05/T06)
|
|
37
41
|
// ---------------------------------------------------------------------------
|
|
@@ -53,8 +57,6 @@ export function createNoOpGovernor() {
|
|
|
53
57
|
// ---------------------------------------------------------------------------
|
|
54
58
|
// Governor factory helpers (Mechanism A)
|
|
55
59
|
// ---------------------------------------------------------------------------
|
|
56
|
-
/** Fallback context window when neither ctx.model nor modelRegistry can supply one. */
|
|
57
|
-
export const DEFAULT_CONTEXT_WINDOW = 200_000;
|
|
58
60
|
/**
|
|
59
61
|
* Resolve the policy key from the extension context.
|
|
60
62
|
* Probes ctx for persona/phase fields (not formally in ExtensionContext; best-effort).
|
|
@@ -121,10 +123,10 @@ function dedupKey(event) {
|
|
|
121
123
|
}
|
|
122
124
|
/**
|
|
123
125
|
* Apply Rule 2 — schema-trim to a forge_store result.
|
|
124
|
-
* Trims top-level keys to residentFields ∪ {summaries
|
|
126
|
+
* Trims top-level keys to residentFields ∪ {summaries} ∪ identity keys.
|
|
125
127
|
* Returns the trimmed JSON string, or the original string on parse failure (IL7).
|
|
126
128
|
*/
|
|
127
|
-
function
|
|
129
|
+
function applySchemaTrim(textContent, residentFields) {
|
|
128
130
|
let parsed;
|
|
129
131
|
try {
|
|
130
132
|
parsed = JSON.parse(textContent);
|
|
@@ -141,10 +143,7 @@ function applySchemaTrip(textContent, residentFields) {
|
|
|
141
143
|
const residentSet = new Set(residentFields);
|
|
142
144
|
const trimmed = {};
|
|
143
145
|
for (const [key, value] of Object.entries(parsed)) {
|
|
144
|
-
const retain = identityKeys.has(key) ||
|
|
145
|
-
residentSet.has(key) ||
|
|
146
|
-
key === "summaries" ||
|
|
147
|
-
key.startsWith("summaries.");
|
|
146
|
+
const retain = identityKeys.has(key) || residentSet.has(key) || key === "summaries";
|
|
148
147
|
if (retain) {
|
|
149
148
|
trimmed[key] = value;
|
|
150
149
|
}
|
|
@@ -181,48 +180,22 @@ function resolveEntityId(event) {
|
|
|
181
180
|
// ---------------------------------------------------------------------------
|
|
182
181
|
// Mechanism B helpers (module-internal — not exported; knip-safe)
|
|
183
182
|
// ---------------------------------------------------------------------------
|
|
184
|
-
/**
|
|
185
|
-
* Map a phaseKey to the canonical {PHASE}-SUMMARY.json filename.
|
|
186
|
-
* Returns a literal placeholder for unknown keys so steer messages always name a file.
|
|
187
|
-
*/
|
|
188
|
-
function phaseSummaryName(phaseKey) {
|
|
189
|
-
const map = {
|
|
190
|
-
// Real run-task PHASE_PIPELINE keys (`${personaNoun}/${role}`):
|
|
191
|
-
"engineer/plan": "PLAN-SUMMARY.json",
|
|
192
|
-
"supervisor/review-plan": "REVIEW_PLAN-SUMMARY.json",
|
|
193
|
-
"engineer/implement": "IMPLEMENTATION-SUMMARY.json",
|
|
194
|
-
"supervisor/review-code": "CODE_REVIEW-SUMMARY.json",
|
|
195
|
-
"qa-engineer/validate": "VALIDATION-SUMMARY.json",
|
|
196
|
-
"architect/approve": "APPROVE-SUMMARY.json",
|
|
197
|
-
// Legacy design-time keys (kept for test fixtures; not produced by the pipeline):
|
|
198
|
-
"architect/plan": "PLAN-SUMMARY.json",
|
|
199
|
-
"engineer/review": "REVIEW-SUMMARY.json",
|
|
200
|
-
"engineer/code-review": "CODE_REVIEW-SUMMARY.json",
|
|
201
|
-
};
|
|
202
|
-
return map[phaseKey] ?? "{PHASE}-SUMMARY.json";
|
|
203
|
-
}
|
|
204
|
-
/**
|
|
205
|
-
* Map a real pipeline phaseKey to the store record `summaries` key written by
|
|
206
|
-
* `store-cli set-summary` (kind names — e.g. "implementation", not "implement").
|
|
207
|
-
* Used by buildGovernorFactory's summary sentinel (Mechanism C).
|
|
208
|
-
*/
|
|
209
|
-
const PHASE_SUMMARY_KEYS = {
|
|
210
|
-
"engineer/plan": "plan",
|
|
211
|
-
"supervisor/review-plan": "review_plan",
|
|
212
|
-
"engineer/implement": "implementation",
|
|
213
|
-
"supervisor/review-code": "code_review",
|
|
214
|
-
"qa-engineer/validate": "validation",
|
|
215
|
-
"architect/approve": "approve",
|
|
216
|
-
};
|
|
217
183
|
/**
|
|
218
184
|
* Build the one-shot steer message injected into the agent loop when the budget
|
|
219
|
-
* threshold is reached. Names the phase summary file
|
|
220
|
-
*
|
|
221
|
-
*
|
|
185
|
+
* threshold is reached. Names the phase summary file (from phase-vocab, mirror
|
|
186
|
+
* of the plugin's artifact-kinds.cjs catalog) so the persona can act
|
|
187
|
+
* immediately. Phases without a summary artifact — and unknown phase keys
|
|
188
|
+
* (e.g. custom config.pipelines phases) — get generic checkpoint wording
|
|
189
|
+
* instead of a phantom or placeholder filename (FORGE-BUG-043).
|
|
190
|
+
* "Will not re-fire" note prevents the agent from waiting for a second prompt.
|
|
222
191
|
*/
|
|
223
192
|
function buildSteerMessage(phaseKey) {
|
|
193
|
+
const filename = summaryFilenameFor(phaseKey);
|
|
194
|
+
const checkpoint = filename
|
|
195
|
+
? `Checkpoint your findings to ${filename} before reading further.`
|
|
196
|
+
: `Checkpoint your findings durably (phase summary artifact or store record) before reading further.`;
|
|
224
197
|
return (`[Forge context governor] Budget threshold reached (${phaseKey}).\n` +
|
|
225
|
-
|
|
198
|
+
`${checkpoint}\n` +
|
|
226
199
|
`This note will not re-fire.`);
|
|
227
200
|
}
|
|
228
201
|
// ---------------------------------------------------------------------------
|
|
@@ -258,11 +231,9 @@ function buildSteerMessage(phaseKey) {
|
|
|
258
231
|
* The sentinel MUST NOT write to .forge/store/ or the summary itself (Pack 07).
|
|
259
232
|
* Errors inside the sentinel are silently caught and cause retain, not eviction (IL7).
|
|
260
233
|
*
|
|
261
|
-
* contextWindow resolution
|
|
262
|
-
*
|
|
263
|
-
*
|
|
264
|
-
* 3. ctx.modelRegistry.find(provider, modelId)?.contextWindow — registry backup
|
|
265
|
-
* 4. DEFAULT_CONTEXT_WINDOW (200_000) — conservative fallback
|
|
234
|
+
* contextWindow resolution (provider-neutral): usage.contextWindow from
|
|
235
|
+
* ctx.getContextUsage(), used directly when available; otherwise the budget
|
|
236
|
+
* meter is cleared for the turn and no steer/compact decision is made.
|
|
266
237
|
* @param compactFn opt callback injected at construction (Mechanism E / T09).
|
|
267
238
|
* Called proactively once when fraction >= policy.steerThreshold,
|
|
268
239
|
* via a single-fire `compactFired` flag distinct from `steerFired`.
|
|
@@ -390,11 +361,15 @@ export function createGovernor(table, _modelRegistry, steerFn, summarySentinel,
|
|
|
390
361
|
try {
|
|
391
362
|
const entityId = resolveEntityId(event);
|
|
392
363
|
if (entityId && summarySentinel(resolvedPhaseKey, entityId)) {
|
|
364
|
+
// summaryFilenameFor is null for phases without a summary artifact;
|
|
365
|
+
// an injected sentinel may still fire there, so fall back to naming
|
|
366
|
+
// the store record rather than a phantom file.
|
|
367
|
+
const summaryRef = summaryFilenameFor(resolvedPhaseKey) ?? "the store record summaries";
|
|
393
368
|
return {
|
|
394
369
|
content: [
|
|
395
370
|
{
|
|
396
371
|
type: "text",
|
|
397
|
-
text: `[summarized — see ${
|
|
372
|
+
text: `[summarized — see ${summaryRef} for ${entityId}]`,
|
|
398
373
|
},
|
|
399
374
|
],
|
|
400
375
|
};
|
|
@@ -412,7 +387,7 @@ export function createGovernor(table, _modelRegistry, steerFn, summarySentinel,
|
|
|
412
387
|
const fullText = textBlocks.map((b) => b.text).join("");
|
|
413
388
|
// Rule 2 — Schema-trim (forge_store results only)
|
|
414
389
|
if (event.toolName === "forge_store") {
|
|
415
|
-
const trimmed =
|
|
390
|
+
const trimmed = applySchemaTrim(fullText, policy.residentFields);
|
|
416
391
|
if (trimmed !== fullText) {
|
|
417
392
|
return { content: [{ type: "text", text: trimmed }] };
|
|
418
393
|
}
|
|
@@ -439,16 +414,10 @@ export function createGovernor(table, _modelRegistry, steerFn, summarySentinel,
|
|
|
439
414
|
return undefined;
|
|
440
415
|
}
|
|
441
416
|
},
|
|
442
|
-
applyToolCall(event,
|
|
417
|
+
applyToolCall(event, _ctx) {
|
|
443
418
|
// T03/T04/T05/T06: no-op body for tool_call.
|
|
444
419
|
// T06 Mechanism C shed gate is implemented in applyToolResult above;
|
|
445
420
|
// applyToolCall remains no-op for Mechanism C.
|
|
446
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
447
|
-
const _contextWindow = ctx.model?.contextWindow ??
|
|
448
|
-
(ctx.model !== undefined
|
|
449
|
-
? ctx.modelRegistry.find(ctx.model.provider ?? "", ctx.model.id ?? "")?.contextWindow
|
|
450
|
-
: undefined) ??
|
|
451
|
-
DEFAULT_CONTEXT_WINDOW;
|
|
452
421
|
void event;
|
|
453
422
|
return undefined;
|
|
454
423
|
},
|
|
@@ -532,16 +501,18 @@ export function loadDefaultPolicyTable() {
|
|
|
532
501
|
/**
|
|
533
502
|
* Read-only Mechanism C sentinel: true when the store record for entityId
|
|
534
503
|
* already carries a summary for the given phase. Reads
|
|
535
|
-
*
|
|
536
|
-
*
|
|
504
|
+
* `<storePath>/{tasks,bugs}/<entityId>.json` directly (never writes — Pack 07).
|
|
505
|
+
* storePath comes from paths.store in .forge/config.json (default
|
|
506
|
+
* ".forge/store" — FORGE-BUG-043 PR 2). Any failure returns false → retain,
|
|
507
|
+
* never evict (IL7).
|
|
537
508
|
*/
|
|
538
|
-
function storeSummarySentinel(cwd, phaseKey, entityId) {
|
|
539
|
-
const summaryKey =
|
|
509
|
+
function storeSummarySentinel(cwd, storePath, phaseKey, entityId) {
|
|
510
|
+
const summaryKey = summaryKeyFor(phaseKey);
|
|
540
511
|
if (!summaryKey)
|
|
541
512
|
return false;
|
|
542
513
|
for (const kind of ["tasks", "bugs"]) {
|
|
543
514
|
try {
|
|
544
|
-
const recordPath = path.join(cwd,
|
|
515
|
+
const recordPath = path.join(cwd, storePath, kind, `${entityId}.json`);
|
|
545
516
|
const raw = fs.readFileSync(recordPath, "utf8");
|
|
546
517
|
const record = JSON.parse(raw);
|
|
547
518
|
const summary = record.summaries?.[summaryKey];
|
|
@@ -580,6 +551,9 @@ function storeSummarySentinel(cwd, phaseKey, entityId) {
|
|
|
580
551
|
*/
|
|
581
552
|
export function buildGovernorFactory(opts) {
|
|
582
553
|
const { phaseKey, cwd } = opts;
|
|
554
|
+
// Project config (paths.store) loads ONCE at factory construction — never
|
|
555
|
+
// per tool event (FORGE-BUG-043 PR 2). IL7 defaults apply without a config.
|
|
556
|
+
const projectConfig = loadGovernorProjectConfig(cwd);
|
|
583
557
|
return (pi) => {
|
|
584
558
|
let currentCtx;
|
|
585
559
|
const steerFn = (message) => {
|
|
@@ -595,7 +569,7 @@ export function buildGovernorFactory(opts) {
|
|
|
595
569
|
const compactFn = () => {
|
|
596
570
|
currentCtx?.compact();
|
|
597
571
|
};
|
|
598
|
-
const summarySentinel = (pk, entityId) => storeSummarySentinel(cwd, pk, entityId);
|
|
572
|
+
const summarySentinel = (pk, entityId) => storeSummarySentinel(cwd, projectConfig.storePath, pk, entityId);
|
|
599
573
|
// Registration-time stub; per-turn contextWindow resolution uses
|
|
600
574
|
// ctx.getContextUsage()/ctx.modelRegistry inside the handler chain.
|
|
601
575
|
const stubRegistry = { find: () => undefined };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-governor.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/context-governor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context-governor.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/context-governor.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,10 @@ export interface DashboardState {
|
|
|
11
11
|
focusPanel: "tree" | "detail";
|
|
12
12
|
/** Whether the detail panel's prompt section is expanded. */
|
|
13
13
|
promptExpanded: boolean;
|
|
14
|
+
/** Activity-log expansion (ctrl+o): false = clamp long entries to a small
|
|
15
|
+
* row budget, true = render full content. Display policy lives entirely in
|
|
16
|
+
* the view — the model stores log entries verbatim. */
|
|
17
|
+
logExpanded: boolean;
|
|
14
18
|
/** Node ID targeted for cancellation confirmation, if active. */
|
|
15
19
|
cancelTargetId: string | null;
|
|
16
20
|
/** Scroll offset for the detail panel (0 = top). */
|
|
@@ -23,8 +27,11 @@ export declare class DashboardController {
|
|
|
23
27
|
private onInvalidate?;
|
|
24
28
|
private refreshTimer?;
|
|
25
29
|
private disposed;
|
|
30
|
+
private readonly readOnly;
|
|
26
31
|
private _handlers;
|
|
27
|
-
constructor(tree: OrchestratorTree, initialCursorId?: string
|
|
32
|
+
constructor(tree: OrchestratorTree, initialCursorId?: string, opts?: {
|
|
33
|
+
readOnly?: boolean;
|
|
34
|
+
});
|
|
28
35
|
setOnInvalidate(cb: () => void): void;
|
|
29
36
|
/** Rebuild the ViewModel from the live model. Called on every model event. */
|
|
30
37
|
private rebuildViewModel;
|
|
@@ -68,6 +75,8 @@ export declare class DashboardController {
|
|
|
68
75
|
private activateCursor;
|
|
69
76
|
private toggleExpand;
|
|
70
77
|
private collapseCursor;
|
|
78
|
+
/** Replay mode: read-only dashboards (archived trees) never cancel. */
|
|
79
|
+
isReadOnly(): boolean;
|
|
71
80
|
private startCancel;
|
|
72
81
|
private ensureAncestorsExpanded;
|
|
73
82
|
autoExpandNewNode(id: string): void;
|