wicked-crew 0.7.46 → 0.7.48
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/api/capture.d.ts +2 -2
- package/dist/api/chat-citations.d.ts +10 -1
- package/dist/api/chat-citations.d.ts.map +1 -1
- package/dist/api/chat-citations.js +28 -0
- package/dist/api/chat-citations.js.map +1 -1
- package/dist/api/chat-scope.d.ts +4 -2
- package/dist/api/chat-scope.d.ts.map +1 -1
- package/dist/api/chat-scope.js +35 -3
- package/dist/api/chat-scope.js.map +1 -1
- package/dist/api/chat-transcripts.d.ts +23 -1
- package/dist/api/chat-transcripts.d.ts.map +1 -1
- package/dist/api/chat-transcripts.js +61 -6
- package/dist/api/chat-transcripts.js.map +1 -1
- package/dist/api/delivery-index.d.ts +21 -0
- package/dist/api/delivery-index.d.ts.map +1 -1
- package/dist/api/delivery-index.js +36 -0
- package/dist/api/delivery-index.js.map +1 -1
- package/dist/api/elicitation-cache.d.ts +12 -0
- package/dist/api/elicitation-cache.d.ts.map +1 -1
- package/dist/api/elicitation-cache.js +17 -1
- package/dist/api/elicitation-cache.js.map +1 -1
- package/dist/api/eval-sample.d.ts +12 -12
- package/dist/api/governance-steering.d.ts.map +1 -1
- package/dist/api/governance-steering.js +1 -0
- package/dist/api/governance-steering.js.map +1 -1
- package/dist/api/mcp.d.ts +4 -4
- package/dist/api/policy-landing.d.ts +55 -0
- package/dist/api/policy-landing.d.ts.map +1 -0
- package/dist/api/policy-landing.js +174 -0
- package/dist/api/policy-landing.js.map +1 -0
- package/dist/api/recording.d.ts +228 -0
- package/dist/api/recording.d.ts.map +1 -0
- package/dist/api/recording.js +1140 -0
- package/dist/api/recording.js.map +1 -0
- package/dist/api/routes.d.ts +42 -39
- package/dist/api/routes.d.ts.map +1 -1
- package/dist/api/routes.js +362 -107
- package/dist/api/routes.js.map +1 -1
- package/dist/api/run-timing-index.d.ts +17 -0
- package/dist/api/run-timing-index.d.ts.map +1 -1
- package/dist/api/run-timing-index.js +43 -1
- package/dist/api/run-timing-index.js.map +1 -1
- package/dist/api/server.d.ts +27 -0
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +168 -4
- package/dist/api/server.js.map +1 -1
- package/dist/api/testing.d.ts +4 -4
- package/dist/api/testing.d.ts.map +1 -1
- package/dist/api/testing.js +3 -0
- package/dist/api/testing.js.map +1 -1
- package/dist/api/watch-routes.d.ts +30 -0
- package/dist/api/watch-routes.d.ts.map +1 -0
- package/dist/api/watch-routes.js +104 -0
- package/dist/api/watch-routes.js.map +1 -0
- package/dist/campaigns/routes.d.ts +2 -2
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +20 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/core/adapter.d.ts +52 -1
- package/dist/core/adapter.d.ts.map +1 -1
- package/dist/core/adapter.js +193 -5
- package/dist/core/adapter.js.map +1 -1
- package/dist/core/run-identity.js +1 -1
- package/dist/core/run-identity.js.map +1 -1
- package/dist/core/walkthrough-root.d.ts +21 -0
- package/dist/core/walkthrough-root.d.ts.map +1 -0
- package/dist/core/walkthrough-root.js +66 -0
- package/dist/core/walkthrough-root.js.map +1 -0
- package/dist/decisions/chat-recorder.d.ts +129 -0
- package/dist/decisions/chat-recorder.d.ts.map +1 -0
- package/dist/decisions/chat-recorder.js +367 -0
- package/dist/decisions/chat-recorder.js.map +1 -0
- package/dist/decisions/consider.d.ts +102 -0
- package/dist/decisions/consider.d.ts.map +1 -0
- package/dist/decisions/consider.js +207 -0
- package/dist/decisions/consider.js.map +1 -0
- package/dist/decisions/derive.d.ts +79 -0
- package/dist/decisions/derive.d.ts.map +1 -0
- package/dist/decisions/derive.js +282 -0
- package/dist/decisions/derive.js.map +1 -0
- package/dist/decisions/events.d.ts +25 -0
- package/dist/decisions/events.d.ts.map +1 -0
- package/dist/decisions/events.js +24 -0
- package/dist/decisions/events.js.map +1 -0
- package/dist/decisions/ingest.d.ts +51 -0
- package/dist/decisions/ingest.d.ts.map +1 -0
- package/dist/decisions/ingest.js +100 -0
- package/dist/decisions/ingest.js.map +1 -0
- package/dist/decisions/land.d.ts +100 -0
- package/dist/decisions/land.d.ts.map +1 -0
- package/dist/decisions/land.js +466 -0
- package/dist/decisions/land.js.map +1 -0
- package/dist/decisions/ledger.d.ts +60 -0
- package/dist/decisions/ledger.d.ts.map +1 -0
- package/dist/decisions/ledger.js +246 -0
- package/dist/decisions/ledger.js.map +1 -0
- package/dist/decisions/routes.d.ts +10 -0
- package/dist/decisions/routes.d.ts.map +1 -0
- package/dist/decisions/routes.js +141 -0
- package/dist/decisions/routes.js.map +1 -0
- package/dist/decisions/rules-text.d.ts +21 -0
- package/dist/decisions/rules-text.d.ts.map +1 -0
- package/dist/decisions/rules-text.js +50 -0
- package/dist/decisions/rules-text.js.map +1 -0
- package/dist/decisions/types.d.ts +120 -0
- package/dist/decisions/types.d.ts.map +1 -0
- package/dist/decisions/types.js +19 -0
- package/dist/decisions/types.js.map +1 -0
- package/dist/editors/csp.d.ts +31 -0
- package/dist/editors/csp.d.ts.map +1 -0
- package/dist/editors/csp.js +46 -0
- package/dist/editors/csp.js.map +1 -0
- package/dist/editors/pack-install.d.ts +28 -0
- package/dist/editors/pack-install.d.ts.map +1 -0
- package/dist/editors/pack-install.js +153 -0
- package/dist/editors/pack-install.js.map +1 -0
- package/dist/editors/registry.d.ts +142 -0
- package/dist/editors/registry.d.ts.map +1 -0
- package/dist/editors/registry.js +255 -0
- package/dist/editors/registry.js.map +1 -0
- package/dist/editors/routes.d.ts +46 -0
- package/dist/editors/routes.d.ts.map +1 -0
- package/dist/editors/routes.js +166 -0
- package/dist/editors/routes.js.map +1 -0
- package/dist/interactive/bridge-pool.d.ts +7 -2
- package/dist/interactive/bridge-pool.d.ts.map +1 -1
- package/dist/interactive/bridge-pool.js +6 -1
- package/dist/interactive/bridge-pool.js.map +1 -1
- package/dist/interactive/draft-events.d.ts.map +1 -1
- package/dist/interactive/draft-events.js +1 -0
- package/dist/interactive/draft-events.js.map +1 -1
- package/dist/interactive/theme-events.d.ts +119 -0
- package/dist/interactive/theme-events.d.ts.map +1 -0
- package/dist/interactive/theme-events.js +606 -0
- package/dist/interactive/theme-events.js.map +1 -0
- package/dist/projects/events.d.ts.map +1 -1
- package/dist/projects/events.js +2 -1
- package/dist/projects/events.js.map +1 -1
- package/dist/projects/routes.d.ts +2 -2
- package/dist/projects/state-home-preflight.d.ts.map +1 -1
- package/dist/projects/state-home-preflight.js +3 -0
- package/dist/projects/state-home-preflight.js.map +1 -1
- package/dist/projects/state-home-registry.d.ts.map +1 -1
- package/dist/projects/state-home-registry.js +2 -0
- package/dist/projects/state-home-registry.js.map +1 -1
- package/dist/projects/state-home.d.ts +6 -0
- package/dist/projects/state-home.d.ts.map +1 -1
- package/dist/projects/state-home.js +28 -1
- package/dist/projects/state-home.js.map +1 -1
- package/dist/qe/acceptance.d.ts +45 -4
- package/dist/qe/acceptance.d.ts.map +1 -1
- package/dist/qe/acceptance.js +93 -4
- package/dist/qe/acceptance.js.map +1 -1
- package/dist/qe/ledger.d.ts +20 -0
- package/dist/qe/ledger.d.ts.map +1 -1
- package/dist/qe/ledger.js +34 -0
- package/dist/qe/ledger.js.map +1 -1
- package/dist/qe/walkthrough-acceptance.d.ts +82 -0
- package/dist/qe/walkthrough-acceptance.d.ts.map +1 -0
- package/dist/qe/walkthrough-acceptance.js +248 -0
- package/dist/qe/walkthrough-acceptance.js.map +1 -0
- package/dist/skills/base-skill.d.ts.map +1 -1
- package/dist/skills/base-skill.js +3 -2
- package/dist/skills/base-skill.js.map +1 -1
- package/dist/skills/plugin-source.d.ts +19 -1
- package/dist/skills/plugin-source.d.ts.map +1 -1
- package/dist/skills/plugin-source.js +31 -2
- package/dist/skills/plugin-source.js.map +1 -1
- package/dist/skills/runtime.d.ts +11 -2
- package/dist/skills/runtime.d.ts.map +1 -1
- package/dist/skills/runtime.js +29 -1
- package/dist/skills/runtime.js.map +1 -1
- package/dist/skills/store.d.ts +14 -1
- package/dist/skills/store.d.ts.map +1 -1
- package/dist/skills/store.js +19 -5
- package/dist/skills/store.js.map +1 -1
- package/dist/standing-orders/routes.d.ts +22 -22
- package/dist/standing-orders/store.d.ts +10 -10
- package/dist/watch/checks/check-failed.d.ts +24 -0
- package/dist/watch/checks/check-failed.d.ts.map +1 -0
- package/dist/watch/checks/check-failed.js +56 -0
- package/dist/watch/checks/check-failed.js.map +1 -0
- package/dist/watch/checks/claim-vs-evidence.d.ts +30 -0
- package/dist/watch/checks/claim-vs-evidence.d.ts.map +1 -0
- package/dist/watch/checks/claim-vs-evidence.js +152 -0
- package/dist/watch/checks/claim-vs-evidence.js.map +1 -0
- package/dist/watch/checks/deliver-audit.d.ts +19 -0
- package/dist/watch/checks/deliver-audit.d.ts.map +1 -0
- package/dist/watch/checks/deliver-audit.js +129 -0
- package/dist/watch/checks/deliver-audit.js.map +1 -0
- package/dist/watch/checks/index.d.ts +8 -0
- package/dist/watch/checks/index.d.ts.map +1 -0
- package/dist/watch/checks/index.js +24 -0
- package/dist/watch/checks/index.js.map +1 -0
- package/dist/watch/checks/lag.d.ts +24 -0
- package/dist/watch/checks/lag.d.ts.map +1 -0
- package/dist/watch/checks/lag.js +55 -0
- package/dist/watch/checks/lag.js.map +1 -0
- package/dist/watch/checks/quiet-after-claim.d.ts +17 -0
- package/dist/watch/checks/quiet-after-claim.d.ts.map +1 -0
- package/dist/watch/checks/quiet-after-claim.js +89 -0
- package/dist/watch/checks/quiet-after-claim.js.map +1 -0
- package/dist/watch/checks/ungated.d.ts +12 -0
- package/dist/watch/checks/ungated.d.ts.map +1 -0
- package/dist/watch/checks/ungated.js +64 -0
- package/dist/watch/checks/ungated.js.map +1 -0
- package/dist/watch/checks/warned-rule.d.ts +26 -0
- package/dist/watch/checks/warned-rule.d.ts.map +1 -0
- package/dist/watch/checks/warned-rule.js +126 -0
- package/dist/watch/checks/warned-rule.js.map +1 -0
- package/dist/watch/emit.d.ts +122 -0
- package/dist/watch/emit.d.ts.map +1 -0
- package/dist/watch/emit.js +443 -0
- package/dist/watch/emit.js.map +1 -0
- package/dist/watch/events.d.ts +21 -0
- package/dist/watch/events.d.ts.map +1 -0
- package/dist/watch/events.js +21 -0
- package/dist/watch/events.js.map +1 -0
- package/dist/watch/keys.d.ts +15 -0
- package/dist/watch/keys.d.ts.map +1 -0
- package/dist/watch/keys.js +23 -0
- package/dist/watch/keys.js.map +1 -0
- package/dist/watch/lanes.d.ts +41 -0
- package/dist/watch/lanes.d.ts.map +1 -0
- package/dist/watch/lanes.js +73 -0
- package/dist/watch/lanes.js.map +1 -0
- package/dist/watch/loader.d.ts +47 -0
- package/dist/watch/loader.d.ts.map +1 -0
- package/dist/watch/loader.js +178 -0
- package/dist/watch/loader.js.map +1 -0
- package/dist/watch/registry.d.ts +166 -0
- package/dist/watch/registry.d.ts.map +1 -0
- package/dist/watch/registry.js +589 -0
- package/dist/watch/registry.js.map +1 -0
- package/dist/watch/ring.d.ts +32 -0
- package/dist/watch/ring.d.ts.map +1 -0
- package/dist/watch/ring.js +90 -0
- package/dist/watch/ring.js.map +1 -0
- package/dist/watch/router.d.ts +25 -0
- package/dist/watch/router.d.ts.map +1 -0
- package/dist/watch/router.js +87 -0
- package/dist/watch/router.js.map +1 -0
- package/dist/watch/sources.d.ts +42 -0
- package/dist/watch/sources.d.ts.map +1 -0
- package/dist/watch/sources.js +104 -0
- package/dist/watch/sources.js.map +1 -0
- package/dist/watch/types.d.ts +129 -0
- package/dist/watch/types.d.ts.map +1 -0
- package/dist/watch/types.js +6 -0
- package/dist/watch/types.js.map +1 -0
- package/endpoint-manifest.json +272 -1
- package/package.json +3 -2
- package/watch/entries/claim-vs-evidence.json +13 -0
- package/watch/entries/deliver-audit.json +17 -0
- package/watch/entries/quiet-after-claim.json +16 -0
- package/watch/entries/registry-check-failed.json +12 -0
- package/watch/entries/registry-lagging.json +12 -0
- package/watch/entries/risky-call.json +12 -0
- package/watch/entries/ungated.json +13 -0
- package/dist/api/demo.d.ts +0 -90
- package/dist/api/demo.d.ts.map +0 -1
- package/dist/api/demo.js +0 -492
- package/dist/api/demo.js.map +0 -1
package/dist/qe/ledger.d.ts
CHANGED
|
@@ -198,4 +198,24 @@ export interface QeManifestSummary {
|
|
|
198
198
|
}
|
|
199
199
|
/** Reduce a manifest to the route's summary shape. */
|
|
200
200
|
export declare function summarizeManifest(manifest: EvidenceManifest): QeManifestSummary;
|
|
201
|
+
/** One ledger verdict a walkthrough recorder stamped (WT-W2), with the stamps read off the verdict or its run. */
|
|
202
|
+
export interface StampedLedgerVerdict {
|
|
203
|
+
verdict: VerdictRecord;
|
|
204
|
+
/** The chapter key the row is about (`chapter`, else the run's `scenario_id`); `null` when neither names one. */
|
|
205
|
+
chapter: string | null;
|
|
206
|
+
tree: string | null;
|
|
207
|
+
take: number | null;
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* The verdicts of a PROOF ROOT's own ledger (`<proofRoot>/.wicked-qe/`) stamped with `crew_run_id` =
|
|
211
|
+
* `runId` and `step_id` = `stepId` (on the verdict or on its run), newest first — the rows a
|
|
212
|
+
* walkthrough's recorder writes, one run and one verdict per chapter per take (DES-walkthrough-proof
|
|
213
|
+
* §4.4 step 6). Read-only, canonical JSON only, like {@link readAcceptanceState}. A ledger that does
|
|
214
|
+
* not exist reads `found: false`; one that cannot be parsed reads `error`.
|
|
215
|
+
*/
|
|
216
|
+
export declare function readStampedVerdicts(proofRoot: string, runId: string, stepId: string): {
|
|
217
|
+
found: boolean;
|
|
218
|
+
rows: StampedLedgerVerdict[];
|
|
219
|
+
error?: string;
|
|
220
|
+
};
|
|
201
221
|
//# sourceMappingURL=ledger.d.ts.map
|
package/dist/qe/ledger.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger.d.ts","sourceRoot":"","sources":["../../src/qe/ledger.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ledger.d.ts","sourceRoot":"","sources":["../../src/qe/ledger.ts"],"names":[],"mappings":"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"}
|
package/dist/qe/ledger.js
CHANGED
|
@@ -382,4 +382,38 @@ export function summarizeManifest(manifest) {
|
|
|
382
382
|
},
|
|
383
383
|
};
|
|
384
384
|
}
|
|
385
|
+
/**
|
|
386
|
+
* The verdicts of a PROOF ROOT's own ledger (`<proofRoot>/.wicked-qe/`) stamped with `crew_run_id` =
|
|
387
|
+
* `runId` and `step_id` = `stepId` (on the verdict or on its run), newest first — the rows a
|
|
388
|
+
* walkthrough's recorder writes, one run and one verdict per chapter per take (DES-walkthrough-proof
|
|
389
|
+
* §4.4 step 6). Read-only, canonical JSON only, like {@link readAcceptanceState}. A ledger that does
|
|
390
|
+
* not exist reads `found: false`; one that cannot be parsed reads `error`.
|
|
391
|
+
*/
|
|
392
|
+
export function readStampedVerdicts(proofRoot, runId, stepId) {
|
|
393
|
+
const root = qeLedgerRoot(proofRoot);
|
|
394
|
+
if (!existsSync(root))
|
|
395
|
+
return { found: false, rows: [] };
|
|
396
|
+
try {
|
|
397
|
+
const rows = [];
|
|
398
|
+
for (const v of listCanonical(root, 'verdicts')) {
|
|
399
|
+
const run = getCanonical(root, 'runs', v.run_id);
|
|
400
|
+
const field = (name) => v[name] ?? run?.[name];
|
|
401
|
+
if (field(CREW_RUN_ID_FIELD) !== runId || field('step_id') !== stepId)
|
|
402
|
+
continue;
|
|
403
|
+
const chapter = field('chapter') ?? run?.['scenario_id'];
|
|
404
|
+
const tree = field('tree');
|
|
405
|
+
const take = field('take');
|
|
406
|
+
rows.push({
|
|
407
|
+
verdict: v,
|
|
408
|
+
chapter: typeof chapter === 'string' && chapter !== '' ? chapter : null,
|
|
409
|
+
tree: typeof tree === 'string' && tree !== '' ? tree : null,
|
|
410
|
+
take: typeof take === 'number' && Number.isFinite(take) ? take : null,
|
|
411
|
+
});
|
|
412
|
+
}
|
|
413
|
+
return { found: true, rows };
|
|
414
|
+
}
|
|
415
|
+
catch (err) {
|
|
416
|
+
return { found: true, rows: [], error: err instanceof Error ? err.message : String(err) };
|
|
417
|
+
}
|
|
418
|
+
}
|
|
385
419
|
//# sourceMappingURL=ledger.js.map
|
package/dist/qe/ledger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/qe/ledger.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/qe/ledger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WT-W2 (DES-walkthrough-proof §4.6, §4.9): the walkthrough half of the acceptance gate.
|
|
3
|
+
*
|
|
4
|
+
* A walkthrough's evidence lives in its PROOF ROOT (`<evidence root>/<review step>/`), written only
|
|
5
|
+
* by the jailed `walkthrough_review` Tool. Crew trusts a proof root only through its SEAL: the last
|
|
6
|
+
* `WALKTHROUGH-SEAL {...}` line of that unit's persisted output, which the engine captured and no
|
|
7
|
+
* seat can reach. At every read:
|
|
8
|
+
*
|
|
9
|
+
* 1. the seal is parsed (`bundle_sha`, `overall`, `chapters: [{key, verdict}]`; a seal that does
|
|
10
|
+
* not agree with itself — `overall: PASS` over a chapter it lists as not passing — is refused);
|
|
11
|
+
* 2. `bundle_sha` is recomputed from disk: the sha256 of the UTF-8 text made of one line
|
|
12
|
+
* `<sha256 hex of the file> <relative posix path>\n` per regular file under the proof root,
|
|
13
|
+
* except the top-level `app/` and `data/` subtrees, sorted by path (byte order). A symbolic
|
|
14
|
+
* link anywhere outside those two subtrees is refused. Reproducible with the shell:
|
|
15
|
+
* `find . -path ./app -prune -o -path ./data -prune -o -type f -print | sed 's|^\./||' |
|
|
16
|
+
* LC_ALL=C sort | while read -r f; do shasum -a 256 "$f"; done | shasum -a 256`;
|
|
17
|
+
* 3. the proof root's own ledger (`<proof root>/.wicked-qe/`) must hold a verdict stamped with this
|
|
18
|
+
* crew run and step, and the newest stamped verdict per chapter (by take, then time) must equal
|
|
19
|
+
* the sealed chapter verdict.
|
|
20
|
+
*
|
|
21
|
+
* Any mismatch denies "walkthrough evidence changed after it was sealed" (deny-dominates). A sealed
|
|
22
|
+
* walkthrough that did not PASS denies, naming its chapters. Nothing here writes.
|
|
23
|
+
*/
|
|
24
|
+
import type { WalkthroughStepState } from 'wicked-crew-api-types';
|
|
25
|
+
import type { SessionView } from '../core/types.js';
|
|
26
|
+
export declare const SEAL_PREFIX = "WALKTHROUGH-SEAL ";
|
|
27
|
+
/** The fields of a seal acceptance reads. */
|
|
28
|
+
export interface WalkthroughSeal {
|
|
29
|
+
tree: string;
|
|
30
|
+
storyline_sha: string | null;
|
|
31
|
+
bundle_sha: string;
|
|
32
|
+
overall: string;
|
|
33
|
+
chapters: Array<{
|
|
34
|
+
key: string;
|
|
35
|
+
verdict: string;
|
|
36
|
+
}>;
|
|
37
|
+
edited_by: string | null;
|
|
38
|
+
}
|
|
39
|
+
/** The LAST seal line of a recorder's output, parsed; `null` when there is none or it is malformed. */
|
|
40
|
+
export declare function parseSeal(output: string | null): WalkthroughSeal | null;
|
|
41
|
+
/** Recompute a proof root's `bundle_sha` (see the module header for the exact form). */
|
|
42
|
+
export declare function computeBundleSha(proofRoot: string): Promise<{
|
|
43
|
+
ok: true;
|
|
44
|
+
sha: string;
|
|
45
|
+
files: number;
|
|
46
|
+
} | {
|
|
47
|
+
ok: false;
|
|
48
|
+
error: string;
|
|
49
|
+
}>;
|
|
50
|
+
/** One walkthrough step's acceptance. */
|
|
51
|
+
export interface WalkthroughGate {
|
|
52
|
+
stepId: string;
|
|
53
|
+
/** The seal was found AND every check against the files on disk held. */
|
|
54
|
+
sealed: boolean;
|
|
55
|
+
/** Sealed, PASS overall, every chapter PASS, and the ledger agrees. */
|
|
56
|
+
satisfied: boolean;
|
|
57
|
+
reason: string;
|
|
58
|
+
/** The sealed overall verdict; `null` when there is no usable seal. */
|
|
59
|
+
overall: string | null;
|
|
60
|
+
/** (WT-W3) The tree the seal binds, for the deliver card's "checked at <tree>"; `null` when there is no seal. */
|
|
61
|
+
tree: string | null;
|
|
62
|
+
/** The sealed chapters with what each proves (from the bundle-verified `result.json`). */
|
|
63
|
+
chapters: Array<{
|
|
64
|
+
key: string;
|
|
65
|
+
verdict: string;
|
|
66
|
+
proves: string[];
|
|
67
|
+
}>;
|
|
68
|
+
}
|
|
69
|
+
/** Resolve one walkthrough step's gate from its proof root and its recorder's persisted output. */
|
|
70
|
+
export declare function resolveWalkthroughGate(opts: {
|
|
71
|
+
runId: string;
|
|
72
|
+
stepId: string;
|
|
73
|
+
proofRoot: string | null;
|
|
74
|
+
output: string | null;
|
|
75
|
+
}): Promise<WalkthroughGate>;
|
|
76
|
+
/**
|
|
77
|
+
* `checkState` per creator step (§4.9), computed, never stored. `newest` is the newest walkthrough's
|
|
78
|
+
* gate (only a SEALED one proves anything); `atSec` per chapter is not sealed, so it is `null` here.
|
|
79
|
+
* One row per creator step that is proved by a sealed chapter or passed its own gate.
|
|
80
|
+
*/
|
|
81
|
+
export declare function walkthroughCheckStates(view: SessionView, newest: WalkthroughGate | null): WalkthroughStepState[];
|
|
82
|
+
//# sourceMappingURL=walkthrough-acceptance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"walkthrough-acceptance.d.ts","sourceRoot":"","sources":["../../src/qe/walkthrough-acceptance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAKH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIpD,eAAO,MAAM,WAAW,sBAAsB,CAAC;AAE/C,6CAA6C;AAC7C,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,uGAAuG;AACvG,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,eAAe,GAAG,IAAI,CA4BvE;AAKD,wFAAwF;AACxF,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAiClF;AAaD,yCAAyC;AACzC,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,yEAAyE;IACzE,MAAM,EAAE,OAAO,CAAC;IAChB,uEAAuE;IACvE,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,iHAAiH;IACjH,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,0FAA0F;IAC1F,QAAQ,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CACrE;AAED,mGAAmG;AACnG,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,GAAG,OAAO,CAAC,eAAe,CAAC,CAyF3B;AAKD;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,eAAe,GAAG,IAAI,GAC7B,oBAAoB,EAAE,CAgBxB"}
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WT-W2 (DES-walkthrough-proof §4.6, §4.9): the walkthrough half of the acceptance gate.
|
|
3
|
+
*
|
|
4
|
+
* A walkthrough's evidence lives in its PROOF ROOT (`<evidence root>/<review step>/`), written only
|
|
5
|
+
* by the jailed `walkthrough_review` Tool. Crew trusts a proof root only through its SEAL: the last
|
|
6
|
+
* `WALKTHROUGH-SEAL {...}` line of that unit's persisted output, which the engine captured and no
|
|
7
|
+
* seat can reach. At every read:
|
|
8
|
+
*
|
|
9
|
+
* 1. the seal is parsed (`bundle_sha`, `overall`, `chapters: [{key, verdict}]`; a seal that does
|
|
10
|
+
* not agree with itself — `overall: PASS` over a chapter it lists as not passing — is refused);
|
|
11
|
+
* 2. `bundle_sha` is recomputed from disk: the sha256 of the UTF-8 text made of one line
|
|
12
|
+
* `<sha256 hex of the file> <relative posix path>\n` per regular file under the proof root,
|
|
13
|
+
* except the top-level `app/` and `data/` subtrees, sorted by path (byte order). A symbolic
|
|
14
|
+
* link anywhere outside those two subtrees is refused. Reproducible with the shell:
|
|
15
|
+
* `find . -path ./app -prune -o -path ./data -prune -o -type f -print | sed 's|^\./||' |
|
|
16
|
+
* LC_ALL=C sort | while read -r f; do shasum -a 256 "$f"; done | shasum -a 256`;
|
|
17
|
+
* 3. the proof root's own ledger (`<proof root>/.wicked-qe/`) must hold a verdict stamped with this
|
|
18
|
+
* crew run and step, and the newest stamped verdict per chapter (by take, then time) must equal
|
|
19
|
+
* the sealed chapter verdict.
|
|
20
|
+
*
|
|
21
|
+
* Any mismatch denies "walkthrough evidence changed after it was sealed" (deny-dominates). A sealed
|
|
22
|
+
* walkthrough that did not PASS denies, naming its chapters. Nothing here writes.
|
|
23
|
+
*/
|
|
24
|
+
import { createHash } from 'node:crypto';
|
|
25
|
+
import { createReadStream, promises as fsp } from 'node:fs';
|
|
26
|
+
import { join } from 'node:path';
|
|
27
|
+
import { stepIdOf } from '../core/walkthrough-root.js';
|
|
28
|
+
import { readStampedVerdicts } from './ledger.js';
|
|
29
|
+
export const SEAL_PREFIX = 'WALKTHROUGH-SEAL ';
|
|
30
|
+
/** The LAST seal line of a recorder's output, parsed; `null` when there is none or it is malformed. */
|
|
31
|
+
export function parseSeal(output) {
|
|
32
|
+
if (output === null)
|
|
33
|
+
return null;
|
|
34
|
+
const lines = output.split('\n');
|
|
35
|
+
for (let i = lines.length - 1; i >= 0; i -= 1) {
|
|
36
|
+
const line = (lines[i] ?? '').trim();
|
|
37
|
+
if (!line.startsWith(SEAL_PREFIX))
|
|
38
|
+
continue;
|
|
39
|
+
let raw;
|
|
40
|
+
try {
|
|
41
|
+
raw = JSON.parse(line.slice(SEAL_PREFIX.length));
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
const o = raw;
|
|
47
|
+
if (o === null || typeof o !== 'object' || Array.isArray(o))
|
|
48
|
+
return null;
|
|
49
|
+
if (typeof o.bundle_sha !== 'string' || !/^[0-9a-f]{64}$/.test(o.bundle_sha))
|
|
50
|
+
return null;
|
|
51
|
+
if (typeof o.overall !== 'string' || !Array.isArray(o.chapters))
|
|
52
|
+
return null;
|
|
53
|
+
// The tree binds the seal to the recorded take; without it ledger rows of any tree could match.
|
|
54
|
+
if (typeof o.tree !== 'string' || o.tree === '')
|
|
55
|
+
return null;
|
|
56
|
+
const chapters = [];
|
|
57
|
+
for (const c of o.chapters) {
|
|
58
|
+
const ch = c;
|
|
59
|
+
if (ch === null || typeof ch !== 'object' || typeof ch.key !== 'string' || typeof ch.verdict !== 'string')
|
|
60
|
+
return null;
|
|
61
|
+
chapters.push({ key: ch.key, verdict: ch.verdict });
|
|
62
|
+
}
|
|
63
|
+
const s = (v) => (typeof v === 'string' && v !== '' ? v : null);
|
|
64
|
+
return { tree: o.tree, storyline_sha: s(o.storyline_sha), bundle_sha: o.bundle_sha, overall: o.overall, chapters, edited_by: s(o.edited_by) };
|
|
65
|
+
}
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
/** The subtrees of a proof root the seal does not cover: the app copy and its data dir. */
|
|
69
|
+
const UNSEALED_TOP = new Set(['app', 'data']);
|
|
70
|
+
/** Recompute a proof root's `bundle_sha` (see the module header for the exact form). */
|
|
71
|
+
export async function computeBundleSha(proofRoot) {
|
|
72
|
+
const files = [];
|
|
73
|
+
const walk = async (dir, rel) => {
|
|
74
|
+
const entries = await fsp.readdir(dir, { withFileTypes: true });
|
|
75
|
+
for (const e of entries) {
|
|
76
|
+
const r = rel === '' ? e.name : `${rel}/${e.name}`;
|
|
77
|
+
if (rel === '' && UNSEALED_TOP.has(e.name))
|
|
78
|
+
continue;
|
|
79
|
+
if (e.isSymbolicLink())
|
|
80
|
+
return `the proof root holds a link at ${r}`;
|
|
81
|
+
if (e.isDirectory()) {
|
|
82
|
+
const err = await walk(join(dir, e.name), r);
|
|
83
|
+
if (err !== null)
|
|
84
|
+
return err;
|
|
85
|
+
}
|
|
86
|
+
else if (e.isFile()) {
|
|
87
|
+
files.push(r);
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
return `the proof root holds a non-regular entry at ${r}`;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return null;
|
|
94
|
+
};
|
|
95
|
+
try {
|
|
96
|
+
const err = await walk(proofRoot, '');
|
|
97
|
+
if (err !== null)
|
|
98
|
+
return { ok: false, error: err };
|
|
99
|
+
// UTF-8 byte order, as `LC_ALL=C sort` orders the lines (a JS string compare is UTF-16 order).
|
|
100
|
+
files.sort((a, b) => Buffer.compare(Buffer.from(a, 'utf8'), Buffer.from(b, 'utf8')));
|
|
101
|
+
const outer = createHash('sha256');
|
|
102
|
+
for (const rel of files) {
|
|
103
|
+
const inner = await fileSha256(join(proofRoot, rel));
|
|
104
|
+
outer.update(`${inner} ${rel}\n`, 'utf8');
|
|
105
|
+
}
|
|
106
|
+
return { ok: true, sha: outer.digest('hex'), files: files.length };
|
|
107
|
+
}
|
|
108
|
+
catch (e) {
|
|
109
|
+
return { ok: false, error: `the proof root could not be read: ${e instanceof Error ? e.message : String(e)}` };
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* One file's sha256, STREAMED (a stitched take is a video; the walkthrough view is polled). Never
|
|
114
|
+
* memoized: a stat key cannot prove the bytes are unchanged (a shared writable mapping can change a
|
|
115
|
+
* page without another mtime/ctime update), and the gate must read what is on disk now (codex on #759).
|
|
116
|
+
*/
|
|
117
|
+
async function fileSha256(path) {
|
|
118
|
+
const hash = createHash('sha256');
|
|
119
|
+
for await (const chunk of createReadStream(path))
|
|
120
|
+
hash.update(chunk);
|
|
121
|
+
return hash.digest('hex');
|
|
122
|
+
}
|
|
123
|
+
/** Resolve one walkthrough step's gate from its proof root and its recorder's persisted output. */
|
|
124
|
+
export async function resolveWalkthroughGate(opts) {
|
|
125
|
+
const { runId, stepId, proofRoot } = opts;
|
|
126
|
+
let tree = null;
|
|
127
|
+
const deny = (reason, sealed = false, overall = null, chapters = []) => ({
|
|
128
|
+
stepId,
|
|
129
|
+
sealed,
|
|
130
|
+
satisfied: false,
|
|
131
|
+
reason: `walkthrough \`${stepId}\`: ${reason}`,
|
|
132
|
+
overall,
|
|
133
|
+
tree,
|
|
134
|
+
chapters,
|
|
135
|
+
});
|
|
136
|
+
if (proofRoot === null)
|
|
137
|
+
return deny('no proof root on this run — nothing was recorded there (missing ⇒ deny)');
|
|
138
|
+
const seal = parseSeal(opts.output);
|
|
139
|
+
if (seal === null)
|
|
140
|
+
return deny('not sealed — its recorder\'s output carries no well-formed WALKTHROUGH-SEAL line (missing ⇒ deny)');
|
|
141
|
+
tree = seal.tree;
|
|
142
|
+
const changed = (why) => deny(`walkthrough evidence changed after it was sealed (${why}) (tampered ⇒ deny)`);
|
|
143
|
+
const bundle = await computeBundleSha(proofRoot);
|
|
144
|
+
if (!bundle.ok)
|
|
145
|
+
return changed(bundle.error);
|
|
146
|
+
if (bundle.sha !== seal.bundle_sha)
|
|
147
|
+
return changed('bundle_sha recomputed from disk does not match the sealed value');
|
|
148
|
+
// The bundle covers result.json, so what it says each chapter proves is sealed too.
|
|
149
|
+
let result = {};
|
|
150
|
+
try {
|
|
151
|
+
result = JSON.parse(await fsp.readFile(join(proofRoot, 'result.json'), 'utf8'));
|
|
152
|
+
}
|
|
153
|
+
catch {
|
|
154
|
+
return changed('the sealed take has no readable result.json');
|
|
155
|
+
}
|
|
156
|
+
const proves = new Map();
|
|
157
|
+
for (const c of Array.isArray(result.chapters) ? result.chapters : []) {
|
|
158
|
+
const ch = c;
|
|
159
|
+
if (typeof ch.key === 'string') {
|
|
160
|
+
proves.set(ch.key, Array.isArray(ch.proves) ? ch.proves.filter((x) => typeof x === 'string') : []);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
const chapters = seal.chapters.map((c) => ({ key: c.key, verdict: c.verdict, proves: proves.get(c.key) ?? [] }));
|
|
164
|
+
// The ledger: rows stamped with this run and step must exist, and the newest per chapter must agree.
|
|
165
|
+
const ledger = readStampedVerdicts(proofRoot, runId, stepId);
|
|
166
|
+
if (ledger.error !== undefined)
|
|
167
|
+
return changed(`the proof root's ledger could not be read: ${ledger.error}`);
|
|
168
|
+
if (ledger.rows.length === 0) {
|
|
169
|
+
return deny(`its ledger holds no verdict stamped with run ${runId} and step ${stepId} (missing ⇒ deny)`, false, seal.overall, chapters);
|
|
170
|
+
}
|
|
171
|
+
const newest = new Map();
|
|
172
|
+
for (const row of ledger.rows) {
|
|
173
|
+
if (row.chapter === null)
|
|
174
|
+
continue;
|
|
175
|
+
if (row.tree !== seal.tree)
|
|
176
|
+
continue;
|
|
177
|
+
const prev = newest.get(row.chapter);
|
|
178
|
+
const later = prev === undefined ||
|
|
179
|
+
(row.take ?? 0) > (prev.take ?? 0) ||
|
|
180
|
+
((row.take ?? 0) === (prev.take ?? 0) && (row.verdict.created_at ?? '') > (prev.verdict.created_at ?? ''));
|
|
181
|
+
if (later)
|
|
182
|
+
newest.set(row.chapter, row);
|
|
183
|
+
}
|
|
184
|
+
// Exact chapter-set agreement (codex on #759): every sealed chapter has its own stamped verdict on
|
|
185
|
+
// the sealed tree, equal to the sealed one, and the ledger holds no chapter the seal omits.
|
|
186
|
+
const sealedKeys = new Set(seal.chapters.map((c) => c.key));
|
|
187
|
+
for (const c of seal.chapters) {
|
|
188
|
+
const row = newest.get(c.key);
|
|
189
|
+
if (row === undefined) {
|
|
190
|
+
return deny(`chapter ${c.key} has no stamped ledger verdict on tree ${seal.tree} (missing ⇒ deny)`, false, seal.overall, chapters);
|
|
191
|
+
}
|
|
192
|
+
if (row.verdict.verdict !== c.verdict) {
|
|
193
|
+
return changed(`chapter ${c.key}: the ledger's newest stamped verdict is ${row.verdict.verdict}, the seal ${c.verdict}`);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
for (const key of newest.keys()) {
|
|
197
|
+
if (!sealedKeys.has(key))
|
|
198
|
+
return changed(`the ledger holds a stamped verdict for chapter ${key}, which the seal does not list`);
|
|
199
|
+
}
|
|
200
|
+
if (result.overall !== seal.overall)
|
|
201
|
+
return changed(`result.json says ${String(result.overall)}, the seal ${seal.overall}`);
|
|
202
|
+
const notPassing = seal.chapters.filter((c) => c.verdict !== 'PASS');
|
|
203
|
+
if (seal.overall === 'PASS' && notPassing.length > 0) {
|
|
204
|
+
return deny(`the seal says PASS over chapters it lists as ${notPassing.map((c) => `${c.key} ${c.verdict}`).join(', ')} (inconsistent ⇒ deny)`);
|
|
205
|
+
}
|
|
206
|
+
if (seal.overall !== 'PASS' || seal.chapters.length === 0) {
|
|
207
|
+
const named = notPassing.length > 0 ? `: ${notPassing.map((c) => `${c.key} ${c.verdict}`).join(', ')}` : seal.chapters.length === 0 ? ': no chapters' : '';
|
|
208
|
+
return deny(`sealed ${seal.overall}${named} (not a pass)`, true, seal.overall, chapters);
|
|
209
|
+
}
|
|
210
|
+
return {
|
|
211
|
+
stepId,
|
|
212
|
+
sealed: true,
|
|
213
|
+
satisfied: true,
|
|
214
|
+
reason: `walkthrough \`${stepId}\`: PASS — ${seal.chapters.length} chapter${seal.chapters.length === 1 ? '' : 's'} sealed at tree ${seal.tree}, bundle and ledger re-verified`,
|
|
215
|
+
overall: seal.overall,
|
|
216
|
+
tree,
|
|
217
|
+
chapters,
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
/** The catalog ids whose removal by the accepted plan's floor override makes the pair the operator's. */
|
|
221
|
+
const PAIR_CATALOGS = new Set(['walkthrough_plan', 'walkthrough_review']);
|
|
222
|
+
/**
|
|
223
|
+
* `checkState` per creator step (§4.9), computed, never stored. `newest` is the newest walkthrough's
|
|
224
|
+
* gate (only a SEALED one proves anything); `atSec` per chapter is not sealed, so it is `null` here.
|
|
225
|
+
* One row per creator step that is proved by a sealed chapter or passed its own gate.
|
|
226
|
+
*/
|
|
227
|
+
export function walkthroughCheckStates(view, newest) {
|
|
228
|
+
const accepted = view.session.team_plan
|
|
229
|
+
?.accepted;
|
|
230
|
+
const removed = accepted?.floor_override?.remove;
|
|
231
|
+
const ownedByYou = Array.isArray(removed) && removed.some((r) => typeof r === 'string' && PAIR_CATALOGS.has(r));
|
|
232
|
+
const out = [];
|
|
233
|
+
for (const u of [...view.units].sort((a, b) => a.ord - b.ord)) {
|
|
234
|
+
if (u.role !== 'creator')
|
|
235
|
+
continue;
|
|
236
|
+
const stepId = stepIdOf(view, u);
|
|
237
|
+
const proving = newest?.sealed === true ? newest.chapters.filter((c) => c.proves.includes(stepId)) : [];
|
|
238
|
+
const provedBy = proving.map((c) => ({ chapter: c.key, atSec: null }));
|
|
239
|
+
if (proving.some((c) => c.verdict === 'FAIL'))
|
|
240
|
+
out.push({ stepId, checkState: 'failed', provedBy });
|
|
241
|
+
else if (proving.length > 0 && proving.every((c) => c.verdict === 'PASS'))
|
|
242
|
+
out.push({ stepId, checkState: 'checked', provedBy });
|
|
243
|
+
else if (u.status === 'done' || proving.length > 0)
|
|
244
|
+
out.push({ stepId, checkState: ownedByYou ? 'owned_by_you' : 'claimed', provedBy });
|
|
245
|
+
}
|
|
246
|
+
return out;
|
|
247
|
+
}
|
|
248
|
+
//# sourceMappingURL=walkthrough-acceptance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"walkthrough-acceptance.js","sourceRoot":"","sources":["../../src/qe/walkthrough-acceptance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-skill.d.ts","sourceRoot":"","sources":["../../src/skills/base-skill.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"base-skill.d.ts","sourceRoot":"","sources":["../../src/skills/base-skill.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAExD,OAAO,KAAK,EAAE,gBAAgB,IAAI,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAEtF,+FAA+F;AAC/F,eAAO,MAAM,yBAAyB,0BAA0B,CAAC;AAEjE,iGAAiG;AACjG,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC;AAExC;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;AAEjE,sGAAsG;AACtG,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,CAAyC,CAAC;AAE9F;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,QAAuC,CAAC;AAEzE,8FAA8F;AAC9F,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,eAAe,CAAC;CACzB;AAED,wFAAwF;AACxF,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,gFAAgF;IAChF,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,gGAAgG;IAChG,MAAM,EAAE,mBAAmB,CAAC;IAC5B,sGAAsG;IACtG,OAAO,EAAE,OAAO,CAAC;IACjB,+GAA+G;IAC/G,SAAS,EAAE,OAAO,CAAC;IACnB,iHAAiH;IACjH,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,uHAAuH;IACvH,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,oGAAoG;IACpG,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;CACrC;AAED,+DAA+D;AAC/D,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAErE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,eAAe,GAAG,IAAI,EACjC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GACnC,gBAAgB,GAAG,IAAI,CAWzB;AAED,iLAAiL;AACjL,eAAO,MAAM,uBAAuB,+CAAyB,CAAC;AAE9D;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,CAK1D;AAWD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAAG,IAAI,CAMxE;AAED,iGAAiG;AACjG,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAAG,MAAM,CAK1E"}
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
* RUNNING unit was handed is that unit's `skillsSnapshotHanded.gen`, joined with its
|
|
28
28
|
* `unitDispatched.baseSkill {name, role}` frame.
|
|
29
29
|
*/
|
|
30
|
+
import { GARDEN_INSTALL_COMMAND, REQUIRED_GARDEN_VERSION } from './plugin-source.js';
|
|
30
31
|
/** The engine-config variable wicked-core reads at intake (`workflow::BASE_SKILL_REF_ENV`). */
|
|
31
32
|
export const BASE_SKILL_REF_ENGINE_ENV = 'WICKED_BASE_SKILL_REF';
|
|
32
33
|
/** The shipped default: the cross-CLI discipline skill wicked-garden publishes (garden#1131). */
|
|
@@ -65,7 +66,7 @@ export function baseSkillPosture(config, published, inCatalog) {
|
|
|
65
66
|
return { name, policy: config.policy, present, inCatalog: catalog, gen, engineInput, finding };
|
|
66
67
|
}
|
|
67
68
|
/** The installer command that brings the plugin shipping the default base skill (F-W1-102: a crew-only install boots a daemon that refuses every launch until it is present). */
|
|
68
|
-
export const BASE_SKILL_INSTALL_HINT =
|
|
69
|
+
export const BASE_SKILL_INSTALL_HINT = GARDEN_INSTALL_COMMAND;
|
|
69
70
|
/**
|
|
70
71
|
* The ONE remedy every surface quotes — the `skills.base-skill` finding (`/health.baseSkill.finding`,
|
|
71
72
|
* `/health.warnings[]`, `/diagnostics.skills.findings[]`), `wicked-crew status`, and the 422
|
|
@@ -76,7 +77,7 @@ export const BASE_SKILL_INSTALL_HINT = 'npx wicked-installer install wicked-gard
|
|
|
76
77
|
export function baseSkillRemedy(inCatalog) {
|
|
77
78
|
const step = inCatalog
|
|
78
79
|
? 'it is in the catalog — POST /skills/publish hands it to the next launch'
|
|
79
|
-
: `install wicked-garden (${BASE_SKILL_INSTALL_HINT}), POST /skills/refresh-baseline, then POST /skills/publish`;
|
|
80
|
+
: `install wicked-garden >= ${REQUIRED_GARDEN_VERSION} (${BASE_SKILL_INSTALL_HINT}), POST /skills/refresh-baseline, then POST /skills/publish`;
|
|
80
81
|
return `${step}; set baseSkillRef "" (PUT /settings) to turn the base skill off explicitly`;
|
|
81
82
|
}
|
|
82
83
|
function missingFinding(name, gen, inCatalog) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-skill.js","sourceRoot":"","sources":["../../src/skills/base-skill.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;
|
|
1
|
+
{"version":3,"file":"base-skill.js","sourceRoot":"","sources":["../../src/skills/base-skill.ts"],"names":[],"mappings":"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"}
|
|
@@ -64,6 +64,20 @@
|
|
|
64
64
|
import type { SkillSourceKind } from '../core/types.js';
|
|
65
65
|
/** Explicit plugin-source override — the seam tests and proof scripts aim at a fixture plugin. */
|
|
66
66
|
export declare const SKILLS_SOURCE_ENV = "WICKED_CREW_SKILLS_SOURCE";
|
|
67
|
+
/**
|
|
68
|
+
* The oldest wicked-garden this daemon uses (crew#753). Automatic discovery passes over an installed
|
|
69
|
+
* plugin older than this with a `too-old` finding, and the daemon reports it as a blocking
|
|
70
|
+
* `skills.garden` error naming found vs required, so an old copy is never used without a word.
|
|
71
|
+
* 12.40.0 is the garden the walkthrough proof reads: its QE ledger rows carry the crew run id
|
|
72
|
+
* (WT-G4) and its demo recorder seals a take (WT-G1); the draft skill (12.35.0) and the verdict
|
|
73
|
+
* vocabulary (12.37.0) come with it. An explicit `WICKED_CREW_SKILLS_SOURCE` is deliberate and
|
|
74
|
+
* is not judged.
|
|
75
|
+
*/
|
|
76
|
+
export declare const REQUIRED_GARDEN_VERSION = "12.40.0";
|
|
77
|
+
/** The one install command the README, the findings and the refusals name. */
|
|
78
|
+
export declare const GARDEN_INSTALL_COMMAND = "npx wicked-installer install wicked-garden";
|
|
79
|
+
/** Whether `version` is at least the required garden (SemVer precedence; an unparsable version is not). */
|
|
80
|
+
export declare function gardenMeetsMinimum(version: string, required?: string): boolean;
|
|
67
81
|
/** Relative path of the Claude Code plugin manifest inside a plugin root. */
|
|
68
82
|
export declare const PLUGIN_MANIFEST_REL: string;
|
|
69
83
|
export interface PluginSource {
|
|
@@ -173,12 +187,14 @@ export declare function livePluginCacheDir(configDir: string): string;
|
|
|
173
187
|
/** The installer-managed copy (`npx wicked-installer install wicked-garden`, garden's `install.mjs`), for a config dir. */
|
|
174
188
|
export declare function installerCopyDir(configDir: string): string;
|
|
175
189
|
/** Why discovery passed over something that EXISTS (an absent path is never a finding) — logged by the daemon, asserted by tests. */
|
|
176
|
-
export type DiscoveryFindingKind = 'symlink' | 'non-semver-name' | 'version-mismatch' | 'no-manifest';
|
|
190
|
+
export type DiscoveryFindingKind = 'symlink' | 'non-semver-name' | 'version-mismatch' | 'no-manifest' | 'too-old';
|
|
177
191
|
export interface DiscoveryFinding {
|
|
178
192
|
kind: DiscoveryFindingKind;
|
|
179
193
|
/** The entry judged — the CANONICAL path (below the once-resolved config dir). */
|
|
180
194
|
path: string;
|
|
181
195
|
message: string;
|
|
196
|
+
/** `too-old` only: the plugin version found (crew#753). */
|
|
197
|
+
version?: string;
|
|
182
198
|
}
|
|
183
199
|
/** What discovery answered and what it passed over on the way (design v3.6; codex on #491). */
|
|
184
200
|
export interface Discovery {
|
|
@@ -198,6 +214,8 @@ export interface DiscoverOptions {
|
|
|
198
214
|
home?: string;
|
|
199
215
|
/** Test seam — see `DiscoveryHooks`. */
|
|
200
216
|
hooks?: DiscoveryHooks;
|
|
217
|
+
/** The minimum garden for the automatic tiers (default {@link REQUIRED_GARDEN_VERSION}). */
|
|
218
|
+
requiredVersion?: string;
|
|
201
219
|
}
|
|
202
220
|
/**
|
|
203
221
|
* Discover the installed plugin in the order design amendment v3.6 fixes (module header), with what
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-source.d.ts","sourceRoot":"","sources":["../../src/skills/plugin-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AAOH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKxD,kGAAkG;AAClG,eAAO,MAAM,iBAAiB,8BAA8B,CAAC;AAE7D,6EAA6E;AAC7E,eAAO,MAAM,mBAAmB,QAAwC,CAAC;AAEzE,MAAM,WAAW,YAAY;IAC3B,iFAAiF;IACjF,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,eAAe,CAAC;IACtB,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,EAAE,IAAI,GAAE,MAAkB,GAAG,MAAM,EAAE,CAWzG;AAED;;;GAGG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;IAE/C,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAFd,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM;CAS1B;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CASzD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,cAAc,GAAE,MAAa,GAAG,MAAM,GAAG,IAAI,CAezH;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG1D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAa,GAAG,MAAM,GAAG,IAAI,CAczF;AAED;;;;;;GAMG;AACH,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,kEAAkE;IAClE,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,kEAAkE;IAClE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAWD,4FAA4F;AAC5F,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAUpD;AAQD;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CA6B1D;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAQ1D;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAO3D;AAED,4FAA4F;AAC5F,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAG/D;AAED,uFAAuF;AACvF,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,2HAA2H;AAC3H,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,qIAAqI;AACrI,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin-source.d.ts","sourceRoot":"","sources":["../../src/skills/plugin-source.ts"],"names":[],"mappings":"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"}
|