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.
- package/README.md +11 -8
- package/dist/api/auth.d.ts +6 -5
- package/dist/api/auth.d.ts.map +1 -1
- package/dist/api/auth.js +7 -5
- package/dist/api/auth.js.map +1 -1
- package/dist/api/capture.d.ts +4 -0
- package/dist/api/capture.d.ts.map +1 -1
- package/dist/api/capture.js +6 -1
- package/dist/api/capture.js.map +1 -1
- package/dist/api/chat-freshness.d.ts +37 -0
- package/dist/api/chat-freshness.d.ts.map +1 -0
- package/dist/api/chat-freshness.js +130 -0
- package/dist/api/chat-freshness.js.map +1 -0
- package/dist/api/chat-scope.d.ts +15 -0
- package/dist/api/chat-scope.d.ts.map +1 -1
- package/dist/api/chat-scope.js +55 -1
- package/dist/api/chat-scope.js.map +1 -1
- package/dist/api/delivery-assurance.d.ts +48 -0
- package/dist/api/delivery-assurance.d.ts.map +1 -0
- package/dist/api/delivery-assurance.js +118 -0
- package/dist/api/delivery-assurance.js.map +1 -0
- package/dist/api/delivery-index.d.ts +11 -5
- package/dist/api/delivery-index.d.ts.map +1 -1
- package/dist/api/delivery-index.js +38 -7
- package/dist/api/delivery-index.js.map +1 -1
- package/dist/api/product.d.ts +67 -0
- package/dist/api/product.d.ts.map +1 -0
- package/dist/api/product.js +169 -0
- package/dist/api/product.js.map +1 -0
- package/dist/api/project-aggregates.d.ts +61 -0
- package/dist/api/project-aggregates.d.ts.map +1 -0
- package/dist/api/project-aggregates.js +296 -0
- package/dist/api/project-aggregates.js.map +1 -0
- package/dist/api/recording.d.ts +4 -0
- package/dist/api/recording.d.ts.map +1 -1
- package/dist/api/recording.js +6 -1
- package/dist/api/recording.js.map +1 -1
- package/dist/api/routes.d.ts +43 -17
- package/dist/api/routes.d.ts.map +1 -1
- package/dist/api/routes.js +245 -40
- package/dist/api/routes.js.map +1 -1
- package/dist/api/run-files.d.ts.map +1 -1
- package/dist/api/run-files.js +11 -2
- package/dist/api/run-files.js.map +1 -1
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +3 -0
- package/dist/api/server.js.map +1 -1
- package/dist/api/stall-watchdog.d.ts.map +1 -1
- package/dist/api/stall-watchdog.js +6 -1
- package/dist/api/stall-watchdog.js.map +1 -1
- package/dist/api/steering-landing.d.ts +1 -1
- package/dist/api/steering-landing.d.ts.map +1 -1
- package/dist/api/steering-landing.js +65 -29
- package/dist/api/steering-landing.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +22 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/core/adapter.d.ts +3 -0
- package/dist/core/adapter.d.ts.map +1 -1
- package/dist/core/adapter.js +23 -2
- package/dist/core/adapter.js.map +1 -1
- package/dist/core/assurance.d.ts +60 -0
- package/dist/core/assurance.d.ts.map +1 -0
- package/dist/core/assurance.js +88 -0
- package/dist/core/assurance.js.map +1 -0
- package/dist/core/deliver-exclusions.d.ts +9 -1
- package/dist/core/deliver-exclusions.d.ts.map +1 -1
- package/dist/core/deliver-exclusions.js +37 -2
- package/dist/core/deliver-exclusions.js.map +1 -1
- package/dist/core/deliver.d.ts +25 -1
- package/dist/core/deliver.d.ts.map +1 -1
- package/dist/core/deliver.js +77 -9
- package/dist/core/deliver.js.map +1 -1
- package/dist/core/deliverable-floor.d.ts.map +1 -1
- package/dist/core/deliverable-floor.js +6 -1
- package/dist/core/deliverable-floor.js.map +1 -1
- package/dist/core/inventory-claim.d.ts +34 -0
- package/dist/core/inventory-claim.d.ts.map +1 -0
- package/dist/core/inventory-claim.js +138 -0
- package/dist/core/inventory-claim.js.map +1 -0
- package/dist/core/types.d.ts +7 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/editors/registry.d.ts +3 -3
- package/dist/interactive/bridge-pool.d.ts +8 -2
- package/dist/interactive/bridge-pool.d.ts.map +1 -1
- package/dist/interactive/bridge-pool.js +7 -1
- package/dist/interactive/bridge-pool.js.map +1 -1
- package/dist/interactive/docs-index.d.ts +8 -0
- package/dist/interactive/docs-index.d.ts.map +1 -1
- package/dist/interactive/docs-index.js +5 -2
- package/dist/interactive/docs-index.js.map +1 -1
- package/dist/qe/acceptance.d.ts.map +1 -1
- package/dist/qe/acceptance.js +49 -1
- package/dist/qe/acceptance.js.map +1 -1
- package/dist/studio/assets/{index-gyu6tvrW.css → index--O1AdvNx.css} +1 -1
- package/dist/studio/assets/index-B1MYiNq-.js +567 -0
- package/dist/studio/editors/wicked-page/editor.json +1 -1
- package/dist/studio/editors/wicked-page/index.html +1 -1
- package/dist/studio/index.html +2 -2
- package/dist/studio/testid-inventory.json +535 -6
- package/endpoint-manifest.json +63 -2
- package/package.json +8 -8
- package/skills/wicked-crew/SKILL.md +2 -1
- package/dist/studio/assets/index-Djg8MmkU.js +0 -563
package/dist/api/chat-scope.js
CHANGED
|
@@ -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}
|
|
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":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClI,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAElE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAgD,MAAM,qBAAqB,CAAC;AACpG,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,0BAA0B,EAAoC,MAAM,sBAAsB,CAAC;AAuElI,IAAI,kBAAsC,CAAC;AAE3C;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe;IAC7B,kBAAkB,KAAK,IAAI,CACzB,MAAM,EAAE,EACR,mBAAmB,EACnB,GAAG,OAAO,CAAC,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CACnD,CAAC;IACF,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED;;;;;GAKG;AACH,SAAS,OAAO,CAAC,CAAS;IACxB,IAAI,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,SAAS,CAAC;QACR,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YAC/B,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,6FAA6F;YAC7F,6FAA6F;YAC7F,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,GAAG,CAAC;YAChE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YAC5B,IAAI,MAAM,KAAK,GAAG;gBAAE,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,GAAG,GAAG,MAAM,CAAC;QACf,CAAC;IACH,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,SAAS,iBAAiB,CAAC,CAAS,EAAE,CAAS;IAC7C,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;AACzE,CAAC;AAED,kGAAkG;AAClG,SAAS,QAAQ,CAAC,CAAS,EAAE,CAAS;IACpC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;AACzE,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,aAAa,CACpB,KAAkB,EAClB,IAAY,EACZ,OAA4B,EAC5B,GAA0B;IAE1B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,KAAc,CAAC;QACnB,IAAI,CAAC;YACH,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,6FAA6F;YAC7F,2FAA2F;YAC3F,wFAAwF;YACxF,wFAAwF;YACxF,4BAA4B;YAC5B,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC9D,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,GAAG;oBACX,KAAK,EACH,SAAS,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,SAAS,wBAAwB,OAAO,CAAC,GAAG,CAAC,iBAAiB;wBACvF,oFAAoF;iBACvF,CAAC;YACJ,CAAC;YACD,GAAG,CAAC,gCAAgC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,SAAS,wBAAwB,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;YAChI,SAAS;QACX,CAAC;QACD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,GAAG;gBACX,KAAK,EACH,SAAS,CAAC,CAAC,IAAI,sBAAsB,CAAC,CAAC,SAAS,sCAAsC;oBACtF,gBAAgB,IAAI,mEAAmE;oBACvF,iGAAiG;aACpG,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,aAAa,CAAC,OAAoB;IAChD,OAAO;QACL,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE;QACpC,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,CACnC,CAAC,MAAM,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;aACtC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC;aAC5C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;QAC7B,gGAAgG;QAChG,4EAA4E;QAC5E,gBAAgB,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CACvC,0BAA0B,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAC3F,WAAW,EAAE,iBAAiB;KAC/B,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAc;IACpD,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5G,OAAO,iBAAiB,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC;AAED,gGAAgG;AAChG;kGACkG;AAClG,MAAM,CAAC,MAAM,OAAO,GAAG,mBAAmB,CAAC;AAE3C,SAAS,OAAO,CAAC,GAAY;IAC3B,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,GAAG,CAAC,CAAY;IACvB,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;AAC3D,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,GAAqB,EACrB,IAAmB;IAEnB,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC;IACtG,8FAA8F;IAC9F,8EAA8E;IAC9E,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QACrC,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAsB,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QAC3F,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;YACnD,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,GAAG,CAAC,MAAM,UAAU,CAAC,CAAC,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IAC5D,CAAC,CAAC,CACH,CAAC;IACF,OAAO,EAAE,GAAG,UAAU,EAAE,KAAK,EAAE,EAAE,GAAG,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;AAClE,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,GAAqB,EACrB,IAAmB;IAEnB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,eAAe,EAAE,CAAC,CAAC;IAC5D,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtC,gGAAgG;IAChG,iEAAiE;IACjE,IACE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;QACzB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC;QAC3B,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EACxC,CAAC;QACD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,GAAG;YACX,KAAK,EAAE,UAAU,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,uCAAuC;SACnF,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC9D,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;IACrC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAE1C,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC1B,2FAA2F;QAC3F,oFAAoF;QACpF,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;QAC3D,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,OAAO,CAAC;QACrC,OAAO,EAAE,CACP;YACE,IAAI,EAAE,QAAQ;YACd,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,KAAK,EAAE,EAAE;YACT,GAAG;YACH,KAAK,EAAE;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM,EACJ,0FAA0F;oBAC1F,sFAAsF;oBACtF,yCAAyC;aAC5C;YACD,QAAQ,EAAE,EAAE;SACb,EACD,IAAI,EACJ,EAAE,CACH,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAC9B,sFAAsF;QACtF,8FAA8F;QAC9F,0EAA0E;QAC1E,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACjF,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,OAAO,CAAC;QACrC,OAAO,EAAE,CACP;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;YACrB,GAAG;YACH,KAAK,EAAE;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM,EACJ,KAAK,CAAC,MAAM,KAAK,CAAC;oBAChB,CAAC,CAAC,8FAA8F;oBAChG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,6EAA6E;wBAC5F,gFAAgF;aACvF;YACD,QAAQ,EAAE,EAAE;SACb,EACD,IAAI,EACJ,KAAK,CACN,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,KAAK,GAAgB,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;YAC7C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3D,SAAS;YACX,CAAC;YACD,uFAAuF;YACvF,oFAAoF;YACpF,6EAA6E;YAC7E,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;YACnD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,GAAG;oBACX,KAAK,EACH,YAAY,GAAG,oBAAoB,MAAM,CAAC,MAAM,oCAAoC;wBACpF,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB;iBAC3F,CAAC;YACJ,CAAC;YACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,GAAG;gBACX,KAAK,EAAE,QAAQ,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY;gBAClE,OAAO;aACR,CAAC;QACJ,CAAC;QACD,4FAA4F;QAC5F,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACjF,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,OAAO,CAAC;QACrC,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC9D,OAAO,EAAE,CACP;YACE,IAAI,EAAE,OAAO;YACb,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;YACrB,GAAG;YACH,KAAK,EAAE,KAAK,CAAC,IAAI;YACjB,QAAQ,EAAE,EAAE;SACb,EACD,KAAK,CAAC,MAAM,EACZ,KAAK,CACN,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7D,MAAM,KAAK,GAAgB,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;YAC7C,IAAI,IAAI,KAAK,SAAS;gBAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;gBACtC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QACD,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACjF,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,OAAO,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrE,OAAO,EAAE,CACP;YACE,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;YACrB,GAAG;YACH,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC;YAC1B,QAAQ;SACT,EACD,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,IAAI,EAChC,KAAK,CACN,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;IAC3D,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,OAAO,CAAC;IACrC,OAAO,EAAE,CACP;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,EAAE;QACT,GAAG;QACH,KAAK,EAAE;YACL,KAAK,EAAE,KAAK;YACZ,MAAM,EACJ,uFAAuF;gBACvF,4DAA4D;SAC/D;QACD,QAAQ,EAAE,EAAE;KACb,EACD,IAAI,EACJ,EAAE,CACH,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAAsC,EACtC,SAA6B,EAC7B,IAAc;IAEd,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACpC,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAc,EAAE,MAAM,EAAE,GAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IACxF,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,IAAI,gDAAgD,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/G,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,6EAA6E,CAAC,CAAC,CAAC,EAAE,CAAC;QACrH,OAAO,MAAM,CAAC,cAAc,IAAI,sBAAsB,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,IAAI,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAClD,OAAO,MAAM,CAAC,wCAAwC,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,IAAI,KAAK,MAAM,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC/C,OAAO,MAAM,CAAC,uGAAuG,CAAC,CAAC;IACzH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,EAAE,CAAC,KAAgB,EAAE,MAAqB,EAAE,KAAkB;IACrE,OAAO;QACL,EAAE,EAAE,IAAI;QACR,KAAK;QACL,6FAA6F;QAC7F,oFAAoF;QACpF,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE;KACnG,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,IAAmB,EACnB,SAAiB,EACjB,OAA2B;IAE3B,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,yFAAyF;QACzF,OAAO;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EACJ,oDAAoD,OAAO,CAAC,GAAG,CAAC,KAAK;gBACrE,+BAA+B;SAClC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,SAAS,CAAC,QAAqC;IACtD,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,OAAO,KAAK,IAAI;QAChC,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/F,uFAAuF;QACvF,GAAG,CAAC,QAAQ,CAAC,OAAO,KAAK,IAAI,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnG,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,KAAkB,EAClB,SAA6B,EAC7B,IAAmB;IAEnB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,6FAA6F;QAC7F,+EAA+E;QAC/E,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACrG,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpD,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,IAAI,EAAE,CAAC;QACjF,CAAC;QACD,4FAA4F;QAC5F,yFAAyF;QACzF,6FAA6F;QAC7F,2FAA2F;QAC3F,yBAAyB;QACzB,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACxD,OAAO;YACL,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;YAChF,MAAM,EAAE,GAAG,CAAC,MAAM;SACnB,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO;QACL,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK;YACZ,MAAM,EACJ,GAAG,KAAK,CAAC,MAAM,wEAAwE;gBACvF,sFAAsF;gBACtF,+BAA+B;SAClC;QACD,MAAM,EAAE,IAAI;KACb,CAAC;AACJ,CAAC;AAED;;2FAE2F;AAC3F,KAAK,UAAU,QAAQ,CACrB,IAAe,EACf,cAAmD,iBAAiB;IAEpE,IAAI,CAAC;QACL,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAC/B,mFAAmF;QACnF,2FAA2F;QAC3F,0FAA0F;QAC1F,8DAA8D;QAC9D,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACxB,OAAO;gBACL,IAAI,EAAE;oBACJ,KAAK,EAAE,KAAK;oBACZ,MAAM,EACJ,IAAI,IAAI,CAAC,IAAI,wEAAwE;wBACrF,6FAA6F;iBAChG;gBACD,MAAM,EAAE,IAAI;aACb,CAAC;QACJ,CAAC;QACD,uFAAuF;QACvF,gGAAgG;QAChG,8FAA8F;QAC9F,wFAAwF;QACxF,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1C,OAAO;gBACL,IAAI,EAAE;oBACJ,KAAK,EAAE,KAAK;oBACZ,MAAM,EACJ,IAAI,IAAI,CAAC,IAAI,mDAAmD;wBAChE,8CAA8C;wBAC9C,6FAA6F;iBAChG;gBACD,MAAM,EAAE,IAAI;aACb,CAAC;QACJ,CAAC;QACD,OAAO;YACL,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,IAAI,CAAC,IAAI,oBAAoB,EAAE;YACzE,MAAM;SACP,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,IAAI,EAAE;gBACJ,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,IAAI,IAAI,CAAC,IAAI,mCAAmC,OAAO,CAAC,GAAG,CAAC,yBAAyB;aAC9F;YACD,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GACjC,yHAAyH,CAAC;AAE5H;;;;;;;;GAQG;AACH,MAAM,oBAAoB,GAA0B;IAClD,cAAc;IACd,EAAE;IACF,6FAA6F;IAC7F,yDAAyD;IACzD,EAAE;IACF,qBAAqB;IACrB,8FAA8F;IAC9F,mGAAmG;IACnG,0FAA0F;IAC1F,mEAAmE;IACnE,KAAK;IACL,EAAE;IACF,2FAA2F;IAC3F,2EAA2E;CAC5E,CAAC;AACF,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;AAEjF;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAwC;IAC3E,MAAM,IAAI,GAAG;QACX,sBAAsB;QACtB,EAAE;QACF,+FAA+F;QAC/F,+FAA+F;QAC/F,uEAAuE;KACxE,CAAC;IACF,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvD,OAAO;YACL,GAAG,IAAI;YACP,0FAA0F;YAC1F,iEAAiE;YACjE,EAAE;YACF,oFAAoF;YACpF,EAAE;YACF,sFAAsF;SACvF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,GAAG,IAAI;QACP,6FAA6F;QAC7F,0DAA0D;KAC3D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,KAAgB,EAAE,KAAsC;IACzG,MAAM,KAAK,GAAa;QACtB,cAAc;QACd,EAAE;QACF,4DAA4D,MAAM,yCAAyC;QAC3G,EAAE;KACH,CAAC;IACF,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CACR,kBAAkB,EAClB,EAAE,EACF,6FAA6F,EAC7F,8FAA8F,EAC9F,yFAAyF,EACzF,yFAAyF,EACzF,8DAA8D,EAC9D,EAAE,CACH,CAAC;IACJ,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnE,KAAK,CAAC,IAAI,CACR,sBAAsB,EACtB,EAAE,EACF,4FAA4F,EAC5F,gEAAgE,EAChE,EAAE,CACH,CAAC;IACJ,CAAC;SAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAChE,8FAA8F;QAC9F,iFAAiF;QACjF,KAAK,CAAC,IAAI,CACR,0BAA0B,EAC1B,EAAE,EACF,oDAAoD,KAAK,CAAC,SAAS,IAAI,EAAE,uBAAuB,EAChG,8CAA8C;YAC5C,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;gBACxB,CAAC,CAAC,uDAAuD,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAC7G,CAAC,CAAC,kCAAkC,CAAC,EACzC,oGAAoG,EACpG,EAAE,CACH,CAAC;IACJ,CAAC;SAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,KAAK,CAAC,IAAI,CACR,0BAA0B,EAC1B,EAAE,EACF,4FAA4F,EAC5F,qEAAqE,EACrE,EAAE,CACH,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CACR,sBAAsB,EACtB,EAAE,EACF,qFAAqF,EACrF,EAAE,CACH,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CACR,sCAAsC,EACtC,EAAE,EACF,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAC5G,EAAE,EACF,2FAA2F,EAC3F,iFAAiF,EACjF,+EAA+E,EAC/E,sFAAsF,EACtF,mFAAmF,EACnF,wFAAwF,EACxF,+EAA+E,EAC/E,EAAE,CACH,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,KAAK,CAAC,IAAI,CACR,4EAA4E,KAAK,CAAC,QAAQ;aACvF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;aACtB,IAAI,CAAC,IAAI,CAAC,GAAG,EAChB,EAAE,CACH,CAAC;IACJ,CAAC;IACD,6FAA6F;IAC7F,iGAAiG;IACjG,iGAAiG;IACjG,iGAAiG;IACjG,+FAA+F;IAC/F,gGAAgG;IAChG,mGAAmG;IACnG,kGAAkG;IAClG,gGAAgG;IAChG,6FAA6F;IAC7F,wFAAwF;IACxF,gGAAgG;IAChG,2FAA2F;IAC3F,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IAC/B,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CACR,4FAA4F,EAC5F,2FAA2F,EAC3F,EAAE,EACF,OAAO,sBAAsB,EAAE,EAC/B,EAAE,EACF,8FAA8F,EAC9F,6CAA6C,EAC7C,2BAA2B,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,YAAY,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,EAC7F,EAAE,CACH,CAAC;IACJ,CAAC;SAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC;QAChG,2FAA2F;QAC3F,uEAAuE;QACvE,KAAK,CAAC,IAAI,CAAC,2BAA2B,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CACR,2BAA2B,KAAK,CAAC,KAAK,CAAC,MAAM,+CAA+C,EAC5F,EAAE,CACH,CAAC;IACJ,CAAC;IACD,0FAA0F;IAC1F,0FAA0F;IAC1F,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;IACnC,KAAK,CAAC,IAAI,CACR,+FAA+F,EAC/F,8FAA8F,EAC9F,6FAA6F,EAC7F,2DAA2D,EAC3D,EAAE,CACH,CAAC;IACF,gGAAgG;IAChG,iGAAiG;IACjG,KAAK,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/C,wFAAwF;IACxF,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3F,0FAA0F;IAC1F,KAAK,CAAC,IAAI,CAAC,GAAG,oBAAoB,EAAE,EAAE,CAAC,CAAC;IACxC,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,qCAAqC,KAAK,CAAC,SAAS,KAAK,EAAE,EAAE,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AACjC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,KAAgB,EAAE,KAAsC;IACzG,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACtC,iGAAiG;IACjG,4FAA4F;IAC5F,+FAA+F;IAC/F,kGAAkG;IAClG,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,IAAI,GAAG,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAClG,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CAAC,8BAA8B,IAAI,+BAA+B,IAAI,EAAE,CAAC,CAAC;IAC3F,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,0FAA0F;QAC1F,4FAA4F;QAC5F,wFAAwF;QACxF,IAAI,CAAC;YACH,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,GAAG,CAAC;QAClE,CAAC;QACD,wBAAwB,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IACrD,CAAC;IACD,gGAAgG;IAChG,4FAA4F;IAC5F,8FAA8F;IAC9F,8FAA8F;IAC9F,yEAAyE;IACzE,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,CAAC;QACH,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACxD,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,GAAG,CAAC;IAClE,CAAC;IACD,IAAI,CAAC;QACH,wBAAwB,CAAC,KAAK,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;QACzD,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC5B,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3D,KAAK,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACnC,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,kDAAkD;YACjF,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,OAAO;YAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAChD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,iGAAiG;AACjG,SAAS,wBAAwB,CAAC,IAAY,EAAE,IAAY;IAC1D,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC7B,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACzE,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;QAC/B,IAAI,GAAG,KAAK,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,IAAI,IAAI,kBAAkB,GAAG,0BAA0B,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CAAC,SAAiB,OAAO,CAAC,eAAe,EAAE,CAAC;IACjF,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,cAAc,EAAE;YAAE,OAAO,OAAO,CAAC;QACvD,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,IAAI;YAAE,SAAS;QACzB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,KAAK,OAAO,CAAC,GAAG;YAAE,SAAS;QAC5E,IAAI,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,oCAAoC;YAC1D,SAAS;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAK,GAA6B,CAAC,IAAI,KAAK,OAAO;gBAAE,SAAS,CAAC,8BAA8B;QAC/F,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YAC5B,IAAI,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBAAE,SAAS;YAC3D,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;gBACnH,SAAS;YACX,CAAC;YACD,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,6CAA6C;QAC/C,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,OAAe,eAAe,EAAE;IAC7E,iGAAiG;IACjG,gGAAgG;IAChG,uFAAuF;IACvF,IAAI,CAAC;QACH,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE;YAAE,OAAO;QAC7C,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,OAAO;QACzD,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,QAAQ;YAAE,OAAO;QACvD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YACtH,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,sFAAsF;IACxF,CAAC;AACH,CAAC;AAyBD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,OAAO,cAAc;IAMd;IACQ;IANF,KAAK,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC7C,SAAS,GAAG,CAAC,CAAC;IAEtB,kGAAkG;IAClG,YACW,OAAe,eAAe,EAAE,EACxB,eAAuB,IAAI;QADnC,SAAI,GAAJ,IAAI,CAA4B;QACxB,iBAAY,GAAZ,YAAY,CAAe;IAC3C,CAAC;IAEJ,2EAA2E;IAC3E,GAAG,CAAC,MAAc;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,+DAA+D;IAC/D,OAAO,CAAC,MAAc;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,MAAM,CAAC;IACjD,CAAC;IAED,2FAA2F;IAC3F,OAAO,CAAC,MAAc;QACpB,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;2DACuD;IACvD,IAAI,CAAC,MAAc,EAAE,KAAa;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,OAAO,IAAI,EAAE,KAAK,KAAK,UAAU,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC;IAC5D,CAAC;IAED;;kFAE8E;IAC9E,OAAO,CAAC,MAAc,EAAE,KAAa;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,IAAI,EAAE,KAAK,KAAK,UAAU,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK;YAAE,OAAO,KAAK,CAAC;QACrE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,MAAc,EAAE,KAAa;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,IAAI,EAAE,KAAK,KAAK,UAAU,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK;YAAE,OAAO;QAC/D,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,SAAS;gBAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7E,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACtB,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QAChB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,CAAC;IAED;4FACwF;IACxF,GAAG,CACD,MAAc,EACd,KAAgB,EAChB,KAAa,EACb,UAA6B,EAAE,EAC/B,MAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,IAAI,EAAE,KAAK,KAAK,UAAU,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK;YAAE,OAAO,KAAK,CAAC;QACrE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE;YACrB,KAAK,EAAE,MAAM;YACb,KAAK;YACL,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC;YACrB,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7F,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gFAAgF;IAChF,GAAG,CAAC,MAAc;QAChB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,OAAO,IAAI,EAAE,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACzD,CAAC;IAED,mGAAmG;IACnG,QAAQ,CAAC,MAAc;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,OAAO,IAAI,EAAE,KAAK,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YACxD,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;YAC3D,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,MAAc,EAAE,QAAwC;QAChE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,+FAA+F;QAC/F,qEAAqE;QACrE,IAAI,IAAI,EAAE,KAAK,KAAK,MAAM;YAAE,OAAO,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAChE,MAAM,KAAK,GAAsB,QAAQ;aACtC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aACpB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,IAAI,6BAA6B,EAAE,MAAM,EAAE,QAAiB,EAAE,CAAC,CAAC,CAAC;QACnH,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,+FAA+F;IAC/F,SAAS,CAAC,MAAc;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,OAAO,IAAI,EAAE,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChE,CAAC;IAED;;;;;;OAMG;IACH,SAAS,CAAC,MAAc;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,IAAI,EAAE,KAAK,KAAK,MAAM,IAAI,IAAI,EAAE,KAAK,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACrE,IAAI,IAAI,EAAE,KAAK,KAAK,MAAM;YAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,0DAA0D;IAC1D,MAAM,CAAC,MAAc,EAAE,MAAc;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,OAAO,IAAI,EAAE,KAAK,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC;IAC1D,CAAC;IAED,mEAAmE;IACnE,SAAS,CAAC,MAAc,EAAE,MAAc;QACtC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;YAAE,OAAO,KAAK,CAAC;QAC/C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,MAAc;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM;YAAE,OAAO,SAAS,CAAC;QAC9F,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM;YAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACxE,2FAA2F;QAC3F,+FAA+F;QAC/F,yFAAyF;QACzF,gDAAgD;QAChD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,SAAS;gBAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7E,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACtB,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QAChB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACxD,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,MAAc;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO;QAC/B,IAAI,IAAI,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;YAC9B,6FAA6F;YAC7F,+FAA+F;YAC/F,4FAA4F;YAC5F,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,SAAS;oBAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC7E,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACtB,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YACpD,OAAO;QACT,CAAC;QACD,8FAA8F;QAC9F,oCAAoC;QACpC,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM;YAAE,OAAO;QAClC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;YAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvD,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM;YAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACxE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,iGAAiG;IACjG,MAAM,CAAC,MAAc;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9D,IAAI,IAAI,EAAE,KAAK,KAAK,SAAS;YAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,KAAK,KAAK,SAAS;YAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
|
|
@@ -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 `
|
|
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
|
-
|
|
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":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGzF,OAAO,
|
|
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 `
|
|
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
|
-
|
|
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
|
-
|
|
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).
|