@entelligentsia/forgecli 0.11.2 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +324 -0
- package/README.md +2 -1
- package/dist/CHANGELOG-forge-plugin.md +210 -0
- package/dist/bin/forge.js +20 -1
- package/dist/bin/forge.js.map +1 -1
- package/dist/extensions/forgecli/ask-user-tool.js +32 -20
- package/dist/extensions/forgecli/ask-user-tool.js.map +1 -1
- package/dist/extensions/forgecli/config-layer.d.ts +15 -0
- package/dist/extensions/forgecli/config-layer.js +4 -1
- package/dist/extensions/forgecli/config-layer.js.map +1 -1
- package/dist/extensions/forgecli/config-writer.js +4 -1
- package/dist/extensions/forgecli/config-writer.js.map +1 -1
- package/dist/extensions/forgecli/enhance.js +1 -1
- package/dist/extensions/forgecli/enhance.js.map +1 -1
- package/dist/extensions/forgecli/fix-bug.js +31 -1
- package/dist/extensions/forgecli/fix-bug.js.map +1 -1
- package/dist/extensions/forgecli/forge-cli-schema.json +19 -0
- package/dist/extensions/forgecli/forge-tools.js +80 -0
- package/dist/extensions/forgecli/forge-tools.js.map +1 -1
- package/dist/extensions/forgecli/forge-update-command.js +24 -18
- package/dist/extensions/forgecli/forge-update-command.js.map +1 -1
- package/dist/extensions/forgecli/friction-emit.d.ts +97 -0
- package/dist/extensions/forgecli/friction-emit.js +246 -0
- package/dist/extensions/forgecli/friction-emit.js.map +1 -0
- package/dist/extensions/forgecli/health-check.d.ts +10 -0
- package/dist/extensions/forgecli/health-check.js +160 -8
- package/dist/extensions/forgecli/health-check.js.map +1 -1
- package/dist/extensions/forgecli/hook-dispatcher.js +24 -2
- package/dist/extensions/forgecli/hook-dispatcher.js.map +1 -1
- package/dist/extensions/forgecli/hooks/write-guard.js +5 -1
- package/dist/extensions/forgecli/hooks/write-guard.js.map +1 -1
- package/dist/extensions/forgecli/index.js +29 -5
- package/dist/extensions/forgecli/index.js.map +1 -1
- package/dist/extensions/forgecli/lib/store-error-remediation.d.ts +65 -0
- package/dist/extensions/forgecli/lib/store-error-remediation.js +298 -0
- package/dist/extensions/forgecli/lib/store-error-remediation.js.map +1 -0
- package/dist/extensions/forgecli/regenerate.d.ts +22 -0
- package/dist/extensions/forgecli/regenerate.js +133 -3
- package/dist/extensions/forgecli/regenerate.js.map +1 -1
- package/dist/extensions/forgecli/run-sprint.js +16 -1
- package/dist/extensions/forgecli/run-sprint.js.map +1 -1
- package/dist/extensions/forgecli/run-task.js +30 -8
- package/dist/extensions/forgecli/run-task.js.map +1 -1
- package/dist/extensions/forgecli/skill-curation-flag.d.ts +21 -0
- package/dist/extensions/forgecli/skill-curation-flag.js +71 -0
- package/dist/extensions/forgecli/skill-curation-flag.js.map +1 -0
- package/dist/extensions/forgecli/skill-curator-subagent.d.ts +101 -0
- package/dist/extensions/forgecli/skill-curator-subagent.js +342 -0
- package/dist/extensions/forgecli/skill-curator-subagent.js.map +1 -0
- package/dist/extensions/forgecli/skill-retriever.d.ts +84 -0
- package/dist/extensions/forgecli/skill-retriever.js +246 -0
- package/dist/extensions/forgecli/skill-retriever.js.map +1 -0
- package/dist/extensions/forgecli/skill-usage-tracker.d.ts +91 -0
- package/dist/extensions/forgecli/skill-usage-tracker.js +224 -0
- package/dist/extensions/forgecli/skill-usage-tracker.js.map +1 -0
- package/dist/extensions/forgecli/store-resolver.d.ts +18 -0
- package/dist/extensions/forgecli/store-resolver.js +44 -4
- package/dist/extensions/forgecli/store-resolver.js.map +1 -1
- package/dist/extensions/forgecli/store-validator.d.ts +3 -0
- package/dist/extensions/forgecli/store-validator.js +4 -2
- package/dist/extensions/forgecli/store-validator.js.map +1 -1
- package/dist/forge-payload/.base-pack/personas/supervisor.md +9 -0
- package/dist/forge-payload/.base-pack/workflows/enhance.md +344 -18
- package/dist/forge-payload/.claude-plugin/plugin.json +1 -1
- package/dist/forge-payload/.schemas/event.schema.json +20 -2
- package/dist/forge-payload/.schemas/migrations.json +112 -0
- package/dist/forge-payload/.schemas/proposal.schema.json +40 -0
- package/dist/forge-payload/agents/store-query-validator.md +103 -0
- package/dist/forge-payload/agents/tomoshibi.md +185 -0
- package/dist/forge-payload/commands/regenerate.md +109 -20
- package/dist/forge-payload/hooks/check-update.js +378 -0
- package/dist/forge-payload/hooks/forge-permissions.js +158 -0
- package/dist/forge-payload/hooks/triage-error.js +71 -0
- package/dist/forge-payload/hooks/validate-write.js +236 -0
- package/dist/forge-payload/integrity.json +32 -0
- package/dist/forge-payload/meta/workflows/meta-enhance.md +344 -18
- package/dist/forge-payload/schemas/structure-manifest.json +511 -0
- package/dist/forge-payload/tools/build-persona-pack.cjs +120 -11
- package/dist/forge-payload/tools/compression-gate.cjs +192 -0
- package/dist/forge-payload/tools/delete-candidate-detector.cjs +114 -0
- package/dist/forge-payload/tools/judge-proposal.cjs +177 -0
- package/dist/forge-payload/tools/manage-versions.cjs +132 -4
- package/dist/forge-payload/tools/queue-drain.cjs +152 -0
- package/dist/forge-payload/tools/replay-scoring.cjs +117 -0
- 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/clipboard.linux-x64-musl.node +0 -0
- package/node_modules/@mariozechner/clipboard-linux-x64-musl/package.json +25 -0
- package/package.json +4 -2
|
@@ -104,6 +104,7 @@ export function registerForgeTools(pi, forgeRoot, projectRoot) {
|
|
|
104
104
|
registerForgeStoreDescribe(pi, toolDir, projectRoot);
|
|
105
105
|
registerForgeStoreTemplate(pi, toolDir, projectRoot);
|
|
106
106
|
registerForgeStoreQuery(pi, toolDir, projectRoot);
|
|
107
|
+
registerForgeVerifyApply(pi, toolDir, projectRoot);
|
|
107
108
|
registerForgeToolDiscipline(pi);
|
|
108
109
|
}
|
|
109
110
|
/**
|
|
@@ -414,4 +415,83 @@ function registerForgeStoreQuery(pi, toolDir, projectRoot) {
|
|
|
414
415
|
},
|
|
415
416
|
});
|
|
416
417
|
}
|
|
418
|
+
// ── forge_verify_apply (forge-cli#31) ────────────────────────────────────────
|
|
419
|
+
//
|
|
420
|
+
// Detects hallucinated Edit calls — when the agent claims to have modified a
|
|
421
|
+
// file but the actual on-disk content is unchanged. Background: hello testbench
|
|
422
|
+
// 17:48 session showed the agent's "Files Modified" UI report claimed 5 edits
|
|
423
|
+
// applied; the snap-4 archive captured by add-snapshot afterwards showed only
|
|
424
|
+
// 1 of 5 files actually changed on disk. The other 4 were silent Edit-tool
|
|
425
|
+
// failures (typically old_string whitespace mismatches) the agent didn't notice.
|
|
426
|
+
//
|
|
427
|
+
// Contract: agent calls this tool AFTER applying edits, BEFORE calling
|
|
428
|
+
// manage-versions add-snapshot. Tool runs generation-manifest check on each
|
|
429
|
+
// claimed file and returns structured results. Agent uses the output to detect
|
|
430
|
+
// its own failures, re-apply hallucinated edits, then re-verify.
|
|
431
|
+
//
|
|
432
|
+
// Output schema (JSON string):
|
|
433
|
+
// {
|
|
434
|
+
// "modified": ["<path>", ...], // verified — content differs from manifest baseline (exit 1)
|
|
435
|
+
// "unchanged": ["<path>", ...], // pristine — agent claim was wrong (exit 0)
|
|
436
|
+
// "untracked": ["<path>", ...], // no manifest entry — ambiguous
|
|
437
|
+
// "missing": ["<path>", ...] // file doesn't exist
|
|
438
|
+
// }
|
|
439
|
+
//
|
|
440
|
+
// Exit semantics from generation-manifest.cjs check:
|
|
441
|
+
// 0 = pristine → file matches recorded hash, NO change → "unchanged"
|
|
442
|
+
// 1 = modified → file differs from recorded hash → "modified" (verified ✓)
|
|
443
|
+
// 2 = untracked → no manifest entry → "untracked"
|
|
444
|
+
// 3 = file missing → "missing"
|
|
445
|
+
function registerForgeVerifyApply(pi, toolDir, projectRoot) {
|
|
446
|
+
pi.registerTool({
|
|
447
|
+
name: "forge_verify_apply",
|
|
448
|
+
label: "Forge Verify Apply",
|
|
449
|
+
description: "Verify file modifications actually landed on disk. Call AFTER applying enhancement edits, " +
|
|
450
|
+
"BEFORE invoking manage-versions add-snapshot. Detects hallucinated Edit-tool calls (e.g. when " +
|
|
451
|
+
"old_string didn't match exactly and the Edit silently no-op'd). Returns structured results: " +
|
|
452
|
+
"`modified` (verified — change is on disk), `unchanged` (agent claim was wrong — re-apply needed), " +
|
|
453
|
+
"`untracked` (no manifest entry — ambiguous, treat as potentially modified), `missing` (file gone). " +
|
|
454
|
+
"If `unchanged.length > 0`, RE-APPLY those edits via Edit/Write and call this tool again until empty.",
|
|
455
|
+
promptSnippet: "After Phase 2 apply, call forge_verify_apply with the list of claimed file paths. " +
|
|
456
|
+
"If `unchanged` is non-empty, re-apply those edits before snapshot.",
|
|
457
|
+
parameters: Type.Object({
|
|
458
|
+
claimed_paths: Type.Array(Type.String(), {
|
|
459
|
+
description: "Project-root-relative paths of files you claim to have modified (e.g. " +
|
|
460
|
+
"['.forge/personas/architect.md', '.forge/skills/engineer-skills.md']). Paths " +
|
|
461
|
+
"outside .forge/{personas,skills,workflows,templates}/ are accepted but classified " +
|
|
462
|
+
"according to manifest state regardless.",
|
|
463
|
+
}),
|
|
464
|
+
}),
|
|
465
|
+
async execute(_toolCallId, params, signal) {
|
|
466
|
+
void signal;
|
|
467
|
+
const manifestTool = path.join(toolDir, "generation-manifest.cjs");
|
|
468
|
+
if (!fs.existsSync(manifestTool)) {
|
|
469
|
+
return errResult(`forge_verify_apply failed: generation-manifest.cjs not found at ${manifestTool}`);
|
|
470
|
+
}
|
|
471
|
+
const result = { modified: [], unchanged: [], untracked: [], missing: [] };
|
|
472
|
+
const { spawnSync } = await import("node:child_process");
|
|
473
|
+
for (const claimedPath of params.claimed_paths) {
|
|
474
|
+
const r = spawnSync("node", [manifestTool, "check", claimedPath], { cwd: projectRoot, encoding: "utf8", timeout: 5_000 });
|
|
475
|
+
switch (r.status) {
|
|
476
|
+
case 0:
|
|
477
|
+
result.unchanged.push(claimedPath);
|
|
478
|
+
break;
|
|
479
|
+
case 1:
|
|
480
|
+
result.modified.push(claimedPath);
|
|
481
|
+
break;
|
|
482
|
+
case 2:
|
|
483
|
+
result.untracked.push(claimedPath);
|
|
484
|
+
break;
|
|
485
|
+
case 3:
|
|
486
|
+
result.missing.push(claimedPath);
|
|
487
|
+
break;
|
|
488
|
+
default:
|
|
489
|
+
// Tool error — surface as missing for safety; the agent should investigate
|
|
490
|
+
result.missing.push(claimedPath);
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
return okResult(JSON.stringify(result, null, 2));
|
|
494
|
+
},
|
|
495
|
+
});
|
|
496
|
+
}
|
|
417
497
|
//# sourceMappingURL=forge-tools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forge-tools.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/forge-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"forge-tools.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/forge-tools.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,EAAE;AACF,gFAAgF;AAChF,mDAAmD;AACnD,qDAAqD;AACrD,0DAA0D;AAC1D,yDAAyD;AACzD,EAAE;AACF,4EAA4E;AAC5E,0EAA0E;AAC1E,0EAA0E;AAC1E,0EAA0E;AAC1E,kDAAkD;AAClD,EAAE;AACF,2EAA2E;AAE3E,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAE1C;;;;;;;;GAQG;AACH,SAAS,cAAc,CAAC,SAAiB;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC;QACJ,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE;YAAE,OAAO,MAAM,CAAC;IACtD,CAAC;IAAC,MAAM,CAAC;QACR,2CAA2C;IAC5C,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,gFAAgF;AAEhF;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,MAAM,CACpB,QAAgB,EAChB,IAAc,EACd,MAA+B,EAC/B,SAAiB,EACjB,WAAmB;IAEnB,MAAM,IAAI,GAAwC;QACjD,GAAG,EAAE,WAAW;QAChB,QAAQ,EAAE,MAAM;QAChB,OAAO,EAAE,SAAS;KAClB,CAAC;IACF,wEAAwE;IACxE,qEAAqE;IACrE,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1B,8DAA8D;QAC7D,IAAY,CAAC,MAAM,GAAG,MAAM,CAAC;IAC/B,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IACtE,OAAO;QACN,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC1F,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;KAC1F,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF,SAAS,QAAQ,CAAC,IAAY;IAC7B,OAAO;QACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC;QACxD,OAAO,EAAE,EAAa;KACtB,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC9B,OAAO;QACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC;QAC1C,OAAO,EAAE,EAAa;QACtB,OAAO,EAAE,IAAa;KACtB,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAAgB,EAAE,SAAiB,EAAE,WAAmB;IAC1F,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAC1C,oBAAoB,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAC/C,kBAAkB,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAC7C,0BAA0B,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACrD,mBAAmB,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAC9C,0BAA0B,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACrD,0BAA0B,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACrD,uBAAuB,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAClD,wBAAwB,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACnD,2BAA2B,CAAC,EAAE,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,2BAA2B,CAAC,EAAgB;IACpD,sEAAsE;IACtE,wEAAwE;IACxE,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,UAAU;QAAE,OAAO;IACxC,EAAE,CAAC,EAAE,CAAC,oBAAoB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QAC3C,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;CAoBpB,CAAC;QACA,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC;QAC1C,OAAO,EAAE,YAAY,EAAE,QAAQ,GAAG,UAAU,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,SAAS,oBAAoB,CAAC,EAAgB,EAAE,OAAe,EAAE,WAAmB;IACnF,EAAE,CAAC,YAAY,CAAC;QACf,IAAI,EAAE,eAAe;QACrB,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,4FAA4F;QACzG,aAAa,EAAE,8DAA8D;QAC7E,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CACtB,IAAI,CAAC,MAAM,CAAC;gBACX,WAAW,EAAE,oEAAoE;aACjF,CAAC,CACF;YACD,WAAW,EAAE,IAAI,CAAC,QAAQ,CACzB,IAAI,CAAC,OAAO,CAAC;gBACZ,WAAW,EAAE,yDAAyD;aACtE,CAAC,CACF;YACD,MAAM,EAAE,IAAI,CAAC,QAAQ,CACpB,IAAI,CAAC,OAAO,CAAC;gBACZ,WAAW,EAAE,wCAAwC;aACrD,CAAC,CACF;SACD,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YACnD,MAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,IAAI,MAAM,CAAC,QAAQ;gBAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAChD,IAAI,MAAM,CAAC,WAAW;gBAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACpD,IAAI,MAAM,CAAC,MAAM;gBAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAE1C,IAAI,CAAC;gBACJ,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;gBAC7E,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,GAA2B,CAAC;gBACtC,OAAO,SAAS,CAAC,yBAAyB,CAAC,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;YAC3E,CAAC;QACF,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,SAAS,kBAAkB,CAAC,EAAgB,EAAE,OAAe,EAAE,WAAmB;IACjF,EAAE,CAAC,YAAY,CAAC;QACf,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,aAAa;QACpB,WAAW,EACV,sFAAsF;YACtF,0FAA0F;YAC1F,wEAAwE;YACxE,wHAAwH;YACxH,mEAAmE;YACnE,2EAA2E;YAC3E,iEAAiE;YACjE,2DAA2D;YAC3D,gHAAgH;YAChH,iFAAiF;YACjF,+HAA+H;YAC/H,gDAAgD;YAChD,wEAAwE;YACxE,oCAAoC;YACpC,4EAA4E;YAC5E,6HAA6H;YAC7H,qHAAqH;QACtH,aAAa,EACZ,uEAAuE;YACvE,uFAAuF;YACvF,wDAAwD;QACzD,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;YACvB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;gBACpB,WAAW,EACV,8MAA8M;aAC/M,CAAC;YACF,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;gBAC/B,WAAW,EACV,yDAAyD;oBACzD,0EAA0E;oBAC1E,8CAA8C;oBAC9C,mEAAmE;aACpE,CAAC;YACF,MAAM,EAAE,IAAI,CAAC,QAAQ,CACpB,IAAI,CAAC,OAAO,CAAC;gBACZ,WAAW,EAAE,iDAAiD;aAC9D,CAAC,CACF;SACD,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;YACrD,MAAM,IAAI,GAAa,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YACxD,IAAI,MAAM,CAAC,MAAM;gBAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAE1C,IAAI,CAAC;gBACJ,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;gBAC7E,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,GAA2B,CAAC;gBACtC,OAAO,SAAS,CAAC,uBAAuB,CAAC,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;YACzE,CAAC;QACF,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,SAAS,0BAA0B,CAAC,EAAgB,EAAE,OAAe,EAAE,WAAmB;IACzF,EAAE,CAAC,YAAY,CAAC;QACf,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EACV,yEAAyE;YACzE,mGAAmG;YACnG,4DAA4D;QAC7D,aAAa,EAAE,yEAAyE;QACxF,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;YACvB,GAAG,EAAE,IAAI,CAAC,QAAQ,CACjB,IAAI,CAAC,OAAO,CAAC;gBACZ,WAAW,EAAE,yCAAyC;aACtD,CAAC,CACF;YACD,IAAI,EAAE,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC;gBACZ,WAAW,EAAE,yBAAyB;aACtC,CAAC,CACF;YACD,MAAM,EAAE,IAAI,CAAC,QAAQ,CACpB,IAAI,CAAC,OAAO,CAAC;gBACZ,WAAW,EAAE,2BAA2B;aACxC,CAAC,CACF;SACD,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;YAC1D,MAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,IAAI,MAAM,CAAC,GAAG;gBAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,MAAM,CAAC,IAAI;gBAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrC,IAAI,MAAM,CAAC,MAAM;gBAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAE1C,IAAI,CAAC;gBACJ,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;gBAC7E,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,GAKT,CAAC;gBACF,yDAAyD;gBACzD,2DAA2D;gBAC3D,6DAA6D;gBAC7D,kEAAkE;gBAClE,gDAAgD;gBAChD,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBAChD,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC/D,OAAO,QAAQ,CAAC,MAAM,IAAI,0BAA0B,CAAC,CAAC;gBACvD,CAAC;gBACD,+CAA+C;gBAC/C,OAAO,SAAS,CAAC,gCAAgC,CAAC,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;YAClF,CAAC;QACF,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,SAAS,mBAAmB,CAAC,EAAgB,EAAE,OAAe,EAAE,WAAmB;IAClF,sEAAsE;IACtE,4DAA4D;IAC5D,2EAA2E;IAC3E,EAAE,CAAC,YAAY,CAAC;QACf,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,cAAc;QACrB,WAAW,EACV,uEAAuE;YACvE,gFAAgF;QACjF,aAAa,EAAE,iEAAiE;QAChF,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;YACvB,UAAU,EAAE,IAAI,CAAC,KAAK,CACrB;gBACC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;gBACnB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;gBACnB,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;gBAC9B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;gBACxB,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;aAClC,EACD,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAC5C;YACD,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;gBAC/B,WAAW,EACV,qGAAqG;aACtG,CAAC;SACF,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;YACzD,MAAM,IAAI,GAAa,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAE3D,IAAI,CAAC;gBACJ,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;gBAC5E,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,GAA2B,CAAC;gBACtC,OAAO,SAAS,CAAC,wBAAwB,CAAC,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;YAC1E,CAAC;QACF,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAChC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EACnH,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAC3C,CAAC;AAEF,SAAS,0BAA0B,CAAC,EAAgB,EAAE,OAAe,EAAE,WAAmB;IACzF,EAAE,CAAC,YAAY,CAAC;QACf,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EACV,gGAAgG;YAChG,yGAAyG;QAC1G,aAAa,EACZ,mHAAmH;QACpH,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;YACvB,MAAM,EAAE,cAAc;SACtB,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;YACrD,IAAI,CAAC;gBACJ,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;gBACnG,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,GAA2B,CAAC;gBACtC,OAAO,SAAS,CAAC,gCAAgC,CAAC,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;YAClF,CAAC;QACF,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,SAAS,0BAA0B,CAAC,EAAgB,EAAE,OAAe,EAAE,WAAmB;IACzF,EAAE,CAAC,YAAY,CAAC;QACf,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EACV,gGAAgG;YAChG,0GAA0G;YAC1G,yGAAyG;QAC1G,aAAa,EACZ,8HAA8H;QAC/H,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;YACvB,MAAM,EAAE,cAAc;SACtB,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;YACrD,IAAI,CAAC;gBACJ,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;gBACnG,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,GAA2B,CAAC;gBACtC,OAAO,SAAS,CAAC,gCAAgC,CAAC,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;YAClF,CAAC;QACF,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,SAAS,uBAAuB,CAAC,EAAgB,EAAE,OAAe,EAAE,WAAmB;IACtF,EAAE,CAAC,YAAY,CAAC;QACf,IAAI,EAAE,mBAAmB;QACzB,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EACV,+GAA+G;YAC/G,oFAAoF;YACpF,0GAA0G;YAC1G,gIAAgI;YAChI,0GAA0G;QAC3G,aAAa,EACZ,gGAAgG;YAChG,6FAA6F;QAC9F,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;YACvB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE;gBACzF,WAAW,EACV,qHAAqH;aACtH,CAAC;YACF,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;gBAC/B,WAAW,EACV,sDAAsD;oBACtD,4CAA4C;oBAC5C,+FAA+F;oBAC/F,4BAA4B;aAC7B,CAAC;SACF,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;YACrD,MAAM,IAAI,GAAa,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YACxD,IAAI,CAAC;gBACJ,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;gBAC7E,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,GAA2B,CAAC;gBACtC,OAAO,SAAS,CAAC,6BAA6B,CAAC,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;YAC/E,CAAC;QACF,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,EAAE;AACF,6EAA6E;AAC7E,gFAAgF;AAChF,8EAA8E;AAC9E,8EAA8E;AAC9E,2EAA2E;AAC3E,iFAAiF;AACjF,EAAE;AACF,uEAAuE;AACvE,4EAA4E;AAC5E,+EAA+E;AAC/E,iEAAiE;AACjE,EAAE;AACF,+BAA+B;AAC/B,MAAM;AACN,oGAAoG;AACpG,mFAAmF;AACnF,uEAAuE;AACvE,4DAA4D;AAC5D,MAAM;AACN,EAAE;AACF,qDAAqD;AACrD,2EAA2E;AAC3E,iFAAiF;AACjF,uDAAuD;AACvD,iCAAiC;AACjC,SAAS,wBAAwB,CAAC,EAAgB,EAAE,OAAe,EAAE,WAAmB;IACvF,EAAE,CAAC,YAAY,CAAC;QACf,IAAI,EAAE,oBAAoB;QAC1B,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EACV,4FAA4F;YAC5F,gGAAgG;YAChG,8FAA8F;YAC9F,oGAAoG;YACpG,qGAAqG;YACrG,sGAAsG;QACvG,aAAa,EACZ,oFAAoF;YACpF,oEAAoE;QACrE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;YACvB,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;gBACxC,WAAW,EACV,wEAAwE;oBACxE,+EAA+E;oBAC/E,oFAAoF;oBACpF,yCAAyC;aAC1C,CAAC;SACF,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM;YACxC,KAAK,MAAM,CAAC;YACZ,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;YACnE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClC,OAAO,SAAS,CAAC,mEAAmE,YAAY,EAAE,CAAC,CAAC;YACrG,CAAC;YAED,MAAM,MAAM,GAKR,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;YAEhE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YACzD,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;gBAChD,MAAM,CAAC,GAAG,SAAS,CAClB,MAAM,EACN,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,EACpC,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CACtD,CAAC;gBACF,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;oBAClB,KAAK,CAAC;wBACL,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;wBACnC,MAAM;oBACP,KAAK,CAAC;wBACL,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;wBAClC,MAAM;oBACP,KAAK,CAAC;wBACL,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;wBACnC,MAAM;oBACP,KAAK,CAAC;wBACL,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;wBACjC,MAAM;oBACP;wBACC,2EAA2E;wBAC3E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACnC,CAAC;YACF,CAAC;YAED,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC;KACD,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -231,29 +231,35 @@ export function registerForgeUpdateCommand(pi, opts) {
|
|
|
231
231
|
`Check your network and retry, or upgrade manually: npm i -g ${PKG_NAME}@latest`, "error");
|
|
232
232
|
return;
|
|
233
233
|
}
|
|
234
|
+
// CLI npm-package upgrade and project↔bundle migration are orthogonal:
|
|
235
|
+
// the bundle can drift even when the CLI is already at npm's latest
|
|
236
|
+
// (locally-built CLI ahead of npm, fresh machine, cleared drift cache).
|
|
237
|
+
// Run each gate independently — both fall through to the migration
|
|
238
|
+
// block, only confirm-decline / npm-failure short-circuit. (#32 follow-up)
|
|
234
239
|
const current = opts.currentCliVersion;
|
|
235
240
|
if (!isUpgrade(current, release.version)) {
|
|
236
241
|
ctx.ui.notify(`forge:update — already at the latest version (${current}; latest published: ${release.version}).`, "info");
|
|
237
|
-
return;
|
|
238
|
-
}
|
|
239
|
-
// 3. Show changelog + confirm (AC#3)
|
|
240
|
-
const summary = composeChangelogSummary(current, release.version, release.body);
|
|
241
|
-
const proceed = await ctx.ui.confirm(`Upgrade forgecli ${current} → ${release.version}?`, summary);
|
|
242
|
-
if (!proceed) {
|
|
243
|
-
ctx.ui.notify("forge:update — cancelled.", "info");
|
|
244
|
-
return;
|
|
245
242
|
}
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
243
|
+
else {
|
|
244
|
+
// 3. Show changelog + confirm (AC#3)
|
|
245
|
+
const summary = composeChangelogSummary(current, release.version, release.body);
|
|
246
|
+
const proceed = await ctx.ui.confirm(`Upgrade forgecli ${current} → ${release.version}?`, summary);
|
|
247
|
+
if (!proceed) {
|
|
248
|
+
ctx.ui.notify("forge:update — cancelled.", "info");
|
|
249
|
+
return;
|
|
250
|
+
}
|
|
251
|
+
// 4. Spawn npm i -g (AC#4 — execFile, no shell)
|
|
252
|
+
ctx.ui.setStatus("forge:update", `Upgrading to ${release.version}…`);
|
|
253
|
+
const result = await upgrade(`${PKG_NAME}@${release.version}`);
|
|
254
|
+
ctx.ui.setStatus("forge:update", undefined);
|
|
255
|
+
if (!result.ok) {
|
|
256
|
+
ctx.ui.notify(`forge:update — npm i -g failed: ${truncate(result.stderr, 400)}. ` +
|
|
257
|
+
"Check the error above; you may need elevated permissions to install globally.", "error");
|
|
258
|
+
return;
|
|
259
|
+
}
|
|
260
|
+
ctx.ui.notify(`forge:update — installed ${PKG_NAME}@${release.version}. ` +
|
|
261
|
+
"Restart your forge session for the new version to take effect.", "info");
|
|
254
262
|
}
|
|
255
|
-
ctx.ui.notify(`forge:update — installed ${PKG_NAME}@${release.version}. ` +
|
|
256
|
-
"Restart your forge session for the new version to take effect.", "info");
|
|
257
263
|
// 5. Migration prompt — offer to apply project migrations (§2A, §2D)
|
|
258
264
|
// Only runs when the caller has opted into migration support by providing
|
|
259
265
|
// migrationRunner or currentBundledForgeVersion. Without those the command
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forge-update-command.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/forge-update-command.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"forge-update-command.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/forge-update-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { type Static, Type } from "typebox";
|
|
2
|
+
/**
|
|
3
|
+
* One retrieved-and-classified skill for the closed task. `retrieved`
|
|
4
|
+
* comes from T08 (skill-retriever); `used` from T09 (skill-usage-tracker).
|
|
5
|
+
* `retrievalScore` is the T08 score (informational — surfaces in evidence).
|
|
6
|
+
*/
|
|
7
|
+
export declare const RetrievedSkillSignalSchema: Type.TObject<{
|
|
8
|
+
skillId: Type.TString;
|
|
9
|
+
retrieved: Type.TBoolean;
|
|
10
|
+
used: Type.TBoolean;
|
|
11
|
+
retrievalScore: Type.TNumber;
|
|
12
|
+
}>;
|
|
13
|
+
export type RetrievedSkillSignal = Static<typeof RetrievedSkillSignalSchema>;
|
|
14
|
+
/** Per-skill historical signal — supplied by caller from sprint history. */
|
|
15
|
+
export declare const SkillHistorySchema: Type.TObject<{
|
|
16
|
+
consecutiveUnusedSprints: Type.TInteger;
|
|
17
|
+
}>;
|
|
18
|
+
export type SkillHistory = Static<typeof SkillHistorySchema>;
|
|
19
|
+
/** One pairwise retrieval-overlap measurement for the closed task. */
|
|
20
|
+
export declare const PairwiseOverlapSchema: Type.TObject<{
|
|
21
|
+
skillA: Type.TString;
|
|
22
|
+
skillB: Type.TString;
|
|
23
|
+
overlap: Type.TNumber;
|
|
24
|
+
}>;
|
|
25
|
+
export type PairwiseOverlap = Static<typeof PairwiseOverlapSchema>;
|
|
26
|
+
export declare const FrictionInputsSchema: Type.TObject<{
|
|
27
|
+
retrievedSkills: Type.TArray<Type.TObject<{
|
|
28
|
+
skillId: Type.TString;
|
|
29
|
+
retrieved: Type.TBoolean;
|
|
30
|
+
used: Type.TBoolean;
|
|
31
|
+
retrievalScore: Type.TNumber;
|
|
32
|
+
}>>;
|
|
33
|
+
taskSuccess: Type.TBoolean;
|
|
34
|
+
toolErrorCount: Type.TInteger;
|
|
35
|
+
history: Type.TRecord<"^.*$", Type.TObject<{
|
|
36
|
+
consecutiveUnusedSprints: Type.TInteger;
|
|
37
|
+
}>>;
|
|
38
|
+
pairwiseRetrievalOverlap: Type.TOptional<Type.TArray<Type.TObject<{
|
|
39
|
+
skillA: Type.TString;
|
|
40
|
+
skillB: Type.TString;
|
|
41
|
+
overlap: Type.TNumber;
|
|
42
|
+
}>>>;
|
|
43
|
+
}>;
|
|
44
|
+
export type FrictionInputs = Static<typeof FrictionInputsSchema>;
|
|
45
|
+
export declare const FRICTION_SUBKINDS: readonly ["skill_unused", "skill_failed", "skill_missing", "skill_stale", "skill_redundant"];
|
|
46
|
+
export type FrictionSubkind = (typeof FRICTION_SUBKINDS)[number];
|
|
47
|
+
/**
|
|
48
|
+
* One classifier output. `skillId` is `undefined` for `skill_missing`
|
|
49
|
+
* (no skill to attribute) but always set for the other four subkinds.
|
|
50
|
+
*/
|
|
51
|
+
export interface FrictionSignal {
|
|
52
|
+
subkind: FrictionSubkind;
|
|
53
|
+
skillId: string | undefined;
|
|
54
|
+
evidence: Record<string, unknown>;
|
|
55
|
+
}
|
|
56
|
+
/** Runtime attribution supplied by the orchestrator (IL10). */
|
|
57
|
+
export declare const FrictionEmitRuntimeSchema: Type.TObject<{
|
|
58
|
+
storeCli: Type.TString;
|
|
59
|
+
cwd: Type.TString;
|
|
60
|
+
sprintId: Type.TString;
|
|
61
|
+
taskId: Type.TString;
|
|
62
|
+
role: Type.TString;
|
|
63
|
+
action: Type.TString;
|
|
64
|
+
workflow: Type.TString;
|
|
65
|
+
persona: Type.TString;
|
|
66
|
+
phase: Type.TOptional<Type.TString>;
|
|
67
|
+
iteration: Type.TOptional<Type.TInteger>;
|
|
68
|
+
startTimestamp: Type.TString;
|
|
69
|
+
endTimestamp: Type.TString;
|
|
70
|
+
durationMinutes: Type.TNumber;
|
|
71
|
+
model: Type.TString;
|
|
72
|
+
provider: Type.TString;
|
|
73
|
+
}>;
|
|
74
|
+
export type FrictionEmitRuntime = Static<typeof FrictionEmitRuntimeSchema>;
|
|
75
|
+
export interface FrictionEmitResult {
|
|
76
|
+
emitted: number;
|
|
77
|
+
failed: number;
|
|
78
|
+
stderrs: string[];
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Apply the five gating rules and return one signal per matching emit.
|
|
82
|
+
* Pure: no IO, no subprocess. Caller decides whether/when to emit.
|
|
83
|
+
*
|
|
84
|
+
* The `skill_unused` and `skill_failed` gates are mutually exclusive by
|
|
85
|
+
* design — on a failed task we emit `skill_failed` (when used) rather
|
|
86
|
+
* than `skill_unused`, so the two signals never double-count the same
|
|
87
|
+
* outcome.
|
|
88
|
+
*/
|
|
89
|
+
export declare function computeFrictionSignals(inputs: FrictionInputs): FrictionSignal[];
|
|
90
|
+
/**
|
|
91
|
+
* Emit one `friction` event per signal via
|
|
92
|
+
* `node <storeCli> emit <sprintId> <json>`. Runtime attribution
|
|
93
|
+
* (model/provider/timestamps/eventId) is supplied by the caller — never
|
|
94
|
+
* fabricated. Failures surface in the result counter; nothing is thrown
|
|
95
|
+
* for subprocess failure.
|
|
96
|
+
*/
|
|
97
|
+
export declare function emitFrictionEvents(signals: readonly FrictionSignal[], runtime: FrictionEmitRuntime): FrictionEmitResult;
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
// Auto-emit friction events with 5 skill subkinds — FORGE-S24-T11.
|
|
2
|
+
//
|
|
3
|
+
// At task close, the orchestrator hands a snapshot of {retrieved skills,
|
|
4
|
+
// usage verdicts (T09), task outcome, observed tool errors, per-skill
|
|
5
|
+
// historical "unused" counts, pairwise retrieval overlaps} to this module.
|
|
6
|
+
// `computeFrictionSignals` is a pure classifier; `emitFrictionEvents` writes
|
|
7
|
+
// one `friction` event per signal via `node <storeCli> emit <sprintId> …`.
|
|
8
|
+
//
|
|
9
|
+
// Gating logic (acceptance criteria FORGE-S24-T11):
|
|
10
|
+
// - skill_unused : retrieved && !used && task.success
|
|
11
|
+
// - skill_failed : retrieved && used && !task.success
|
|
12
|
+
// - skill_missing : !retrieved && task.success && tool_errors ≥ 2
|
|
13
|
+
// - skill_stale : retrieved && !used across 3 consecutive sprints
|
|
14
|
+
// - skill_redundant : two skills' retrieval overlap > 0.8 in this task
|
|
15
|
+
//
|
|
16
|
+
// Each event carries `{type: "friction", workflow, persona, issue, subkind,
|
|
17
|
+
// skillId, evidence, …runtime attribution}`. The required-trio
|
|
18
|
+
// `{workflow, persona, issue}` is what the event schema (plugin v0.45.x)
|
|
19
|
+
// enforces for `type === "friction"`.
|
|
20
|
+
//
|
|
21
|
+
// Telemetry-actor split (IL10):
|
|
22
|
+
// - Orchestrator owns emission. Subagents never call this module directly.
|
|
23
|
+
// - Runtime attribution (model/provider/timestamps/durationMinutes) is
|
|
24
|
+
// SUPPLIED by the orchestrator — never fabricated here.
|
|
25
|
+
//
|
|
26
|
+
// Iron Laws (forge-cli-engineer):
|
|
27
|
+
// IL1 — code only under forge-cli/src/extensions/forgecli/
|
|
28
|
+
// IL2 — TypeScript + TypeBox. Runtime inputs validated via Value.Parse.
|
|
29
|
+
// IL6 — argv-array spawn. No shell-string interpolation.
|
|
30
|
+
// IL7 — failures surface in the returned counter and stderrs[]; nothing
|
|
31
|
+
// is silently swallowed.
|
|
32
|
+
// IL10 — orchestrator-side emission only; subagent never invokes.
|
|
33
|
+
//
|
|
34
|
+
// Scope boundary: this module classifies and emits. It does NOT crawl
|
|
35
|
+
// the trajectory, decide what counts as a "tool error", or compute
|
|
36
|
+
// retrieval overlaps. The caller (orchestrator handler in run-task.ts /
|
|
37
|
+
// fix-bug.ts, gated by FORGE-S24-T12 flag) does that and passes the
|
|
38
|
+
// shaped inputs in.
|
|
39
|
+
import { spawnSync } from "node:child_process";
|
|
40
|
+
import { isSkillCurationEnabled } from "./skill-curation-flag.js";
|
|
41
|
+
import { Type } from "typebox";
|
|
42
|
+
import { Value } from "typebox/value";
|
|
43
|
+
// ── Public schemas ──────────────────────────────────────────────────────────
|
|
44
|
+
/**
|
|
45
|
+
* One retrieved-and-classified skill for the closed task. `retrieved`
|
|
46
|
+
* comes from T08 (skill-retriever); `used` from T09 (skill-usage-tracker).
|
|
47
|
+
* `retrievalScore` is the T08 score (informational — surfaces in evidence).
|
|
48
|
+
*/
|
|
49
|
+
export const RetrievedSkillSignalSchema = Type.Object({
|
|
50
|
+
skillId: Type.String({ minLength: 1 }),
|
|
51
|
+
retrieved: Type.Boolean(),
|
|
52
|
+
used: Type.Boolean(),
|
|
53
|
+
retrievalScore: Type.Number({ minimum: 0, maximum: 1 }),
|
|
54
|
+
});
|
|
55
|
+
/** Per-skill historical signal — supplied by caller from sprint history. */
|
|
56
|
+
export const SkillHistorySchema = Type.Object({
|
|
57
|
+
consecutiveUnusedSprints: Type.Integer({ minimum: 0 }),
|
|
58
|
+
});
|
|
59
|
+
/** One pairwise retrieval-overlap measurement for the closed task. */
|
|
60
|
+
export const PairwiseOverlapSchema = Type.Object({
|
|
61
|
+
skillA: Type.String({ minLength: 1 }),
|
|
62
|
+
skillB: Type.String({ minLength: 1 }),
|
|
63
|
+
overlap: Type.Number({ minimum: 0, maximum: 1 }),
|
|
64
|
+
});
|
|
65
|
+
export const FrictionInputsSchema = Type.Object({
|
|
66
|
+
retrievedSkills: Type.Array(RetrievedSkillSignalSchema),
|
|
67
|
+
taskSuccess: Type.Boolean(),
|
|
68
|
+
toolErrorCount: Type.Integer({ minimum: 0 }),
|
|
69
|
+
history: Type.Record(Type.String(), SkillHistorySchema),
|
|
70
|
+
pairwiseRetrievalOverlap: Type.Optional(Type.Array(PairwiseOverlapSchema)),
|
|
71
|
+
});
|
|
72
|
+
export const FRICTION_SUBKINDS = [
|
|
73
|
+
"skill_unused",
|
|
74
|
+
"skill_failed",
|
|
75
|
+
"skill_missing",
|
|
76
|
+
"skill_stale",
|
|
77
|
+
"skill_redundant",
|
|
78
|
+
];
|
|
79
|
+
/** Runtime attribution supplied by the orchestrator (IL10). */
|
|
80
|
+
export const FrictionEmitRuntimeSchema = Type.Object({
|
|
81
|
+
storeCli: Type.String({ minLength: 1 }),
|
|
82
|
+
cwd: Type.String({ minLength: 1 }),
|
|
83
|
+
sprintId: Type.String({ minLength: 1 }),
|
|
84
|
+
taskId: Type.String({ minLength: 1 }),
|
|
85
|
+
role: Type.String({ minLength: 1 }),
|
|
86
|
+
action: Type.String({ minLength: 1 }),
|
|
87
|
+
workflow: Type.String({ minLength: 1 }),
|
|
88
|
+
persona: Type.String({ minLength: 1 }),
|
|
89
|
+
phase: Type.Optional(Type.String()),
|
|
90
|
+
iteration: Type.Optional(Type.Integer({ minimum: 1 })),
|
|
91
|
+
startTimestamp: Type.String({ format: "date-time" }),
|
|
92
|
+
endTimestamp: Type.String({ format: "date-time" }),
|
|
93
|
+
durationMinutes: Type.Number({ minimum: 0 }),
|
|
94
|
+
model: Type.String({ minLength: 1 }),
|
|
95
|
+
provider: Type.String({ minLength: 1 }),
|
|
96
|
+
});
|
|
97
|
+
// ── Classification ──────────────────────────────────────────────────────────
|
|
98
|
+
const STALE_THRESHOLD_SPRINTS = 3;
|
|
99
|
+
const REDUNDANCY_OVERLAP_FLOOR = 0.8;
|
|
100
|
+
const MISSING_TOOL_ERROR_FLOOR = 2;
|
|
101
|
+
/**
|
|
102
|
+
* Apply the five gating rules and return one signal per matching emit.
|
|
103
|
+
* Pure: no IO, no subprocess. Caller decides whether/when to emit.
|
|
104
|
+
*
|
|
105
|
+
* The `skill_unused` and `skill_failed` gates are mutually exclusive by
|
|
106
|
+
* design — on a failed task we emit `skill_failed` (when used) rather
|
|
107
|
+
* than `skill_unused`, so the two signals never double-count the same
|
|
108
|
+
* outcome.
|
|
109
|
+
*/
|
|
110
|
+
export function computeFrictionSignals(inputs) {
|
|
111
|
+
Value.Parse(FrictionInputsSchema, inputs);
|
|
112
|
+
const signals = [];
|
|
113
|
+
for (const s of inputs.retrievedSkills) {
|
|
114
|
+
// skill_unused — retrieved, not used, task succeeded.
|
|
115
|
+
if (s.retrieved && !s.used && inputs.taskSuccess) {
|
|
116
|
+
signals.push({
|
|
117
|
+
subkind: "skill_unused",
|
|
118
|
+
skillId: s.skillId,
|
|
119
|
+
evidence: {
|
|
120
|
+
retrievalScore: s.retrievalScore,
|
|
121
|
+
taskSuccess: true,
|
|
122
|
+
},
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
// skill_failed — retrieved, used, task failed.
|
|
126
|
+
if (s.retrieved && s.used && !inputs.taskSuccess) {
|
|
127
|
+
signals.push({
|
|
128
|
+
subkind: "skill_failed",
|
|
129
|
+
skillId: s.skillId,
|
|
130
|
+
evidence: {
|
|
131
|
+
retrievalScore: s.retrievalScore,
|
|
132
|
+
toolErrorCount: inputs.toolErrorCount,
|
|
133
|
+
},
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
// skill_stale — retrieved, not used, and the same {retrieved && !used}
|
|
137
|
+
// pattern has held across STALE_THRESHOLD_SPRINTS consecutive sprints.
|
|
138
|
+
if (s.retrieved && !s.used) {
|
|
139
|
+
const hist = inputs.history[s.skillId];
|
|
140
|
+
if (hist && hist.consecutiveUnusedSprints >= STALE_THRESHOLD_SPRINTS) {
|
|
141
|
+
signals.push({
|
|
142
|
+
subkind: "skill_stale",
|
|
143
|
+
skillId: s.skillId,
|
|
144
|
+
evidence: {
|
|
145
|
+
consecutiveUnusedSprints: hist.consecutiveUnusedSprints,
|
|
146
|
+
},
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
// skill_missing — no skill retrieved AND task succeeded AND ≥2 tool errors.
|
|
152
|
+
// Emitted once per task (no skillId — there's nothing to attribute).
|
|
153
|
+
if (inputs.retrievedSkills.length === 0 &&
|
|
154
|
+
inputs.taskSuccess &&
|
|
155
|
+
inputs.toolErrorCount >= MISSING_TOOL_ERROR_FLOOR) {
|
|
156
|
+
signals.push({
|
|
157
|
+
subkind: "skill_missing",
|
|
158
|
+
skillId: undefined,
|
|
159
|
+
evidence: {
|
|
160
|
+
toolErrorCount: inputs.toolErrorCount,
|
|
161
|
+
},
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
// skill_redundant — pairwise retrieval overlap strictly > 0.8. Emit one
|
|
165
|
+
// signal per pair, attributed to the FIRST skill in the pair (skillA).
|
|
166
|
+
for (const p of inputs.pairwiseRetrievalOverlap ?? []) {
|
|
167
|
+
if (p.overlap > REDUNDANCY_OVERLAP_FLOOR) {
|
|
168
|
+
signals.push({
|
|
169
|
+
subkind: "skill_redundant",
|
|
170
|
+
skillId: p.skillA,
|
|
171
|
+
evidence: {
|
|
172
|
+
pairedWith: p.skillB,
|
|
173
|
+
overlap: p.overlap,
|
|
174
|
+
},
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
return signals;
|
|
179
|
+
}
|
|
180
|
+
// ── Emission ────────────────────────────────────────────────────────────────
|
|
181
|
+
/** ISO-compact timestamp segment for eventId composition. */
|
|
182
|
+
function isoCompact(iso) {
|
|
183
|
+
return iso.replace(/[-:.]/g, "").replace(/Z$/, "Z");
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Emit one `friction` event per signal via
|
|
187
|
+
* `node <storeCli> emit <sprintId> <json>`. Runtime attribution
|
|
188
|
+
* (model/provider/timestamps/eventId) is supplied by the caller — never
|
|
189
|
+
* fabricated. Failures surface in the result counter; nothing is thrown
|
|
190
|
+
* for subprocess failure.
|
|
191
|
+
*/
|
|
192
|
+
export function emitFrictionEvents(signals, runtime) {
|
|
193
|
+
// FORGE-S24-T12 — gated rollout. Default off ⇒ no friction events
|
|
194
|
+
// for the five SKILL-CURATION subkinds (skill_unused, skill_failed,
|
|
195
|
+
// skill_missing, skill_stale, skill_redundant). Note: this gate
|
|
196
|
+
// applies to the auto-emit module landed in FORGE-S24-T11. The
|
|
197
|
+
// existing orchestrator friction channel (non-skill subkinds) goes
|
|
198
|
+
// through `forge/tools/friction-emit.cjs` and is not gated here.
|
|
199
|
+
if (!isSkillCurationEnabled(runtime.cwd)) {
|
|
200
|
+
return { emitted: 0, failed: 0, stderrs: [] };
|
|
201
|
+
}
|
|
202
|
+
Value.Parse(FrictionEmitRuntimeSchema, runtime);
|
|
203
|
+
let emitted = 0;
|
|
204
|
+
let failed = 0;
|
|
205
|
+
const stderrs = [];
|
|
206
|
+
for (let i = 0; i < signals.length; i++) {
|
|
207
|
+
const sig = signals[i];
|
|
208
|
+
const idTail = sig.skillId ?? "none";
|
|
209
|
+
const eventId = `${isoCompact(runtime.startTimestamp)}_${runtime.taskId}_friction_${sig.subkind}_${i}_${idTail}`;
|
|
210
|
+
const event = {
|
|
211
|
+
eventId,
|
|
212
|
+
sprintId: runtime.sprintId,
|
|
213
|
+
taskId: runtime.taskId,
|
|
214
|
+
role: runtime.role,
|
|
215
|
+
action: runtime.action,
|
|
216
|
+
startTimestamp: runtime.startTimestamp,
|
|
217
|
+
endTimestamp: runtime.endTimestamp,
|
|
218
|
+
durationMinutes: runtime.durationMinutes,
|
|
219
|
+
model: runtime.model,
|
|
220
|
+
provider: runtime.provider,
|
|
221
|
+
type: "friction",
|
|
222
|
+
workflow: runtime.workflow,
|
|
223
|
+
persona: runtime.persona,
|
|
224
|
+
issue: sig.subkind,
|
|
225
|
+
subkind: sig.subkind,
|
|
226
|
+
evidence: sig.evidence,
|
|
227
|
+
};
|
|
228
|
+
if (sig.skillId !== undefined)
|
|
229
|
+
event.skillId = sig.skillId;
|
|
230
|
+
if (runtime.phase !== undefined)
|
|
231
|
+
event.phase = runtime.phase;
|
|
232
|
+
if (runtime.iteration !== undefined)
|
|
233
|
+
event.iteration = runtime.iteration;
|
|
234
|
+
const result = spawnSync("node", [runtime.storeCli, "emit", runtime.sprintId, JSON.stringify(event)], { cwd: runtime.cwd, encoding: "utf8" });
|
|
235
|
+
if (result.status === 0) {
|
|
236
|
+
emitted++;
|
|
237
|
+
}
|
|
238
|
+
else {
|
|
239
|
+
failed++;
|
|
240
|
+
const stderr = typeof result.stderr === "string" ? result.stderr : "";
|
|
241
|
+
stderrs.push(stderr);
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
return { emitted, failed, stderrs };
|
|
245
|
+
}
|
|
246
|
+
//# sourceMappingURL=friction-emit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"friction-emit.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/friction-emit.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,3 +37,13 @@ export declare function checkModifiedGeneratedFiles(cwd: string, bundleRoot: str
|
|
|
37
37
|
* Silently returns [] if forgeRoot is not provided or integrity.json is missing.
|
|
38
38
|
*/
|
|
39
39
|
export declare function checkPluginIntegrity(forgeRoot: string): HealthGap[];
|
|
40
|
+
/**
|
|
41
|
+
* Run check-structure.cjs to verify expected generated files exist.
|
|
42
|
+
* Returns one HealthGap per missing/extra file, or silently [] if absent.
|
|
43
|
+
*/
|
|
44
|
+
export declare function checkStructure(cwd: string, bundleRoot: string): HealthGap[];
|
|
45
|
+
/**
|
|
46
|
+
* Run verify-integrity.cjs to detect plugin file tampering.
|
|
47
|
+
* Returns one HealthGap per modified file, or silently [] if absent.
|
|
48
|
+
*/
|
|
49
|
+
export declare function checkVerifyIntegrity(forgeRoot: string): HealthGap[];
|