wicked-crew 0.7.40 → 0.7.46
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/audit.d.ts +3 -0
- package/dist/api/audit.d.ts.map +1 -1
- package/dist/api/audit.js +2 -0
- package/dist/api/audit.js.map +1 -1
- package/dist/api/capture.d.ts +149 -0
- package/dist/api/capture.d.ts.map +1 -0
- package/dist/api/capture.js +330 -0
- package/dist/api/capture.js.map +1 -0
- package/dist/api/chat-citations.d.ts +174 -0
- package/dist/api/chat-citations.d.ts.map +1 -0
- package/dist/api/chat-citations.js +528 -0
- package/dist/api/chat-citations.js.map +1 -0
- package/dist/api/chat-transcripts.d.ts +20 -1
- package/dist/api/chat-transcripts.d.ts.map +1 -1
- package/dist/api/chat-transcripts.js +29 -0
- package/dist/api/chat-transcripts.js.map +1 -1
- package/dist/api/delivery-cache.d.ts +2 -2
- package/dist/api/delivery-freeze.d.ts +66 -0
- package/dist/api/delivery-freeze.d.ts.map +1 -0
- package/dist/api/delivery-freeze.js +104 -0
- package/dist/api/delivery-freeze.js.map +1 -0
- package/dist/api/delivery-index.d.ts +53 -9
- package/dist/api/delivery-index.d.ts.map +1 -1
- package/dist/api/delivery-index.js +115 -22
- package/dist/api/delivery-index.js.map +1 -1
- package/dist/api/demo.d.ts +90 -0
- package/dist/api/demo.d.ts.map +1 -0
- package/dist/api/demo.js +492 -0
- package/dist/api/demo.js.map +1 -0
- package/dist/api/diagnostics.d.ts +64 -1
- package/dist/api/diagnostics.d.ts.map +1 -1
- package/dist/api/diagnostics.js +129 -1
- package/dist/api/diagnostics.js.map +1 -1
- package/dist/api/eval-sample.d.ts +6 -6
- package/dist/api/governance-steering.d.ts +2 -2
- package/dist/api/mcp.d.ts +282 -0
- package/dist/api/mcp.d.ts.map +1 -0
- package/dist/api/mcp.js +521 -0
- package/dist/api/mcp.js.map +1 -0
- package/dist/api/plan-schema.d.ts +56 -0
- package/dist/api/plan-schema.d.ts.map +1 -0
- package/dist/api/plan-schema.js +26 -0
- package/dist/api/plan-schema.js.map +1 -0
- package/dist/api/roster-standing.d.ts +15 -2
- package/dist/api/roster-standing.d.ts.map +1 -1
- package/dist/api/roster-standing.js +59 -3
- package/dist/api/roster-standing.js.map +1 -1
- package/dist/api/routes.d.ts +630 -51
- package/dist/api/routes.d.ts.map +1 -1
- package/dist/api/routes.js +738 -127
- package/dist/api/routes.js.map +1 -1
- package/dist/api/run-files.d.ts.map +1 -1
- package/dist/api/run-files.js +31 -2
- package/dist/api/run-files.js.map +1 -1
- package/dist/api/run-liveness.d.ts +41 -0
- package/dist/api/run-liveness.d.ts.map +1 -0
- package/dist/api/run-liveness.js +166 -0
- package/dist/api/run-liveness.js.map +1 -0
- package/dist/api/seat-health.d.ts +35 -0
- package/dist/api/seat-health.d.ts.map +1 -1
- package/dist/api/seat-health.js +92 -4
- package/dist/api/seat-health.js.map +1 -1
- package/dist/api/seat-probe.d.ts +141 -0
- package/dist/api/seat-probe.d.ts.map +1 -0
- package/dist/api/seat-probe.js +257 -0
- package/dist/api/seat-probe.js.map +1 -0
- package/dist/api/seat-record.d.ts +40 -0
- package/dist/api/seat-record.d.ts.map +1 -0
- package/dist/api/seat-record.js +218 -0
- package/dist/api/seat-record.js.map +1 -0
- package/dist/api/seat-signin.d.ts.map +1 -1
- package/dist/api/seat-signin.js +3 -1
- package/dist/api/seat-signin.js.map +1 -1
- package/dist/api/seat-standing.d.ts +25 -5
- package/dist/api/seat-standing.d.ts.map +1 -1
- package/dist/api/seat-standing.js +76 -9
- package/dist/api/seat-standing.js.map +1 -1
- package/dist/api/server.d.ts +34 -48
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +283 -107
- package/dist/api/server.js.map +1 -1
- package/dist/api/skills.d.ts +3 -1
- package/dist/api/skills.d.ts.map +1 -1
- package/dist/api/skills.js +7 -2
- package/dist/api/skills.js.map +1 -1
- package/dist/api/stall-watchdog.d.ts +34 -3
- package/dist/api/stall-watchdog.d.ts.map +1 -1
- package/dist/api/stall-watchdog.js +107 -8
- package/dist/api/stall-watchdog.js.map +1 -1
- package/dist/api/steering-landing.d.ts +6 -6
- package/dist/api/steering-landing.d.ts.map +1 -1
- package/dist/api/steering-landing.js +7 -9
- package/dist/api/steering-landing.js.map +1 -1
- package/dist/api/testing.d.ts +6 -4
- package/dist/api/testing.d.ts.map +1 -1
- package/dist/api/testing.js +82 -47
- package/dist/api/testing.js.map +1 -1
- package/dist/campaign/boot-resume.d.ts +34 -0
- package/dist/campaign/boot-resume.d.ts.map +1 -0
- package/dist/campaign/boot-resume.js +45 -0
- package/dist/campaign/boot-resume.js.map +1 -0
- package/dist/campaigns/rollup.d.ts +4 -1
- package/dist/campaigns/rollup.d.ts.map +1 -1
- package/dist/campaigns/rollup.js +6 -1
- package/dist/campaigns/rollup.js.map +1 -1
- package/dist/campaigns/routes.d.ts +2 -2
- package/dist/cli/bearer.d.ts +27 -1
- package/dist/cli/bearer.d.ts.map +1 -1
- package/dist/cli/bearer.js +62 -2
- package/dist/cli/bearer.js.map +1 -1
- package/dist/cli/governance.d.ts +11 -0
- package/dist/cli/governance.d.ts.map +1 -1
- package/dist/cli/governance.js +8 -2
- package/dist/cli/governance.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +140 -75
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/mcp.d.ts +11 -0
- package/dist/cli/mcp.d.ts.map +1 -1
- package/dist/cli/mcp.js +40 -9
- package/dist/cli/mcp.js.map +1 -1
- package/dist/cli/service.d.ts +78 -0
- package/dist/cli/service.d.ts.map +1 -0
- package/dist/cli/service.js +334 -0
- package/dist/cli/service.js.map +1 -0
- package/dist/core/adapter.d.ts +238 -12
- package/dist/core/adapter.d.ts.map +1 -1
- package/dist/core/adapter.js +619 -157
- package/dist/core/adapter.js.map +1 -1
- package/dist/core/bridge-reaper.d.ts +4 -1
- package/dist/core/bridge-reaper.d.ts.map +1 -1
- package/dist/core/bridge-reaper.js +15 -1
- package/dist/core/bridge-reaper.js.map +1 -1
- package/dist/core/bus-notice.d.ts +27 -0
- package/dist/core/bus-notice.d.ts.map +1 -0
- package/dist/core/bus-notice.js +24 -0
- package/dist/core/bus-notice.js.map +1 -0
- package/dist/core/bus.d.ts +99 -0
- package/dist/core/bus.d.ts.map +1 -0
- package/dist/core/bus.js +176 -0
- package/dist/core/bus.js.map +1 -0
- package/dist/core/deliver-exclusions.d.ts +71 -0
- package/dist/core/deliver-exclusions.d.ts.map +1 -0
- package/dist/core/deliver-exclusions.js +110 -0
- package/dist/core/deliver-exclusions.js.map +1 -0
- package/dist/core/deliver-text.d.ts +61 -14
- package/dist/core/deliver-text.d.ts.map +1 -1
- package/dist/core/deliver-text.js +178 -30
- package/dist/core/deliver-text.js.map +1 -1
- package/dist/core/deliver-triage.d.ts +11 -2
- package/dist/core/deliver-triage.d.ts.map +1 -1
- package/dist/core/deliver-triage.js +19 -1
- package/dist/core/deliver-triage.js.map +1 -1
- package/dist/core/deliver.d.ts +161 -3
- package/dist/core/deliver.d.ts.map +1 -1
- package/dist/core/deliver.js +463 -25
- package/dist/core/deliver.js.map +1 -1
- package/dist/core/deliverable-floor.d.ts.map +1 -1
- package/dist/core/deliverable-floor.js +5 -7
- package/dist/core/deliverable-floor.js.map +1 -1
- package/dist/core/engine-bus.d.ts +40 -0
- package/dist/core/engine-bus.d.ts.map +1 -0
- package/dist/core/engine-bus.js +27 -0
- package/dist/core/engine-bus.js.map +1 -0
- package/dist/core/estate-mcp-client.d.ts +87 -5
- package/dist/core/estate-mcp-client.d.ts.map +1 -1
- package/dist/core/estate-mcp-client.js +90 -11
- package/dist/core/estate-mcp-client.js.map +1 -1
- package/dist/core/linked-issues.d.ts +46 -0
- package/dist/core/linked-issues.d.ts.map +1 -0
- package/dist/core/linked-issues.js +123 -0
- package/dist/core/linked-issues.js.map +1 -0
- package/dist/core/run-identity.d.ts +100 -0
- package/dist/core/run-identity.d.ts.map +1 -0
- package/dist/core/run-identity.js +178 -0
- package/dist/core/run-identity.js.map +1 -0
- package/dist/core/shutdown.d.ts +16 -0
- package/dist/core/shutdown.d.ts.map +1 -0
- package/dist/core/shutdown.js +39 -0
- package/dist/core/shutdown.js.map +1 -0
- package/dist/core/types.d.ts +15 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +4 -0
- package/dist/core/types.js.map +1 -1
- package/dist/interactive/bridge-pool.d.ts +67 -3
- package/dist/interactive/bridge-pool.d.ts.map +1 -1
- package/dist/interactive/bridge-pool.js +129 -13
- package/dist/interactive/bridge-pool.js.map +1 -1
- package/dist/interactive/bridge-root.d.ts +9 -0
- package/dist/interactive/bridge-root.d.ts.map +1 -1
- package/dist/interactive/bridge-root.js +11 -4
- package/dist/interactive/bridge-root.js.map +1 -1
- package/dist/interactive/chat-events.d.ts +14 -9
- package/dist/interactive/chat-events.d.ts.map +1 -1
- package/dist/interactive/chat-events.js +55 -57
- package/dist/interactive/chat-events.js.map +1 -1
- package/dist/interactive/council-outcome.d.ts +1 -0
- package/dist/interactive/council-outcome.d.ts.map +1 -1
- package/dist/interactive/council-outcome.js +33 -0
- package/dist/interactive/council-outcome.js.map +1 -1
- package/dist/interactive/draft-events.d.ts +36 -17
- package/dist/interactive/draft-events.d.ts.map +1 -1
- package/dist/interactive/draft-events.js +121 -92
- package/dist/interactive/draft-events.js.map +1 -1
- package/dist/interactive/draft-skill.d.ts +59 -0
- package/dist/interactive/draft-skill.d.ts.map +1 -1
- package/dist/interactive/draft-skill.js +233 -0
- package/dist/interactive/draft-skill.js.map +1 -1
- package/dist/interactive/edit-events.d.ts +1 -14
- package/dist/interactive/edit-events.d.ts.map +1 -1
- package/dist/interactive/edit-events.js +37 -70
- package/dist/interactive/edit-events.js.map +1 -1
- package/dist/interactive/proxy-routes.d.ts +2 -2
- package/dist/interactive/proxy-routes.d.ts.map +1 -1
- package/dist/interactive/proxy-routes.js +4 -13
- package/dist/interactive/proxy-routes.js.map +1 -1
- package/dist/interactive/ws-relay.d.ts +9 -10
- package/dist/interactive/ws-relay.d.ts.map +1 -1
- package/dist/interactive/ws-relay.js +23 -50
- package/dist/interactive/ws-relay.js.map +1 -1
- package/dist/mcp/broker.d.ts +88 -0
- package/dist/mcp/broker.d.ts.map +1 -0
- package/dist/mcp/broker.js +307 -0
- package/dist/mcp/broker.js.map +1 -0
- package/dist/mcp/call-records.d.ts +61 -0
- package/dist/mcp/call-records.d.ts.map +1 -0
- package/dist/mcp/call-records.js +135 -0
- package/dist/mcp/call-records.js.map +1 -0
- package/dist/mcp/classify.d.ts +45 -0
- package/dist/mcp/classify.d.ts.map +1 -0
- package/dist/mcp/classify.js +83 -0
- package/dist/mcp/classify.js.map +1 -0
- package/dist/mcp/discovery.d.ts +24 -0
- package/dist/mcp/discovery.d.ts.map +1 -0
- package/dist/mcp/discovery.js +78 -0
- package/dist/mcp/discovery.js.map +1 -0
- package/dist/mcp/invoke.d.ts +36 -0
- package/dist/mcp/invoke.d.ts.map +1 -0
- package/dist/mcp/invoke.js +80 -0
- package/dist/mcp/invoke.js.map +1 -0
- package/dist/mcp/policies.d.ts +110 -0
- package/dist/mcp/policies.d.ts.map +1 -0
- package/dist/mcp/policies.js +400 -0
- package/dist/mcp/policies.js.map +1 -0
- package/dist/mcp/probe.d.ts +66 -0
- package/dist/mcp/probe.d.ts.map +1 -0
- package/dist/mcp/probe.js +116 -0
- package/dist/mcp/probe.js.map +1 -0
- package/dist/mcp/redact.d.ts +34 -0
- package/dist/mcp/redact.d.ts.map +1 -0
- package/dist/mcp/redact.js +84 -0
- package/dist/mcp/redact.js.map +1 -0
- package/dist/mcp/registry-store.d.ts +69 -0
- package/dist/mcp/registry-store.d.ts.map +1 -0
- package/dist/mcp/registry-store.js +82 -0
- package/dist/mcp/registry-store.js.map +1 -0
- package/dist/mcp/registry.d.ts +147 -0
- package/dist/mcp/registry.d.ts.map +1 -0
- package/dist/mcp/registry.js +509 -0
- package/dist/mcp/registry.js.map +1 -0
- package/dist/mcp/rest.d.ts +111 -0
- package/dist/mcp/rest.d.ts.map +1 -0
- package/dist/mcp/rest.js +606 -0
- package/dist/mcp/rest.js.map +1 -0
- package/dist/mcp/secrets.d.ts +66 -0
- package/dist/mcp/secrets.d.ts.map +1 -0
- package/dist/mcp/secrets.js +180 -0
- package/dist/mcp/secrets.js.map +1 -0
- package/dist/mcp/tool-list.d.ts +25 -0
- package/dist/mcp/tool-list.d.ts.map +1 -0
- package/dist/mcp/tool-list.js +62 -0
- package/dist/mcp/tool-list.js.map +1 -0
- package/dist/mcp/upstream-error.d.ts +12 -0
- package/dist/mcp/upstream-error.d.ts.map +1 -0
- package/dist/mcp/upstream-error.js +14 -0
- package/dist/mcp/upstream-error.js.map +1 -0
- package/dist/mcp/usage.d.ts +31 -0
- package/dist/mcp/usage.d.ts.map +1 -0
- package/dist/mcp/usage.js +159 -0
- package/dist/mcp/usage.js.map +1 -0
- package/dist/presets/routes.d.ts +53 -0
- package/dist/presets/routes.d.ts.map +1 -0
- package/dist/presets/routes.js +115 -0
- package/dist/presets/routes.js.map +1 -0
- package/dist/projects/activity.d.ts +6 -18
- package/dist/projects/activity.d.ts.map +1 -1
- package/dist/projects/activity.js +17 -60
- package/dist/projects/activity.js.map +1 -1
- package/dist/projects/events.d.ts +6 -5
- package/dist/projects/events.d.ts.map +1 -1
- package/dist/projects/events.js +33 -58
- package/dist/projects/events.js.map +1 -1
- package/dist/projects/routes.d.ts.map +1 -1
- package/dist/projects/routes.js +19 -0
- package/dist/projects/routes.js.map +1 -1
- package/dist/projects/state-home-preflight.d.ts.map +1 -1
- package/dist/projects/state-home-preflight.js +7 -0
- package/dist/projects/state-home-preflight.js.map +1 -1
- package/dist/projects/state-home-registry.d.ts.map +1 -1
- package/dist/projects/state-home-registry.js +9 -1
- package/dist/projects/state-home-registry.js.map +1 -1
- package/dist/qe/acceptance.d.ts +28 -28
- package/dist/qe/acceptance.d.ts.map +1 -1
- package/dist/qe/acceptance.js +60 -61
- package/dist/qe/acceptance.js.map +1 -1
- package/dist/qe/test-sets.d.ts +3 -5
- package/dist/qe/test-sets.d.ts.map +1 -1
- package/dist/qe/test-sets.js +5 -7
- package/dist/qe/test-sets.js.map +1 -1
- package/dist/skills/installed.d.ts +51 -0
- package/dist/skills/installed.d.ts.map +1 -0
- package/dist/skills/installed.js +46 -0
- package/dist/skills/installed.js.map +1 -0
- package/dist/standing-orders/evaluator.d.ts +113 -0
- package/dist/standing-orders/evaluator.d.ts.map +1 -0
- package/dist/standing-orders/evaluator.js +225 -0
- package/dist/standing-orders/evaluator.js.map +1 -0
- package/dist/standing-orders/history.d.ts +58 -0
- package/dist/standing-orders/history.d.ts.map +1 -0
- package/dist/standing-orders/history.js +117 -0
- package/dist/standing-orders/history.js.map +1 -0
- package/dist/standing-orders/parse.d.ts +19 -0
- package/dist/standing-orders/parse.d.ts.map +1 -0
- package/dist/standing-orders/parse.js +75 -0
- package/dist/standing-orders/parse.js.map +1 -0
- package/dist/standing-orders/routes.d.ts +180 -0
- package/dist/standing-orders/routes.d.ts.map +1 -0
- package/dist/standing-orders/routes.js +95 -0
- package/dist/standing-orders/routes.js.map +1 -0
- package/dist/standing-orders/store.d.ts +154 -0
- package/dist/standing-orders/store.d.ts.map +1 -0
- package/dist/standing-orders/store.js +189 -0
- package/dist/standing-orders/store.js.map +1 -0
- package/dist/studio/assets/index-CvV5qITf.css +32 -0
- package/dist/studio/assets/index-jCOy6Ns7.js +568 -0
- package/dist/studio/index.html +3 -3
- package/dist/studio/testid-inventory.json +3274 -894
- package/dist/team/key.d.ts +5 -0
- package/dist/team/key.d.ts.map +1 -0
- package/dist/team/key.js +21 -0
- package/dist/team/key.js.map +1 -0
- package/dist/team/routes.d.ts +196 -0
- package/dist/team/routes.d.ts.map +1 -0
- package/dist/team/routes.js +274 -0
- package/dist/team/routes.js.map +1 -0
- package/dist/team/ws-relay.d.ts +39 -0
- package/dist/team/ws-relay.d.ts.map +1 -0
- package/dist/team/ws-relay.js +63 -0
- package/dist/team/ws-relay.js.map +1 -0
- package/endpoint-manifest.json +502 -6
- package/package.json +6 -6
- package/dist/interactive/demo-events.d.ts +0 -367
- package/dist/interactive/demo-events.d.ts.map +0 -1
- package/dist/interactive/demo-events.js +0 -1293
- package/dist/interactive/demo-events.js.map +0 -1
- package/dist/qe/gate-events.d.ts +0 -113
- package/dist/qe/gate-events.d.ts.map +0 -1
- package/dist/qe/gate-events.js +0 -172
- package/dist/qe/gate-events.js.map +0 -1
- package/dist/studio/assets/index-Bg7Z3BR-.css +0 -32
- package/dist/studio/assets/index-BvOFMjf9.js +0 -554
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-files.d.ts","sourceRoot":"","sources":["../../src/api/run-files.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run-files.d.ts","sourceRoot":"","sources":["../../src/api/run-files.ts"],"names":[],"mappings":"AAeA;qGACqG;AACrG,eAAO,MAAM,sBAAsB,QAAa,CAAC;AAEjD;iFACiF;AACjF,eAAO,MAAM,kBAAkB,QAAW,CAAC;AAE3C,uFAAuF;AACvF,eAAO,MAAM,qBAAqB,QAAc,CAAC;AAEjD,+FAA+F;AAC/F,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;uFACuF;AACvF,qBAAa,oBAAqB,SAAQ,KAAK;IAE3C,QAAQ,CAAC,IAAI,EAAE,MAAM;gBAAZ,IAAI,EAAE,MAAM,EACrB,MAAM,GAAE,MAA6B;CAKxC;AAED,8EAA8E;AAC9E,MAAM,WAAW,iBAAiB;IAChC,+HAA+H;IAC/H,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2JAA2J;IAC3J,QAAQ,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACzC;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,iBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC,CAgC1G;AAED,uFAAuF;AACvF,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC/B,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;gGAC4F;IAC5F,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CA+D9B;AAMD;wFACwF;AACxF,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAE/C;mGACmG;AACnG,qBAAa,oBAAqB,SAAQ,KAAK;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM;gBAAZ,IAAI,EAAE,MAAM;CAOlC;AAED;2FAC2F;AAC3F,qBAAa,yBAA0B,SAAQ,KAAK;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM;gBAAZ,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAIlD;AAMD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEhD;AA0FD;;;;;;;;;;;;GAYG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,YAAY,CAAC,CAyGvB"}
|
package/dist/api/run-files.js
CHANGED
|
@@ -7,8 +7,10 @@
|
|
|
7
7
|
// `--no-ext-diff` (a configured external diff driver must never execute here). Both routes are
|
|
8
8
|
// read-only by construction: `fs` reads and `git diff`/`git status` — zero write capability, a
|
|
9
9
|
// strictly smaller threat surface than `/open` handing the path to an OS opener.
|
|
10
|
-
import { constants as fsConstants, promises as fsp } from 'node:fs';
|
|
10
|
+
import { constants as fsConstants, promises as fsp, statSync } from 'node:fs';
|
|
11
|
+
import { join } from 'node:path';
|
|
11
12
|
import { execCapped, ExecOutputTooLarge } from '../core/exec.js';
|
|
13
|
+
import { deliverExclusionByName, deliverExclusionReason } from '../core/deliver-exclusions.js';
|
|
12
14
|
/** File-content cap (DES-FEEDBACK-002 §3.3): past this, `content` holds the first 512 KB and
|
|
13
15
|
* `truncated: true` — the studio renders a labeled truncation banner, never a silent amputation. */
|
|
14
16
|
export const FILE_CONTENT_CAP_BYTES = 512 * 1024;
|
|
@@ -320,10 +322,37 @@ export async function worktreeDiff(workdir, relPath, base) {
|
|
|
320
322
|
// Untracked files → all-addition hunks. `-z` (NUL separators, no quoting) + `-uall` (individual
|
|
321
323
|
// files, never a collapsed `?? dir/` entry that --no-index could not diff).
|
|
322
324
|
const { stdout: statusOut } = await execCapped('git', ['status', '--porcelain', '-z', '-uall', ...limit], { timeout: GIT_TIMEOUT_MS, cwd: workdir });
|
|
323
|
-
const
|
|
325
|
+
const candidates = statusOut
|
|
324
326
|
.split('\0')
|
|
325
327
|
.filter((entry) => entry.startsWith('?? '))
|
|
326
328
|
.map((entry) => entry.slice(3));
|
|
329
|
+
// F3 — THE WHOLE-WORKTREE DIFF IS A PREVIEW OF THE PUSH, so it carries exactly what the push
|
|
330
|
+
// carries. `deliverPrScript`'s crew#434 classifier drops scratch dirs, databases, sockets, key
|
|
331
|
+
// material, `.DS_Store` and unrecognised files over 1 MiB; this pass used to append every one of
|
|
332
|
+
// them, so the deliver gate's consent diffstat read "109 files changed, +258, -2" for a commit
|
|
333
|
+
// that pushed 4 files, +47, -2. The number on a consent surface has to be the number that ships.
|
|
334
|
+
//
|
|
335
|
+
// A NARROWED request (`relPath`) is exempt: the caller asked about exactly one file it can see in
|
|
336
|
+
// `GET /runs/:id/files`, and answering "no changes" for a scratch file it deliberately opened
|
|
337
|
+
// would be a different lie. Only the aggregate — the one the diffstat is computed from — is
|
|
338
|
+
// filtered.
|
|
339
|
+
//
|
|
340
|
+
// Name rules FIRST, and only a path that survives all of them is stat'd (codex review, MEDIUM):
|
|
341
|
+
// a worktree carrying 100 000 files under `tmp/` would otherwise cost 100 000 synchronous stats
|
|
342
|
+
// on the daemon's event loop to reject paths the directory rule rejects without a size.
|
|
343
|
+
const untracked = relPath !== undefined ? candidates : candidates.filter((file) => {
|
|
344
|
+
if (deliverExclusionByName(file) !== null)
|
|
345
|
+
return false;
|
|
346
|
+
let size = null;
|
|
347
|
+
try {
|
|
348
|
+
size = statSync(join(workdir, file)).size;
|
|
349
|
+
}
|
|
350
|
+
catch {
|
|
351
|
+
// Unreadable/raced away: an unknown size is never treated as oversize (the shell's
|
|
352
|
+
// `wc -c < "$F" 2>/dev/null || echo 0` degrades the same way).
|
|
353
|
+
}
|
|
354
|
+
return deliverExclusionReason(file, size) === null;
|
|
355
|
+
});
|
|
327
356
|
for (const file of untracked) {
|
|
328
357
|
// Cap is in BYTES; `out.length` counts UTF-16 code units. `>=`: exactly-at-cap is
|
|
329
358
|
// already done — spawning one more git only to discard its output is waste (Copilot, #305).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-files.js","sourceRoot":"","sources":["../../src/api/run-files.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run-files.js","sourceRoot":"","sources":["../../src/api/run-files.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/** One process row: its parent, cumulative CPU seconds, and command name. */
|
|
2
|
+
export interface ProcRow {
|
|
3
|
+
pid: number;
|
|
4
|
+
ppid: number;
|
|
5
|
+
cpuSec: number;
|
|
6
|
+
comm: string;
|
|
7
|
+
}
|
|
8
|
+
/** The two OS reads the sampler needs, injectable for tests. */
|
|
9
|
+
export interface ProcessProbe {
|
|
10
|
+
/** Every process on the host (or at least this daemon's subtree). */
|
|
11
|
+
table: () => Promise<ProcRow[]>;
|
|
12
|
+
/** The working directory of each pid that has a readable one. */
|
|
13
|
+
cwds: (pids: number[]) => Promise<Map<number, string>>;
|
|
14
|
+
}
|
|
15
|
+
/** CPU share of one core, over the time since the previous sample, that reads as busy. An idle
|
|
16
|
+
* node CLI waiting on a model sits well under 1 %; a test runner or compiler burns 50-100 %+. */
|
|
17
|
+
export declare const BUSY_CPU_SHARE = 0.05;
|
|
18
|
+
/**
|
|
19
|
+
* Parses `ps -o time=` (`[[dd-]hh:]mm:ss[.cc]`, macOS and procps alike) to seconds; NaN when
|
|
20
|
+
* the field is not a CPU time.
|
|
21
|
+
*/
|
|
22
|
+
export declare function parseCpuTime(raw: string): number;
|
|
23
|
+
/** The host probe: `ps` everywhere POSIX, cwd via lsof (macOS) or /proc (Linux). */
|
|
24
|
+
export declare const hostProcessProbe: ProcessProbe;
|
|
25
|
+
/**
|
|
26
|
+
* Samples which runs have busy processes. Stateful: CPU is compared with the previous sample of
|
|
27
|
+
* the same pid, so the first sample of a process is a baseline and never reads as busy.
|
|
28
|
+
*/
|
|
29
|
+
export declare class RunLivenessSampler {
|
|
30
|
+
private readonly probe;
|
|
31
|
+
private readonly rootPid;
|
|
32
|
+
private readonly now;
|
|
33
|
+
private prev;
|
|
34
|
+
constructor(probe?: ProcessProbe, rootPid?: number, now?: () => number);
|
|
35
|
+
/**
|
|
36
|
+
* For each of `runIds` whose processes burned at least {@link BUSY_CPU_SHARE} of a core since the
|
|
37
|
+
* previous sample: the run id → a short description of the busiest process (`vitest pid 812`).
|
|
38
|
+
*/
|
|
39
|
+
busy(runIds: readonly string[]): Promise<Map<string, string>>;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=run-liveness.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-liveness.d.ts","sourceRoot":"","sources":["../../src/api/run-liveness.ts"],"names":[],"mappings":"AAsBA,6EAA6E;AAC7E,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,gEAAgE;AAChE,MAAM,WAAW,YAAY;IAC3B,qEAAqE;IACrE,KAAK,EAAE,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAChC,iEAAiE;IACjE,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACxD;AAED;kGACkG;AAClG,eAAO,MAAM,cAAc,OAAO,CAAC;AAEnC;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAMhD;AAWD,oFAAoF;AACpF,eAAO,MAAM,gBAAgB,EAAE,YAoC9B,CAAC;AAEF;;;GAGG;AACH,qBAAa,kBAAkB;IAI3B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG;IALtB,OAAO,CAAC,IAAI,CAAqD;gBAG9C,KAAK,GAAE,YAA+B,EACtC,OAAO,GAAE,MAAoB,EAC7B,GAAG,GAAE,MAAM,MAAiB;IAG/C;;;OAGG;IACG,IAAI,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAsDpE"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
// Run liveness from the daemon's own process tree (crew#629 / crew#581).
|
|
2
|
+
//
|
|
3
|
+
// The stall watchdog's only proof of life used to be a relay frame. A wrapped-carrier seat that
|
|
4
|
+
// runs `vitest run` or `cargo test` in its own shell emits no frame while the child works, so a
|
|
5
|
+
// busy unit read as silent and was killed and re-dispatched at 30 minutes (run c4acc184: three
|
|
6
|
+
// full suite runs = "30 min silence").
|
|
7
|
+
//
|
|
8
|
+
// The engine runs in this process (napi), so every worker it spawns, and every test runner or
|
|
9
|
+
// build those workers start, is a DESCENDANT of this daemon. A run's processes are the ones whose
|
|
10
|
+
// working directory sits inside the run's worktree (`<repo>/wicked-worktrees/<run id>`; the
|
|
11
|
+
// checks' base copy lives under it too), so the run id in the cwd attributes a process to a run.
|
|
12
|
+
// A run is BUSY when its processes burned CPU since the previous sample: a test runner or a build
|
|
13
|
+
// burns a core, while a wedged turn waiting on nothing sits at ~0 % (run 753b4d66's idle pi).
|
|
14
|
+
//
|
|
15
|
+
// One reading per sweep: `ps` for the tree and CPU times, then the cwd of each descendant
|
|
16
|
+
// (`lsof` on macOS, `/proc/<pid>/cwd` on Linux). Windows has no reading: the watchdog keeps the
|
|
17
|
+
// frame-only clock there.
|
|
18
|
+
import { execFile } from 'node:child_process';
|
|
19
|
+
import { readlink } from 'node:fs/promises';
|
|
20
|
+
import { childEnvWithBootEstateDb } from '../core/governance-store.js';
|
|
21
|
+
/** CPU share of one core, over the time since the previous sample, that reads as busy. An idle
|
|
22
|
+
* node CLI waiting on a model sits well under 1 %; a test runner or compiler burns 50-100 %+. */
|
|
23
|
+
export const BUSY_CPU_SHARE = 0.05;
|
|
24
|
+
/**
|
|
25
|
+
* Parses `ps -o time=` (`[[dd-]hh:]mm:ss[.cc]`, macOS and procps alike) to seconds; NaN when
|
|
26
|
+
* the field is not a CPU time.
|
|
27
|
+
*/
|
|
28
|
+
export function parseCpuTime(raw) {
|
|
29
|
+
const s = raw.trim();
|
|
30
|
+
const m = /^(?:(\d+)-)?(?:(\d+):)?(\d+):(\d+(?:\.\d+)?)$/.exec(s);
|
|
31
|
+
if (m === null)
|
|
32
|
+
return Number.NaN;
|
|
33
|
+
const [, dd, hh, mm, ss] = m;
|
|
34
|
+
return (Number(dd ?? 0) * 24 + Number(hh ?? 0)) * 3600 + Number(mm) * 60 + Number(ss);
|
|
35
|
+
}
|
|
36
|
+
function run(cmd, args) {
|
|
37
|
+
return new Promise((resolve) => {
|
|
38
|
+
execFile(cmd, args, { encoding: 'utf8', timeout: 8_000, maxBuffer: 8 * 1024 * 1024, windowsHide: true, env: childEnvWithBootEstateDb() }, (_err, stdout) => {
|
|
39
|
+
// lsof exits 1 when one of the pids has already gone; its stdout for the rest still counts.
|
|
40
|
+
resolve(typeof stdout === 'string' ? stdout : '');
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
/** The host probe: `ps` everywhere POSIX, cwd via lsof (macOS) or /proc (Linux). */
|
|
45
|
+
export const hostProcessProbe = {
|
|
46
|
+
table: async () => {
|
|
47
|
+
const out = await run('ps', ['-A', '-o', 'pid=,ppid=,time=,comm=']);
|
|
48
|
+
const rows = [];
|
|
49
|
+
for (const line of out.split('\n')) {
|
|
50
|
+
const m = /^\s*(\d+)\s+(\d+)\s+(\S+)\s+(.*)$/.exec(line);
|
|
51
|
+
if (m === null)
|
|
52
|
+
continue;
|
|
53
|
+
const cpuSec = parseCpuTime(m[3] ?? '');
|
|
54
|
+
if (!Number.isFinite(cpuSec))
|
|
55
|
+
continue;
|
|
56
|
+
rows.push({ pid: Number(m[1]), ppid: Number(m[2]), cpuSec, comm: (m[4] ?? '').trim() });
|
|
57
|
+
}
|
|
58
|
+
return rows;
|
|
59
|
+
},
|
|
60
|
+
cwds: async (pids) => {
|
|
61
|
+
const out = new Map();
|
|
62
|
+
if (pids.length === 0)
|
|
63
|
+
return out;
|
|
64
|
+
if (process.platform === 'linux') {
|
|
65
|
+
await Promise.all(pids.map(async (pid) => {
|
|
66
|
+
try {
|
|
67
|
+
out.set(pid, await readlink(`/proc/${pid}/cwd`));
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
// gone, or not ours to read
|
|
71
|
+
}
|
|
72
|
+
}));
|
|
73
|
+
return out;
|
|
74
|
+
}
|
|
75
|
+
const text = await run('lsof', ['-a', '-d', 'cwd', '-p', pids.join(','), '-Fpn', '-w']);
|
|
76
|
+
let pid;
|
|
77
|
+
for (const line of text.split('\n')) {
|
|
78
|
+
if (line.startsWith('p'))
|
|
79
|
+
pid = Number(line.slice(1));
|
|
80
|
+
else if (line.startsWith('n') && pid !== undefined)
|
|
81
|
+
out.set(pid, line.slice(1));
|
|
82
|
+
}
|
|
83
|
+
return out;
|
|
84
|
+
},
|
|
85
|
+
};
|
|
86
|
+
/**
|
|
87
|
+
* Samples which runs have busy processes. Stateful: CPU is compared with the previous sample of
|
|
88
|
+
* the same pid, so the first sample of a process is a baseline and never reads as busy.
|
|
89
|
+
*/
|
|
90
|
+
export class RunLivenessSampler {
|
|
91
|
+
probe;
|
|
92
|
+
rootPid;
|
|
93
|
+
now;
|
|
94
|
+
prev = new Map();
|
|
95
|
+
constructor(probe = hostProcessProbe, rootPid = process.pid, now = Date.now) {
|
|
96
|
+
this.probe = probe;
|
|
97
|
+
this.rootPid = rootPid;
|
|
98
|
+
this.now = now;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* For each of `runIds` whose processes burned at least {@link BUSY_CPU_SHARE} of a core since the
|
|
102
|
+
* previous sample: the run id → a short description of the busiest process (`vitest pid 812`).
|
|
103
|
+
*/
|
|
104
|
+
async busy(runIds) {
|
|
105
|
+
const result = new Map();
|
|
106
|
+
if (runIds.length === 0 || process.platform === 'win32')
|
|
107
|
+
return result;
|
|
108
|
+
const rows = await this.probe.table();
|
|
109
|
+
const children = new Map();
|
|
110
|
+
for (const r of rows) {
|
|
111
|
+
const list = children.get(r.ppid);
|
|
112
|
+
if (list === undefined)
|
|
113
|
+
children.set(r.ppid, [r]);
|
|
114
|
+
else
|
|
115
|
+
list.push(r);
|
|
116
|
+
}
|
|
117
|
+
const descendants = [];
|
|
118
|
+
const queue = [this.rootPid];
|
|
119
|
+
const seen = new Set(queue);
|
|
120
|
+
while (queue.length > 0) {
|
|
121
|
+
for (const c of children.get(queue.shift()) ?? []) {
|
|
122
|
+
if (seen.has(c.pid))
|
|
123
|
+
continue;
|
|
124
|
+
seen.add(c.pid);
|
|
125
|
+
descendants.push(c);
|
|
126
|
+
queue.push(c.pid);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
const cwds = await this.probe.cwds(descendants.map((d) => d.pid));
|
|
130
|
+
const at = this.now();
|
|
131
|
+
const next = new Map();
|
|
132
|
+
const perRun = new Map();
|
|
133
|
+
for (const d of descendants) {
|
|
134
|
+
next.set(d.pid, { cpuSec: d.cpuSec, at });
|
|
135
|
+
const cwd = cwds.get(d.pid);
|
|
136
|
+
if (cwd === undefined)
|
|
137
|
+
continue;
|
|
138
|
+
// A path SEGMENT equal to the run id (`…/wicked-worktrees/<id>/…`), never a substring.
|
|
139
|
+
const segments = cwd.split('/');
|
|
140
|
+
const runId = runIds.find((id) => segments.includes(id));
|
|
141
|
+
if (runId === undefined)
|
|
142
|
+
continue;
|
|
143
|
+
const before = this.prev.get(d.pid);
|
|
144
|
+
if (before === undefined)
|
|
145
|
+
continue; // baseline
|
|
146
|
+
const burned = Math.max(0, d.cpuSec - before.cpuSec);
|
|
147
|
+
const acc = perRun.get(runId) ?? { burned: 0, window: 0, topBurn: 0 };
|
|
148
|
+
acc.burned += burned;
|
|
149
|
+
acc.window = Math.max(acc.window, (at - before.at) / 1000);
|
|
150
|
+
if (burned > acc.topBurn) {
|
|
151
|
+
acc.top = d;
|
|
152
|
+
acc.topBurn = burned;
|
|
153
|
+
}
|
|
154
|
+
perRun.set(runId, acc);
|
|
155
|
+
}
|
|
156
|
+
this.prev = next;
|
|
157
|
+
for (const [runId, acc] of perRun) {
|
|
158
|
+
if (acc.window > 0 && acc.burned / acc.window >= BUSY_CPU_SHARE && acc.top !== undefined) {
|
|
159
|
+
const name = acc.top.comm.split('/').pop() ?? acc.top.comm;
|
|
160
|
+
result.set(runId, `${name} pid ${acc.top.pid} (${acc.burned.toFixed(1)} s CPU in ${Math.round(acc.window)} s)`);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
return result;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=run-liveness.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-liveness.js","sourceRoot":"","sources":["../../src/api/run-liveness.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,31 @@ export declare function isAuthRefusal(text: string): boolean;
|
|
|
13
13
|
/** How long a seat's own "no credential" report keeps its `auth` at `signed_out` with no ok output
|
|
14
14
|
* since — the same window as the council bench; an ok unit output clears it at once. */
|
|
15
15
|
export declare const AUTH_FAILURE_WINDOW_MS: number;
|
|
16
|
+
/**
|
|
17
|
+
* How long a seat the ENGINE benched in a run (`seatBenched`) stays out of the next launches with
|
|
18
|
+
* no ok output since. After this the seat is eligible again: if it is still dead, its next run
|
|
19
|
+
* finds out with one refused turn and benches it again; an ok output (a chat turn, a unit the
|
|
20
|
+
* operator sent there) clears the bench at once.
|
|
21
|
+
*/
|
|
22
|
+
export declare const SEAT_BENCH_WINDOW_MS: number;
|
|
23
|
+
/**
|
|
24
|
+
* A seat the engine benched in a run, carried to the next launches (`seatBenched`, wicked-core
|
|
25
|
+
* after #590 S5). Since S5 no ballot finds a dead seat before routing, so a seat that reads signed
|
|
26
|
+
* in but cannot work (out of quota, say) is only found when its first unit refuses. Without this,
|
|
27
|
+
* every new run handed that seat a unit again.
|
|
28
|
+
*/
|
|
29
|
+
export interface SeatRecentBench {
|
|
30
|
+
/** ISO-8601 of the bench. */
|
|
31
|
+
at: string;
|
|
32
|
+
/** ISO-8601 of when the seat is eligible again ({@link SEAT_BENCH_WINDOW_MS} after `at`). */
|
|
33
|
+
until: string;
|
|
34
|
+
/** The engine's bench reason, as it persisted it (`quota_exhausted (no success in the run)`). */
|
|
35
|
+
reason: string;
|
|
36
|
+
/** Who benched it in the run: the unit's `worker`, or a `judge`. */
|
|
37
|
+
source: string;
|
|
38
|
+
/** The run that benched it, when the frame named one. */
|
|
39
|
+
run?: string;
|
|
40
|
+
}
|
|
16
41
|
/** A seat's own report that it has no credential (`RosterSeat.auth_evidence`). */
|
|
17
42
|
export interface SeatAuthFailure {
|
|
18
43
|
/** ISO-8601 of the report. */
|
|
@@ -37,6 +62,9 @@ export declare class SeatHealthTracker {
|
|
|
37
62
|
private readonly assignments;
|
|
38
63
|
/** cli key → the seat's latest own "no credential" report (F-A45-006), cleared by an ok output. */
|
|
39
64
|
private readonly authFailures;
|
|
65
|
+
/** cli key → the engine's latest in-run bench of the seat (`seatBenched`), cleared by an ok
|
|
66
|
+
* output or by {@link SEAT_BENCH_WINDOW_MS}. */
|
|
67
|
+
private readonly recentBenches;
|
|
40
68
|
/** Default `since` for seats that have never changed state. */
|
|
41
69
|
private readonly startedAt;
|
|
42
70
|
constructor(opts?: {
|
|
@@ -62,6 +90,13 @@ export declare class SeatHealthTracker {
|
|
|
62
90
|
* said so itself — whatever the credential-file probe reads.
|
|
63
91
|
*/
|
|
64
92
|
authFailureFor(key: string, nowMs?: number): SeatAuthFailure | null;
|
|
93
|
+
/**
|
|
94
|
+
* The engine's latest in-run bench of the seat (`seatBenched`) inside
|
|
95
|
+
* {@link SEAT_BENCH_WINDOW_MS} with no ok output since, or `null`. `seatStanding` reads it as
|
|
96
|
+
* `council_eligible: false` with the reason and the time it lifts, so the next launch benches the
|
|
97
|
+
* seat up front (`health.usable: false`) and the operator sees why on the roster.
|
|
98
|
+
*/
|
|
99
|
+
recentBenchFor(key: string, nowMs?: number): SeatRecentBench | null;
|
|
65
100
|
/** The seat's health — a seat never seen in an event is ACTIVE with no message (the default). */
|
|
66
101
|
healthFor(key: string): SeatHealth;
|
|
67
102
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seat-health.d.ts","sourceRoot":"","sources":["../../src/api/seat-health.ts"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EACL,eAAe,EAEhB,MAAM,8BAA8B,CAAC;AAGtC,YAAY,EAAE,UAAU,EAAE,CAAC;AAmC3B;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"seat-health.d.ts","sourceRoot":"","sources":["../../src/api/seat-health.ts"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EACL,eAAe,EAEhB,MAAM,8BAA8B,CAAC;AAGtC,YAAY,EAAE,UAAU,EAAE,CAAC;AAmC3B;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,EAuBzC,CAAC;AAEF,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAKD;yFACyF;AACzF,eAAO,MAAM,sBAAsB,QAAiB,CAAC;AAErD;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,QAAiB,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,6BAA6B;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,6FAA6F;IAC7F,KAAK,EAAE,MAAM,CAAC;IACd,iGAAiG;IACjG,MAAM,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,MAAM,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,kFAAkF;AAClF,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IACf,gGAAgG;IAChG,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;IACpC,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,qBAAa,iBAAiB;IAYhB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAXjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IACzD,oGAAoG;IACpG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6B;IACzD,mGAAmG;IACnG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0G;IACvI;qDACiD;IACjD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuF;IACrH,+DAA+D;IAC/D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA4B;gBAEzB,IAAI,GAAE;QACjC;;;WAGG;QACH,SAAS,CAAC,EAAE,eAAe,CAAC;QAC5B,wEAAwE;QACxE,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;KACtB;IAEN,4FAA4F;IAC5F,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IA4K9B,oFAAoF;IACpF,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,SAAa,GAAG,IAAI;IAWhD,uFAAuF;IACvF,OAAO,CAAC,iBAAiB;IAgBzB,gGAAgG;IAChG,OAAO,CAAC,UAAU;IAUlB;;;;OAIG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,SAAa,GAAG,eAAe,GAAG,IAAI;IAevE;;;;;OAKG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,SAAa,GAAG,eAAe,GAAG,IAAI;IAgBvE,iGAAiG;IACjG,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;CAGnC"}
|
package/dist/api/seat-health.js
CHANGED
|
@@ -84,6 +84,14 @@ export const AUTH_REFUSAL_PATTERNS = [
|
|
|
84
84
|
/invalid api key/i,
|
|
85
85
|
/authentication (failed|required)/i,
|
|
86
86
|
/missing (api[ _-]?key|credentials?)/i,
|
|
87
|
+
// crew#645: claude's expired login — "Failed to authenticate: OAuth session expired and could not
|
|
88
|
+
// be refreshed" — said nothing any pattern above matched, so four failed ballots flipped nothing.
|
|
89
|
+
// Keyed on the OAuth words, never a bare "failed to authenticate" (a unit's own `git push` to a
|
|
90
|
+
// remote says that too, and it says nothing about the seat's login — codex review of #696).
|
|
91
|
+
/oauth (session|token) (has )?expired/i,
|
|
92
|
+
// crew#645: a free tier the installed CLI is too old to use ("OpenCode 1.18.0 or newer is
|
|
93
|
+
// required to use the free tier") — the seat cannot answer until it is upgraded.
|
|
94
|
+
/required to use the free tier/i,
|
|
87
95
|
];
|
|
88
96
|
/** Whether a failure detail / stderr says the seat has no usable credential. */
|
|
89
97
|
export function isAuthRefusal(text) {
|
|
@@ -94,6 +102,13 @@ const AUTH_FALLBACK_KINDS = new Set(['auth_required', 'auth_failed', 'unauthenti
|
|
|
94
102
|
/** How long a seat's own "no credential" report keeps its `auth` at `signed_out` with no ok output
|
|
95
103
|
* since — the same window as the council bench; an ok unit output clears it at once. */
|
|
96
104
|
export const AUTH_FAILURE_WINDOW_MS = 30 * 60 * 1000;
|
|
105
|
+
/**
|
|
106
|
+
* How long a seat the ENGINE benched in a run (`seatBenched`) stays out of the next launches with
|
|
107
|
+
* no ok output since. After this the seat is eligible again: if it is still dead, its next run
|
|
108
|
+
* finds out with one refused turn and benches it again; an ok output (a chat turn, a unit the
|
|
109
|
+
* operator sent there) clears the bench at once.
|
|
110
|
+
*/
|
|
111
|
+
export const SEAT_BENCH_WINDOW_MS = 30 * 60 * 1000;
|
|
97
112
|
/**
|
|
98
113
|
* In-memory per-seat health, folded from live CoreEvents. In-memory ON PURPOSE: health is a
|
|
99
114
|
* statement about the running platform's ability to reach a CLI right now — a daemon restart
|
|
@@ -107,6 +122,9 @@ export class SeatHealthTracker {
|
|
|
107
122
|
assignments = new Map();
|
|
108
123
|
/** cli key → the seat's latest own "no credential" report (F-A45-006), cleared by an ok output. */
|
|
109
124
|
authFailures = new Map();
|
|
125
|
+
/** cli key → the engine's latest in-run bench of the seat (`seatBenched`), cleared by an ok
|
|
126
|
+
* output or by {@link SEAT_BENCH_WINDOW_MS}. */
|
|
127
|
+
recentBenches = new Map();
|
|
110
128
|
/** Default `since` for seats that have never changed state. */
|
|
111
129
|
startedAt = new Date().toISOString();
|
|
112
130
|
constructor(opts = {}) {
|
|
@@ -181,11 +199,19 @@ export class SeatHealthTracker {
|
|
|
181
199
|
case 'councilSeatFailed': {
|
|
182
200
|
const cli = str(event.cli);
|
|
183
201
|
const kind = str(event.kind);
|
|
184
|
-
|
|
202
|
+
// crew#630: the engine's real frame is `{kind: 'non_zero_exit', reason: 'not_logged_in',
|
|
203
|
+
// stdout: 'Not logged in · Please run /login', stderr: '', detail: ''}` — claude prints its
|
|
204
|
+
// refusal on STDOUT and the classified cause rides `reason`, neither of which was read, so
|
|
205
|
+
// four failed ballots left the roster at `signed_in`. Every text field is read now.
|
|
206
|
+
const reason = str(event.reason);
|
|
207
|
+
const texts = [event.detail, event.stderr, event.stdout]
|
|
208
|
+
.map(str)
|
|
209
|
+
.filter((t) => t !== undefined);
|
|
210
|
+
const said = texts.find(isAuthRefusal);
|
|
185
211
|
// F-A45-006: a ballot the seat lost to its own missing credential (`not_logged_in`, or
|
|
186
|
-
//
|
|
187
|
-
if (cli !== undefined && (kind === 'not_logged_in' ||
|
|
188
|
-
this.recordAuthFailure(cli,
|
|
212
|
+
// its own words saying "No API key found") flips `auth`, whatever the file probe read.
|
|
213
|
+
if (cli !== undefined && (kind === 'not_logged_in' || reason === 'not_logged_in' || said !== undefined)) {
|
|
214
|
+
this.recordAuthFailure(cli, said ?? texts[0] ?? 'not logged in', 'ballot', at, session);
|
|
189
215
|
}
|
|
190
216
|
// (R5b) An observed error — stamped, never counted: the engine benches the seat for the
|
|
191
217
|
// run at its own ballot threshold and says so in `unitDistributed.degradedReason`; crew
|
|
@@ -194,6 +220,45 @@ export class SeatHealthTracker {
|
|
|
194
220
|
this.stampError(cli, at);
|
|
195
221
|
return;
|
|
196
222
|
}
|
|
223
|
+
case 'chatReply': {
|
|
224
|
+
// A seat that ANSWERED a chat turn did work: the same recovery an ok unit output is. A
|
|
225
|
+
// chat may seat a council-benched seat (chat admission reads `auth` only), so this is how
|
|
226
|
+
// a recently benched seat that has recovered says so before the window lifts.
|
|
227
|
+
const cliKey = str(event.cliKey);
|
|
228
|
+
if (cliKey !== undefined && event.ok === true)
|
|
229
|
+
this.markActive(cliKey, at);
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
case 'seatBenched': {
|
|
233
|
+
// The engine benched this seat for the run on its worker's or judge's own refusal
|
|
234
|
+
// (`not_logged_in`, `quota_exhausted`, `not_installed`, `approval_unavailable`). Crew
|
|
235
|
+
// classifies nothing here (R5): it carries the ENGINE's verdict to the next launches for
|
|
236
|
+
// a bounded window, so a seat that reads signed in but cannot work is not handed a unit
|
|
237
|
+
// by every new run. A launcher bench is crew's own reading and never comes back this way.
|
|
238
|
+
const cli = str(event.cli);
|
|
239
|
+
const reason = str(event.reason);
|
|
240
|
+
const source = str(event.source);
|
|
241
|
+
// Only the engine's IN-RUN benches are carried: a `worker` or `judge` refusal. A launcher
|
|
242
|
+
// bench is crew's own reading, and a frame with no (or an unknown) source is malformed —
|
|
243
|
+
// neither may bench a seat for the window.
|
|
244
|
+
if (cli === undefined || reason === undefined || (source !== 'worker' && source !== 'judge'))
|
|
245
|
+
return;
|
|
246
|
+
this.recentBenches.set(cli, { at, reason, source, ...(session !== undefined ? { session } : {}) });
|
|
247
|
+
this.stampError(cli, at);
|
|
248
|
+
// The run moves its units OFF the benched seat: the refusing unit fails over (a
|
|
249
|
+
// `stepFailed` naming the new seat, no `unitReassigned`) and a later one is re-seated
|
|
250
|
+
// before it runs. So none of this run's units is on that seat any more, and an ok output
|
|
251
|
+
// for one of them must not be read as the benched seat recovering (it ran elsewhere).
|
|
252
|
+
// An operator's explicit reassign back onto the seat re-records the assignment.
|
|
253
|
+
if (session !== undefined) {
|
|
254
|
+
const prefix = `${session}:`;
|
|
255
|
+
for (const [key, seat] of [...this.assignments]) {
|
|
256
|
+
if (seat === cli && key.startsWith(prefix))
|
|
257
|
+
this.assignments.delete(key);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
197
262
|
case 'acpFallback': {
|
|
198
263
|
const cliKey = str(event.cliKey);
|
|
199
264
|
const fallbackKind = str(event.fallbackKind);
|
|
@@ -256,6 +321,7 @@ export class SeatHealthTracker {
|
|
|
256
321
|
...(prev?.lastErrorAt !== undefined ? { lastErrorAt: prev.lastErrorAt } : {}),
|
|
257
322
|
});
|
|
258
323
|
this.authFailures.delete(key); // …and the seat's own "no credential" report (F-A45-006)
|
|
324
|
+
this.recentBenches.delete(key); // …and a run's bench of it: the seat just did work
|
|
259
325
|
}
|
|
260
326
|
/** Record a seat's own "no credential" report (F-A45-006) — the newest report wins. */
|
|
261
327
|
recordAuthFailure(key, detail, source, atMs, session) {
|
|
@@ -297,6 +363,28 @@ export class SeatHealthTracker {
|
|
|
297
363
|
...(rec.session !== undefined ? { run: rec.session } : {}),
|
|
298
364
|
};
|
|
299
365
|
}
|
|
366
|
+
/**
|
|
367
|
+
* The engine's latest in-run bench of the seat (`seatBenched`) inside
|
|
368
|
+
* {@link SEAT_BENCH_WINDOW_MS} with no ok output since, or `null`. `seatStanding` reads it as
|
|
369
|
+
* `council_eligible: false` with the reason and the time it lifts, so the next launch benches the
|
|
370
|
+
* seat up front (`health.usable: false`) and the operator sees why on the roster.
|
|
371
|
+
*/
|
|
372
|
+
recentBenchFor(key, nowMs = Date.now()) {
|
|
373
|
+
const rec = this.recentBenches.get(key);
|
|
374
|
+
if (rec === undefined)
|
|
375
|
+
return null;
|
|
376
|
+
if (nowMs - rec.at >= SEAT_BENCH_WINDOW_MS) {
|
|
377
|
+
this.recentBenches.delete(key);
|
|
378
|
+
return null;
|
|
379
|
+
}
|
|
380
|
+
return {
|
|
381
|
+
at: new Date(rec.at).toISOString(),
|
|
382
|
+
until: new Date(rec.at + SEAT_BENCH_WINDOW_MS).toISOString(),
|
|
383
|
+
reason: rec.reason,
|
|
384
|
+
source: rec.source,
|
|
385
|
+
...(rec.session !== undefined ? { run: rec.session } : {}),
|
|
386
|
+
};
|
|
387
|
+
}
|
|
300
388
|
/** The seat's health — a seat never seen in an event is ACTIVE with no message (the default). */
|
|
301
389
|
healthFor(key) {
|
|
302
390
|
return this.entries.get(key) ?? { status: 'active', since: this.startedAt };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seat-health.js","sourceRoot":"","sources":["../../src/api/seat-health.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"seat-health.js","sourceRoot":"","sources":["../../src/api/seat-health.ts"],"names":[],"mappings":"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"}
|