@entelligentsia/forgecli 1.0.21 → 1.0.36
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 +346 -0
- package/README.md +2 -0
- package/dist/CHANGELOG-forge-plugin.md +281 -0
- package/dist/bin/argv.d.ts +2 -2
- package/dist/bin/argv.js +25 -0
- package/dist/bin/argv.js.map +1 -1
- package/dist/bin/forge.js +12 -0
- package/dist/bin/forge.js.map +1 -1
- package/dist/bin/init.d.ts +23 -0
- package/dist/bin/init.js +123 -0
- package/dist/bin/init.js.map +1 -0
- package/dist/bin/uninstall.d.ts +20 -0
- package/dist/bin/uninstall.js +141 -0
- package/dist/bin/uninstall.js.map +1 -0
- package/dist/extensions/forgecli/claude-bootstrap/bootstrap.d.ts +40 -0
- package/dist/extensions/forgecli/claude-bootstrap/bootstrap.js +593 -0
- package/dist/extensions/forgecli/claude-bootstrap/bootstrap.js.map +1 -0
- package/dist/extensions/forgecli/claude-bootstrap/settings-merge.d.ts +46 -0
- package/dist/extensions/forgecli/claude-bootstrap/settings-merge.js +245 -0
- package/dist/extensions/forgecli/claude-bootstrap/settings-merge.js.map +1 -0
- package/dist/extensions/forgecli/claude-bootstrap/uninstall.d.ts +23 -0
- package/dist/extensions/forgecli/claude-bootstrap/uninstall.js +215 -0
- package/dist/extensions/forgecli/claude-bootstrap/uninstall.js.map +1 -0
- package/dist/extensions/forgecli/dashboard/component.js +10 -7
- package/dist/extensions/forgecli/dashboard/component.js.map +1 -1
- 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/bug/bug-body.d.ts +1 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-body.js +65 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-body.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-id.d.ts +23 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-id.js +140 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-id.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-phase-dispatch.d.ts +54 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-phase-dispatch.js +349 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-phase-dispatch.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-phases.d.ts +8 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-phases.js +60 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-phases.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-state.d.ts +14 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-state.js +100 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-state.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-triage-routing.d.ts +72 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-triage-routing.js +204 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-triage-routing.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-verdict-loop.d.ts +38 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-verdict-loop.js +166 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-verdict-loop.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-verdict.d.ts +3 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-verdict.js +55 -0
- package/dist/extensions/forgecli/orchestrators/bug/bug-verdict.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/bug/run-bug-command.d.ts +7 -0
- package/dist/extensions/forgecli/orchestrators/bug/run-bug-command.js +293 -0
- package/dist/extensions/forgecli/orchestrators/bug/run-bug-command.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/bug/run-bug-pipeline.d.ts +2 -0
- package/dist/extensions/forgecli/orchestrators/bug/run-bug-pipeline.js +501 -0
- package/dist/extensions/forgecli/orchestrators/bug/run-bug-pipeline.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/bug/run-bug-types.d.ts +41 -0
- package/dist/extensions/forgecli/orchestrators/bug/run-bug-types.js +5 -0
- package/dist/extensions/forgecli/orchestrators/bug/run-bug-types.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-entry.d.ts +43 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-entry.js +85 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-entry.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-misc.d.ts +8 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-misc.js +37 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-misc.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-notify.d.ts +28 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-notify.js +45 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-notify.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-transcript-session.d.ts +26 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-transcript-session.js +75 -0
- package/dist/extensions/forgecli/orchestrators/common/orchestrator-transcript-session.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/common/summary-recovery.d.ts +24 -0
- package/dist/extensions/forgecli/orchestrators/common/summary-recovery.js +37 -0
- package/dist/extensions/forgecli/orchestrators/common/summary-recovery.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/fix-bug.d.ts +9 -92
- package/dist/extensions/forgecli/orchestrators/fix-bug.js +23 -1695
- package/dist/extensions/forgecli/orchestrators/fix-bug.js.map +1 -1
- package/dist/extensions/forgecli/orchestrators/run-sprint.d.ts +3 -12
- package/dist/extensions/forgecli/orchestrators/run-sprint.js +97 -270
- package/dist/extensions/forgecli/orchestrators/run-sprint.js.map +1 -1
- package/dist/extensions/forgecli/orchestrators/run-task.d.ts +10 -214
- package/dist/extensions/forgecli/orchestrators/run-task.js +31 -1481
- package/dist/extensions/forgecli/orchestrators/run-task.js.map +1 -1
- package/dist/extensions/forgecli/orchestrators/sprint/sprint-ceremony.d.ts +33 -0
- package/dist/extensions/forgecli/orchestrators/sprint/sprint-ceremony.js +135 -0
- package/dist/extensions/forgecli/orchestrators/sprint/sprint-ceremony.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/sprint/sprint-state.d.ts +18 -0
- package/dist/extensions/forgecli/orchestrators/sprint/sprint-state.js +55 -0
- package/dist/extensions/forgecli/orchestrators/sprint/sprint-state.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/task/run-task-command.d.ts +9 -0
- package/dist/extensions/forgecli/orchestrators/task/run-task-command.js +174 -0
- package/dist/extensions/forgecli/orchestrators/task/run-task-command.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/task/run-task-pipeline.d.ts +2 -0
- package/dist/extensions/forgecli/orchestrators/task/run-task-pipeline.js +494 -0
- package/dist/extensions/forgecli/orchestrators/task/run-task-pipeline.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/task/run-task-types.d.ts +62 -0
- package/dist/extensions/forgecli/orchestrators/task/run-task-types.js +5 -0
- package/dist/extensions/forgecli/orchestrators/task/run-task-types.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/task/task-body.d.ts +4 -0
- package/dist/extensions/forgecli/orchestrators/task/task-body.js +48 -0
- package/dist/extensions/forgecli/orchestrators/task/task-body.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/task/task-events.d.ts +63 -0
- package/dist/extensions/forgecli/orchestrators/task/task-events.js +185 -0
- package/dist/extensions/forgecli/orchestrators/task/task-events.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/task/task-gates.d.ts +34 -0
- package/dist/extensions/forgecli/orchestrators/task/task-gates.js +78 -0
- package/dist/extensions/forgecli/orchestrators/task/task-gates.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/task/task-phase-dispatch.d.ts +42 -0
- package/dist/extensions/forgecli/orchestrators/task/task-phase-dispatch.js +370 -0
- package/dist/extensions/forgecli/orchestrators/task/task-phase-dispatch.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/task/task-phases.d.ts +14 -0
- package/dist/extensions/forgecli/orchestrators/task/task-phases.js +26 -0
- package/dist/extensions/forgecli/orchestrators/task/task-phases.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/task/task-record.d.ts +9 -0
- package/dist/extensions/forgecli/orchestrators/task/task-record.js +58 -0
- package/dist/extensions/forgecli/orchestrators/task/task-record.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/task/task-state.d.ts +14 -0
- package/dist/extensions/forgecli/orchestrators/task/task-state.js +35 -0
- package/dist/extensions/forgecli/orchestrators/task/task-state.js.map +1 -0
- package/dist/extensions/forgecli/orchestrators/task/task-verdict-loop.d.ts +36 -0
- package/dist/extensions/forgecli/orchestrators/task/task-verdict-loop.js +152 -0
- package/dist/extensions/forgecli/orchestrators/task/task-verdict-loop.js.map +1 -0
- package/dist/extensions/forgecli/update/forge-update-command.js +10 -7
- package/dist/extensions/forgecli/update/forge-update-command.js.map +1 -1
- package/dist/forge-payload/.base-pack/commands/approve.md +2 -2
- package/dist/forge-payload/.base-pack/commands/check-agent.md +2 -2
- package/dist/forge-payload/.base-pack/commands/collate.md +2 -2
- package/dist/forge-payload/.base-pack/commands/commit.md +2 -2
- package/dist/forge-payload/.base-pack/commands/enhance.md +2 -2
- package/dist/forge-payload/.base-pack/commands/fix-bug.md +2 -2
- package/dist/forge-payload/.base-pack/commands/implement.md +2 -2
- package/dist/forge-payload/.base-pack/commands/init.md +278 -0
- package/dist/forge-payload/.base-pack/commands/new-sprint.md +2 -2
- package/dist/forge-payload/.base-pack/commands/plan-sprint.md +2 -2
- package/dist/forge-payload/.base-pack/commands/plan.md +2 -2
- package/dist/forge-payload/.base-pack/commands/retro.md +2 -2
- package/dist/forge-payload/.base-pack/commands/review-code.md +2 -2
- package/dist/forge-payload/.base-pack/commands/review-plan.md +2 -2
- package/dist/forge-payload/.base-pack/commands/run-sprint.md +2 -2
- package/dist/forge-payload/.base-pack/commands/run-task.md +2 -2
- package/dist/forge-payload/.base-pack/commands/validate.md +2 -2
- 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/collator_agent.md +5 -6
- 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/migrate_structural.md +1 -1
- package/dist/forge-payload/.base-pack/workflows-js/wfl-fix-bug.js +42 -6
- package/dist/forge-payload/.base-pack/workflows-js/wfl-init.js +449 -0
- 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 +141 -0
- package/dist/forge-payload/commands/add-pipeline.md +1 -1
- package/dist/forge-payload/commands/add-task.md +3 -3
- package/dist/forge-payload/commands/ask.md +1 -1
- package/dist/forge-payload/commands/check-agent.md +1 -1
- package/dist/forge-payload/commands/config.md +1 -1
- package/dist/forge-payload/commands/health.md +1 -1
- package/dist/forge-payload/commands/init.md +62 -7
- package/dist/forge-payload/commands/rebuild.md +3 -3
- package/dist/forge-payload/commands/remove.md +1 -1
- package/dist/forge-payload/commands/repair.md +1 -1
- package/dist/forge-payload/commands/report-bug.md +1 -1
- package/dist/forge-payload/commands/status.md +1 -1
- package/dist/forge-payload/commands/update.md +3 -3
- package/dist/forge-payload/hooks/lib/common.cjs +228 -0
- package/dist/forge-payload/hooks/lib/plugin-detection.cjs +106 -0
- package/dist/forge-payload/hooks/lib/update-msg.cjs +23 -0
- package/dist/forge-payload/hooks/lib/update-url.cjs +46 -0
- package/dist/forge-payload/hooks/lib/write-registry.js +53 -0
- package/dist/forge-payload/init/discovery/discover-database.md +32 -0
- package/dist/forge-payload/init/discovery/discover-processes.md +31 -0
- package/dist/forge-payload/init/discovery/discover-routing.md +31 -0
- package/dist/forge-payload/init/discovery/discover-stack.md +33 -0
- package/dist/forge-payload/init/discovery/discover-testing.md +34 -0
- package/dist/forge-payload/init/generation/generate-commands.md +171 -0
- package/dist/forge-payload/init/generation/generate-kb-doc.md +60 -0
- package/dist/forge-payload/init/generation/generate-knowledge-base.md +56 -0
- package/dist/forge-payload/init/generation/generate-persona.md +73 -0
- package/dist/forge-payload/init/generation/generate-personas.md +54 -0
- package/dist/forge-payload/init/generation/generate-skill.md +66 -0
- package/dist/forge-payload/init/generation/generate-skills.md +36 -0
- package/dist/forge-payload/init/generation/generate-template.md +60 -0
- package/dist/forge-payload/init/generation/generate-templates.md +39 -0
- package/dist/forge-payload/init/generation/generate-tools.md +133 -0
- package/dist/forge-payload/init/generation/generate-workflows.md +78 -0
- package/dist/forge-payload/init/phases/phase-1-collect.md +10 -2
- package/dist/forge-payload/init/phases/phase-3-materialize.md +1 -1
- package/dist/forge-payload/init/phases/phase-4-register.md +8 -0
- package/dist/forge-payload/init/workflow-gen-plan.json +17 -0
- package/dist/forge-payload/integrity.json +16 -16
- 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-collate.md +5 -6
- 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-migrate.md +1 -1
- 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 +5 -12
- package/dist/forge-payload/tools/commit-task.cjs +218 -0
- package/dist/forge-payload/tools/forge-preflight.cjs +268 -0
- package/dist/forge-payload/tools/lib/paths.cjs +12 -11
- package/dist/forge-payload/tools/lib/pricing.cjs +31 -11
- package/dist/forge-payload/tools/query-logger.cjs +34 -0
- package/dist/forge-payload/tools/store-cli.cjs +6 -1
- package/dist/forge-payload/tools/substitute-placeholders.cjs +5 -6
- package/package.json +2 -2
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
[
|
|
2
|
+
{"id": "architect_sprint_intake", "meta": "meta-new-sprint.md", "persona": "product-manager"},
|
|
3
|
+
{"id": "architect_sprint_plan", "meta": "meta-plan-sprint.md", "persona": "architect"},
|
|
4
|
+
{"id": "architect_approve", "meta": "meta-approve.md", "persona": "architect"},
|
|
5
|
+
{"id": "architect_review_sprint_completion", "meta": "meta-review-sprint-completion.md","persona": "architect"},
|
|
6
|
+
{"id": "plan_task", "meta": "meta-plan-task.md", "persona": "architect"},
|
|
7
|
+
{"id": "implement_plan", "meta": "meta-implement.md", "persona": "engineer"},
|
|
8
|
+
{"id": "update_plan", "meta": "meta-update-plan.md", "persona": "architect"},
|
|
9
|
+
{"id": "update_implementation", "meta": "meta-update-implementation.md", "persona": "engineer"},
|
|
10
|
+
{"id": "commit_task", "meta": "meta-commit.md", "persona": "engineer"},
|
|
11
|
+
{"id": "review_plan", "meta": "meta-review-plan.md", "persona": "supervisor"},
|
|
12
|
+
{"id": "review_code", "meta": "meta-review-implementation.md", "persona": "supervisor"},
|
|
13
|
+
{"id": "collator_agent", "meta": "meta-collate.md", "persona": "collator"},
|
|
14
|
+
{"id": "sprint_retrospective", "meta": "meta-retro.md", "persona": "architect"},
|
|
15
|
+
{"id": "validate_task", "meta": "meta-validate.md", "persona": "qa-engineer"},
|
|
16
|
+
{"id": "quiz_agent", "meta": "meta-check-agent.md", "persona": "qa-engineer"}
|
|
17
|
+
]
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.
|
|
3
|
-
"generated": "2026-06-
|
|
2
|
+
"version": "1.4.4",
|
|
3
|
+
"generated": "2026-06-07",
|
|
4
4
|
"note": "Tamper-evident only. Authoritative source: /forge:update from remote.",
|
|
5
5
|
"files": {
|
|
6
|
-
"commands/add-pipeline.md": "
|
|
7
|
-
"commands/add-task.md": "
|
|
8
|
-
"commands/ask.md": "
|
|
9
|
-
"commands/check-agent.md": "
|
|
10
|
-
"commands/config.md": "
|
|
6
|
+
"commands/add-pipeline.md": "ed4e666b38542d959287116ff6f25e8f51b10c2f18d1fc54974a996fdaf9d8f7",
|
|
7
|
+
"commands/add-task.md": "1782818b31d602194a2bbab12dda00e3b5a947dd5410ca9078777e79df1ad3ee",
|
|
8
|
+
"commands/ask.md": "9b53c7636533811d689cfc27e5eeb847c92f8f740434657c61db090a53a4e21f",
|
|
9
|
+
"commands/check-agent.md": "89d2ebac4910447af22380df5d1b99511d6dae3581374ddb6780e686d8163ce6",
|
|
10
|
+
"commands/config.md": "e9af723a2cf782d167d75aa29cbbec71e937507b9d7576ad254a5a35acae9df0",
|
|
11
11
|
"commands/enhance.md": "d28f6414119e84973809d32900bb7245b51f565aed86112bc7a994bc6941b547",
|
|
12
|
-
"commands/health.md": "
|
|
13
|
-
"commands/init.md": "
|
|
14
|
-
"commands/rebuild.md": "
|
|
15
|
-
"commands/remove.md": "
|
|
16
|
-
"commands/repair.md": "
|
|
17
|
-
"commands/report-bug.md": "
|
|
12
|
+
"commands/health.md": "d92d81ab8614608c383a01f4788fa9aa17a9b07c0d62caebad264a6459b45d58",
|
|
13
|
+
"commands/init.md": "846e719a85aea6cd706287d6b3bd764d023dae463c0d646c5bf02481c179f4d9",
|
|
14
|
+
"commands/rebuild.md": "be7cc69c79883d3caae52b1ce8904404ac6d622b84fc17a278f3fd697230842f",
|
|
15
|
+
"commands/remove.md": "3044c58c699047e94bea4bb26bbe0e8d81425cba1ef2afc7243968e2ee8ab483",
|
|
16
|
+
"commands/repair.md": "90dd34c87768aef50a46224a21280047ed2376ca59785ecf6403cae3177dfc2f",
|
|
17
|
+
"commands/report-bug.md": "ae4eb28b54d171de20e89250daadc2a0859887f1d59845a895bd9543b0c1db6f",
|
|
18
18
|
"commands/search.md": "befc4ba9f3146e7599308b35b95ec315e16895c0c18c9c2bab7549619d79bf1c",
|
|
19
|
-
"commands/status.md": "
|
|
20
|
-
"commands/update.md": "
|
|
19
|
+
"commands/status.md": "d1f5e9295b472553fafcd270e34be00560beadfb18b98d4b696845fb794102eb",
|
|
20
|
+
"commands/update.md": "00cf09b7fa6e84b7bd137a543a11e52c3dbfe3dfe463982dbd6224435ba52345",
|
|
21
21
|
"agents/store-query-validator.md": "f4c3573edcf6e28809515705362df611806a805c5269404fb17e31433cf3a81c",
|
|
22
22
|
"agents/tomoshibi.md": "0c1032df80dfc25a4f482b1276965b5318754d95ccde9f24820846d564e49a27",
|
|
23
23
|
"hooks/check-update.cjs": "9607cc0c51bedcbc123f5ea1d7a492916f29ee1f838846eec64776d5df70bbea",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"schemas/transitions/bug.json": "27b17da42d1cebffbd4f61ab3dcd432a0017aa71997d548ed80d22c2fc3fad6a",
|
|
31
31
|
"schemas/transitions/sprint.json": "2e0a629396e687b0ca88e1814ac3e35d84533a5d55b25237ab67feddce3c9deb",
|
|
32
32
|
"schemas/transitions/task.json": "4c71849747baa0d585756e57c56325ff6219c078178374e60815dff91e25e3e7",
|
|
33
|
-
"schemas/enum-catalog.json": "
|
|
33
|
+
"schemas/enum-catalog.json": "031b5888c3092dccb23e7fafe6cad3462cd4c8a4af3b055fcd503595818efaa0",
|
|
34
34
|
"tools/verify-integrity.cjs": "3ec3c970dd3d7c3001f8f373bcc40556803eadd2fc2afafb14f1c232cba4cc3f"
|
|
35
35
|
}
|
|
36
36
|
}
|
|
@@ -10,6 +10,13 @@
|
|
|
10
10
|
|
|
11
11
|
Example: `20260415T141523000Z_ACME-S02-T03_engineer_implement`
|
|
12
12
|
|
|
13
|
+
## Type Vocabulary
|
|
14
|
+
|
|
15
|
+
The optional `type` field, when present, must come from the canonical
|
|
16
|
+
phase→type tables in `meta/workflows/_fragments/event-vocabulary.md`
|
|
17
|
+
(task / bug / sprint / friction / skill_usage families). The schema enum in
|
|
18
|
+
`schemas/event.schema.json` mirrors that fragment.
|
|
19
|
+
|
|
13
20
|
## Fields
|
|
14
21
|
|
|
15
22
|
| Field | Type | Required | Description |
|
|
@@ -4,6 +4,10 @@
|
|
|
4
4
|
orchestrator stitches runtime telemetry + judgement into the canonical
|
|
5
5
|
event and emits it. Referenced by meta-orchestrate.md and meta-fix-bug.md.
|
|
6
6
|
|
|
7
|
+
Companion: _fragments/event-vocabulary.md owns the `type` token
|
|
8
|
+
vocabulary (phase→type tables for task/bug/sprint events). This fragment
|
|
9
|
+
owns WHO emits; that one owns WHAT token.
|
|
10
|
+
|
|
7
11
|
PLAN-11 / SLICE-2 (2026-05-14): the LLM no longer hand-builds event JSON.
|
|
8
12
|
Runtime facts (model, provider, eventId, timestamps, iteration, tokens)
|
|
9
13
|
are owned by the orchestrator, never the subagent. The subagent only
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# Fragment: Event Type Vocabulary
|
|
2
|
+
|
|
3
|
+
<!-- Canonical phase→type vocabulary for store events (forge-engineering#39).
|
|
4
|
+
This fragment OWNS the `type` token vocabulary; `schemas/event.schema.json`
|
|
5
|
+
mirrors it. Any vocabulary change lands here first, then in the schema enum
|
|
6
|
+
(test-first via tools/__tests__/event-schema-variants.test.cjs), then in
|
|
7
|
+
emitters (forge-cli orchestrators, wfl JS drivers, meta workflows).
|
|
8
|
+
|
|
9
|
+
Companion: _fragments/event-emission-schema.md owns WHO emits (orchestrator
|
|
10
|
+
vs subagent field ownership). This fragment owns WHAT token each phase emits.
|
|
11
|
+
|
|
12
|
+
Invariant: every token emitted by any surface MUST appear in the schema
|
|
13
|
+
enum, and every enum token MUST have a named emitter below. Dead tokens are
|
|
14
|
+
removed (bug-fixed was retired by forge-engineering#39 — defined, never
|
|
15
|
+
emitted by anything). -->
|
|
16
|
+
|
|
17
|
+
## Rules
|
|
18
|
+
|
|
19
|
+
1. **Emitted tokens ⊆ schema enum.** An emitter never invents a token. If a new
|
|
20
|
+
phase outcome needs a token, add it here + the schema enum first.
|
|
21
|
+
2. **`type` is optional** on events. An untyped event is valid (task-pipeline
|
|
22
|
+
events from forge-cli run-task are currently untyped). When a `type` IS set,
|
|
23
|
+
it must come from the tables below.
|
|
24
|
+
3. **Kebab-case for lifecycle tokens.** Underscore names are reserved for the
|
|
25
|
+
`friction` and `skill_usage` event families.
|
|
26
|
+
4. **Conditional fields.** Typed events trigger schema conditionals — see the
|
|
27
|
+
"Requires" column. Driver-emitted skip events have no model/provider; emit
|
|
28
|
+
the literal `"n/a"` for both (never guess a model string — see
|
|
29
|
+
`_fragments/event-emission-schema.md` §Why no example record here).
|
|
30
|
+
5. **Skip reasons ride in `notes`.** `reason` is not a declared event property
|
|
31
|
+
(`additionalProperties: false` rejects it).
|
|
32
|
+
|
|
33
|
+
## Task pipeline (orchestrate_task / run-task / wfl:run-task)
|
|
34
|
+
|
|
35
|
+
| Phase | Pass token | Fail token | Requires |
|
|
36
|
+
|---|---|---|---|
|
|
37
|
+
| plan | `task-planned` | `task-planned` | taskId, phase, iteration |
|
|
38
|
+
| review-plan | `plan-approved` | `review-failed` | taskId, phase, iteration |
|
|
39
|
+
| implement | `task-implemented` | `task-implemented` | taskId, phase, iteration |
|
|
40
|
+
| review-code | `review-passed` | `review-failed` | taskId, phase, iteration |
|
|
41
|
+
| validate | `task-validated` | `review-failed` | taskId, phase, iteration |
|
|
42
|
+
| approve | `task-approved` | `review-failed` | taskId, phase, iteration |
|
|
43
|
+
| commit | `task-committed` | `task-committed` | taskId, phase, iteration |
|
|
44
|
+
|
|
45
|
+
`plan-complete` is a legacy alias accepted by the enum for plan-phase events;
|
|
46
|
+
new emitters use `task-planned`.
|
|
47
|
+
|
|
48
|
+
## Bug pipeline (fix_bug / fix-bug / wfl:fix-bug)
|
|
49
|
+
|
|
50
|
+
| Phase | Pass token | Fail token | Requires |
|
|
51
|
+
|---|---|---|---|
|
|
52
|
+
| pre-loop skip | `bug-skipped` | — | bugId (no phase/iteration; model/provider `"n/a"`) |
|
|
53
|
+
| triage | `bug-triaged` | `bug-triaged` | bugId, phase, iteration |
|
|
54
|
+
| plan-fix | `fix-planned` | `fix-planned` | bugId, phase, iteration |
|
|
55
|
+
| review-plan | `fix-review-passed` | `fix-review-failed` | bugId, phase, iteration |
|
|
56
|
+
| implement | `fix-implemented` | `fix-implemented` | bugId, phase, iteration |
|
|
57
|
+
| review-code | `fix-code-review-passed` | `fix-code-review-failed` | bugId, phase, iteration |
|
|
58
|
+
| approve | `fix-approved` | `fix-revision-requested` | bugId, phase, iteration |
|
|
59
|
+
| commit | `bug-committed` | `bug-commit-failed` | bugId, phase, iteration |
|
|
60
|
+
|
|
61
|
+
Non-review phases emit their single token regardless of outcome (the verdict
|
|
62
|
+
field carries the judgement); review phases (review-plan, review-code, approve)
|
|
63
|
+
select pass/fail on `verdict == "revision"`.
|
|
64
|
+
|
|
65
|
+
## Sprint grain (run_sprint / run-sprint / wfl:run-sprint)
|
|
66
|
+
|
|
67
|
+
| Moment | Token | Requires |
|
|
68
|
+
|---|---|---|
|
|
69
|
+
| before wave loop | `sprint-start` | sprintId (taskCount optional) |
|
|
70
|
+
| before each task dispatch | `task-dispatch` | taskId (convention; phase/iteration carried but not schema-enforced) |
|
|
71
|
+
| sprint finished | `sprint-complete` | taskCount, completedTaskIds, verdict |
|
|
72
|
+
| sprint aborted | `sprint-halted` | haltedAtTaskIndex, haltedAtTaskId, lastError |
|
|
73
|
+
|
|
74
|
+
## Other families
|
|
75
|
+
|
|
76
|
+
| Token | Emitter | Spec |
|
|
77
|
+
|---|---|---|
|
|
78
|
+
| `friction` | any persona, drained by orchestrator | `_fragments/friction-emit.md` |
|
|
79
|
+
| `skill_usage` | forge-cli skill-curation telemetry | `event.schema.json` skill_usage conditional |
|
|
80
|
+
|
|
81
|
+
## Out of scope (known follow-ups)
|
|
82
|
+
|
|
83
|
+
- **Feature events** have no lifecycle tokens; feature-related events are
|
|
84
|
+
emitted untyped. Defining a feature vocabulary is a future change to this
|
|
85
|
+
fragment + the enum.
|
|
86
|
+
- **Task-pipeline typed emission in forge-cli** — run-task currently emits
|
|
87
|
+
untyped events (valid under Rule 2); adopting the task table above is
|
|
88
|
+
forward work tracked in forge-engineering#39 step 3.
|
|
@@ -80,12 +80,11 @@ Never set `FORGE_SKIP_WRITE_VALIDATION=1` — operator-only emergency switch.
|
|
|
80
80
|
}
|
|
81
81
|
```
|
|
82
82
|
The orchestrator reads this file directly to compose the collation event narrative. Do NOT call `set-summary` to register it — that would mutate the store in violation of Iron Law 1.
|
|
83
|
-
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
```
|
|
83
|
+
- KB link refresh (best-effort; skip if unavailable):
|
|
84
|
+
When running standalone in the Claude Code TUI, invoke via the Skill tool
|
|
85
|
+
(`skill: "forge:refresh-kb-links"`).
|
|
86
|
+
When running as a subagent within forge-cli (Pi runtime), the TS orchestrator
|
|
87
|
+
calls `runRefreshKbLinks` directly after this phase — skip this step.
|
|
89
88
|
```
|
|
90
89
|
|
|
91
90
|
<!-- See _fragments/generation-instructions.md for Generation Instructions template -->
|
|
@@ -32,6 +32,8 @@ Seal a completed and approved task by committing its artifacts to the VCS and up
|
|
|
32
32
|
- Commit only the artifacts produced for this task; do not sweep unrelated working-tree changes into the commit. The commit boundary mirrors the task boundary.
|
|
33
33
|
- Read `.forge/personas/engineer.md` first; print the persona identity line (emoji, name, tagline) to stdout before any other tool use.
|
|
34
34
|
- All store I/O via `forge_store` (or `node .forge/tools/store-cli.cjs`). Never edit `.forge/store/*.json` directly.
|
|
35
|
+
- **Never run `git add`/`git commit`/`git reset` yourself** — `commit-task.cjs` owns staging, boundary checks, committing, and the terminal transition (#40). Your judgement input is the message.
|
|
36
|
+
- **Commit writes NO summary** (`commit` ∉ `VALID_SUMMARY_PHASES` — any `set-summary` is rejected); the tool's terminal `update-status` is this phase's only store write.
|
|
35
37
|
|
|
36
38
|
## Store-Write Verification
|
|
37
39
|
|
|
@@ -41,55 +43,56 @@ Seal a completed and approved task by committing its artifacts to the VCS and up
|
|
|
41
43
|
|
|
42
44
|
```
|
|
43
45
|
|
|
44
|
-
|
|
45
|
-
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
-
|
|
54
|
-
-
|
|
55
|
-
`
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
-
|
|
46
|
+
0. Entity-mode resolution:
|
|
47
|
+
- Read the kickoff arguments. `--task {id}` → `entity_kind = "task"`, `record_id = {id}`. `--bug {id}` → `entity_kind = "bug"`, `record_id = {id}`.
|
|
48
|
+
|
|
49
|
+
1. Inspect ONCE (message material only — #40 batched-inspection rule):
|
|
50
|
+
- One `git diff --stat`; at most ONE combined `git diff` if the message needs detail.
|
|
51
|
+
Never per-file diffs, never repeated `git status` — each extra turn re-pays full context.
|
|
52
|
+
- Staging is NOT your decision — the tool derives it from the store record.
|
|
53
|
+
|
|
54
|
+
2. Craft the commit message:
|
|
55
|
+
- Follow project conventions; include the record ID ({taskId} / {bugId}) in the subject.
|
|
56
|
+
- `Co-authored-by:` trailer from the host runtime: Claude Code →
|
|
57
|
+
`Co-authored-by: Claude <noreply@anthropic.com>`; pi / Ollama / other →
|
|
58
|
+
`Co-authored-by: {modelId} <noreply@{provider}.ai>` from the session's `provider` and
|
|
59
|
+
`modelId`; if unresolvable, omit rather than guess. Never hardcode
|
|
60
|
+
`Claude Opus 4.6 <noreply@anthropic.com>` (forge#82 regression).
|
|
61
|
+
- Git's configured `user.name`/`user.email` own authorship; never `--author`.
|
|
62
|
+
|
|
63
|
+
3. Commit via the tool — ONE call:
|
|
64
|
+
- If the `forge_commit` named tool is available (forgecli): call it —
|
|
65
|
+
`forge_commit({ entity:"{entity_kind}", id:"{record_id}", message:"<message>", trailer:"<line>" })`.
|
|
66
|
+
Never pass the message through a bash string when the typed tool exists.
|
|
67
|
+
- Otherwise (Claude Code): `node .forge/tools/commit-task.cjs --{entity_kind} {record_id} --message "<message>" [--trailer "<Co-authored-by line>"]`
|
|
68
|
+
- The tool owns the choreography: preflight gate (`preflight-gate.cjs --phase commit`
|
|
69
|
+
internally), status precondition (task `approved` / bug `in-progress` — wrong-state runs
|
|
70
|
+
halt with `× {record_id} is in state '{status}' …; /forge:approve must complete first`),
|
|
71
|
+
staging (artifact dir + `summaries.implementation.files_changed` provenance),
|
|
72
|
+
commit-boundary guard (aborts on a pre-staged index), `git commit`, terminal transition
|
|
73
|
+
(task → `committed`; bug → `fixed`, the ONLY post-triage `bug.status` write).
|
|
74
|
+
- On `no files_changed provenance` warning: ONE `git status --porcelain`, then re-run the
|
|
75
|
+
tool with `--also <path>` per source file. Never manual `git add`.
|
|
76
|
+
- Success → JSON with `ok:true`. `committed:true` carries `sha` + `staged`;
|
|
77
|
+
`committed:false, reason:"nothing-to-commit"` is ALSO success (fix already at HEAD /
|
|
78
|
+
staging set clean — the tool still sealed the record's terminal status). Do not
|
|
79
|
+
"fix" a no-op by staging things yourself.
|
|
80
|
+
- Failure (exit 1 / ok:false) → print stderr and HALT — no manual staging, no
|
|
81
|
+
`git reset`, no `--force` retry (operator-gated). Tool file missing → HALT;
|
|
82
|
+
instruct `/forge:update` + `/forge:rebuild tools`.
|
|
83
|
+
- NEVER commit before the tool reports `ok: true` — the premature-commit/reset/redo loop
|
|
84
|
+
is forbidden.
|
|
85
|
+
|
|
86
|
+
4. Finalize:
|
|
87
|
+
- No summary, no `set-summary` (see Iron Laws). **Do NOT emit a phase event yourself** —
|
|
88
|
+
the orchestrator owns event emission. Return the tool's JSON result as your phase output.
|
|
86
89
|
```
|
|
87
90
|
|
|
88
91
|
<!-- See _fragments/generation-instructions.md for Generation Instructions template -->
|
|
89
92
|
## Generation Instructions
|
|
90
93
|
|
|
91
94
|
- **Workflow Structure:** The generated `commit_task.md` must follow the strict "Algorithm" block format.
|
|
92
|
-
- **
|
|
95
|
+
- **Tool Ownership:** All git operations route through `commit-task.cjs` (forge-engineering#40) — the generated workflow must never instruct manual `git add`/`git commit`/`git reset`.
|
|
93
96
|
- **Project Specifics:**
|
|
94
97
|
- Embed project's commit message conventions.
|
|
95
98
|
- **Token Reporting:** See `_fragments/finalize.md` — wire via `file_ref:`.
|
|
@@ -148,7 +148,9 @@ Differences are confined to the **triage** step and the **path branch**.
|
|
|
148
148
|
- Detect execution cluster from ANTHROPIC_DEFAULT_*_MODEL env vars.
|
|
149
149
|
- Clear progress log: store-cli progress-clear bugs
|
|
150
150
|
- Read bug record. If status ∈ {blocked, escalated, fixed, abandoned}:
|
|
151
|
-
skip the run, emit a single `
|
|
151
|
+
skip the run, emit a single `bug-skipped` event (token + payload shape per
|
|
152
|
+
`_fragments/event-vocabulary.md` § Bug pipeline: requires `bugId`, no
|
|
153
|
+
phase/iteration; model/provider `"n/a"`; skip reason in `notes`), return.
|
|
152
154
|
|
|
153
155
|
2. Triage:
|
|
154
156
|
- Locate or create the bug record (MANDATORY — do this before anything else):
|
|
@@ -503,7 +505,10 @@ After each subagent returns: `✓` for completed/approved, `↻` for revision re
|
|
|
503
505
|
<!-- See _fragments/event-emission-schema.md for canonical contract -->
|
|
504
506
|
> See `_fragments/event-emission-schema.md` for the actor split (subagent
|
|
505
507
|
> writes judgement-only SUMMARY; orchestrator composes the canonical event
|
|
506
|
-
> from runtime telemetry + SUMMARY and emits it)
|
|
508
|
+
> from runtime telemetry + SUMMARY and emits it), and
|
|
509
|
+
> `_fragments/event-vocabulary.md` § Bug pipeline for the canonical
|
|
510
|
+
> phase→`type` token table (pass/fail tokens per phase, `bug-skipped`
|
|
511
|
+
> pre-loop skip shape). Emitted tokens MUST come from that table.
|
|
507
512
|
|
|
508
513
|
The orchestrator is the only actor that calls `store-cli emit` for phase
|
|
509
514
|
events. All bug-phase events use `sprintId="bugs"` (the reserved virtual
|
|
@@ -87,13 +87,13 @@ The Engineer implements the approved plan: write code, run tests, verify, and do
|
|
|
87
87
|
`node .forge/tools/store-cli.cjs update-status task {taskId} status implementing`
|
|
88
88
|
`node .forge/tools/store-cli.cjs update-status task {taskId} status implemented`
|
|
89
89
|
- **Bug mode** — NO status write. The bug remains `in-progress` until the commit phase transitions it to `fixed`. Writing `bug.status` here violates `meta-fix-bug.md § Iron Laws #2`.
|
|
90
|
-
- **Do NOT emit a phase event yourself.** The orchestrator owns event emission — it composes the canonical event from runtime telemetry
|
|
90
|
+
- **Do NOT emit a phase event yourself.** The orchestrator owns event emission — it composes the canonical event from runtime telemetry plus the SUMMARY you write next. Subagents that call `store-cli emit` for phase events hallucinate runtime facts (Plan 11 / Slice 2). Write the SUMMARY and return.
|
|
91
91
|
|
|
92
92
|
7. Emit Summary Sidecar:
|
|
93
93
|
- Write `IMPLEMENTATION-SUMMARY.json` via `forge_artifact`:
|
|
94
94
|
`forge_artifact({ command:"write", entity:"{entity_kind}", entityId:"{record_id}", artifact:"implementation-summary", content:"<JSON>" })`
|
|
95
|
-
JSON shape: `{"objective":"<one sentence>", "key_changes":["<up to 12 bullets>"], "verdict":"n/a", "written_at":"<ISO 8601>", "artifact_ref":"PROGRESS.md"}`
|
|
96
|
-
|
|
95
|
+
JSON shape: `{"objective":"<one sentence>", "key_changes":["<up to 12 bullets>"], "files_changed":["<path>"], "verdict":"n/a", "written_at":"<ISO 8601>", "artifact_ref":"PROGRESS.md"}`
|
|
96
|
+
- `files_changed`: every repo path this phase changed (one `git status --porcelain`); `commit-task.cjs` stages from it.
|
|
97
97
|
- Then link sidecar to store (task mode):
|
|
98
98
|
`forge_store({ command:"set-summary", args:["{taskId}", "implementation"] })`
|
|
99
99
|
Or (bug mode):
|
|
@@ -295,7 +295,7 @@ node .forge/tools/substitute-placeholders.cjs \
|
|
|
295
295
|
```
|
|
296
296
|
|
|
297
297
|
This overwrites `.forge/personas/`, `.forge/skills/`, `.forge/workflows/`,
|
|
298
|
-
`.forge/templates/`, and `.claude/commands
|
|
298
|
+
`.forge/templates/`, and `.claude/commands/forge/` with the freshly substituted
|
|
299
299
|
base-pack.
|
|
300
300
|
|
|
301
301
|
If `substitute-placeholders.cjs` exits non-zero: halt, report the error to the
|
|
@@ -950,7 +950,10 @@ is a violation of the Iron Laws.
|
|
|
950
950
|
<!-- See _fragments/event-emission-schema.md for canonical contract -->
|
|
951
951
|
> See `_fragments/event-emission-schema.md` for the actor split (subagent
|
|
952
952
|
> writes judgement-only SUMMARY; orchestrator composes the canonical event
|
|
953
|
-
> from runtime telemetry + SUMMARY and emits it)
|
|
953
|
+
> from runtime telemetry + SUMMARY and emits it), and
|
|
954
|
+
> `_fragments/event-vocabulary.md` § Task pipeline / § Sprint grain for the
|
|
955
|
+
> canonical phase→`type` token tables. When setting `type` on a phase or
|
|
956
|
+
> sprint event, the token MUST come from those tables.
|
|
954
957
|
|
|
955
958
|
The **orchestrator** is the only actor that calls `store-cli emit` for phase
|
|
956
959
|
events. Phase subagents write `{PHASE}-SUMMARY.json` and return. After each
|
|
@@ -59,11 +59,11 @@
|
|
|
59
59
|
"sprint-complete",
|
|
60
60
|
"sprint-halted",
|
|
61
61
|
"task-dispatch",
|
|
62
|
-
"bug-fixed",
|
|
63
62
|
|
|
64
63
|
"bug-triaged", "fix-planned", "fix-review-passed", "fix-review-failed",
|
|
65
64
|
"fix-implemented", "fix-code-review-passed", "fix-code-review-failed",
|
|
66
|
-
"fix-approved", "bug-committed",
|
|
65
|
+
"fix-approved", "fix-revision-requested", "bug-committed",
|
|
66
|
+
"bug-commit-failed", "bug-skipped",
|
|
67
67
|
|
|
68
68
|
"skill_usage"
|
|
69
69
|
]
|
|
@@ -129,7 +129,8 @@
|
|
|
129
129
|
"enum": [
|
|
130
130
|
"bug-triaged", "fix-planned", "fix-review-passed", "fix-review-failed",
|
|
131
131
|
"fix-implemented", "fix-code-review-passed", "fix-code-review-failed",
|
|
132
|
-
"fix-approved", "
|
|
132
|
+
"fix-approved", "fix-revision-requested", "bug-committed",
|
|
133
|
+
"bug-commit-failed"
|
|
133
134
|
]
|
|
134
135
|
}
|
|
135
136
|
},
|
|
@@ -137,6 +138,10 @@
|
|
|
137
138
|
},
|
|
138
139
|
"then": { "required": ["bugId", "phase", "iteration"] }
|
|
139
140
|
},
|
|
141
|
+
{
|
|
142
|
+
"if": { "properties": { "type": { "const": "bug-skipped" } }, "required": ["type"] },
|
|
143
|
+
"then": { "required": ["bugId"] }
|
|
144
|
+
},
|
|
140
145
|
{
|
|
141
146
|
"if": { "properties": { "type": { "const": "sprint-start" } }, "required": ["type"] },
|
|
142
147
|
"then": {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.
|
|
3
|
-
"generatedAt": "2026-06-
|
|
2
|
+
"version": "1.4.3",
|
|
3
|
+
"generatedAt": "2026-06-07T14:06:39.707Z",
|
|
4
4
|
"generatedByTool": "build-manifest.cjs",
|
|
5
5
|
"namespaces": {
|
|
6
6
|
"personas": {
|
|
@@ -94,6 +94,7 @@
|
|
|
94
94
|
"files": [
|
|
95
95
|
"context-injection.md",
|
|
96
96
|
"event-emission-schema.md",
|
|
97
|
+
"event-vocabulary.md",
|
|
97
98
|
"finalize.md",
|
|
98
99
|
"friction-emit.md",
|
|
99
100
|
"generation-instructions.md",
|
|
@@ -108,6 +109,7 @@
|
|
|
108
109
|
"dir": ".claude/workflows",
|
|
109
110
|
"files": [
|
|
110
111
|
"wfl-fix-bug.js",
|
|
112
|
+
"wfl-init.js",
|
|
111
113
|
"wfl-run-sprint.js",
|
|
112
114
|
"wfl-run-task.js"
|
|
113
115
|
]
|
|
@@ -141,42 +143,33 @@
|
|
|
141
143
|
"artifact.cjs",
|
|
142
144
|
"backfill-provider.cjs",
|
|
143
145
|
"banners.cjs",
|
|
144
|
-
"build-base-pack.cjs",
|
|
145
146
|
"build-context-pack.cjs",
|
|
146
|
-
"build-enum-catalog.cjs",
|
|
147
147
|
"build-init-context.cjs",
|
|
148
|
-
"build-manifest.cjs",
|
|
149
148
|
"build-overlay.cjs",
|
|
150
149
|
"build-persona-pack.cjs",
|
|
151
|
-
"check-no-skipped-tests.cjs",
|
|
152
150
|
"check-structure.cjs",
|
|
153
151
|
"collate.cjs",
|
|
152
|
+
"commit-task.cjs",
|
|
154
153
|
"compression-gate.cjs",
|
|
155
154
|
"delete-candidate-detector.cjs",
|
|
156
|
-
"estimate-usage.cjs",
|
|
157
155
|
"forge-preflight.cjs",
|
|
158
156
|
"friction-emit.cjs",
|
|
159
|
-
"gen-integrity.cjs",
|
|
160
157
|
"generation-manifest.cjs",
|
|
161
158
|
"judge-proposal.cjs",
|
|
162
159
|
"manage-config.cjs",
|
|
163
160
|
"manage-versions.cjs",
|
|
164
|
-
"migrate-slug-maxlen.cjs",
|
|
165
161
|
"parse-gates.cjs",
|
|
166
162
|
"postflight-gate.cjs",
|
|
167
163
|
"preflight-gate.cjs",
|
|
168
|
-
"proposal-normalize.cjs",
|
|
169
164
|
"query-logger.cjs",
|
|
170
165
|
"queue-drain.cjs",
|
|
171
166
|
"read-verdict.cjs",
|
|
172
167
|
"replay-scoring.cjs",
|
|
173
|
-
"rewrite-plugin-urls.cjs",
|
|
174
168
|
"seed-store.cjs",
|
|
175
169
|
"store-cli.cjs",
|
|
176
170
|
"store-query.cjs",
|
|
177
171
|
"store.cjs",
|
|
178
172
|
"substitute-placeholders.cjs",
|
|
179
|
-
"token-forensics.cjs",
|
|
180
173
|
"validate-store.cjs",
|
|
181
174
|
"verify-apply.cjs",
|
|
182
175
|
"verify-integrity.cjs",
|