greprag 5.61.1 → 5.62.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/dist/commands/mechanic-manifest.d.ts +12 -0
- package/dist/commands/mechanic-manifest.js +62 -0
- package/dist/commands/mechanic-manifest.js.map +1 -1
- package/dist/commands/mechanic-spawn.js +10 -2
- package/dist/commands/mechanic-spawn.js.map +1 -1
- package/dist/commands/mechanic.js +29 -1
- package/dist/commands/mechanic.js.map +1 -1
- package/dist/commands/opencode-chip-mission.js +1 -0
- package/dist/commands/opencode-chip-mission.js.map +1 -1
- package/dist/commands/state-trigger.d.ts +17 -0
- package/dist/commands/state-trigger.js +152 -16
- package/dist/commands/state-trigger.js.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/opencode-plugin-png.d.ts +151 -0
- package/dist/opencode-plugin-png.js +275 -0
- package/dist/opencode-plugin-png.js.map +1 -0
- package/dist/opencode-plugin.bundle.js +633 -9
- package/dist/opencode-plugin.js +62 -1
- package/dist/opencode-plugin.js.map +1 -1
- package/package.json +1 -1
- package/skill/templates/chip-spawn.md +8 -0
|
@@ -9,8 +9,20 @@ export interface RepairManifest {
|
|
|
9
9
|
expectedEffect?: string;
|
|
10
10
|
regressionRisk?: string;
|
|
11
11
|
evalWindow?: string;
|
|
12
|
+
verification?: {
|
|
13
|
+
testRef: string;
|
|
14
|
+
command: string;
|
|
15
|
+
status: 'declared' | 'attested';
|
|
16
|
+
commit?: string;
|
|
17
|
+
runAt?: string;
|
|
18
|
+
attestedBy?: 'operator';
|
|
19
|
+
};
|
|
12
20
|
}
|
|
13
21
|
export declare function buildRepairManifest(args: string[], trigger: Record<string, unknown>): RepairManifest | {
|
|
14
22
|
error: string;
|
|
15
23
|
};
|
|
24
|
+
export declare function repairVerificationState(manifest: unknown): 'missing' | 'declared' | 'attested';
|
|
25
|
+
/** Status-safe summary: attested means an operator recorded an external run;
|
|
26
|
+
* GrepRAG intentionally does not execute or claim to have executed it. */
|
|
27
|
+
export declare function renderRepairVerificationSummary(manifest: unknown): string;
|
|
16
28
|
export declare function renderRepairManifestLines(manifest: unknown): string[];
|
|
@@ -3,8 +3,11 @@
|
|
|
3
3
|
* Kept out of mechanic.ts so the command stays a thin control plane. */
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.buildRepairManifest = buildRepairManifest;
|
|
6
|
+
exports.repairVerificationState = repairVerificationState;
|
|
7
|
+
exports.renderRepairVerificationSummary = renderRepairVerificationSummary;
|
|
6
8
|
exports.renderRepairManifestLines = renderRepairManifestLines;
|
|
7
9
|
const COMPONENTS = ['skill', 'hook', 'repair-row', 'memory', 'tool', 'doc', 'subagent'];
|
|
10
|
+
const VERIFICATION_COMPONENTS = ['hook', 'repair-row', 'tool', 'subagent'];
|
|
8
11
|
function getFlag(args, flag) {
|
|
9
12
|
const idx = args.indexOf(flag);
|
|
10
13
|
if (idx === -1 || idx + 1 >= args.length)
|
|
@@ -40,6 +43,36 @@ function buildRepairManifest(args, trigger) {
|
|
|
40
43
|
const extraEvidence = getFlag(args, '--evidence');
|
|
41
44
|
if (extraEvidence)
|
|
42
45
|
evidence.push(extraEvidence);
|
|
46
|
+
const status = getFlag(args, '--status') || 'shadow';
|
|
47
|
+
const testRef = getFlag(args, '--test-ref');
|
|
48
|
+
const command = getFlag(args, '--verify-command');
|
|
49
|
+
const verificationStatus = getFlag(args, '--verification-status') || 'declared';
|
|
50
|
+
const needsVerification = VERIFICATION_COMPONENTS.includes(component);
|
|
51
|
+
if (needsVerification && (!testRef || !command)) {
|
|
52
|
+
return { error: '--test-ref and --verify-command are required for code/mechanism repairs' };
|
|
53
|
+
}
|
|
54
|
+
if (verificationStatus !== 'declared' && verificationStatus !== 'attested') {
|
|
55
|
+
return { error: '--verification-status must be declared|attested' };
|
|
56
|
+
}
|
|
57
|
+
if (needsVerification && (status === 'active' || status === 'probation') &&
|
|
58
|
+
verificationStatus !== 'attested') {
|
|
59
|
+
return { error: 'active code/mechanism repairs require --verification-status attested' };
|
|
60
|
+
}
|
|
61
|
+
if (verificationStatus === 'attested' && (!testRef || !command)) {
|
|
62
|
+
return { error: 'attested verification requires --test-ref and --verify-command' };
|
|
63
|
+
}
|
|
64
|
+
if (verificationStatus === 'attested' &&
|
|
65
|
+
(!getFlag(args, '--verified-commit') || !getFlag(args, '--verified-at'))) {
|
|
66
|
+
return { error: 'attested verification requires --verified-commit and --verified-at' };
|
|
67
|
+
}
|
|
68
|
+
const verification = testRef && command ? {
|
|
69
|
+
testRef,
|
|
70
|
+
command,
|
|
71
|
+
status: verificationStatus,
|
|
72
|
+
...(getFlag(args, '--verified-commit') ? { commit: getFlag(args, '--verified-commit') } : {}),
|
|
73
|
+
...(getFlag(args, '--verified-at') ? { runAt: getFlag(args, '--verified-at') } : {}),
|
|
74
|
+
...(verificationStatus === 'attested' ? { attestedBy: 'operator' } : {}),
|
|
75
|
+
} : undefined;
|
|
43
76
|
return {
|
|
44
77
|
component: component,
|
|
45
78
|
evidence,
|
|
@@ -52,8 +85,29 @@ function buildRepairManifest(args, trigger) {
|
|
|
52
85
|
'over-fire, stale guidance, or a narrower future case needing a different repair',
|
|
53
86
|
evalWindow: getFlag(args, '--eval-window') ||
|
|
54
87
|
'3 fires or 7 days, then monitor verdict via fire/re-fire evidence',
|
|
88
|
+
...(verification ? { verification } : {}),
|
|
55
89
|
};
|
|
56
90
|
}
|
|
91
|
+
function repairVerificationState(manifest) {
|
|
92
|
+
if (!manifest || typeof manifest !== 'object' || Array.isArray(manifest))
|
|
93
|
+
return 'missing';
|
|
94
|
+
const verification = manifest.verification;
|
|
95
|
+
if (!verification)
|
|
96
|
+
return 'missing';
|
|
97
|
+
return verification.status === 'attested' ? 'attested' : 'declared';
|
|
98
|
+
}
|
|
99
|
+
/** Status-safe summary: attested means an operator recorded an external run;
|
|
100
|
+
* GrepRAG intentionally does not execute or claim to have executed it. */
|
|
101
|
+
function renderRepairVerificationSummary(manifest) {
|
|
102
|
+
const state = repairVerificationState(manifest);
|
|
103
|
+
if (state === 'missing')
|
|
104
|
+
return 'verification=missing';
|
|
105
|
+
const v = manifest.verification;
|
|
106
|
+
const suffix = state === 'attested'
|
|
107
|
+
? ' · operator-attested (not executed by GrepRAG)'
|
|
108
|
+
: '';
|
|
109
|
+
return `verification=${state} · test=${v.testRef}${suffix}`;
|
|
110
|
+
}
|
|
57
111
|
function renderRepairManifestLines(manifest) {
|
|
58
112
|
if (!manifest || typeof manifest !== 'object' || Array.isArray(manifest))
|
|
59
113
|
return [];
|
|
@@ -71,6 +125,14 @@ function renderRepairManifestLines(manifest) {
|
|
|
71
125
|
lines.push(` regressionRisk=${m.regressionRisk}`);
|
|
72
126
|
if (m.evalWindow)
|
|
73
127
|
lines.push(` evalWindow=${m.evalWindow}`);
|
|
128
|
+
lines.push(` ${renderRepairVerificationSummary(m)}`);
|
|
129
|
+
if (m.verification) {
|
|
130
|
+
lines.push(` verificationCommand=${m.verification.command}`);
|
|
131
|
+
if (m.verification.commit)
|
|
132
|
+
lines.push(` verificationCommit=${m.verification.commit}`);
|
|
133
|
+
if (m.verification.runAt)
|
|
134
|
+
lines.push(` verificationRunAt=${m.verification.runAt}`);
|
|
135
|
+
}
|
|
74
136
|
if (Array.isArray(m.evidence) && m.evidence.length > 0) {
|
|
75
137
|
lines.push(' evidence:');
|
|
76
138
|
for (const e of m.evidence.slice(0, 5))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mechanic-manifest.js","sourceRoot":"","sources":["../../src/commands/mechanic-manifest.ts"],"names":[],"mappings":";AAAA;yEACyE;;
|
|
1
|
+
{"version":3,"file":"mechanic-manifest.js","sourceRoot":"","sources":["../../src/commands/mechanic-manifest.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,10 +51,18 @@ function buildFixMission(friction, scope, parentSession) {
|
|
|
51
51
|
'- Score your CONFIDENCE 0–100 that the drafted repair is the durable root-cause fix (not a guard, not a workaround).',
|
|
52
52
|
'',
|
|
53
53
|
'**Phase 2 — the confidence gate**',
|
|
54
|
-
'- Confidence ≥90: implement autonomously. Own the repair, regression tests, focused verification, and the commit. Report DONE
|
|
55
|
-
'- Confidence <90: STOP before changing code. Report INVESTIGATED
|
|
54
|
+
'- Confidence ≥90: implement autonomously. Own the repair, regression tests, focused verification, and the commit — then LAND it (Phase 3). Report DONE with the confidence score and the merge commit.',
|
|
55
|
+
'- Confidence <90: STOP before changing code. Report INVESTIGATED: findings, the repair option(s) with trade-offs, your confidence and what would raise it. Leave your worktree + branch intact for co-design. The operator co-designs the repair; implement only after direction.',
|
|
56
56
|
'- Blocked either way: report BLOCKED with what you need.',
|
|
57
57
|
'',
|
|
58
|
+
'**Phase 3 — LAND IT (you own the merge; assume the parent is dead)**',
|
|
59
|
+
'A repair stranded on a chip branch is not a repair. The session that spawned you is usually gone by the time you finish — never wait for a parent to merge. After a ≥90 implementation passes verification:',
|
|
60
|
+
'- Confer with live peers first: `greprag inbox watchers`. Any session live in THIS repo gets a heads-up (`greprag send "…merging <branch>, touches <files>…" --to <handle>@greprag.com/<their-8hex>`) and a beat to object before you touch main.',
|
|
61
|
+
'- Merge your chip branch → main yourself; re-verify the build on merged main.',
|
|
62
|
+
'- Prune in the same breath: junction-guard, then `git worktree remove` YOUR worktree and `git branch -d` the merged branch. This landing duty supersedes any generic "never remove worktrees" chip rule — your own worktree only, only after the merge is on main.',
|
|
63
|
+
'- Routine deploys are yours too, where the project docs mark them routine. HARD STOP at sensitive landings: `git push`, releases, `npm publish`, migrations, anything approval-gated — report READY-TO-PUSH with the commit hash instead; the operator lands those.',
|
|
64
|
+
'- Reporting: DONE to the parent task is an FYI, not a handoff — the merge already happened. If the parent inbox is dead/unwatched, cold-open the operator (`greprag send … --to <handle>@greprag.com`) so the landing is on record.',
|
|
65
|
+
'',
|
|
58
66
|
'**Repair contract**',
|
|
59
67
|
'- Work as an ordinary unrestricted read/write session in the caller-provided isolated checkout.',
|
|
60
68
|
'- Every repair is ROOT-CAUSE: fix the pattern that makes the friction class possible. A workaround is debt signed, not solved.',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mechanic-spawn.js","sourceRoot":"","sources":["../../src/commands/mechanic-spawn.ts"],"names":[],"mappings":";;AAgCA,
|
|
1
|
+
{"version":3,"file":"mechanic-spawn.js","sourceRoot":"","sources":["../../src/commands/mechanic-spawn.ts"],"names":[],"mappings":"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"}
|
|
@@ -217,7 +217,9 @@ function statusLine(r) {
|
|
|
217
217
|
const warn = verdict === 'harmful' ? ' ⚠' : '';
|
|
218
218
|
const flag = readyToGraduate(rep) ? ' ⚑ ready to graduate' : '';
|
|
219
219
|
return ` [${r.nodeId}] ${rep.verb} · ${action} · fires=${rep.fireCount ?? 0}` +
|
|
220
|
-
` · harness=${rep.targetHarness || 'claude-code'} · verdict=${verdict}${warn}
|
|
220
|
+
` · harness=${rep.targetHarness || 'claude-code'} · verdict=${verdict}${warn}` +
|
|
221
|
+
` · ${(0, mechanic_manifest_1.renderRepairVerificationSummary)(rep.manifest)} · last=${last} · trust=${r.trust}` +
|
|
222
|
+
` · ${rep.cadence ?? '—'}${flag}`;
|
|
221
223
|
}
|
|
222
224
|
function renderStatus(rows, projectName) {
|
|
223
225
|
if (rows.length === 0) {
|
|
@@ -283,6 +285,27 @@ async function transitionCmd(args, mode) {
|
|
|
283
285
|
const r = await apiPost(`${cfg.apiUrl}/v1/fix/${row.id}/repair-status`, cfg.apiKey, { to, actor: 'operator' });
|
|
284
286
|
console.log(`[${nodeId}] ${row.repair.status} → ${r.status} (${row.repair.verb})`);
|
|
285
287
|
}
|
|
288
|
+
// ---------- attest — record external regression evidence -------------------
|
|
289
|
+
async function attestCmd(args) {
|
|
290
|
+
const cfg = getConfig();
|
|
291
|
+
if (!cfg.apiKey)
|
|
292
|
+
abortNotConfigured();
|
|
293
|
+
const nodeId = requireNodeId(args, 'Usage: greprag mechanic attest <nodeId> --test-ref <path#test> ' +
|
|
294
|
+
'--verify-command "<command>" --verified-commit <sha> --verified-at <ISO>');
|
|
295
|
+
const testRef = getFlag(args, '--test-ref');
|
|
296
|
+
const command = getFlag(args, '--verify-command');
|
|
297
|
+
const commit = getFlag(args, '--verified-commit');
|
|
298
|
+
const runAt = getFlag(args, '--verified-at');
|
|
299
|
+
if (!testRef || !command || !commit || !runAt) {
|
|
300
|
+
console.error('attest requires --test-ref, --verify-command, --verified-commit, and --verified-at');
|
|
301
|
+
process.exit(1);
|
|
302
|
+
}
|
|
303
|
+
const { projectId, projectName } = await resolveProject(args, cfg.apiUrl, cfg.apiKey);
|
|
304
|
+
const row = findRow(await fetchMatchset(cfg, projectId), nodeId);
|
|
305
|
+
await apiPost(`${cfg.apiUrl}/v1/fix/${row.id}/repair-verification`, cfg.apiKey, { testRef, command, commit, runAt });
|
|
306
|
+
console.log(`✅ attested [${nodeId}] in ${projectName}: verification=attested · test=${testRef}` +
|
|
307
|
+
' · operator-attested (command not executed by GrepRAG)');
|
|
308
|
+
}
|
|
286
309
|
// ---------- why — provenance ------------------------------------------------
|
|
287
310
|
/** One-line condition summary for `why` — a single clause renders as
|
|
288
311
|
* `field op value`; true/absent = "(always)"; all/any/not fall back to JSON. */
|
|
@@ -375,6 +398,8 @@ const INSTALL_USAGE = 'Usage: greprag mechanic install --node <8hex> --event <E>
|
|
|
375
398
|
' [--matcher <m>] [--condition <c>] [--condition-json <json>]\n' +
|
|
376
399
|
' [--cadence <c>] [--status <s>] [--harness claude-code|codex|opencode|all]\n' +
|
|
377
400
|
' [--component <c>] [--root-cause <t>] [--expected-effect <t>]\n' +
|
|
401
|
+
' [--test-ref <path#test>] [--verify-command <command>]\n' +
|
|
402
|
+
' [--verification-status declared|attested] [--verified-commit <sha>] [--verified-at <ISO>]\n' +
|
|
378
403
|
' [--scope <s>] [--text <t>] [--project <name>]\n' +
|
|
379
404
|
' --condition field:op:value (op: contains|regex|path_under|starts_with|gt|lt|…)\n' +
|
|
380
405
|
' or field=value (equals shorthand). --condition-json for all/any/not.\n' +
|
|
@@ -509,6 +534,8 @@ USAGE
|
|
|
509
534
|
[--harness codex|claude-code|opencode|all] Defaults to the current harness.
|
|
510
535
|
[--component skill|hook|memory|tool|doc] Optional manifest label; defaults from trigger.
|
|
511
536
|
[--root-cause <t>] [--expected-effect <t>] Optional manifest fields for the prediction.
|
|
537
|
+
greprag mechanic attest <nodeId> --test-ref <path#test> --verify-command "<command>"
|
|
538
|
+
Record operator-attested external regression evidence.
|
|
512
539
|
Thin client:
|
|
513
540
|
the server (validateRepairCreate) is the only gate.
|
|
514
541
|
greprag mechanic enable <nodeId> Ratify: shadow → active. Operator-gated;
|
|
@@ -562,6 +589,7 @@ async function runMechanic(args) {
|
|
|
562
589
|
return (0, mechanic_live_1.mechanicReplyCmd)(rest, cfg);
|
|
563
590
|
}
|
|
564
591
|
case 'install': return installCmd(rest);
|
|
592
|
+
case 'attest': return attestCmd(rest);
|
|
565
593
|
case 'enable': return transitionCmd(rest, 'enable');
|
|
566
594
|
case 'disable': return transitionCmd(rest, 'disable');
|
|
567
595
|
case 'why': return whyCmd(rest);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mechanic.js","sourceRoot":"","sources":["../../src/commands/mechanic.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;mDA0BmD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBnD,wCAGC;AA4ED,wCAMC;AA+ED,0CAMC;AAeD,oCAwBC;AAmGD,sCAaC;AAED,oCAKC;AAwCD,gDAcC;AAOD,4CA4CC;AAgFD,kCAkDC;AAjkBD,uCAAyB;AACzB,2CAA6B;AAC7B,uCAAyB;AACzB,sDAA+C;AAC/C,gDAAiD;AACjD,mDAAyF;AACzF,qDAAiD;AACjD,wCAA6F;AAC7F,2DAAqF;AAErF,MAAM,eAAe,GAAG,yBAAyB,CAAC;AAElD;0DAC0D;AAC1D,SAAgB,cAAc;IAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IACzE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;AACnE,CAAC;AAED,6EAA6E;AAE7E,SAAS,WAAW,CAAC,QAAgB;IACnC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS;YAClD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,KAAK,GAAG,CAAC;gBAAE,SAAS;YACxB,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;YAC3C,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC9C,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBACnD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7B,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAClD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,SAAS;IAChB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;IAClE,IAAI,OAAO;QAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IACjE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe;QAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;IAChF,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,eAAe;QACtD,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;KAC1C,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,MAAM,CAAI,GAAW,EAAE,MAAc;IAClD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,UAAU,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IACnF,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,GAAG,CAAC,MAAM,KAAK,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACvE,OAAO,GAAG,CAAC,IAAI,EAAgB,CAAC;AAClC,CAAC;AAED,KAAK,UAAU,OAAO,CAAI,GAAW,EAAE,MAAc,EAAE,IAA6B;IAClF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC3B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,eAAe,EAAE,UAAU,MAAM,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QACpF,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAqD,CAAC;IACpG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,IAAS,CAAC;AACnB,CAAC;AAuBD;wFACwF;AACxF,SAAgB,cAAc,CAAC,GAAiB;IAC9C,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC;IACpC,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC7C,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,UAAU,CAAC;IAC/C,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACjD,OAAO,UAAU,CAAC;AACpB,CAAC;AAgBD,8EAA8E;AAE9E,SAAS,OAAO,CAAC,IAAc,EAAE,IAAY;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC3D,OAAO,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;AACvB,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAID,KAAK,UAAU,cAAc,CAC3B,IAAc,EAAE,MAAc,EAAE,MAAc;IAE9C,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,IAAA,2BAAU,EAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACzC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;IAC1E,CAAC;IACD,MAAM,CAAC,GAAG,MAAM,MAAM,CACpB,GAAG,MAAM,oBAAoB,EAAE,MAAM,CACtC,CAAC;IACF,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/C,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC;IACpF,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,YAAY,UAAU,gCAAgC,CAAC,CAAC;IACpF,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;AAC1E,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,GAAuC,EAAE,SAAiB;IAE1D,MAAM,CAAC,GAAG,MAAM,MAAM,CACpB,GAAG,GAAG,CAAC,MAAM,uCAAuC,SAAS,EAAE,EAAE,GAAG,CAAC,MAAM,CAC5E,CAAC;IACF,IAAI,CAAC,CAAC,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,iBAAiB,CAAC,CAAC;IACzD,OAAO,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,SAAS,OAAO,CAAC,IAAgB,EAAE,MAAc;IAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5E,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,8CAA8C,MAAM,oBAAoB;YACxE,uEAAuE,CACxE,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,aAAa,CAAC,IAAc,EAAE,KAAa;IAClD,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACvB,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACzE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,6EAA6E;AAC7E,SAAgB,eAAe,CAAC,MAAoB,EAAE,MAAe;IACnE,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,CAAC,MAAM,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IACpC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IACrD,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACvE,CAAC;AAED,+EAA+E;AAE/E,SAAS,UAAU,CAAC,CAAW;IAC7B,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC;IACrB,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC1E,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IACxF,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,OAAO,MAAM,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,MAAM,MAAM,YAAY,GAAG,CAAC,SAAS,IAAI,CAAC,EAAE;QAC5E,cAAc,GAAG,CAAC,aAAa,IAAI,aAAa,cAAc,OAAO,GAAG,IAAI,WAAW,IAAI,YAAY,CAAC,CAAC,KAAK,MAAM,GAAG,CAAC,OAAO,IAAI,GAAG,GAAG,IAAI,EAAE,CAAC;AACpJ,CAAC;AAED,SAAgB,YAAY,CAAC,IAAgB,EAAE,WAAmB;IAChE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,sBAAsB,WAAW,oDAAoD,CAAC;IAC/F,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;QACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1C,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IACD,MAAM,KAAK,GAAa,CAAC,GAAG,IAAI,CAAC,MAAM,eAAe,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,WAAW,GAAG,CAAC,CAAC;IACzG,KAAK,MAAM,MAAM,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,MAAM,MAAM,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAClD,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IACD,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,MAAM,MAAM,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAClD,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,wFAAwF,CAAC,CAAC;IACzG,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAc;IACrC,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,kBAAkB,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IACnE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtF,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACjD,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9E,OAAO;IACT,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,+EAA+E;AAE/E,KAAK,UAAU,aAAa,CAAC,IAAc,EAAE,IAA0B;IACrE,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,kBAAkB,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,2BAA2B,IAAI,YAAY,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAC5I,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzE,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;IAEjE,4EAA4E;IAC5E,2EAA2E;IAC3E,sCAAsC;IACtC,MAAM,EAAE,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC7F,IAAI,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,IAAI,MAAM,yDAAyD,CAAC,CAAC;QACjF,OAAO;IACT,CAAC;IACD,MAAM,CAAC,GAAG,MAAM,OAAO,CACrB,GAAG,GAAG,CAAC,MAAM,WAAW,GAAG,CAAC,EAAE,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAC1D,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAC1B,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,IAAI,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,MAAM,MAAM,CAAC,CAAC,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;AACtF,CAAC;AAED,+EAA+E;AAE/E;iFACiF;AACjF,SAAS,eAAe,CAAC,IAAa;IACpC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,UAAU,CAAC;IAC3D,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAK,IAAe,EAAE,CAAC;QACpE,MAAM,CAAC,GAAG,IAA0D,CAAC;QACrE,OAAO,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;IACzD,CAAC;IACD,IAAI,CAAC;QAAC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;IAAC,CAAC;AACrE,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,IAAc;IAClC,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,kBAAkB,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,yDAAyD,CAAC,CAAC;IAC9F,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtF,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;IACjE,4EAA4E;IAC5E,MAAM,IAAI,GAAG,MAAM,MAAM,CACvB,GAAG,GAAG,CAAC,MAAM,WAAW,SAAS,OAAO,EAAE,GAAG,CAAC,MAAM,CACrD,CAAC;IACF,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IACxF,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IAEvB,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,MAAM,QAAQ,WAAW,8BAA8B,CAAC,CAAC;IAC/E,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,KAAK,IAAI,UAAU,WAAW,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;IACpE,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7B,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChJ,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACxB,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,IAAI,WAAW,GAAG,CAAC,MAAM,YAAY,GAAG,CAAC,aAAa,IAAI,aAAa,YAAY,GAAG,CAAC,OAAO,IAAI,GAAG,cAAc,GAAG,CAAC,SAAS,IAAI,GAAG,EAAE,CAAC,CAAC;IACrK,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,GAAG,cAAc,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,GAAG,aAAa,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC;QACpI,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,aAAa,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,OAAO,cAAc,GAAG,CAAC,SAAS,IAAI,GAAG,EAAE,CAAC,CAAC;IACrJ,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,SAAS,IAAI,CAAC,SAAS,GAAG,CAAC,WAAW,IAAI,OAAO,EAAE,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,8CAA8C,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClH,KAAK,MAAM,IAAI,IAAI,IAAA,6CAAyB,EAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;IAC9B,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;QAC5D,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,cAAc,IAAI,EAAE,EAAE,CAAC,CAAC;QACzJ,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,gFAAgF;AAEhF,SAAgB,aAAa,CAAC,IAAa;IACzC,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;IAC9B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,yEAAyE;IACzE,uEAAuE;IACvE,4DAA4D;IAC5D,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;QACpC,GAAG,EAAE,IAAI;QACT,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ;QAC1B,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAC5B,IAAI,EAAE,IAAI,IAAI,IAAI;KACnB,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACpB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,YAAY;IAC1B,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;IAC9B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,gFAAgF;AAChF,gFAAgF;AAChF,6EAA6E;AAC7E,6EAA6E;AAC7E,gFAAgF;AAChF,0EAA0E;AAC1E,iFAAiF;AACjF,uEAAuE;AAEvE,MAAM,aAAa,GACjB,0EAA0E;IAC1E,wEAAwE;IACxE,sFAAsF;IACtF,yEAAyE;IACzE,0DAA0D;IAC1D,qFAAqF;IACrF,uFAAuF;IACvF,kFAAkF;IAClF,oFAAoF,CAAC;AAQvF,SAAS,oBAAoB,CAAC,IAAc;IAC1C,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IAC5E,MAAM,MAAM,GAAG,IAAA,0BAAgB,EAAC,GAAG,CAAC,CAAC;IACrC,IAAI,GAAG,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,KAAK,EAAE,0DAA0D,GAAG,IAAI,EAAE,CAAC;IACxG,OAAO,MAAM,IAAI,IAAA,6BAAmB,GAAE,IAAI,aAAa,CAAC;AAC1D,CAAC;AAED;;;;qFAIqF;AACrF,SAAgB,kBAAkB,CAAC,GAAW;IAE5C,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;QACX,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACpC,IAAI,EAAE,GAAG,EAAE,IAAK,6BAAqC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;YACtF,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;QAC1F,CAAC;IACH,CAAC;IACD,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,KAAK,EAAE,2CAA4C,6BAAqC,CAAC,IAAI,CAAC,GAAG,CAAC,0BAA0B,GAAG,IAAI,EAAE,CAAC;IACjJ,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;AAC7E,CAAC;AAED;;;;+EAI+E;AAC/E,SAAgB,gBAAgB,CAAC,IAAc;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAC/E,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACzC,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IACvD,MAAM,aAAa,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACjD,IAAI,OAAO,aAAa,KAAK,QAAQ;QAAE,OAAO,aAAa,CAAC;IAE5D,6EAA6E;IAC7E,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAC7C,IAAI,SAAS,GAAY,IAAI,CAAC;IAC9B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC;YAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAAC,CAAC;QACzC,MAAM,CAAC;YAAC,OAAO,EAAE,KAAK,EAAE,6CAA6C,QAAQ,IAAI,EAAE,CAAC;QAAC,CAAC;IACxF,CAAC;SAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,OAAO,IAAI,MAAM;YAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;QACtD,SAAS,GAAG,MAAM,CAAC;IACrB,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC3C,MAAM,OAAO,GAA4B,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACtE,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;IACrD,MAAM,QAAQ,GAAG,IAAA,uCAAmB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACpD,IAAI,OAAO,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAEzC,2EAA2E;IAC3E,yEAAyE;IACzE,+EAA+E;IAC/E,MAAM,MAAM,GAA4B;QACtC,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,QAAQ;QAC7C,aAAa;QACb,QAAQ;QACR,OAAO;QACP,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,kBAAkB;QACzD,UAAU,EAAE,SAAS;QACrB,QAAQ,EAAE,MAAM;QAChB,SAAS,EAAE,UAAU;KACtB,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AAC/C,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,IAAc;IACtC,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,kBAAkB,EAAE,CAAC;IAEtC,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;QAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAAC,CAAC;IAEpE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtF,8EAA8E;IAC9E,+EAA+E;IAC/E,MAAM,GAAG,GAAG,MAAM,OAAO,CACvB,GAAG,GAAG,CAAC,MAAM,WAAW,SAAS,IAAI,IAAI,CAAC,MAAM,SAAS,EAAE,GAAG,CAAC,MAAM,EACrE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAC3C,CAAC;IAEF,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IACvB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CACT,gBAAgB,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,cAAc,GAAG,CAAC,aAAa,IAAI,aAAa,EAAE;QACxI,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,WAAW,EAAE,CACpD,CAAC;IACF,OAAO,CAAC,GAAG,CACT,GAAG,CAAC,MAAM,KAAK,QAAQ;QACrB,CAAC,CAAC,4DAA4D,IAAI,CAAC,MAAM,EAAE;QAC3E,CAAC,CAAC,2CAA2C,IAAI,CAAC,MAAM,EAAE,CAC7D,CAAC;AACJ,CAAC;AAED,iFAAiF;AAEjF,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0CA8CoB,CAAC;AAEpC,KAAK,UAAU,WAAW,CAAC,IAAc;IAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE3B,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC3B,OAAO;IACT,CAAC;IAED,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,QAAQ,CAAC,CAAE,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QACvC,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;YACxB,OAAO,IAAA,+BAAe,EAAC,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QAChD,CAAC;QACD,KAAK,OAAO,CAAC,CAAG,OAAO,IAAA,+BAAe,EAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;QAC3D,KAAK,MAAM,CAAC,CAAI,OAAO,IAAA,+BAAe,EAAC,IAAI,CAAC,CAAC;QAC7C,KAAK,UAAU,CAAC;QAChB,KAAK,QAAQ,CAAC,CAAE,CAAC;YACf,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,MAAM;gBAAE,kBAAkB,EAAE,CAAC;YACtC,OAAO,IAAA,mCAAmB,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,MAAM;gBAAE,kBAAkB,EAAE,CAAC;YACtC,OAAO,IAAA,gCAAgB,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACrC,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;QACxC,KAAK,QAAQ,CAAC,CAAE,OAAO,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrD,KAAK,SAAS,CAAC,CAAC,OAAO,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACtD,KAAK,KAAK,CAAC,CAAK,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;QACpC,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;YACpD,OAAO,CAAC,GAAG,CAAC,6CAA6C,IAAI,IAAI,CAAC,CAAC;YACnE,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;YAC3C,OAAO;QACT,CAAC;QACD,KAAK,IAAI,CAAC,CAAC,CAAC;YACV,IAAI,YAAY,EAAE;gBAAE,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;;gBAChF,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;YACpE,OAAO;QACT,CAAC;QACD,KAAK,OAAO,CAAC;QACb,KAAK,GAAG,CAAC,CAAI,OAAO,IAAA,8BAAa,EAAC,IAAI,CAAC,CAAC;QACxC;YACE,OAAO,CAAC,KAAK,CAAC,gCAAgC,GAAG,IAAI,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"mechanic.js","sourceRoot":"","sources":["../../src/commands/mechanic.ts"],"names":[],"mappings":"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"}
|
|
@@ -69,6 +69,7 @@ function buildMission(input) {
|
|
|
69
69
|
'**Repair contract**',
|
|
70
70
|
'Work as an ordinary unrestricted read/write session in the isolated checkout.',
|
|
71
71
|
'Find and repair the reusable root mechanism; own discovery, repair, tests, verification, and commit.',
|
|
72
|
+
'Land it yourself — assume the parent is dead: confer with live peers first (`greprag inbox watchers`, heads-up before touching main), merge your chip branch → main, re-verify, prune the worktree + merged branch. HARD STOP at sensitive landings (`git push`, releases, publish, migrations) — report READY instead; the operator lands those.',
|
|
72
73
|
'Report DONE or BLOCKED natively to the parent task; do not use a mandatory GrepRAG completion ceremony.',
|
|
73
74
|
'',
|
|
74
75
|
'**Friction / mission**',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode-chip-mission.js","sourceRoot":"","sources":["../../src/commands/opencode-chip-mission.ts"],"names":[],"mappings":";;AAKA,oBAGC;AAED,sBAIC;AAED,8BAMC;AAGD,8BASC;AAED,gCAMC;AAED,0BAMC;AAED,
|
|
1
|
+
{"version":3,"file":"opencode-chip-mission.js","sourceRoot":"","sources":["../../src/commands/opencode-chip-mission.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,6 +61,23 @@ export interface StressResult {
|
|
|
61
61
|
* features_and_labels (rep / retry / seqrep / err / churn), scored with the
|
|
62
62
|
* pinned weight vector and mapped to a 0/1/2 level. Pure. */
|
|
63
63
|
export declare function computeStress(turns: TurnSummary[]): StressResult;
|
|
64
|
+
/** Remove quoted spans ('…' and "…", backslash escapes inside double quotes)
|
|
65
|
+
* from a command line. What remains is the SHELL-STRUCTURAL text — the only
|
|
66
|
+
* text candidacy logic may read. A quoted argument (a fix-spawn payload, a
|
|
67
|
+
* commit message, an echoed error) can embed arbitrary command/error text;
|
|
68
|
+
* reading it as evidence is the recursive-false-positive class that had the
|
|
69
|
+
* detector re-flagging its own remedy (incident 250ac565, 2026-07-12). */
|
|
70
|
+
export declare function stripQuotedSpans(command: string): string;
|
|
71
|
+
/** The command words actually being INVOKED: quote-strip, split on shell
|
|
72
|
+
* operators, take each segment's head token (basename, wrapper-transparent).
|
|
73
|
+
* `cd x && node y` → [cd, node] · `greprag fix spawn "…node…"` → [greprag] ·
|
|
74
|
+
* `git merge chip/fix-fnm-x` → [git]. */
|
|
75
|
+
export declare function commandHeads(command: string): string[];
|
|
76
|
+
/** A segment whose invoked words are `greprag fix spawn` — the friction reflex
|
|
77
|
+
* DISPATCHING. Matched on structural text only (a quoted mention is not a
|
|
78
|
+
* dispatch), anchored to the segment head (an `echo greprag fix spawn …` is
|
|
79
|
+
* not a dispatch either). */
|
|
80
|
+
export declare function isFixSpawnDispatch(command: string): boolean;
|
|
64
81
|
/** Detect setup/toolchain failures that are likely repairable once for all future
|
|
65
82
|
* sessions. This is deliberately narrower than generic stress: source-code
|
|
66
83
|
* TypeScript diagnostics are normal verification, while command availability,
|
|
@@ -54,6 +54,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
54
54
|
exports.STRESS_HIGH = exports.STRESS_ELEVATED = exports.STRESS_CALM = void 0;
|
|
55
55
|
exports.parseTurns = parseTurns;
|
|
56
56
|
exports.computeStress = computeStress;
|
|
57
|
+
exports.stripQuotedSpans = stripQuotedSpans;
|
|
58
|
+
exports.commandHeads = commandHeads;
|
|
59
|
+
exports.isFixSpawnDispatch = isFixSpawnDispatch;
|
|
57
60
|
exports.computeBootstrapFriction = computeBootstrapFriction;
|
|
58
61
|
exports.scanKeywords = scanKeywords;
|
|
59
62
|
exports.computeStateValues = computeStateValues;
|
|
@@ -201,6 +204,13 @@ function parseTurns(transcriptPath, maxTurns = 40) {
|
|
|
201
204
|
for (const b of blocks(rec)) {
|
|
202
205
|
if (b && b.type === 'tool_result' && resultIsError(b)) {
|
|
203
206
|
cur.errors++;
|
|
207
|
+
// A ToolFailure (the bootstrap classifier's input) requires HARD
|
|
208
|
+
// evidence the command itself failed — the harness's is_error flag,
|
|
209
|
+
// never error-looking output text: a successful `… | grep -i error`
|
|
210
|
+
// matches ERROR_RE by construction (false-page a0d1a7e2 2026-07-12).
|
|
211
|
+
// The soft regex still feeds `errors` (the validated stress feature).
|
|
212
|
+
if (b.is_error !== true)
|
|
213
|
+
continue;
|
|
204
214
|
const useId = typeof b.tool_use_id === 'string' ? b.tool_use_id : '';
|
|
205
215
|
const prior = useId ? pending.get(useId) : null;
|
|
206
216
|
if (prior)
|
|
@@ -310,30 +320,133 @@ function computeStress(turns) {
|
|
|
310
320
|
: score >= STRESS_ELEVATED_AT ? exports.STRESS_ELEVATED : exports.STRESS_CALM;
|
|
311
321
|
return { score: Math.round(score * 1000) / 1000, level };
|
|
312
322
|
}
|
|
323
|
+
// ---------- Shell-shape helpers (candidacy must never read argument text) ----
|
|
324
|
+
// adr: adr/bootstrap-friction-candidacy.md
|
|
325
|
+
/** Remove quoted spans ('…' and "…", backslash escapes inside double quotes)
|
|
326
|
+
* from a command line. What remains is the SHELL-STRUCTURAL text — the only
|
|
327
|
+
* text candidacy logic may read. A quoted argument (a fix-spawn payload, a
|
|
328
|
+
* commit message, an echoed error) can embed arbitrary command/error text;
|
|
329
|
+
* reading it as evidence is the recursive-false-positive class that had the
|
|
330
|
+
* detector re-flagging its own remedy (incident 250ac565, 2026-07-12). */
|
|
331
|
+
function stripQuotedSpans(command) {
|
|
332
|
+
let out = '';
|
|
333
|
+
let quote = null;
|
|
334
|
+
let escaped = false;
|
|
335
|
+
for (const ch of command) {
|
|
336
|
+
if (quote) {
|
|
337
|
+
if (escaped) {
|
|
338
|
+
escaped = false;
|
|
339
|
+
continue;
|
|
340
|
+
}
|
|
341
|
+
if (ch === '\\' && quote === '"') {
|
|
342
|
+
escaped = true;
|
|
343
|
+
continue;
|
|
344
|
+
}
|
|
345
|
+
if (ch === quote)
|
|
346
|
+
quote = null;
|
|
347
|
+
continue;
|
|
348
|
+
}
|
|
349
|
+
if (ch === '"' || ch === "'") {
|
|
350
|
+
quote = ch;
|
|
351
|
+
continue;
|
|
352
|
+
}
|
|
353
|
+
out += ch;
|
|
354
|
+
}
|
|
355
|
+
return out;
|
|
356
|
+
}
|
|
357
|
+
/** Wrappers transparent to WHAT is being run — skipped (with env assignments)
|
|
358
|
+
* when resolving each segment's head, so `timeout 60 npm test` still reads npm. */
|
|
359
|
+
const TRANSPARENT_WRAPPERS = new Set(['sudo', 'time', 'nice', 'env', 'command', 'exec', 'xargs', 'timeout']);
|
|
360
|
+
const ENV_ASSIGNMENT_RE = /^[A-Za-z_][A-Za-z0-9_]*=/;
|
|
361
|
+
/** The command words actually being INVOKED: quote-strip, split on shell
|
|
362
|
+
* operators, take each segment's head token (basename, wrapper-transparent).
|
|
363
|
+
* `cd x && node y` → [cd, node] · `greprag fix spawn "…node…"` → [greprag] ·
|
|
364
|
+
* `git merge chip/fix-fnm-x` → [git]. */
|
|
365
|
+
function commandHeads(command) {
|
|
366
|
+
const heads = [];
|
|
367
|
+
for (const seg of stripQuotedSpans(command).split(/&&|\|\||;|\||\r?\n/)) {
|
|
368
|
+
const tokens = seg.trim().replace(/^[({\s]+/, '').split(/\s+/).filter(Boolean);
|
|
369
|
+
let i = 0;
|
|
370
|
+
while (i < tokens.length) {
|
|
371
|
+
if (ENV_ASSIGNMENT_RE.test(tokens[i])) {
|
|
372
|
+
i++;
|
|
373
|
+
continue;
|
|
374
|
+
} // leading or `env FOO=1 …` var
|
|
375
|
+
const base = (tokens[i].replace(/\\/g, '/').split('/').pop() || '').toLowerCase();
|
|
376
|
+
if (TRANSPARENT_WRAPPERS.has(base)) {
|
|
377
|
+
i++;
|
|
378
|
+
if (base === 'timeout' && i < tokens.length && /^\d/.test(tokens[i]))
|
|
379
|
+
i++; // duration operand
|
|
380
|
+
while (i < tokens.length && tokens[i].startsWith('-'))
|
|
381
|
+
i++; // wrapper flags
|
|
382
|
+
continue;
|
|
383
|
+
}
|
|
384
|
+
if (base)
|
|
385
|
+
heads.push(base);
|
|
386
|
+
break;
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
return heads;
|
|
390
|
+
}
|
|
391
|
+
/** A segment whose invoked words are `greprag fix spawn` — the friction reflex
|
|
392
|
+
* DISPATCHING. Matched on structural text only (a quoted mention is not a
|
|
393
|
+
* dispatch), anchored to the segment head (an `echo greprag fix spawn …` is
|
|
394
|
+
* not a dispatch either). */
|
|
395
|
+
function isFixSpawnDispatch(command) {
|
|
396
|
+
for (const seg of stripQuotedSpans(command).split(/&&|\|\||;|\||\r?\n/)) {
|
|
397
|
+
const tokens = seg.trim().replace(/^[({\s]+/, '').split(/\s+/).filter(Boolean);
|
|
398
|
+
let i = 0;
|
|
399
|
+
while (i < tokens.length && ENV_ASSIGNMENT_RE.test(tokens[i]))
|
|
400
|
+
i++;
|
|
401
|
+
const base = (tokens[i] || '').replace(/\\/g, '/').split('/').pop() || '';
|
|
402
|
+
if (/^greprag(?:\.cmd|\.exe)?$/i.test(base) && tokens[i + 1] === 'fix' && tokens[i + 2] === 'spawn')
|
|
403
|
+
return true;
|
|
404
|
+
}
|
|
405
|
+
return false;
|
|
406
|
+
}
|
|
313
407
|
const SETUP_COMMAND_RE = /\b(?:npm|pnpm|yarn|npx|node|tsc|ts-node|tsx|fnm|corepack|turbo|vitest|jest|ts-jest)\b/i;
|
|
314
408
|
const COMMAND_NOT_FOUND_RE = /\b(?:command not found|not recognized as (?:an internal|the name)|is not recognized|executable file not found|unable to resolve command)\b/i;
|
|
315
|
-
|
|
409
|
+
/** Matched against ERROR text only. `requested version` + `not yet installed` are
|
|
410
|
+
* fnm/nvm's real missing-version phrasings ("error: Requested version v22.x.x is
|
|
411
|
+
* not currently installed" — verified live 2026-07-12); without them a genuine
|
|
412
|
+
* fnm failure carries no node-version marker in its error output. */
|
|
413
|
+
const NODE_VERSION_RE = /\b(?:unsupported engine|requires node|node version|fnm|nvm|corepack|package manager mismatch|requested version|not yet installed)\b/i;
|
|
316
414
|
const MODULE_RESOLUTION_RE = /\b(?:cannot find module|module_not_found|err_module_not_found|cannot find package|could not resolve|cannot resolve|cannot find type definition file)\b/i;
|
|
317
415
|
const WORKSPACE_BOOTSTRAP_RE = /\b(?:enoent|no such file or directory|workspace package|no workspaces found|node_modules|package\.json|tsconfig(?:\.json)?(?: file)? (?:not found|missing))\b/i;
|
|
318
416
|
const ORDINARY_TS_ERROR_RE = /\bTS\d{4}\b/i;
|
|
319
417
|
function setupSignal(f) {
|
|
320
|
-
|
|
418
|
+
// Candidacy gates on the command words being INVOKED (segment heads), never
|
|
419
|
+
// the raw string: `greprag fix spawn "…node…"` and `git merge chip/fix-fnm-x`
|
|
420
|
+
// carry toolchain tokens in ARGUMENT text only and are not setup commands
|
|
421
|
+
// (recursive false positive, incident 250ac565 2026-07-12).
|
|
422
|
+
if (f.tool !== 'Bash')
|
|
321
423
|
return null;
|
|
322
|
-
const
|
|
323
|
-
if (
|
|
424
|
+
const heads = commandHeads(f.command).join(' ');
|
|
425
|
+
if (!SETUP_COMMAND_RE.test(heads))
|
|
426
|
+
return null;
|
|
427
|
+
// Signal evidence comes from the ERROR text ALONE. The command only gates the
|
|
428
|
+
// family (above) and names the flavor (below) — an invocation *mentioning*
|
|
429
|
+
// fnm/node_modules/package.json is not evidence that fnm/the workspace broke
|
|
430
|
+
// (`fnm exec … | grep -i error` classified as fnm-node-bootstrap off its own
|
|
431
|
+
// command text, false-page a0d1a7e2 2026-07-12).
|
|
432
|
+
const err = f.error;
|
|
433
|
+
if (COMMAND_NOT_FOUND_RE.test(err))
|
|
324
434
|
return 'command-not-found';
|
|
325
|
-
if (NODE_VERSION_RE.test(
|
|
326
|
-
return /fnm/i.test(
|
|
327
|
-
if (MODULE_RESOLUTION_RE.test(
|
|
435
|
+
if (NODE_VERSION_RE.test(err))
|
|
436
|
+
return /fnm/i.test(`${heads}\n${err}`) ? 'fnm-node-bootstrap' : 'node-version';
|
|
437
|
+
if (MODULE_RESOLUTION_RE.test(err))
|
|
328
438
|
return 'module-resolution';
|
|
329
|
-
if (WORKSPACE_BOOTSTRAP_RE.test(
|
|
439
|
+
if (WORKSPACE_BOOTSTRAP_RE.test(err))
|
|
330
440
|
return 'workspace-bootstrap';
|
|
331
|
-
if (ORDINARY_TS_ERROR_RE.test(
|
|
441
|
+
if (ORDINARY_TS_ERROR_RE.test(err))
|
|
332
442
|
return null;
|
|
333
443
|
return null;
|
|
334
444
|
}
|
|
335
445
|
function commandFamily(command) {
|
|
336
|
-
|
|
446
|
+
// Quote-stripped: a tool token inside a quoted payload must not mint the
|
|
447
|
+
// dedupe key — the original incident's fix-spawn argument embedded `node`,
|
|
448
|
+
// colliding with the real failure's family and inflating `repeats` to 2.
|
|
449
|
+
const c = stripQuotedSpans(command).toLowerCase();
|
|
337
450
|
const m = c.match(/\b(?:npm\s+run\s+\S+|npm\s+\S+|pnpm\s+\S+|yarn\s+\S+|npx\s+\S+|fnm\s+\S+|corepack\s+\S+|turbo\s+\S+|vitest\b|jest\b|tsc\b|node\b)/);
|
|
338
451
|
return (m?.[0] || c).replace(/\s+/g, ' ').slice(0, 80);
|
|
339
452
|
}
|
|
@@ -343,18 +456,41 @@ function commandFamily(command) {
|
|
|
343
456
|
* Node/fnm, workspace bootstrap, and module-resolution failures are Mechanic
|
|
344
457
|
* material. Pure and conservative; no LLM. */
|
|
345
458
|
function computeBootstrapFriction(turns) {
|
|
346
|
-
const
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
459
|
+
const none = { detected: false, level: exports.STRESS_CALM, command: null, error: null, signal: null, repeats: 0 };
|
|
460
|
+
const failures = [];
|
|
461
|
+
turns.forEach((t, turn) => {
|
|
462
|
+
for (const f of t.failures || []) {
|
|
463
|
+
const signal = setupSignal(f);
|
|
464
|
+
if (signal)
|
|
465
|
+
failures.push({ failure: f, signal, turn });
|
|
466
|
+
}
|
|
467
|
+
});
|
|
468
|
+
if (!failures.length)
|
|
469
|
+
return none;
|
|
470
|
+
const latest = failures[failures.length - 1];
|
|
471
|
+
// Dispatch suppression: a `greprag fix spawn` that RAN (didn't itself fail)
|
|
472
|
+
// at/after the latest qualifying failure IS the remedy in motion — the
|
|
473
|
+
// friction is dispatched, not fresh. Without this the same signature
|
|
474
|
+
// re-paged every turn it stayed in the window, even after compliance
|
|
475
|
+
// (incident 250ac565, 2026-07-12). A FAILED spawn never counts — the chip
|
|
476
|
+
// did not launch. Same-turn spawns suppress too (conservative-quiet: a
|
|
477
|
+
// recurrence on a later run re-fires, since it postdates the spawn).
|
|
478
|
+
for (let turn = latest.turn; turn < turns.length; turn++) {
|
|
479
|
+
const t = turns[turn];
|
|
480
|
+
const failedCmds = new Set((t.failures || []).map(f => f.command));
|
|
481
|
+
for (const tg of t.toolTargets || []) {
|
|
482
|
+
if (!tg.startsWith('Bash:'))
|
|
483
|
+
continue;
|
|
484
|
+
const cmd = tg.slice('Bash:'.length);
|
|
485
|
+
if (isFixSpawnDispatch(cmd) && !failedCmds.has(cmd))
|
|
486
|
+
return none;
|
|
487
|
+
}
|
|
351
488
|
}
|
|
352
489
|
const counts = new Map();
|
|
353
490
|
for (const f of failures) {
|
|
354
491
|
const key = `${f.signal}:${commandFamily(f.failure.command)}`;
|
|
355
492
|
counts.set(key, (counts.get(key) || 0) + 1);
|
|
356
493
|
}
|
|
357
|
-
const latest = failures[failures.length - 1];
|
|
358
494
|
const latestKey = `${latest.signal}:${commandFamily(latest.failure.command)}`;
|
|
359
495
|
const repeats = counts.get(latestKey) || 1;
|
|
360
496
|
const strongSingle = latest.signal === 'command-not-found'
|