wicked-crew 0.8.10 → 0.9.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.
Files changed (105) hide show
  1. package/README.md +11 -8
  2. package/dist/api/auth.d.ts +6 -5
  3. package/dist/api/auth.d.ts.map +1 -1
  4. package/dist/api/auth.js +7 -5
  5. package/dist/api/auth.js.map +1 -1
  6. package/dist/api/capture.d.ts +4 -0
  7. package/dist/api/capture.d.ts.map +1 -1
  8. package/dist/api/capture.js +6 -1
  9. package/dist/api/capture.js.map +1 -1
  10. package/dist/api/chat-freshness.d.ts +37 -0
  11. package/dist/api/chat-freshness.d.ts.map +1 -0
  12. package/dist/api/chat-freshness.js +130 -0
  13. package/dist/api/chat-freshness.js.map +1 -0
  14. package/dist/api/chat-scope.d.ts +15 -0
  15. package/dist/api/chat-scope.d.ts.map +1 -1
  16. package/dist/api/chat-scope.js +55 -1
  17. package/dist/api/chat-scope.js.map +1 -1
  18. package/dist/api/delivery-assurance.d.ts +48 -0
  19. package/dist/api/delivery-assurance.d.ts.map +1 -0
  20. package/dist/api/delivery-assurance.js +118 -0
  21. package/dist/api/delivery-assurance.js.map +1 -0
  22. package/dist/api/delivery-index.d.ts +11 -5
  23. package/dist/api/delivery-index.d.ts.map +1 -1
  24. package/dist/api/delivery-index.js +38 -7
  25. package/dist/api/delivery-index.js.map +1 -1
  26. package/dist/api/product.d.ts +67 -0
  27. package/dist/api/product.d.ts.map +1 -0
  28. package/dist/api/product.js +169 -0
  29. package/dist/api/product.js.map +1 -0
  30. package/dist/api/project-aggregates.d.ts +61 -0
  31. package/dist/api/project-aggregates.d.ts.map +1 -0
  32. package/dist/api/project-aggregates.js +296 -0
  33. package/dist/api/project-aggregates.js.map +1 -0
  34. package/dist/api/recording.d.ts +4 -0
  35. package/dist/api/recording.d.ts.map +1 -1
  36. package/dist/api/recording.js +6 -1
  37. package/dist/api/recording.js.map +1 -1
  38. package/dist/api/routes.d.ts +43 -17
  39. package/dist/api/routes.d.ts.map +1 -1
  40. package/dist/api/routes.js +245 -40
  41. package/dist/api/routes.js.map +1 -1
  42. package/dist/api/run-files.d.ts.map +1 -1
  43. package/dist/api/run-files.js +11 -2
  44. package/dist/api/run-files.js.map +1 -1
  45. package/dist/api/server.d.ts.map +1 -1
  46. package/dist/api/server.js +3 -0
  47. package/dist/api/server.js.map +1 -1
  48. package/dist/api/stall-watchdog.d.ts.map +1 -1
  49. package/dist/api/stall-watchdog.js +6 -1
  50. package/dist/api/stall-watchdog.js.map +1 -1
  51. package/dist/api/steering-landing.d.ts +1 -1
  52. package/dist/api/steering-landing.d.ts.map +1 -1
  53. package/dist/api/steering-landing.js +65 -29
  54. package/dist/api/steering-landing.js.map +1 -1
  55. package/dist/cli/index.d.ts.map +1 -1
  56. package/dist/cli/index.js +22 -1
  57. package/dist/cli/index.js.map +1 -1
  58. package/dist/core/adapter.d.ts +3 -0
  59. package/dist/core/adapter.d.ts.map +1 -1
  60. package/dist/core/adapter.js +23 -2
  61. package/dist/core/adapter.js.map +1 -1
  62. package/dist/core/assurance.d.ts +60 -0
  63. package/dist/core/assurance.d.ts.map +1 -0
  64. package/dist/core/assurance.js +88 -0
  65. package/dist/core/assurance.js.map +1 -0
  66. package/dist/core/deliver-exclusions.d.ts +9 -1
  67. package/dist/core/deliver-exclusions.d.ts.map +1 -1
  68. package/dist/core/deliver-exclusions.js +37 -2
  69. package/dist/core/deliver-exclusions.js.map +1 -1
  70. package/dist/core/deliver.d.ts +25 -1
  71. package/dist/core/deliver.d.ts.map +1 -1
  72. package/dist/core/deliver.js +77 -9
  73. package/dist/core/deliver.js.map +1 -1
  74. package/dist/core/deliverable-floor.d.ts.map +1 -1
  75. package/dist/core/deliverable-floor.js +6 -1
  76. package/dist/core/deliverable-floor.js.map +1 -1
  77. package/dist/core/inventory-claim.d.ts +34 -0
  78. package/dist/core/inventory-claim.d.ts.map +1 -0
  79. package/dist/core/inventory-claim.js +138 -0
  80. package/dist/core/inventory-claim.js.map +1 -0
  81. package/dist/core/types.d.ts +7 -0
  82. package/dist/core/types.d.ts.map +1 -1
  83. package/dist/core/types.js.map +1 -1
  84. package/dist/editors/registry.d.ts +3 -3
  85. package/dist/interactive/bridge-pool.d.ts +8 -2
  86. package/dist/interactive/bridge-pool.d.ts.map +1 -1
  87. package/dist/interactive/bridge-pool.js +7 -1
  88. package/dist/interactive/bridge-pool.js.map +1 -1
  89. package/dist/interactive/docs-index.d.ts +8 -0
  90. package/dist/interactive/docs-index.d.ts.map +1 -1
  91. package/dist/interactive/docs-index.js +5 -2
  92. package/dist/interactive/docs-index.js.map +1 -1
  93. package/dist/qe/acceptance.d.ts.map +1 -1
  94. package/dist/qe/acceptance.js +49 -1
  95. package/dist/qe/acceptance.js.map +1 -1
  96. package/dist/studio/assets/{index-gyu6tvrW.css → index--O1AdvNx.css} +1 -1
  97. package/dist/studio/assets/index-B1MYiNq-.js +567 -0
  98. package/dist/studio/editors/wicked-page/editor.json +1 -1
  99. package/dist/studio/editors/wicked-page/index.html +1 -1
  100. package/dist/studio/index.html +2 -2
  101. package/dist/studio/testid-inventory.json +535 -6
  102. package/endpoint-manifest.json +63 -2
  103. package/package.json +8 -8
  104. package/skills/wicked-crew/SKILL.md +2 -1
  105. package/dist/studio/assets/index-Djg8MmkU.js +0 -563
