@telora/daemon 0.22.226 → 0.22.233
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/build-info.json +4 -3
- package/dist/completion/codex-activity.d.ts +40 -0
- package/dist/completion/codex-activity.d.ts.map +1 -0
- package/dist/completion/codex-activity.js +69 -0
- package/dist/completion/codex-activity.js.map +1 -0
- package/dist/completion/completion-phase-registry.d.ts +2 -1
- package/dist/completion/completion-phase-registry.d.ts.map +1 -1
- package/dist/completion/completion-phase-registry.js +15 -3
- package/dist/completion/completion-phase-registry.js.map +1 -1
- package/dist/completion/exit-classification.d.ts.map +1 -1
- package/dist/completion/exit-classification.js +3 -1
- package/dist/completion/exit-classification.js.map +1 -1
- package/dist/completion/index.js +1 -1
- package/dist/completion/review-defect-detector.d.ts +58 -18
- package/dist/completion/review-defect-detector.d.ts.map +1 -1
- package/dist/completion/review-defect-detector.js +62 -27
- package/dist/completion/review-defect-detector.js.map +1 -1
- package/dist/completion/review-exit-attribution.d.ts +6 -3
- package/dist/completion/review-exit-attribution.d.ts.map +1 -1
- package/dist/completion/review-exit-attribution.js +9 -7
- package/dist/completion/review-exit-attribution.js.map +1 -1
- package/dist/completion/review-exit-deps.d.ts +2 -0
- package/dist/completion/review-exit-deps.d.ts.map +1 -1
- package/dist/completion/review-exit-deps.js +3 -0
- package/dist/completion/review-exit-deps.js.map +1 -1
- package/dist/completion/review-exit-evidence.d.ts +8 -0
- package/dist/completion/review-exit-evidence.d.ts.map +1 -1
- package/dist/completion/review-exit-evidence.js +39 -27
- package/dist/completion/review-exit-evidence.js.map +1 -1
- package/dist/completion/review-exit-foreign-findings.d.ts +5 -1
- package/dist/completion/review-exit-foreign-findings.d.ts.map +1 -1
- package/dist/completion/review-exit-foreign-findings.js +4 -4
- package/dist/completion/review-exit-foreign-findings.js.map +1 -1
- package/dist/completion/review-exit-phase.js +5 -5
- package/dist/completion/review-exit-phase.js.map +1 -1
- package/dist/completion/team-phase.d.ts.map +1 -1
- package/dist/completion/team-phase.js +3 -2
- package/dist/completion/team-phase.js.map +1 -1
- package/dist/completion/team-progress-measure.d.ts +22 -1
- package/dist/completion/team-progress-measure.d.ts.map +1 -1
- package/dist/completion/team-progress-measure.js +53 -6
- package/dist/completion/team-progress-measure.js.map +1 -1
- package/dist/delivery/delivery-reconciler.d.ts +3 -3
- package/dist/directive/agentless-directive.d.ts +28 -0
- package/dist/directive/agentless-directive.d.ts.map +1 -0
- package/dist/directive/agentless-directive.js +12 -0
- package/dist/directive/agentless-directive.js.map +1 -0
- package/dist/directive/directive-dispatch.d.ts +1 -20
- package/dist/directive/directive-dispatch.d.ts.map +1 -1
- package/dist/directive/directive-dispatch.js +4 -22
- package/dist/directive/directive-dispatch.js.map +1 -1
- package/dist/directive/directive-queue.d.ts.map +1 -1
- package/dist/directive/directive-queue.js +1 -20
- package/dist/directive/directive-queue.js.map +1 -1
- package/dist/drift/artifact-ref-shape.d.ts +23 -0
- package/dist/drift/artifact-ref-shape.d.ts.map +1 -1
- package/dist/drift/artifact-ref-shape.js +49 -0
- package/dist/drift/artifact-ref-shape.js.map +1 -1
- package/dist/focus/focus-lifecycle.d.ts.map +1 -1
- package/dist/focus/focus-lifecycle.js +3 -2
- package/dist/focus/focus-lifecycle.js.map +1 -1
- package/dist/focus/focus-team-state.js +1 -1
- package/dist/focus/listener-spawn.js +8 -8
- package/dist/focus/listener-spawn.js.map +1 -1
- package/dist/prompt-sections/persona-sections.d.ts +29 -0
- package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
- package/dist/prompt-sections/persona-sections.js +82 -21
- package/dist/prompt-sections/persona-sections.js.map +1 -1
- package/dist/prompt-sections/testing-standard.d.ts +4 -1
- package/dist/prompt-sections/testing-standard.d.ts.map +1 -1
- package/dist/prompt-sections/testing-standard.js +14 -4
- package/dist/prompt-sections/testing-standard.js.map +1 -1
- package/dist/queries/escalations.js +1 -1
- package/dist/queries/focuses.d.ts.map +1 -1
- package/dist/queries/focuses.js +1 -0
- package/dist/queries/focuses.js.map +1 -1
- package/dist/queries/review-finding-facts.d.ts +38 -0
- package/dist/queries/review-finding-facts.d.ts.map +1 -0
- package/dist/queries/review-finding-facts.js +43 -0
- package/dist/queries/review-finding-facts.js.map +1 -0
- package/dist/queries/shortfall-rulings.d.ts +13 -0
- package/dist/queries/shortfall-rulings.d.ts.map +1 -1
- package/dist/queries/shortfall-rulings.js +14 -0
- package/dist/queries/shortfall-rulings.js.map +1 -1
- package/dist/spawn/codex-limit.d.ts +42 -0
- package/dist/spawn/codex-limit.d.ts.map +1 -0
- package/dist/spawn/codex-limit.js +146 -0
- package/dist/spawn/codex-limit.js.map +1 -0
- package/dist/spawn/directive-route.d.ts +41 -0
- package/dist/spawn/directive-route.d.ts.map +1 -0
- package/dist/spawn/directive-route.js +54 -0
- package/dist/spawn/directive-route.js.map +1 -0
- package/dist/spawn/guards.d.ts.map +1 -1
- package/dist/spawn/guards.js +4 -2
- package/dist/spawn/guards.js.map +1 -1
- package/dist/spawn/helpers.d.ts.map +1 -1
- package/dist/spawn/helpers.js +29 -1
- package/dist/spawn/helpers.js.map +1 -1
- package/dist/spawn/index.d.ts +1 -0
- package/dist/spawn/index.d.ts.map +1 -1
- package/dist/spawn/index.js +1 -0
- package/dist/spawn/index.js.map +1 -1
- package/dist/spawn/next-spawn-cooldown.d.ts +43 -0
- package/dist/spawn/next-spawn-cooldown.d.ts.map +1 -0
- package/dist/spawn/next-spawn-cooldown.js +123 -0
- package/dist/spawn/next-spawn-cooldown.js.map +1 -0
- package/dist/spawn/one-shot-model.d.ts +4 -3
- package/dist/spawn/one-shot-model.d.ts.map +1 -1
- package/dist/spawn/one-shot-model.js +8 -6
- package/dist/spawn/one-shot-model.js.map +1 -1
- package/dist/spawn/provider-window.d.ts +39 -0
- package/dist/spawn/provider-window.d.ts.map +1 -0
- package/dist/spawn/provider-window.js +99 -0
- package/dist/spawn/provider-window.js.map +1 -0
- package/dist/spawn/routing-decider-spawn.d.ts.map +1 -1
- package/dist/spawn/routing-decider-spawn.js +4 -3
- package/dist/spawn/routing-decider-spawn.js.map +1 -1
- package/dist/spawn/routing-decider.js +2 -2
- package/dist/spawn/routing-decider.js.map +1 -1
- package/dist/spawn/spawn-cooldown.d.ts +43 -12
- package/dist/spawn/spawn-cooldown.d.ts.map +1 -1
- package/dist/spawn/spawn-cooldown.js +51 -58
- package/dist/spawn/spawn-cooldown.js.map +1 -1
- package/dist/spawn/spawn-decision.d.ts +11 -2
- package/dist/spawn/spawn-decision.d.ts.map +1 -1
- package/dist/spawn/spawn-decision.js +28 -60
- package/dist/spawn/spawn-decision.js.map +1 -1
- package/dist/spawn/worktree-session.d.ts +16 -0
- package/dist/spawn/worktree-session.d.ts.map +1 -1
- package/dist/spawn/worktree-session.js +45 -12
- package/dist/spawn/worktree-session.js.map +1 -1
- package/dist/testing/fixtures/codex-stream-session.d.ts +10 -0
- package/dist/testing/fixtures/codex-stream-session.d.ts.map +1 -0
- package/dist/testing/fixtures/codex-stream-session.js +47 -0
- package/dist/testing/fixtures/codex-stream-session.js.map +1 -0
- package/dist/testing/fixtures/index.js +1 -1
- package/dist/types/focus.d.ts +20 -0
- package/dist/types/focus.d.ts.map +1 -1
- package/dist/types/index.js +1 -1
- package/dist/verify/ai-inspection-runner.js +5 -5
- package/dist/verify/ai-inspection-runner.js.map +1 -1
- package/dist/verify/parked-shortfall-reuse.d.ts.map +1 -1
- package/dist/verify/parked-shortfall-reuse.js +3 -0
- package/dist/verify/parked-shortfall-reuse.js.map +1 -1
- package/dist/verify/ruling-evidence-resolution.d.ts +36 -0
- package/dist/verify/ruling-evidence-resolution.d.ts.map +1 -0
- package/dist/verify/ruling-evidence-resolution.js +133 -0
- package/dist/verify/ruling-evidence-resolution.js.map +1 -0
- package/dist/verify/shortfall-rulings.d.ts +30 -2
- package/dist/verify/shortfall-rulings.d.ts.map +1 -1
- package/dist/verify/shortfall-rulings.js +35 -3
- package/dist/verify/shortfall-rulings.js.map +1 -1
- package/dist/verify/verification-deps-default.d.ts.map +1 -1
- package/dist/verify/verification-deps-default.js +3 -0
- package/dist/verify/verification-deps-default.js.map +1 -1
- package/dist/verify/verification-deps.d.ts +9 -0
- package/dist/verify/verification-deps.d.ts.map +1 -1
- package/dist/verify/verification-engine.d.ts.map +1 -1
- package/dist/verify/verification-engine.js +4 -4
- package/dist/verify/verification-engine.js.map +1 -1
- package/dist/verify/verify-restatement.d.ts.map +1 -1
- package/dist/verify/verify-restatement.js +1 -19
- package/dist/verify/verify-restatement.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focuses.d.ts","sourceRoot":"","sources":["../../src/queries/focuses.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"focuses.d.ts","sourceRoot":"","sources":["../../src/queries/focuses.ts"],"names":[],"mappings":"AAcA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAqC,MAAM,mBAAmB,CAAC;AAExI,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAUrD;;;;;;GAMG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAatG;AAkDD,mDAAmD;AACnD,MAAM,WAAW,oBAAoB,CAAC,CAAC;IACrC,gDAAgD;IAChD,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sFAAsF;IACtF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;CAC/E;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAAC,CAAC,EACpC,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CA2ClC;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CA2BtF;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAQ/E;AAED;;;;;;;;GAQG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAMjC;AAED;;;;;GAKG;AACH,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAClC;AAED;;;;;GAKG;AACH,wBAAsB,mCAAmC,CACvD,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAM3C;AAED;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,MAAM,EACf,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,EACtC,WAAW,CAAC,EAAE;IAAE,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAClD,OAAO,CAAC,IAAI,CAAC,CAYf;AAED,sEAAsE;AACtE,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK/F;AAED,wEAAwE;AACxE,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK3E;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAU/F;AAGD;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAErF;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKtF;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK3F;AAED;;;;;;;;;GASG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKvF;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKzF;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,UAAU,GAAG,YAAY,GAAG,IAAI,CAAC;IAC1C,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAMnC;AAED;;;;GAIG;AACH,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,UAAU,GAAG,YAAY,GAAG,IAAI,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAiBrG;AAED;;;;;;;;;GASG;AACH,wBAAsB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAKpF;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAKf;AAED;;;;;;;;GAQG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED;;;GAGG;AACH,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED,0EAA0E;AAC1E,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,sBAAsB,EAAE,MAAM,GAAG,IAAI,GACpC,OAAO,CAAC,IAAI,CAAC,CAKf;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,uBAAuB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;;;;;;GAOG;AACH,wBAAsB,mCAAmC,CACvD,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,GAAG,IAAI,GACpB,OAAO,CAAC,IAAI,CAAC,CAKf;AAED;;;;;GAKG;AACH,wBAAsB,kCAAkC,CACtD,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAKf;AAED;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,WAAW,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,IAAI,CAAC;IACnD,cAAc,EAAE,cAAc,GAAG,IAAI,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX;wEACoE;IACpE,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,0BAA0B,EAAE,CAAC;CACtC;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAoCzF;AAED;;;GAGG;AACH,wBAAsB,iCAAiC,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CA8C1F"}
|
package/dist/queries/focuses.js
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
// packages/daemon/src/focus/recorded-delivery-auto-advance.test.ts,
|
|
8
8
|
// packages/daemon/src/integration/advancement-path-parity.test.ts,
|
|
9
9
|
// packages/daemon/src/queries/scan-all-focuses.test.ts,
|
|
10
|
+
// packages/daemon/src/spawn/empty-directive-route.test.ts,
|
|
10
11
|
// packages/daemon/src/verify/shortfall-rulings.test.ts,
|
|
11
12
|
// packages/daemon/src/verify/verification-rework-issue.test.ts
|
|
12
13
|
// PINNED-BY-END
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focuses.js","sourceRoot":"","sources":["../../src/queries/focuses.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"focuses.js","sourceRoot":"","sources":["../../src/queries/focuses.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The review-finding FACTS of a focus: which issues its reviews filed, and --
|
|
3
|
+
* where the review recorded it -- whether each finding is `blocking` (a not_met
|
|
4
|
+
* acceptance criterion names it) or a `concern` (none does).
|
|
5
|
+
*
|
|
6
|
+
* Same product-api action as getFocusReviewFiledIssueIds (queries/focuses.ts):
|
|
7
|
+
* `focus_review_filed_issue_ids` returns `issueIds: string[]` and, from the edge
|
|
8
|
+
* that records finding classes on, `findingClasses: Record<issueId,
|
|
9
|
+
* 'blocking' | 'concern'>`. An OLDER edge omits `findingClasses`; that reads as
|
|
10
|
+
* an empty map, so every finding falls back to the priority rule
|
|
11
|
+
* (completion/review-defect-detector.ts isBlockingReviewFinding). An issue
|
|
12
|
+
* absent from the map likewise has no recorded fact.
|
|
13
|
+
*
|
|
14
|
+
* The response is validated (zod) -- a malformed class value throws, and the
|
|
15
|
+
* caller's best-effort read degrades exactly as a failed id read does.
|
|
16
|
+
*
|
|
17
|
+
* @module queries/review-finding-facts
|
|
18
|
+
*/
|
|
19
|
+
import { z } from 'zod';
|
|
20
|
+
import type { ReviewFindingClass } from '../completion/review-defect-detector.js';
|
|
21
|
+
/** Wire shape of `focus_review_filed_issue_ids`; `findingClasses` is optional (older edges omit it). */
|
|
22
|
+
export declare const FocusReviewFindingFactsResponseSchema: z.ZodObject<{
|
|
23
|
+
issueIds: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
|
|
24
|
+
findingClasses: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodEnum<{
|
|
25
|
+
blocking: "blocking";
|
|
26
|
+
concern: "concern";
|
|
27
|
+
}>>>>;
|
|
28
|
+
}, z.core.$loose>;
|
|
29
|
+
/** The facts, normalized: ids as sent, classes as a Map (empty when not recorded). */
|
|
30
|
+
export interface FocusReviewFindingFacts {
|
|
31
|
+
issueIds: string[];
|
|
32
|
+
findingClasses: Map<string, ReviewFindingClass>;
|
|
33
|
+
}
|
|
34
|
+
/** Pure: normalize a validated response (missing keys -> empty). Exported for tests. */
|
|
35
|
+
export declare function toReviewFindingFacts(response: z.infer<typeof FocusReviewFindingFactsResponseSchema>): FocusReviewFindingFacts;
|
|
36
|
+
/** Read the focus-wide review-filed issue ids AND their recorded finding classes. */
|
|
37
|
+
export declare function getFocusReviewFindingFacts(focusId: string): Promise<FocusReviewFindingFacts>;
|
|
38
|
+
//# sourceMappingURL=review-finding-facts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-finding-facts.d.ts","sourceRoot":"","sources":["../../src/queries/review-finding-facts.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAIlF,wGAAwG;AACxG,eAAO,MAAM,qCAAqC;;;;;;iBAGlC,CAAC;AAEjB,sFAAsF;AACtF,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;CACjD;AAED,wFAAwF;AACxF,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,GAC9D,uBAAuB,CAKzB;AAED,qFAAqF;AACrF,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAOlG"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
+
// Pinned by: packages/daemon/src/completion/review-finding-blocking-predicate.test.ts,
|
|
3
|
+
// packages/daemon/src/completion/review-finding-class-routing.test.ts
|
|
4
|
+
// PINNED-BY-END
|
|
5
|
+
/**
|
|
6
|
+
* The review-finding FACTS of a focus: which issues its reviews filed, and --
|
|
7
|
+
* where the review recorded it -- whether each finding is `blocking` (a not_met
|
|
8
|
+
* acceptance criterion names it) or a `concern` (none does).
|
|
9
|
+
*
|
|
10
|
+
* Same product-api action as getFocusReviewFiledIssueIds (queries/focuses.ts):
|
|
11
|
+
* `focus_review_filed_issue_ids` returns `issueIds: string[]` and, from the edge
|
|
12
|
+
* that records finding classes on, `findingClasses: Record<issueId,
|
|
13
|
+
* 'blocking' | 'concern'>`. An OLDER edge omits `findingClasses`; that reads as
|
|
14
|
+
* an empty map, so every finding falls back to the priority rule
|
|
15
|
+
* (completion/review-defect-detector.ts isBlockingReviewFinding). An issue
|
|
16
|
+
* absent from the map likewise has no recorded fact.
|
|
17
|
+
*
|
|
18
|
+
* The response is validated (zod) -- a malformed class value throws, and the
|
|
19
|
+
* caller's best-effort read degrades exactly as a failed id read does.
|
|
20
|
+
*
|
|
21
|
+
* @module queries/review-finding-facts
|
|
22
|
+
*/
|
|
23
|
+
import { z } from 'zod';
|
|
24
|
+
import { callApiValidated } from './shared.js';
|
|
25
|
+
const ReviewFindingClassSchema = z.enum(['blocking', 'concern']);
|
|
26
|
+
/** Wire shape of `focus_review_filed_issue_ids`; `findingClasses` is optional (older edges omit it). */
|
|
27
|
+
export const FocusReviewFindingFactsResponseSchema = z.object({
|
|
28
|
+
issueIds: z.array(z.string()).nullish(),
|
|
29
|
+
findingClasses: z.record(z.string(), ReviewFindingClassSchema).nullish(),
|
|
30
|
+
}).passthrough();
|
|
31
|
+
/** Pure: normalize a validated response (missing keys -> empty). Exported for tests. */
|
|
32
|
+
export function toReviewFindingFacts(response) {
|
|
33
|
+
return {
|
|
34
|
+
issueIds: response.issueIds ?? [],
|
|
35
|
+
findingClasses: new Map(Object.entries(response.findingClasses ?? {})),
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/** Read the focus-wide review-filed issue ids AND their recorded finding classes. */
|
|
39
|
+
export async function getFocusReviewFindingFacts(focusId) {
|
|
40
|
+
const response = await callApiValidated('focus_review_filed_issue_ids', FocusReviewFindingFactsResponseSchema, { focusId });
|
|
41
|
+
return toReviewFindingFacts(response);
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=review-finding-facts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-finding-facts.js","sourceRoot":"","sources":["../../src/queries/review-finding-facts.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,uFAAuF;AACvF,wEAAwE;AACxE,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG/C,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;AAEjE,wGAAwG;AACxG,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5D,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;IACvC,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,wBAAwB,CAAC,CAAC,OAAO,EAAE;CACzE,CAAC,CAAC,WAAW,EAAE,CAAC;AAQjB,wFAAwF;AACxF,MAAM,UAAU,oBAAoB,CAClC,QAA+D;IAE/D,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,EAAE;QACjC,cAAc,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;KACvE,CAAC;AACJ,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,OAAe;IAC9D,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CACrC,8BAA8B,EAC9B,qCAAqC,EACrC,EAAE,OAAO,EAAE,CACZ,CAAC;IACF,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC"}
|
|
@@ -19,6 +19,17 @@
|
|
|
19
19
|
* additive edge deploy into a verify outage on every host running an older
|
|
20
20
|
* daemon. Pinned by queries/shortfall-rulings.test.ts.
|
|
21
21
|
*
|
|
22
|
+
* A review-sourced MET carries `evidence`: the repository references the review
|
|
23
|
+
* says prove it (`path`, `path::test name`, `path:LINE`), `[]` when it named
|
|
24
|
+
* none. Optional and a plain string array, NOT the parsed grammar, for the same
|
|
25
|
+
* additive reason as `ruledByKind`: the wire stays permissive and the rule a
|
|
26
|
+
* reference is held to is applied where it is used -- verify resolves each one
|
|
27
|
+
* at the commit it judges (verify/ruling-evidence-resolution.ts), and a
|
|
28
|
+
* reference that does not parse there is simply unresolved, never a boundary
|
|
29
|
+
* throw that would take every ruling on the delivery down with it. An older edge
|
|
30
|
+
* sends no key; verify then judges a review met itself (unresolvable), which is
|
|
31
|
+
* the safe direction.
|
|
32
|
+
*
|
|
22
33
|
* The response is zod-validated at this boundary; a malformed payload throws like
|
|
23
34
|
* any other failed read, and every verify reader fails closed on a throw (it
|
|
24
35
|
* applies no ruling).
|
|
@@ -43,6 +54,7 @@ declare const ShortfallRulingSchema: z.ZodObject<{
|
|
|
43
54
|
ruledByTrackerId: z.ZodNullable<z.ZodString>;
|
|
44
55
|
ruledSessionId: z.ZodNullable<z.ZodString>;
|
|
45
56
|
focusReviewId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
57
|
+
evidence: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
46
58
|
escalationId: z.ZodNullable<z.ZodString>;
|
|
47
59
|
createdAt: z.ZodString;
|
|
48
60
|
revokedAt: z.ZodNullable<z.ZodString>;
|
|
@@ -63,6 +75,7 @@ export declare const DeliveryShortfallRulingsSchema: z.ZodObject<{
|
|
|
63
75
|
ruledByTrackerId: z.ZodNullable<z.ZodString>;
|
|
64
76
|
ruledSessionId: z.ZodNullable<z.ZodString>;
|
|
65
77
|
focusReviewId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
78
|
+
evidence: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
66
79
|
escalationId: z.ZodNullable<z.ZodString>;
|
|
67
80
|
createdAt: z.ZodString;
|
|
68
81
|
revokedAt: z.ZodNullable<z.ZodString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shortfall-rulings.d.ts","sourceRoot":"","sources":["../../src/queries/shortfall-rulings.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"shortfall-rulings.d.ts","sourceRoot":"","sources":["../../src/queries/shortfall-rulings.ts"],"names":[],"mappings":"AAWA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,qEAAqE;AACrE,eAAO,MAAM,iCAAiC,0CAA0C,CAAC;AAEzF,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;iBAiBzB,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;iBAIzC,CAAC;AAEH,wDAAwD;AACxD,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,yDAAyD;AACzD,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,mFAAmF;AACnF,MAAM,WAAW,yBAAyB;IACxC,gBAAgB,CAAC,EAAE,OAAO,gBAAgB,CAAC;CAC5C;AAED,gHAAgH;AAChH,wBAAsB,2BAA2B,CAC/C,UAAU,EAAE,MAAM,EAClB,IAAI,GAAE,yBAA8B,GACnC,OAAO,CAAC,wBAAwB,CAAC,CAGnC"}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
// packages/daemon/src/integration/shortfall-ruling-release.test.ts,
|
|
5
5
|
// packages/daemon/src/queries/shortfall-rulings.test.ts,
|
|
6
6
|
// packages/daemon/src/verify/parked-shortfall-reuse.test.ts,
|
|
7
|
+
// packages/daemon/src/verify/ruling-evidence-resolution.test.ts,
|
|
7
8
|
// packages/daemon/src/verify/shortfall-rulings.test.ts,
|
|
8
9
|
// packages/daemon/src/verify/verification-engine-rulings.test.ts
|
|
9
10
|
// PINNED-BY-END
|
|
@@ -28,6 +29,17 @@
|
|
|
28
29
|
* additive edge deploy into a verify outage on every host running an older
|
|
29
30
|
* daemon. Pinned by queries/shortfall-rulings.test.ts.
|
|
30
31
|
*
|
|
32
|
+
* A review-sourced MET carries `evidence`: the repository references the review
|
|
33
|
+
* says prove it (`path`, `path::test name`, `path:LINE`), `[]` when it named
|
|
34
|
+
* none. Optional and a plain string array, NOT the parsed grammar, for the same
|
|
35
|
+
* additive reason as `ruledByKind`: the wire stays permissive and the rule a
|
|
36
|
+
* reference is held to is applied where it is used -- verify resolves each one
|
|
37
|
+
* at the commit it judges (verify/ruling-evidence-resolution.ts), and a
|
|
38
|
+
* reference that does not parse there is simply unresolved, never a boundary
|
|
39
|
+
* throw that would take every ruling on the delivery down with it. An older edge
|
|
40
|
+
* sends no key; verify then judges a review met itself (unresolvable), which is
|
|
41
|
+
* the safe direction.
|
|
42
|
+
*
|
|
31
43
|
* The response is zod-validated at this boundary; a malformed payload throws like
|
|
32
44
|
* any other failed read, and every verify reader fails closed on a throw (it
|
|
33
45
|
* applies no ruling).
|
|
@@ -50,6 +62,8 @@ const ShortfallRulingSchema = z.object({
|
|
|
50
62
|
ruledSessionId: z.string().nullable(),
|
|
51
63
|
/** `focus_reviews.id` when the ruling is a review verdict; null/absent for an operator row. */
|
|
52
64
|
focusReviewId: z.string().nullable().optional(),
|
|
65
|
+
/** A review-sourced met's evidence references; absent on an operator row, an excused ruling, or an older edge. */
|
|
66
|
+
evidence: z.array(z.string()).optional(),
|
|
53
67
|
escalationId: z.string().nullable(),
|
|
54
68
|
createdAt: z.string(),
|
|
55
69
|
revokedAt: z.string().nullable(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shortfall-rulings.js","sourceRoot":"","sources":["../../src/queries/shortfall-rulings.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,oFAAoF;AACpF,4FAA4F;AAC5F,sEAAsE;AACtE,2DAA2D;AAC3D,+DAA+D;AAC/D,0DAA0D;AAC1D,mEAAmE;AACnE,gBAAgB;AAEhB
|
|
1
|
+
{"version":3,"file":"shortfall-rulings.js","sourceRoot":"","sources":["../../src/queries/shortfall-rulings.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,oFAAoF;AACpF,4FAA4F;AAC5F,sEAAsE;AACtE,2DAA2D;AAC3D,+DAA+D;AAC/D,mEAAmE;AACnE,0DAA0D;AAC1D,mEAAmE;AACnE,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,qEAAqE;AACrE,MAAM,CAAC,MAAM,iCAAiC,GAAG,uCAAuC,CAAC;AAEzF,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACnC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,+FAA+F;IAC/F,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC/C,kHAAkH;IAClH,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACxC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;IACvC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;CACxB,CAAC,CAAC;AAaH,gHAAgH;AAChH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,UAAkB,EAClB,OAAkC,EAAE;IAEpC,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC;IACvD,OAAO,IAAI,CAAC,iCAAiC,EAAE,8BAA8B,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;AACjG,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { FocusTeamState } from '../types/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* How long the Codex window stays open when Codex names no reset instant ("Try
|
|
4
|
+
* again later." / a 429 whose retries ran out). Thirty minutes: long enough that
|
|
5
|
+
* a spawn is not re-thrown into the same limit every poll, short enough that a
|
|
6
|
+
* limit that cleared sooner costs at most one wasted half hour -- and the first
|
|
7
|
+
* spawn after it re-learns the limit from Codex if it still stands.
|
|
8
|
+
*/
|
|
9
|
+
export declare const CODEX_LIMIT_FALLBACK_MS: number;
|
|
10
|
+
/** What a Codex limit line told the daemon. */
|
|
11
|
+
export interface CodexLimit {
|
|
12
|
+
/** usage_limit: the plan's usage is spent. rate_limit: requests were throttled until retries ran out. */
|
|
13
|
+
kind: 'usage_limit' | 'rate_limit';
|
|
14
|
+
/** The reset instant Codex stated, epoch ms (rounded up to the minute), or null when it stated none. */
|
|
15
|
+
resetsAtMs: number | null;
|
|
16
|
+
/** The instant the window opens until: resetsAtMs, or the stated fallback from `nowMs`. */
|
|
17
|
+
holdUntilMs: number;
|
|
18
|
+
/** Codex's own words. */
|
|
19
|
+
message: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Read the reset instant out of a Codex usage-limit message, in the local time
|
|
23
|
+
* zone, rounded up to the next minute. A bare time is today's; one already more
|
|
24
|
+
* than a minute past (the message crossed midnight) is tomorrow's. Pure given
|
|
25
|
+
* `nowMs`; null when the message names no instant.
|
|
26
|
+
*/
|
|
27
|
+
export declare function parseCodexResetAt(message: string, nowMs: number): number | null;
|
|
28
|
+
/**
|
|
29
|
+
* Parse a raw Codex JSONL line into a CodexLimit, or null when the line is not
|
|
30
|
+
* a usage or rate limit. Pure given `nowMs`.
|
|
31
|
+
*/
|
|
32
|
+
export declare function parseCodexLimit(raw: unknown, nowMs: number): CodexLimit | null;
|
|
33
|
+
/**
|
|
34
|
+
* Consume a raw line from a Codex team's stream. On a usage or rate limit: open
|
|
35
|
+
* the team's provider window until the reset (every Codex spawn is held until
|
|
36
|
+
* then, whichever focus it is for), carry the instant on the team for its
|
|
37
|
+
* close-path cooldown, and mark the team `modelUnavailable` so its exit is not
|
|
38
|
+
* read as a review or coding outcome. The `error` and `turn.failed` lines repeat
|
|
39
|
+
* one message; the second changes nothing. Returns the limit, or null.
|
|
40
|
+
*/
|
|
41
|
+
export declare function noteCodexTeamLimit(teamState: FocusTeamState, raw: unknown, focusName: string, nowMs?: number): CodexLimit | null;
|
|
42
|
+
//# sourceMappingURL=codex-limit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-limit.d.ts","sourceRoot":"","sources":["../../src/spawn/codex-limit.ts"],"names":[],"mappings":"AA8CA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAKxD;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,QAAc,CAAC;AAEnD,+CAA+C;AAC/C,MAAM,WAAW,UAAU;IACzB,yGAAyG;IACzG,IAAI,EAAE,aAAa,GAAG,YAAY,CAAC;IACnC,wGAAwG;IACxG,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,2FAA2F;IAC3F,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB;AA8BD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAe/E;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAW9E;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,cAAc,EACzB,GAAG,EAAE,OAAO,EACZ,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,MAAmB,GACzB,UAAU,GAAG,IAAI,CAenB"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
+
// Pinned by: packages/daemon/src/spawn/codex-limit.test.ts
|
|
3
|
+
// PINNED-BY-END
|
|
4
|
+
/**
|
|
5
|
+
* Codex usage-limit and rate-limit recognition at the daemon boundary.
|
|
6
|
+
*
|
|
7
|
+
* The Codex counterpart of spawn/rate-limit.ts. Claude hands the daemon a typed
|
|
8
|
+
* rate_limit_event carrying the reset instant; Codex does not. The shape below
|
|
9
|
+
* was CAPTURED, not assumed: the real `codex exec --json` binary (0.154.0) was
|
|
10
|
+
* driven into a usage limit and a rate limit against a stubbed endpoint, and its
|
|
11
|
+
* verbatim output is checked in under testing/fixtures/codex-streams/ (the
|
|
12
|
+
* README there says exactly how). What it showed:
|
|
13
|
+
*
|
|
14
|
+
* - The limit reaches the JSONL stream ONLY as prose, on an `error` line
|
|
15
|
+
* (`{"type":"error","message":...}`) followed by `turn.failed`
|
|
16
|
+
* (`{"type":"turn.failed","error":{"message":...}}`) with the same text. No
|
|
17
|
+
* typed field, no resets_at, no rate-limit snapshot event reaches `--json`.
|
|
18
|
+
* - A usage limit reads "You've hit your usage limit. ... try again at 6:35 PM."
|
|
19
|
+
* (a reset later today) or "... try again at Sep 27th, 2026 3:35 PM." (a
|
|
20
|
+
* later day), in the codex PROCESS's local time zone, at minute precision --
|
|
21
|
+
* or "You've hit your usage limit. Try again later." with no reset at all.
|
|
22
|
+
* - A rate limit whose retries ran out reads
|
|
23
|
+
* "exceeded retry limit, last status: 429 Too Many Requests" (no reset).
|
|
24
|
+
* - The exit code is 1 for every failure, limit or not.
|
|
25
|
+
*
|
|
26
|
+
* So the reader recognizes those sentences and reads the reset instant back out
|
|
27
|
+
* of the wall-clock text in the daemon's own time zone, which is the one the
|
|
28
|
+
* codex child inherits. The instant is rounded UP to the next minute (codex
|
|
29
|
+
* drops the seconds), so a spawn is never attempted before the real reset. When
|
|
30
|
+
* no reset is given the window opens for CODEX_LIMIT_FALLBACK_MS -- never
|
|
31
|
+
* indefinitely, never zero. Anything else is not a limit and returns null, so a
|
|
32
|
+
* non-limit Codex error is handled exactly as before.
|
|
33
|
+
*
|
|
34
|
+
* WHY THE RAW CHANNEL, NOT daemon-core. The Codex parser lives in daemon-core,
|
|
35
|
+
* which is registry-installed: a change there needs a daemon-core publish and a
|
|
36
|
+
* pin bump before the daemon can use it. The parser already forwards every
|
|
37
|
+
* parsed line verbatim on its `raw` channel, which is exactly how the Claude
|
|
38
|
+
* rate-limit reader (spawn/rate-limit.ts) and the background-worker reader
|
|
39
|
+
* (completion/team-progress-measure.ts noteTeamRawEvent) consume what the
|
|
40
|
+
* neutral stream does not carry. The Codex work-activity reader
|
|
41
|
+
* (completion/codex-activity.ts) makes the same choice, so both Codex readers
|
|
42
|
+
* live in the daemon beside their Claude counterparts. Recorded 2026-09-24.
|
|
43
|
+
*/
|
|
44
|
+
import { CODEX_PROVIDER, openProviderWindow } from './provider-window.js';
|
|
45
|
+
import { createLogger } from '../shell/log.js';
|
|
46
|
+
const log = createLogger({ module: 'codex-limit' });
|
|
47
|
+
/**
|
|
48
|
+
* How long the Codex window stays open when Codex names no reset instant ("Try
|
|
49
|
+
* again later." / a 429 whose retries ran out). Thirty minutes: long enough that
|
|
50
|
+
* a spawn is not re-thrown into the same limit every poll, short enough that a
|
|
51
|
+
* limit that cleared sooner costs at most one wasted half hour -- and the first
|
|
52
|
+
* spawn after it re-learns the limit from Codex if it still stands.
|
|
53
|
+
*/
|
|
54
|
+
export const CODEX_LIMIT_FALLBACK_MS = 30 * 60_000;
|
|
55
|
+
const USAGE_LIMIT_RE = /you've hit your usage limit/i;
|
|
56
|
+
const RATE_LIMIT_RE = /\blast status: 429\b|\b429 Too Many Requests\b/i;
|
|
57
|
+
const MONTHS = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
|
|
58
|
+
const DATED_RESET_RE = /try again at ([A-Z][a-z]{2}) (\d{1,2})(?:st|nd|rd|th)?, (\d{4}) (\d{1,2}):(\d{2}) ?([AP]M)/i;
|
|
59
|
+
const TIME_RESET_RE = /try again at (\d{1,2}):(\d{2}) ?([AP]M)/i;
|
|
60
|
+
const MINUTE_MS = 60_000;
|
|
61
|
+
const DAY_MS = 24 * 3_600_000;
|
|
62
|
+
function isRecord(value) {
|
|
63
|
+
return typeof value === 'object' && value !== null;
|
|
64
|
+
}
|
|
65
|
+
/** The message of a Codex `error` or `turn.failed` line, or null for any other line. */
|
|
66
|
+
function codexFailureMessage(raw) {
|
|
67
|
+
if (!isRecord(raw))
|
|
68
|
+
return null;
|
|
69
|
+
if (raw['type'] === 'error')
|
|
70
|
+
return typeof raw['message'] === 'string' ? raw['message'] : null;
|
|
71
|
+
if (raw['type'] === 'turn.failed') {
|
|
72
|
+
const err = raw['error'];
|
|
73
|
+
return isRecord(err) && typeof err['message'] === 'string' ? err['message'] : null;
|
|
74
|
+
}
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
function hour24(hour12, meridiem) {
|
|
78
|
+
const h = hour12 % 12;
|
|
79
|
+
return meridiem.toUpperCase() === 'PM' ? h + 12 : h;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Read the reset instant out of a Codex usage-limit message, in the local time
|
|
83
|
+
* zone, rounded up to the next minute. A bare time is today's; one already more
|
|
84
|
+
* than a minute past (the message crossed midnight) is tomorrow's. Pure given
|
|
85
|
+
* `nowMs`; null when the message names no instant.
|
|
86
|
+
*/
|
|
87
|
+
export function parseCodexResetAt(message, nowMs) {
|
|
88
|
+
const dated = DATED_RESET_RE.exec(message);
|
|
89
|
+
if (dated) {
|
|
90
|
+
const month = MONTHS.findIndex((m) => m.toLowerCase() === dated[1].toLowerCase());
|
|
91
|
+
if (month < 0)
|
|
92
|
+
return null;
|
|
93
|
+
const at = new Date(Number(dated[3]), month, Number(dated[2]), hour24(Number(dated[4]), dated[6]), Number(dated[5]));
|
|
94
|
+
return Number.isNaN(at.getTime()) ? null : at.getTime() + MINUTE_MS;
|
|
95
|
+
}
|
|
96
|
+
const timed = TIME_RESET_RE.exec(message);
|
|
97
|
+
if (!timed)
|
|
98
|
+
return null;
|
|
99
|
+
const now = new Date(nowMs);
|
|
100
|
+
const at = new Date(now.getFullYear(), now.getMonth(), now.getDate(), hour24(Number(timed[1]), timed[3]), Number(timed[2]));
|
|
101
|
+
let resetMs = at.getTime() + MINUTE_MS;
|
|
102
|
+
if (resetMs < nowMs)
|
|
103
|
+
resetMs += DAY_MS;
|
|
104
|
+
return resetMs;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Parse a raw Codex JSONL line into a CodexLimit, or null when the line is not
|
|
108
|
+
* a usage or rate limit. Pure given `nowMs`.
|
|
109
|
+
*/
|
|
110
|
+
export function parseCodexLimit(raw, nowMs) {
|
|
111
|
+
const message = codexFailureMessage(raw);
|
|
112
|
+
if (message === null)
|
|
113
|
+
return null;
|
|
114
|
+
if (USAGE_LIMIT_RE.test(message)) {
|
|
115
|
+
const resetsAtMs = parseCodexResetAt(message, nowMs);
|
|
116
|
+
return { kind: 'usage_limit', resetsAtMs, holdUntilMs: resetsAtMs ?? nowMs + CODEX_LIMIT_FALLBACK_MS, message };
|
|
117
|
+
}
|
|
118
|
+
if (RATE_LIMIT_RE.test(message)) {
|
|
119
|
+
return { kind: 'rate_limit', resetsAtMs: null, holdUntilMs: nowMs + CODEX_LIMIT_FALLBACK_MS, message };
|
|
120
|
+
}
|
|
121
|
+
return null;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Consume a raw line from a Codex team's stream. On a usage or rate limit: open
|
|
125
|
+
* the team's provider window until the reset (every Codex spawn is held until
|
|
126
|
+
* then, whichever focus it is for), carry the instant on the team for its
|
|
127
|
+
* close-path cooldown, and mark the team `modelUnavailable` so its exit is not
|
|
128
|
+
* read as a review or coding outcome. The `error` and `turn.failed` lines repeat
|
|
129
|
+
* one message; the second changes nothing. Returns the limit, or null.
|
|
130
|
+
*/
|
|
131
|
+
export function noteCodexTeamLimit(teamState, raw, focusName, nowMs = Date.now()) {
|
|
132
|
+
const limit = parseCodexLimit(raw, nowMs);
|
|
133
|
+
if (!limit)
|
|
134
|
+
return null;
|
|
135
|
+
const provider = teamState.provider ?? CODEX_PROVIDER;
|
|
136
|
+
openProviderWindow(provider, limit.holdUntilMs, nowMs);
|
|
137
|
+
teamState.rateLimitResetAtMs = limit.holdUntilMs;
|
|
138
|
+
if (!teamState.modelUnavailable) {
|
|
139
|
+
log.warn(` [focus-team] Codex ${limit.kind === 'usage_limit' ? 'usage limit' : 'rate limit'} for "${focusName}" -- ` +
|
|
140
|
+
`${limit.resetsAtMs !== null ? 'resets' : 'no reset stated; holding (fallback) until'} ` +
|
|
141
|
+
`${new Date(limit.holdUntilMs).toISOString()}: "${limit.message}"`);
|
|
142
|
+
}
|
|
143
|
+
teamState.modelUnavailable = { kind: limit.kind, provider, holdUntilMs: limit.holdUntilMs };
|
|
144
|
+
return limit;
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=codex-limit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-limit.js","sourceRoot":"","sources":["../../src/spawn/codex-limit.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The ROUTE a spawn's directive declares: the directive metadata Phase B selects
|
|
3
|
+
* the spawn's engine, model and provider from (EngineSelectionMetadata).
|
|
4
|
+
*
|
|
5
|
+
* One definition, read by the two places that must agree on it: the spawn
|
|
6
|
+
* itself (spawn/spawn-decision.ts resolveDirectiveOrFallback) and the spawn
|
|
7
|
+
* gates, which resolve the provider of the spawn they are about to let through
|
|
8
|
+
* before any worktree exists (spawn/next-spawn-cooldown.ts). Each would
|
|
9
|
+
* otherwise derive the route its own way, and a route the two read differently
|
|
10
|
+
* is a spawn one provider's window holds while it runs on the other.
|
|
11
|
+
*
|
|
12
|
+
* The route is what the directive DECLARES, never what its body assembled to.
|
|
13
|
+
* A stage directive whose body assembles empty (the spawn then sends the legacy
|
|
14
|
+
* prompt) still declares its engine, model and local model, exactly as a
|
|
15
|
+
* resume-delta spawn that skips assembly does; the body decides what the team is
|
|
16
|
+
* TOLD, not where it runs. That is also what lets the gate, which cannot
|
|
17
|
+
* assemble, read the same route the spawn will run.
|
|
18
|
+
*
|
|
19
|
+
* Pure.
|
|
20
|
+
*/
|
|
21
|
+
import type { PendingSpawnDirective } from '../directive/directive-queue.js';
|
|
22
|
+
import type { WorkflowStageWithDirective, WorkflowWithDirectives } from '../queries/focuses.js';
|
|
23
|
+
import type { EngineSelectionMetadata } from './shared.js';
|
|
24
|
+
/** No directive: nothing pinned, the builtin floor for the model precedence. */
|
|
25
|
+
export declare const NO_DIRECTIVE_ROUTE: EngineSelectionMetadata;
|
|
26
|
+
/** The route a queued spawn directive declares (the respawn path: no workflow read, builtin floor). */
|
|
27
|
+
export declare function pendingDirectiveRoute(pending: PendingSpawnDirective): EngineSelectionMetadata;
|
|
28
|
+
/**
|
|
29
|
+
* The stage a spawn runs at: the one its synced stage id names, or the
|
|
30
|
+
* workflow's initial stage when there is no synced id. A synced id the workflow
|
|
31
|
+
* does not hold names no stage.
|
|
32
|
+
*/
|
|
33
|
+
export declare function stageAtSpawn(workflow: WorkflowWithDirectives, syncedStageId: string | null): WorkflowStageWithDirective | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* The route a workflow stage declares. No stage: nothing pinned (the workflow's
|
|
36
|
+
* builtin-ness still ranks the model precedence). A stage with no directive, or
|
|
37
|
+
* an explicit agentless hold: only its name. Otherwise its declared lineage,
|
|
38
|
+
* engine, model and local model -- whatever its body assembles to.
|
|
39
|
+
*/
|
|
40
|
+
export declare function stageDirectiveRoute(workflow: WorkflowWithDirectives, stage: WorkflowStageWithDirective | undefined): EngineSelectionMetadata;
|
|
41
|
+
//# sourceMappingURL=directive-route.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directive-route.d.ts","sourceRoot":"","sources":["../../src/spawn/directive-route.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,KAAK,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAChG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,gFAAgF;AAChF,eAAO,MAAM,kBAAkB,EAAE,uBAGhC,CAAC;AAEF,uGAAuG;AACvG,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,qBAAqB,GAAG,uBAAuB,CAU7F;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,sBAAsB,EAChC,aAAa,EAAE,MAAM,GAAG,IAAI,GAC3B,0BAA0B,GAAG,SAAS,CAIxC;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,sBAAsB,EAChC,KAAK,EAAE,0BAA0B,GAAG,SAAS,GAC5C,uBAAuB,CAazB"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
+
// Pinned by: none -- no test imports this module directly (baselined; see lint:pinned-by)
|
|
3
|
+
// PINNED-BY-END
|
|
4
|
+
import { isAgentlessDirective } from '../directive/agentless-directive.js';
|
|
5
|
+
/** No directive: nothing pinned, the builtin floor for the model precedence. */
|
|
6
|
+
export const NO_DIRECTIVE_ROUTE = {
|
|
7
|
+
spawnDirectiveDeclared: null, spawnStageName: null, directiveEngine: null, directiveModel: null,
|
|
8
|
+
directiveLocalModel: null, pendingFocusOverrideModel: null, workflowIsBuiltin: true,
|
|
9
|
+
};
|
|
10
|
+
/** The route a queued spawn directive declares (the respawn path: no workflow read, builtin floor). */
|
|
11
|
+
export function pendingDirectiveRoute(pending) {
|
|
12
|
+
return {
|
|
13
|
+
...NO_DIRECTIVE_ROUTE,
|
|
14
|
+
spawnDirectiveDeclared: { lineage: pending.lineage, continuity: pending.continuity },
|
|
15
|
+
spawnStageName: pending.sessionType === 'review' ? 'reviewing' : null,
|
|
16
|
+
directiveEngine: pending.engine ?? null,
|
|
17
|
+
directiveModel: pending.model,
|
|
18
|
+
directiveLocalModel: pending.localModel ?? null,
|
|
19
|
+
pendingFocusOverrideModel: pending.focusOverrideModel,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The stage a spawn runs at: the one its synced stage id names, or the
|
|
24
|
+
* workflow's initial stage when there is no synced id. A synced id the workflow
|
|
25
|
+
* does not hold names no stage.
|
|
26
|
+
*/
|
|
27
|
+
export function stageAtSpawn(workflow, syncedStageId) {
|
|
28
|
+
return syncedStageId
|
|
29
|
+
? workflow.stages.find((s) => s.id === syncedStageId)
|
|
30
|
+
: workflow.stages.find((s) => s.is_initial);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* The route a workflow stage declares. No stage: nothing pinned (the workflow's
|
|
34
|
+
* builtin-ness still ranks the model precedence). A stage with no directive, or
|
|
35
|
+
* an explicit agentless hold: only its name. Otherwise its declared lineage,
|
|
36
|
+
* engine, model and local model -- whatever its body assembles to.
|
|
37
|
+
*/
|
|
38
|
+
export function stageDirectiveRoute(workflow, stage) {
|
|
39
|
+
const base = { ...NO_DIRECTIVE_ROUTE, workflowIsBuiltin: workflow.isBuiltin };
|
|
40
|
+
if (!stage)
|
|
41
|
+
return base;
|
|
42
|
+
const directive = stage.agentDirective;
|
|
43
|
+
if (!directive || isAgentlessDirective(directive))
|
|
44
|
+
return { ...base, spawnStageName: stage.name ?? null };
|
|
45
|
+
return {
|
|
46
|
+
...base,
|
|
47
|
+
spawnDirectiveDeclared: directive,
|
|
48
|
+
spawnStageName: stage.name ?? null,
|
|
49
|
+
directiveEngine: directive.engine ?? null,
|
|
50
|
+
directiveModel: directive.model,
|
|
51
|
+
directiveLocalModel: directive.localModel ?? null,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=directive-route.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directive-route.js","sourceRoot":"","sources":["../../src/spawn/directive-route.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,0FAA0F;AAC1F,gBAAgB;AAwBhB,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAI3E,gFAAgF;AAChF,MAAM,CAAC,MAAM,kBAAkB,GAA4B;IACzD,sBAAsB,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI;IAC/F,mBAAmB,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI;CACpF,CAAC;AAEF,uGAAuG;AACvG,MAAM,UAAU,qBAAqB,CAAC,OAA8B;IAClE,OAAO;QACL,GAAG,kBAAkB;QACrB,sBAAsB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE;QACpF,cAAc,EAAE,OAAO,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;QACrE,eAAe,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI;QACvC,cAAc,EAAE,OAAO,CAAC,KAAK;QAC7B,mBAAmB,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;QAC/C,yBAAyB,EAAE,OAAO,CAAC,kBAAkB;KACtD,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAC1B,QAAgC,EAChC,aAA4B;IAE5B,OAAO,aAAa;QAClB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,aAAa,CAAC;QACrD,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CACjC,QAAgC,EAChC,KAA6C;IAE7C,MAAM,IAAI,GAAG,EAAE,GAAG,kBAAkB,EAAE,iBAAiB,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC;IAC9E,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC;IACvC,IAAI,CAAC,SAAS,IAAI,oBAAoB,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;IAC1G,OAAO;QACL,GAAG,IAAI;QACP,sBAAsB,EAAE,SAAS;QACjC,cAAc,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI;QAClC,eAAe,EAAE,SAAS,CAAC,MAAM,IAAI,IAAI;QACzC,cAAc,EAAE,SAAS,CAAC,KAAK;QAC/B,mBAAmB,EAAE,SAAS,CAAC,UAAU,IAAI,IAAI;KAClD,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../src/spawn/guards.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../src/spawn/guards.ts"],"names":[],"mappings":"AAkCA,yCAAyC;AACzC,MAAM,WAAW,qBAAqB;IACpC,iBAAiB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAChD,mBAAmB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD;AAQD;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,qBAAmC,GACxC,OAAO,CAET;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,qBAAmC,GACxC,IAAI,CAEN"}
|
package/dist/spawn/guards.js
CHANGED
|
@@ -27,9 +27,11 @@
|
|
|
27
27
|
* resolve cleanly under tsx --experimental-test-module-mocks (same reasoning
|
|
28
28
|
* as focus-respawn-guard.ts).
|
|
29
29
|
*/
|
|
30
|
-
import {
|
|
30
|
+
import { recordFocusTeardown } from './spawn-cooldown.js';
|
|
31
|
+
import { isNextSpawnInTeardownCooldown } from './next-spawn-cooldown.js';
|
|
31
32
|
const defaultDeps = {
|
|
32
|
-
|
|
33
|
+
// The teardown streak, whatever the spawn runs on (the listener reads the provider window with it).
|
|
34
|
+
isInSpawnCooldown: isNextSpawnInTeardownCooldown,
|
|
33
35
|
recordFocusTeardown,
|
|
34
36
|
};
|
|
35
37
|
/**
|
package/dist/spawn/guards.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guards.js","sourceRoot":"","sources":["../../src/spawn/guards.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,mEAAmE;AACnE,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"guards.js","sourceRoot":"","sources":["../../src/spawn/guards.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,mEAAmE;AACnE,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AAQzE,MAAM,WAAW,GAA0B;IACzC,oGAAoG;IACpG,iBAAiB,EAAE,6BAA6B;IAChD,mBAAmB;CACpB,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAe,EACf,OAA8B,WAAW;IAEzC,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,OAAe,EACf,OAA8B,WAAW;IAEzC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/spawn/helpers.ts"],"names":[],"mappings":"AAYA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAgB,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAG5D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EACL,cAAc,EAAE,gBAAgB,EAEjC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/spawn/helpers.ts"],"names":[],"mappings":"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"}
|