@@ -44,6 +44,7 @@ import { tmpdir } from 'node:os';
44
44
  import { basename, dirname, join, resolve, sep } from 'node:path';
45
45
  import { execCapped } from '../core/exec.js';
46
46
  import { codeGraphDb } from '../core/repoPaths.js';
47
+ import { freshnessClause } from './chat-freshness.js';
47
48
  import { estateExe, parseEstateTotals, resolveProjectGraphBinding } from '../projects/graph.js';
48
49
  let processScratchBase;
49
50
  /**
@@ -189,6 +190,22 @@ function row(r) {
189
190
  * launch (`resolveProjectGraphBinding` never indexes; a refresh is an explicit act).
190
191
  */
191
192
  export async function resolveChatScope(req, deps) {
193
+ const resolution = await resolveScopeOnly(req, deps);
194
+ const freshen = deps.freshen;
195
+ if (!resolution.ok || freshen === undefined || resolution.scope.repos.length === 0)
196
+ return resolution;
197
+ // crew#899: every repository in scope, at once (one bounded fetch each), before the statement
198
+ // is written — the seats are told what they are reading against its upstream.
199
+ const repos = await Promise.all(resolution.scope.repos.map(async (r) => {
200
+ const f = await freshen(r.rootPath).catch(() => ({ state: 'unknown' }));
201
+ if (f.state === 'stale' || f.state === 'refreshed') {
202
+ deps.log?.(`chat ${req.chatId}: repo ${r.id}${freshnessClause(f)}`);
203
+ }
204
+ return f.state === 'unknown' ? r : { ...r, freshness: f };
205
+ }));
206
+ return { ...resolution, scope: { ...resolution.scope, repos } };
207
+ }
208
+ async function resolveScopeOnly(req, deps) {
192
209
  const base = resolve(deps.scratchBase ?? chatScratchBase());
193
210
  const cwd = resolve(base, req.chatId);
194
211
  // `..` and `.` pass the route's character class; a resolved cwd that is not strictly INSIDE the
@@ -526,6 +543,40 @@ const CHAT_DECISIONS_LINES = [
526
543
  "in-force rule it restates. Label only the operator's words; crew decides.",
527
544
  ];
528
545
  export const CHAT_DECISIONS_DIRECTIVE = `${CHAT_DECISIONS_LINES.join('\n')}\n\n`;
546
+ /**
547
+ * crew#855: what a seat does with a message that asks for work (build, fix, add, change). A
548
+ * repo-bound chat (exactly one repository: the path's `repoRef`, deliverable) PROPOSES it as one
549
+ * `PLAN+` line with a creator step and its `touch` — the engine's first-creator change, which opens
550
+ * the `plan_approval` gate studio renders as the Continue in Build card (§4.7, ASK-K2b; a block
551
+ * without `touch` is refused `no_scope`). Any other scope has no repository a creator step could
552
+ * run in, so the seat answers with the plan and points at Continue in Build (the launch-form
553
+ * prefill) instead. Either way it never attempts the change itself.
554
+ */
555
+ export function chatWorkRequestLines(scope) {
556
+ const head = [
557
+ '## Requests for work',
558
+ '',
559
+ 'This chat cannot change anything: writes outside this directory are refused. When the message',
560
+ 'asks for work (build, fix, add, change, write code or docs), do NOT attempt it. Answer with a',
561
+ 'short plan: what changes, in which files, and how it will be checked.',
562
+ ];
563
+ if (scope.kind === 'repos' && scope.repos.length === 1) {
564
+ return [
565
+ ...head,
566
+ 'Then propose it on ONE line of its own. Replace each placeholder: `touch` lists the real',
567
+ 'repository-relative paths the work will change, from your plan.',
568
+ '',
569
+ ' PLAN+ {"steps":[{"catalog":"build"}],"touch":["<path>"],"reason":"<one line>"}',
570
+ '',
571
+ 'The operator approves it as Continue in Build; the line itself is not shown to them.',
572
+ ];
573
+ }
574
+ return [
575
+ ...head,
576
+ 'Then tell the operator to start it with Continue in Build and to pick the repository there:',
577
+ 'this chat has no single repository a build could run in.',
578
+ ];
579
+ }
529
580
  export function chatScopeStatement(chatId, scope, rules) {
530
581
  const lines = [
531
582
  '# Chat scope',
@@ -554,7 +605,7 @@ export function chatScopeStatement(chatId, scope, rules) {
554
605
  if (scope.kind === 'everything') {
555
606
  lines.push('## Scope: everything', '', 'This chat covers every repository registered with this daemon, across all projects.', '');
556
607
  }
557
- lines.push('## Repositories in scope (READ-ONLY)', '', ...scope.repos.map((r) => `- **${r.name}** (\`${r.id}\`): \`${r.rootPath}\``), '', 'Explore and answer questions about these repositories by reading them at the paths above.', 'Cite files relative to their repository root, prefixed with the repository name', '(for example `alpha/src/foo.ts` for a file at `/srv/repos/alpha/src/foo.ts`).', 'Do NOT read from any `wicked-worktrees/` subdirectory — those are engine-managed run', 'checkouts, not source code. Do NOT modify, create or delete anything inside these', 'repositories — this chat is read-only exploration; write scratch files only under this', 'directory. Nothing outside these repositories and this directory is in scope.', '');
608
+ lines.push('## Repositories in scope (READ-ONLY)', '', ...scope.repos.map((r) => `- **${r.name}** (\`${r.id}\`): \`${r.rootPath}\`${freshnessClause(r.freshness)}`), '', 'Explore and answer questions about these repositories by reading them at the paths above.', 'Cite files relative to their repository root, prefixed with the repository name', '(for example `alpha/src/foo.ts` for a file at `/srv/repos/alpha/src/foo.ts`).', 'Do NOT read from any `wicked-worktrees/` subdirectory — those are engine-managed run', 'checkouts, not source code. Do NOT modify, create or delete anything inside these', 'repositories — this chat is read-only exploration; write scratch files only under this', 'directory. Nothing outside these repositories and this directory is in scope.', '');
558
609
  }
559
610
  if (scope.dangling.length > 0 && scope.repos.length > 0) {
560
611
  lines.push(`Project members whose repository is no longer registered (not readable): ${scope.dangling
@@ -590,6 +641,9 @@ export function chatScopeStatement(chatId, scope, rules) {
590
641
  // ("## Work State / ## Next Move / ## Relevant Files") leaked into a chat reply verbatim.
591
642
  lines.push('## Answer format', '');
592
643
  lines.push('Reply with the answer itself: no working notes or status blocks (no "Work State", "Next Move"', 'or "Relevant Files" sections), no tool monologue, no compaction notices. Cite files relative', 'to their repository root (e.g. `alpha/src/foo.ts`, not the host path). If a claim could not', 'be grounded, say so in one line rather than asserting it.', '');
644
+ // crew#855 (DES-ASK-TEAM-CHAT-001 §4.7): a message that asks for WORK is never attempted here —
645
+ // every write outside the scratch root is refused, so an attempt only ends the turn at a denial.
646
+ lines.push(...chatWorkRequestLines(scope), '');
593
647
  // DC-S7 (§4.7): the project's in-force rules, as `[rule:<id>]` lines the seat can cite.
594
648
  if (rules !== undefined && rules.length > 0)
595
649
  lines.push(...rulesStatementLines(rules), '');
@@ -1 +1 @@
1
- {"version":3,"file":"chat-scope.js","sourceRoot":"","sources":["../../src/api/chat-scope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-scope.js","sourceRoot":"","sources":["../../src/api/chat-scope.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * What assures a DELIVERY (wicked-core#850, codex audit EX-03 / EX-04) — pure helpers the deliver
3
+ * paths in `routes.ts` share.
4
+ *
5
+ * EX-03: a run whose assurance contract requires `qe_acceptance` (a workflow's
6
+ * `required_instruments`; the engine carries it on `AgentSession.assurance.required` and leaves the
7
+ * enforcement to the launcher) delivers ONLY on a QE verdict that is a PASS attributed to the run.
8
+ * A FAIL, any other verdict, no verdict, an unattributed verdict or an unreadable ledger refuses the
9
+ * delivery — at the deliver gate's approve, at a gated resume, and at a post-hoc lift. Nothing is
10
+ * pushed, and a deliver gate stays open for the approve to be retried once the PASS is recorded.
11
+ *
12
+ * EX-04: a post-hoc lift (`POST /runs/:id/deliver`) has no engine verification behind the tree it
13
+ * pushes, so it is labelled UNVERIFIED with the run's tree before and after the lift — in the PR
14
+ * body (the deliver script, `DELIVER_UNVERIFIED_MARKER`) and in the run record
15
+ * (`AgentSession.delivery_assurance`, rehydrated from the `run.delivered` audit entry).
16
+ */
17
+ import type { AssuranceReceipt, DeliveryAssurance, QeAcceptanceCheck, QeAcceptanceRefusal, SessionView, WorkUnit } from '../core/types.js';
18
+ import type { AcceptanceView } from '../qe/acceptance.js';
19
+ /** The contract token whose enforcement the engine leaves to the launcher. */
20
+ export declare const QE_ACCEPTANCE = "qe_acceptance";
21
+ /** `QeAcceptanceRefusal.code`. */
22
+ export declare const QE_ACCEPTANCE_REQUIRED_CODE: "qe_acceptance_required";
23
+ /** Whether the run's persisted contract requires a QE acceptance PASS before delivery. A run from an
24
+ * engine without the contract carries none and requires nothing here (its gate is the old one). */
25
+ export declare function requiresQeAcceptance(view: SessionView): boolean;
26
+ /** The check a delivery ran, from the acceptance view resolved with the requirement FORCED on (a
27
+ * contract that requires QE acceptance owes a verdict even when no phase raises `verified_evidence`). */
28
+ export declare function qeAcceptanceFromView(view: AcceptanceView): QeAcceptanceCheck;
29
+ /** A check that could not be read at all is a refusal, naming why (deny-dominates). */
30
+ export declare function unreadableQeAcceptance(err: unknown): QeAcceptanceCheck;
31
+ /** The 409 body of a delivery the QE acceptance requirement refused. */
32
+ export declare function qeAcceptanceRefusal(runId: string, check: QeAcceptanceCheck, assurance: AssuranceReceipt | null, where: 'gate' | 'post_hoc'): QeAcceptanceRefusal;
33
+ /** A unit's persisted receipt (`WorkUnit.assurance`), or `null`. */
34
+ export declare function receiptOf(unit: WorkUnit | undefined): AssuranceReceipt | null;
35
+ /**
36
+ * The run's receipts aggregated for a delivery no engine lift preceded (a post-hoc one): the
37
+ * contract from the session (else the first receipt), every instrument any gate ran, every skip
38
+ * (first reason per instrument), the delivered `tree`. The who-fields are per-gate facts with no
39
+ * single answer across a run, so they are `null` here — each unit's receipt keeps its own.
40
+ * `null` when the run carries neither a contract nor a receipt (an engine before the contract).
41
+ */
42
+ export declare function aggregateReceipt(view: SessionView, tree: string | null): AssuranceReceipt | null;
43
+ /** The post-hoc delivery's assurance (EX-04): never verified, both trees named. */
44
+ export declare function postHocDeliveryAssurance(view: SessionView, trees: {
45
+ treeBefore: string | null;
46
+ treeAfter: string | null;
47
+ } | null, qeAcceptance: QeAcceptanceCheck | null): DeliveryAssurance;
48
+ //# sourceMappingURL=delivery-assurance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delivery-assurance.d.ts","sourceRoot":"","sources":["../../src/api/delivery-assurance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAEV,gBAAgB,EAEhB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,QAAQ,EACT,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,8EAA8E;AAC9E,eAAO,MAAM,aAAa,kBAAkB,CAAC;AAE7C,kCAAkC;AAClC,eAAO,MAAM,2BAA2B,EAAG,wBAAiC,CAAC;AAE7E;oGACoG;AACpG,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAE/D;AAED;0GAC0G;AAC1G,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,cAAc,GAAG,iBAAiB,CAe5E;AAED,uFAAuF;AACvF,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,CAOtE;AAED,wEAAwE;AACxE,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,iBAAiB,EACxB,SAAS,EAAE,gBAAgB,GAAG,IAAI,EAClC,KAAK,EAAE,MAAM,GAAG,UAAU,GACzB,mBAAmB,CAWrB;AAED,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,gBAAgB,GAAG,IAAI,CAE7E;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,gBAAgB,GAAG,IAAI,CAyBhG;AAED,mFAAmF;AACnF,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE;IAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,EACrE,YAAY,EAAE,iBAAiB,GAAG,IAAI,GACrC,iBAAiB,CAUnB"}
@@ -0,0 +1,118 @@
1
+ /**
2
+ * What assures a DELIVERY (wicked-core#850, codex audit EX-03 / EX-04) — pure helpers the deliver
3
+ * paths in `routes.ts` share.
4
+ *
5
+ * EX-03: a run whose assurance contract requires `qe_acceptance` (a workflow's
6
+ * `required_instruments`; the engine carries it on `AgentSession.assurance.required` and leaves the
7
+ * enforcement to the launcher) delivers ONLY on a QE verdict that is a PASS attributed to the run.
8
+ * A FAIL, any other verdict, no verdict, an unattributed verdict or an unreadable ledger refuses the
9
+ * delivery — at the deliver gate's approve, at a gated resume, and at a post-hoc lift. Nothing is
10
+ * pushed, and a deliver gate stays open for the approve to be retried once the PASS is recorded.
11
+ *
12
+ * EX-04: a post-hoc lift (`POST /runs/:id/deliver`) has no engine verification behind the tree it
13
+ * pushes, so it is labelled UNVERIFIED with the run's tree before and after the lift — in the PR
14
+ * body (the deliver script, `DELIVER_UNVERIFIED_MARKER`) and in the run record
15
+ * (`AgentSession.delivery_assurance`, rehydrated from the `run.delivered` audit entry).
16
+ */
17
+ /** The contract token whose enforcement the engine leaves to the launcher. */
18
+ export const QE_ACCEPTANCE = 'qe_acceptance';
19
+ /** `QeAcceptanceRefusal.code`. */
20
+ export const QE_ACCEPTANCE_REQUIRED_CODE = 'qe_acceptance_required';
21
+ /** Whether the run's persisted contract requires a QE acceptance PASS before delivery. A run from an
22
+ * engine without the contract carries none and requires nothing here (its gate is the old one). */
23
+ export function requiresQeAcceptance(view) {
24
+ return (view.session.assurance?.required ?? []).includes(QE_ACCEPTANCE);
25
+ }
26
+ /** The check a delivery ran, from the acceptance view resolved with the requirement FORCED on (a
27
+ * contract that requires QE acceptance owes a verdict even when no phase raises `verified_evidence`). */
28
+ export function qeAcceptanceFromView(view) {
29
+ const verdict = view.acceptance?.verdict ?? null;
30
+ // The gate combines walkthrough seals with the repo ledger, and a walkthrough-only requirement
31
+ // leaves the ledger optional there. `qe_acceptance` is the LEDGER's attributed PASS: the gate must
32
+ // hold AND that verdict must be a PASS (codex r1 on the EX-03 PR).
33
+ const ledgerPass = verdict?.verdict === 'PASS';
34
+ return {
35
+ satisfied: view.gate.satisfied && ledgerPass,
36
+ reason: view.gate.satisfied && !ledgerPass
37
+ ? `the QE ledger holds no PASS attributed to this run (${view.gate.reason}); walkthrough evidence alone does not satisfy qe_acceptance`
38
+ : view.gate.reason,
39
+ verdictId: verdict?.id ?? null,
40
+ reviewer: verdict?.reviewer ?? null,
41
+ };
42
+ }
43
+ /** A check that could not be read at all is a refusal, naming why (deny-dominates). */
44
+ export function unreadableQeAcceptance(err) {
45
+ return {
46
+ satisfied: false,
47
+ reason: `the QE acceptance answer could not be read: ${err instanceof Error ? err.message : String(err)} (unreadable ⇒ deny)`,
48
+ verdictId: null,
49
+ reviewer: null,
50
+ };
51
+ }
52
+ /** The 409 body of a delivery the QE acceptance requirement refused. */
53
+ export function qeAcceptanceRefusal(runId, check, assurance, where) {
54
+ return {
55
+ code: QE_ACCEPTANCE_REQUIRED_CODE,
56
+ error: `run ${runId} requires QE acceptance (qe_acceptance) and its delivery is refused: ${check.reason}. ` +
57
+ (where === 'gate'
58
+ ? 'Nothing was pushed and the deliver gate stays open — record a PASS attributed to this run (garden qe accept), then approve again.'
59
+ : 'Nothing was pushed — record a PASS attributed to this run (garden qe accept), then deliver again.'),
60
+ acceptance: check,
61
+ assurance,
62
+ };
63
+ }
64
+ /** A unit's persisted receipt (`WorkUnit.assurance`), or `null`. */
65
+ export function receiptOf(unit) {
66
+ return unit?.assurance ?? null;
67
+ }
68
+ /**
69
+ * The run's receipts aggregated for a delivery no engine lift preceded (a post-hoc one): the
70
+ * contract from the session (else the first receipt), every instrument any gate ran, every skip
71
+ * (first reason per instrument), the delivered `tree`. The who-fields are per-gate facts with no
72
+ * single answer across a run, so they are `null` here — each unit's receipt keeps its own.
73
+ * `null` when the run carries neither a contract nor a receipt (an engine before the contract).
74
+ */
75
+ export function aggregateReceipt(view, tree) {
76
+ const receipts = (view.units ?? [])
77
+ .slice()
78
+ .sort((a, b) => a.ord - b.ord)
79
+ .map((u) => u.assurance)
80
+ .filter((r) => r !== undefined && r !== null);
81
+ const contract = view.session.assurance ?? (receipts[0] !== undefined ? { mode: receipts[0].mode, required: receipts[0].required } : null);
82
+ if (contract === null)
83
+ return null;
84
+ const ran = [];
85
+ const skipped = [];
86
+ for (const r of receipts) {
87
+ for (const i of r.ran)
88
+ if (!ran.includes(i))
89
+ ran.push(i);
90
+ for (const s of r.skipped)
91
+ if (!skipped.some((k) => k.instrument === s.instrument))
92
+ skipped.push(s);
93
+ }
94
+ return {
95
+ mode: contract.mode,
96
+ required: [...contract.required],
97
+ ran,
98
+ skipped,
99
+ creator: null,
100
+ evaluator: null,
101
+ judge: null,
102
+ tree,
103
+ attempt: 0,
104
+ };
105
+ }
106
+ /** The post-hoc delivery's assurance (EX-04): never verified, both trees named. */
107
+ export function postHocDeliveryAssurance(view, trees, qeAcceptance) {
108
+ const treeAfter = trees?.treeAfter ?? null;
109
+ return {
110
+ verified: false,
111
+ via: 'post_hoc',
112
+ receipt: aggregateReceipt(view, treeAfter),
113
+ treeBefore: trees?.treeBefore ?? null,
114
+ treeAfter,
115
+ qeAcceptance,
116
+ };
117
+ }
118
+ //# sourceMappingURL=delivery-assurance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delivery-assurance.js","sourceRoot":"","sources":["../../src/api/delivery-assurance.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@
20
20
  * hydrate — that is an unbounded boot cost. Historical runs still resolve their URL through
21
21
  * the per-run output endpoint.
22
22
  */
23
+ import type { DeliveryAssurance } from 'wicked-crew-api-types';
23
24
  import type { AuditLog } from './audit.js';
24
25
  import type { AgentSession, SessionView, WorkUnit, WorkflowDef } from '../core/types.js';
25
26
  import { type PushedOnlyDelivery } from '../core/deliver.js';
@@ -227,8 +228,8 @@ export type DeliveryRecord = {
227
228
  export declare function deliveryRecordFrom(output: string): DeliveryRecord | null;
228
229
  /**
229
230
  * This run's deliver unit, or `null`. The composed id suffix (`<base>:deliver`) is the
230
- * primary key; the `tool_cmd` probe is the fallback for an operator OVERLAY that carried the
231
- * deliver phase under its own name — do NOT key on `workflow_id`, which is plain for
231
+ * primary key; the `deliver` catalog entry and crew's deliver-script refusal marker (crew#720 S3) find an
232
+ * operator OVERLAY that carried the deliver phase under its own name — do NOT key on `workflow_id`, which is plain for
232
233
  * overlay-carried deliver phases (crew#321).
233
234
  */
234
235
  export declare function deliverUnitOf(view: SessionView): WorkUnit | null;
@@ -315,6 +316,8 @@ export declare class DeliveryIndex {
315
316
  private readonly requested;
316
317
  /** N1: runs whose deliver phase pushed the branch and could open no PR (a non-GitHub origin). */
317
318
  private readonly runToPushed;
319
+ /** (wicked-core#850 EX-04) How a post-hoc delivery was assured — `verified: false` and its trees. */
320
+ private readonly runToAssurance;
318
321
  /**
319
322
  * Load deliveries from EVERY `run.delivered` entry in the trail — exhaustively, not capped
320
323
  * (BRIEF-UX-002 C5, the same defect class as `RetryIndex.hydrate`: a durable record must
@@ -325,10 +328,13 @@ export declare class DeliveryIndex {
325
328
  * FOURTH should trigger consolidating them into one pass, per crew#321.)
326
329
  */
327
330
  hydrate(audit: AuditLog, log?: (msg: string) => void): Promise<void>;
328
- /** Record the run's delivered PR URL (idempotent — the newest write wins). */
329
- set(runId: string, url: string): void;
331
+ /** Record the run's delivered PR URL (idempotent — the newest write wins) and, for a post-hoc
332
+ * delivery, how it was assured (EX-04). */
333
+ set(runId: string, url: string, assurance?: DeliveryAssurance): void;
334
+ /** How the run's recorded delivery was assured (EX-04) — set for a post-hoc delivery only. */
335
+ assuranceFor(runId: string): DeliveryAssurance | undefined;
330
336
  /** Record a PUSH-ONLY delivery (N1). A recorded PR URL is never downgraded by it. */
331
- setPushed(runId: string, pushed: PushedOnlyDelivery): void;
337
+ setPushed(runId: string, pushed: PushedOnlyDelivery, assurance?: DeliveryAssurance): void;
332
338
  /** The recorded push-only delivery for this run, or `undefined` (N1). */
333
339
  pushedFor(runId: string): PushedOnlyDelivery | undefined;
334
340
  /** crew#762: record that a post-hoc delivery was attempted for this run (the audit entry is the caller's). */
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-index.d.ts","sourceRoot":"","sources":["../../src/api/delivery-index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery-index.d.ts","sourceRoot":"","sources":["../../src/api/delivery-index.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@
22
22
  */
23
23
  import { execCapped } from '../core/exec.js';
24
24
  import { lastDeliverMarker, trustedDeliverOutcome } from '../core/deliver-triage.js';
25
- import { DELIVER_LIFT_CONFLICT_MARKER, DELIVER_PHASE_ID, DELIVER_PUSHED_NO_PR_MARKER, pushedOnlyFrom, } from '../core/deliver.js';
25
+ import { DELIVER_LIFT_CONFLICT_MARKER, DELIVER_PHASE_ID, DELIVER_PUSHED_NO_PR_MARKER, DELIVER_PUSH_REJECTED_MARKER, pushedOnlyFrom, } from '../core/deliver.js';
26
26
  import { runIdentityOf, runWorkflowDef } from '../core/run-identity.js';
27
27
  import { coreUnitId } from './evidence.js';
28
28
  /** The wire spelling of a recorded push-only delivery (N1). */
@@ -389,15 +389,20 @@ export function deliveryRecordFrom(output) {
389
389
  }
390
390
  /**
391
391
  * This run's deliver unit, or `null`. The composed id suffix (`<base>:deliver`) is the
392
- * primary key; the `tool_cmd` probe is the fallback for an operator OVERLAY that carried the
393
- * deliver phase under its own name — do NOT key on `workflow_id`, which is plain for
392
+ * primary key; the `deliver` catalog entry and crew's deliver-script refusal marker (crew#720 S3) find an
393
+ * operator OVERLAY that carried the deliver phase under its own name — do NOT key on `workflow_id`, which is plain for
394
394
  * overlay-carried deliver phases (crew#321).
395
395
  */
396
396
  export function deliverUnitOf(view) {
397
397
  const byId = view.units.find((u) => u.id.endsWith(':deliver'));
398
398
  if (byId !== undefined)
399
399
  return byId;
400
- return view.units.find((u) => (u.tool_cmd ?? []).join(' ').includes('gh pr create')) ?? null;
400
+ // crew#720 S3: by STRUCTURE, never by a forge CLI string: the `deliver` catalog entry of a
401
+ // composed plan, or crew's own deliver script under another phase name, recognised by the
402
+ // refusal marker its contract prints (every crew deliver script has carried it since crew#432,
403
+ // so a unit planned before this change, still in flight across the upgrade, is found too —
404
+ // codex on #905). The old `gh pr create` substring tied delivery detection to GitHub's CLI.
405
+ return (view.units.find((u) => u.catalog === DELIVER_PHASE_ID || (u.tool_cmd ?? []).some((arg) => arg.includes(DELIVER_PUSH_REJECTED_MARKER))) ?? null);
401
406
  }
402
407
  /**
403
408
  * The ONE post-terminal `workOutput` read that turns a run's deliver transcript into its
@@ -565,6 +570,8 @@ export class DeliveryIndex {
565
570
  requested = new Set();
566
571
  /** N1: runs whose deliver phase pushed the branch and could open no PR (a non-GitHub origin). */
567
572
  runToPushed = new Map();
573
+ /** (wicked-core#850 EX-04) How a post-hoc delivery was assured — `verified: false` and its trees. */
574
+ runToAssurance = new Map();
568
575
  /**
569
576
  * Load deliveries from EVERY `run.delivered` entry in the trail — exhaustively, not capped
570
577
  * (BRIEF-UX-002 C5, the same defect class as `RetryIndex.hydrate`: a durable record must
@@ -592,6 +599,9 @@ export class DeliveryIndex {
592
599
  decided.add(entry.runId);
593
600
  this.runToPushed.delete(entry.runId);
594
601
  this.runToUrl.set(entry.runId, url);
602
+ const assurance = entry.detail?.['assurance'];
603
+ if (isDeliveryAssurance(assurance))
604
+ this.runToAssurance.set(entry.runId, assurance);
595
605
  continue;
596
606
  }
597
607
  if (pushedOnly.has(entry.runId))
@@ -604,6 +614,9 @@ export class DeliveryIndex {
604
614
  typeof pushed.remote === 'string') {
605
615
  pushedOnly.add(entry.runId);
606
616
  this.runToPushed.set(entry.runId, { branch: pushed.branch, remote: pushed.remote });
617
+ const assurance = entry.detail?.['assurance'];
618
+ if (isDeliveryAssurance(assurance))
619
+ this.runToAssurance.set(entry.runId, assurance);
607
620
  continue;
608
621
  }
609
622
  // Newest entry decides, even when malformed — a corrupt newest write never resurrects an
@@ -620,16 +633,27 @@ export class DeliveryIndex {
620
633
  log?.(`[runs] delivery-index hydrate failed (prior runs read as undelivered until restart): ${err instanceof Error ? err.message : String(err)}`);
621
634
  }
622
635
  }
623
- /** Record the run's delivered PR URL (idempotent — the newest write wins). */
624
- set(runId, url) {
636
+ /** Record the run's delivered PR URL (idempotent — the newest write wins) and, for a post-hoc
637
+ * delivery, how it was assured (EX-04). */
638
+ set(runId, url, assurance) {
625
639
  this.runToPushed.delete(runId);
626
640
  this.runToUrl.set(runId, url);
641
+ if (assurance !== undefined)
642
+ this.runToAssurance.set(runId, assurance);
643
+ else
644
+ this.runToAssurance.delete(runId);
645
+ }
646
+ /** How the run's recorded delivery was assured (EX-04) — set for a post-hoc delivery only. */
647
+ assuranceFor(runId) {
648
+ return this.runToAssurance.get(runId);
627
649
  }
628
650
  /** Record a PUSH-ONLY delivery (N1). A recorded PR URL is never downgraded by it. */
629
- setPushed(runId, pushed) {
651
+ setPushed(runId, pushed, assurance) {
630
652
  if (this.runToUrl.has(runId))
631
653
  return;
632
654
  this.runToPushed.set(runId, pushed);
655
+ if (assurance !== undefined)
656
+ this.runToAssurance.set(runId, assurance);
633
657
  }
634
658
  /** The recorded push-only delivery for this run, or `undefined` (N1). */
635
659
  pushedFor(runId) {
@@ -656,6 +680,13 @@ export class DeliveryIndex {
656
680
  return this.runToUrl.get(runId);
657
681
  }
658
682
  }
683
+ /** A trail-read `DeliveryAssurance` (the `run.delivered` entry's `detail.assurance`), shape-checked. */
684
+ function isDeliveryAssurance(v) {
685
+ if (typeof v !== 'object' || v === null)
686
+ return false;
687
+ const a = v;
688
+ return typeof a['verified'] === 'boolean' && (a['via'] === 'post_hoc' || a['via'] === 'deliver_lift');
689
+ }
659
690
  /**
660
691
  * crew#755: what a launch with neither a workflow nor a plan ran, in the `POST /runs` 201 body.
661
692
  * The engine's free-text planner makes ONE unit, the brief verbatim (wicked-core D-11).