@wrongstack/cli 0.295.0 → 0.296.2
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/data/providers.json +0 -24
- package/dist/acp-A5OSIU2P.js +824 -0
- package/dist/acp-A5OSIU2P.js.map +7 -0
- package/dist/acp-server-agent.d.ts.map +1 -1
- package/dist/arg-parser.d.ts.map +1 -1
- package/dist/audit-2ZSFGNIF.js +102 -0
- package/dist/audit-2ZSFGNIF.js.map +7 -0
- package/dist/auth-CJWQJVRH.js +504 -0
- package/dist/auth-CJWQJVRH.js.map +7 -0
- package/dist/auth-menu/auth-menu-audit.d.ts +1 -5
- package/dist/auth-menu/auth-menu-audit.d.ts.map +1 -1
- package/dist/auth-menu/local.d.ts +1 -1
- package/dist/auth-menu/local.d.ts.map +1 -1
- package/dist/auth-menu/shared.d.ts +1 -1
- package/dist/auth-menu/shared.d.ts.map +1 -1
- package/dist/bench-7ZDWSNEF.js +278 -0
- package/dist/bench-7ZDWSNEF.js.map +7 -0
- package/dist/boot/brain-decision-log.d.ts +7 -5
- package/dist/boot/brain-decision-log.d.ts.map +1 -1
- package/dist/boot/dispatch-webui.d.ts +4 -8
- package/dist/boot/dispatch-webui.d.ts.map +1 -1
- package/dist/boot/launch-menu.d.ts +1 -1
- package/dist/boot/launch-menu.d.ts.map +1 -1
- package/dist/boot/system-prompt-builder.d.ts +4 -1
- package/dist/boot/system-prompt-builder.d.ts.map +1 -1
- package/dist/boot/tui-coordinator-callbacks.d.ts +45 -0
- package/dist/boot/tui-coordinator-callbacks.d.ts.map +1 -0
- package/dist/boot/tui-coordinator-setup.d.ts +2 -2
- package/dist/boot/tui-coordinator-setup.d.ts.map +1 -1
- package/dist/boot/tui-project-picker-callback.d.ts +1 -1
- package/dist/boot/tui-project-picker-callback.d.ts.map +1 -1
- package/dist/boot/tui-project-switch.d.ts +3 -4
- package/dist/boot/tui-project-switch.d.ts.map +1 -1
- package/dist/boot/tui-runtime-state.d.ts +5 -6
- package/dist/boot/tui-runtime-state.d.ts.map +1 -1
- package/dist/boot/tui-session-resume.d.ts.map +1 -1
- package/dist/boot/tui-settings-adapter.d.ts +2 -3
- package/dist/boot/tui-settings-adapter.d.ts.map +1 -1
- package/dist/boot-config.d.ts +2 -2
- package/dist/boot-config.d.ts.map +1 -1
- package/dist/boot.d.ts +1 -1
- package/dist/boot.d.ts.map +1 -1
- package/dist/brain-menu/panel-service.d.ts.map +1 -1
- package/dist/chimera-review-task.d.ts +6 -0
- package/dist/chimera-review-task.d.ts.map +1 -0
- package/dist/chimera-reviewer-policy.d.ts +34 -0
- package/dist/chimera-reviewer-policy.d.ts.map +1 -0
- package/dist/chronicle-QQEQFSSE.js +256 -0
- package/dist/chronicle-QQEQFSSE.js.map +7 -0
- package/dist/chunk-5N34EWJR.js +418 -0
- package/dist/chunk-5N34EWJR.js.map +7 -0
- package/dist/chunk-66T43Q4Y.js +90 -0
- package/dist/chunk-66T43Q4Y.js.map +7 -0
- package/dist/chunk-7OCVIDC7.js +11 -0
- package/dist/chunk-7OCVIDC7.js.map +7 -0
- package/dist/chunk-ABXK4VVY.js +84 -0
- package/dist/chunk-ABXK4VVY.js.map +7 -0
- package/dist/chunk-AXVZMEWG.js +306 -0
- package/dist/chunk-AXVZMEWG.js.map +7 -0
- package/dist/chunk-AZESNNIC.js +216 -0
- package/dist/chunk-AZESNNIC.js.map +7 -0
- package/dist/chunk-BGFM3PD7.js +41 -0
- package/dist/chunk-BGFM3PD7.js.map +7 -0
- package/dist/chunk-DPJZQCVP.js +13 -0
- package/dist/chunk-DPJZQCVP.js.map +7 -0
- package/dist/chunk-F4PEGAJZ.js +176 -0
- package/dist/chunk-F4PEGAJZ.js.map +7 -0
- package/dist/chunk-IHBYBYGA.js +443 -0
- package/dist/chunk-IHBYBYGA.js.map +7 -0
- package/dist/chunk-IN4GXGYW.js +425 -0
- package/dist/chunk-IN4GXGYW.js.map +7 -0
- package/dist/chunk-JBSQ7ONN.js +1023 -0
- package/dist/chunk-JBSQ7ONN.js.map +7 -0
- package/dist/chunk-JBTFWWKV.js +1325 -0
- package/dist/chunk-JBTFWWKV.js.map +7 -0
- package/dist/chunk-JUHRI6OV.js +100 -0
- package/dist/chunk-JUHRI6OV.js.map +7 -0
- package/dist/chunk-OP47B3IX.js +142 -0
- package/dist/chunk-OP47B3IX.js.map +7 -0
- package/dist/chunk-PJHET45A.js +158 -0
- package/dist/chunk-PJHET45A.js.map +7 -0
- package/dist/chunk-Q5GTM25S.js +17 -0
- package/dist/chunk-Q5GTM25S.js.map +7 -0
- package/dist/chunk-QD544J2B.js +19 -0
- package/dist/chunk-QD544J2B.js.map +7 -0
- package/dist/chunk-QUNHS6O3.js +258 -0
- package/dist/chunk-QUNHS6O3.js.map +7 -0
- package/dist/chunk-TADVX644.js +480 -0
- package/dist/chunk-TADVX644.js.map +7 -0
- package/dist/chunk-TGDHN4LM.js +81 -0
- package/dist/chunk-TGDHN4LM.js.map +7 -0
- package/dist/chunk-TYO2OVAD.js +50 -0
- package/dist/chunk-TYO2OVAD.js.map +7 -0
- package/dist/chunk-VCYZ3WZV.js +14 -0
- package/dist/chunk-VCYZ3WZV.js.map +7 -0
- package/dist/chunk-VJUEZZYB.js +29 -0
- package/dist/chunk-VJUEZZYB.js.map +7 -0
- package/dist/chunk-WHOIR577.js +1 -0
- package/dist/chunk-WHOIR577.js.map +7 -0
- package/dist/chunk-WY7KKOUK.js +460 -0
- package/dist/chunk-WY7KKOUK.js.map +7 -0
- package/dist/chunk-X5DQTPXT.js +3059 -0
- package/dist/chunk-X5DQTPXT.js.map +7 -0
- package/dist/chunk-XJXDOF63.js +28 -0
- package/dist/chunk-XJXDOF63.js.map +7 -0
- package/dist/chunk-XWEGWYDU.js +560 -0
- package/dist/chunk-XWEGWYDU.js.map +7 -0
- package/dist/chunk-YWUPHRGB.js +346 -0
- package/dist/chunk-YWUPHRGB.js.map +7 -0
- package/dist/chunk-Z7YGASQP.js +313 -0
- package/dist/chunk-Z7YGASQP.js.map +7 -0
- package/dist/cli-entry-main.d.ts +2 -0
- package/dist/cli-entry-main.d.ts.map +1 -0
- package/dist/cli-entry-point.d.ts +3 -3
- package/dist/cli-entry-point.d.ts.map +1 -1
- package/dist/cli-eternal-flag.d.ts +2 -2
- package/dist/cli-eternal-flag.d.ts.map +1 -1
- package/dist/cli-main-6AU6E4XZ.js +29126 -0
- package/dist/cli-main-6AU6E4XZ.js.map +7 -0
- package/dist/cli-main-helpers.d.ts +21 -0
- package/dist/cli-main-helpers.d.ts.map +1 -0
- package/dist/cli-main.d.ts +25 -1
- package/dist/cli-main.d.ts.map +1 -1
- package/dist/context-limit.d.ts +48 -0
- package/dist/context-limit.d.ts.map +1 -1
- package/dist/diag-doctor-OQ3AA63O.js +170 -0
- package/dist/diag-doctor-OQ3AA63O.js.map +7 -0
- package/dist/execute-deps.d.ts +10 -12
- package/dist/execute-deps.d.ts.map +1 -1
- package/dist/execution-V26SE52F.js +4656 -0
- package/dist/execution-V26SE52F.js.map +7 -0
- package/dist/execution-chimera-ask.d.ts +10 -0
- package/dist/execution-chimera-ask.d.ts.map +1 -0
- package/dist/execution-chimera-cascade.d.ts +15 -0
- package/dist/execution-chimera-cascade.d.ts.map +1 -0
- package/dist/execution-cleanup.d.ts +23 -0
- package/dist/execution-cleanup.d.ts.map +1 -0
- package/dist/execution-kanban-dispatch.d.ts +10 -0
- package/dist/execution-kanban-dispatch.d.ts.map +1 -0
- package/dist/execution-repl-fleet-callbacks.d.ts +11 -0
- package/dist/execution-repl-fleet-callbacks.d.ts.map +1 -0
- package/dist/execution-storage-observability.d.ts +3 -0
- package/dist/execution-storage-observability.d.ts.map +1 -0
- package/dist/execution-tui-next-step-callbacks.d.ts +20 -0
- package/dist/execution-tui-next-step-callbacks.d.ts.map +1 -0
- package/dist/execution.d.ts +2 -139
- package/dist/execution.d.ts.map +1 -1
- package/dist/export-TPORYVRZ.js +64 -0
- package/dist/export-TPORYVRZ.js.map +7 -0
- package/dist/fleet/host-acp-runner-cache.d.ts +9 -0
- package/dist/fleet/host-acp-runner-cache.d.ts.map +1 -0
- package/dist/fleet/host-acp.d.ts +3 -0
- package/dist/fleet/host-acp.d.ts.map +1 -0
- package/dist/fleet/host-concurrency.d.ts +2 -0
- package/dist/fleet/host-concurrency.d.ts.map +1 -0
- package/dist/fleet/host-context.d.ts +5 -0
- package/dist/fleet/host-context.d.ts.map +1 -0
- package/dist/fleet/host-director-builder.d.ts +24 -0
- package/dist/fleet/host-director-builder.d.ts.map +1 -0
- package/dist/fleet/host-director-event-bridges.d.ts +37 -0
- package/dist/fleet/host-director-event-bridges.d.ts.map +1 -0
- package/dist/fleet/host-director-services.d.ts +20 -0
- package/dist/fleet/host-director-services.d.ts.map +1 -0
- package/dist/fleet/host-event-bridge.d.ts +17 -0
- package/dist/fleet/host-event-bridge.d.ts.map +1 -0
- package/dist/fleet/host-helpers.d.ts +22 -0
- package/dist/fleet/host-helpers.d.ts.map +1 -0
- package/dist/fleet/host-learning-tracker.d.ts +11 -0
- package/dist/fleet/host-learning-tracker.d.ts.map +1 -0
- package/dist/fleet/host-learning.d.ts +4 -0
- package/dist/fleet/host-learning.d.ts.map +1 -0
- package/dist/fleet/host-lifecycle-events.d.ts +4 -0
- package/dist/fleet/host-lifecycle-events.d.ts.map +1 -0
- package/dist/fleet/host-paths.d.ts +3 -0
- package/dist/fleet/host-paths.d.ts.map +1 -0
- package/dist/fleet/host-provider.d.ts +22 -0
- package/dist/fleet/host-provider.d.ts.map +1 -0
- package/dist/fleet/host-session-writer.d.ts +3 -0
- package/dist/fleet/host-session-writer.d.ts.map +1 -0
- package/dist/fleet/host-shadow-pass.d.ts +21 -0
- package/dist/fleet/host-shadow-pass.d.ts.map +1 -0
- package/dist/fleet/host-spawn-types.d.ts +25 -0
- package/dist/fleet/host-spawn-types.d.ts.map +1 -0
- package/dist/fleet/host-status.d.ts +48 -0
- package/dist/fleet/host-status.d.ts.map +1 -0
- package/dist/fleet/host-subagent-factory.d.ts +16 -0
- package/dist/fleet/host-subagent-factory.d.ts.map +1 -0
- package/dist/fleet/host-supervisor.d.ts +16 -0
- package/dist/fleet/host-supervisor.d.ts.map +1 -0
- package/dist/fleet/host-task-result-report.d.ts +11 -0
- package/dist/fleet/host-task-result-report.d.ts.map +1 -0
- package/dist/fleet/host-types.d.ts +89 -0
- package/dist/fleet/host-types.d.ts.map +1 -0
- package/dist/fleet/host.d.ts +10 -357
- package/dist/fleet/host.d.ts.map +1 -1
- package/dist/fleet/routing.d.ts +1 -1
- package/dist/fleet/routing.d.ts.map +1 -1
- package/dist/fleet/status-broadcast.d.ts.map +1 -1
- package/dist/goal-host.d.ts +2 -2
- package/dist/goal-host.d.ts.map +1 -1
- package/dist/hq-BECGICEZ.js +547 -0
- package/dist/hq-BECGICEZ.js.map +7 -0
- package/dist/hq-command-controller.d.ts +2 -2
- package/dist/hq-command-controller.d.ts.map +1 -1
- package/dist/hq-publisher.d.ts +2 -2
- package/dist/hq-publisher.d.ts.map +1 -1
- package/dist/hq-server/auth-state.d.ts +1 -1
- package/dist/hq-server/auth-state.d.ts.map +1 -1
- package/dist/hq-server/project-root.d.ts +5 -0
- package/dist/hq-server/project-root.d.ts.map +1 -0
- package/dist/hq-server/routes/auth-handlers.d.ts +32 -0
- package/dist/hq-server/routes/auth-handlers.d.ts.map +1 -0
- package/dist/hq-server/routes/session-handlers.d.ts +8 -0
- package/dist/hq-server/routes/session-handlers.d.ts.map +1 -0
- package/dist/hq-server/routes/system-handlers.d.ts +16 -0
- package/dist/hq-server/routes/system-handlers.d.ts.map +1 -0
- package/dist/hq-server/routes.d.ts +6 -6
- package/dist/hq-server/routes.d.ts.map +1 -1
- package/dist/hq-server/ws.d.ts +1 -1
- package/dist/hq-server/ws.d.ts.map +1 -1
- package/dist/hq-server-FJOVOERO.js +39 -0
- package/dist/hq-server-FJOVOERO.js.map +7 -0
- package/dist/hq-server.d.ts.map +1 -1
- package/dist/hq-ttl-U2FAYFAT.js +8 -0
- package/dist/hq-ttl-U2FAYFAT.js.map +7 -0
- package/dist/hq-tunnel-YZLRONPV.js +111 -0
- package/dist/hq-tunnel-YZLRONPV.js.map +7 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2507 -52632
- package/dist/index.js.map +4 -4
- package/dist/init-E2NDDOHI.js +27 -0
- package/dist/init-E2NDDOHI.js.map +7 -0
- package/dist/input-reader.d.ts +1 -1
- package/dist/input-reader.d.ts.map +1 -1
- package/dist/kanban-dispatch-route.d.ts +14 -0
- package/dist/kanban-dispatch-route.d.ts.map +1 -0
- package/dist/kanban-hq-sync.d.ts +2 -0
- package/dist/kanban-hq-sync.d.ts.map +1 -1
- package/dist/kanban-run-mirror-EKVNGXWW.js +12 -0
- package/dist/kanban-run-mirror-EKVNGXWW.js.map +7 -0
- package/dist/live-settings-input.d.ts +69 -0
- package/dist/live-settings-input.d.ts.map +1 -0
- package/dist/mailbox-serve-2UWHEN3M.js +302 -0
- package/dist/mailbox-serve-2UWHEN3M.js.map +7 -0
- package/dist/mcp-CYLPUEHC.js +413 -0
- package/dist/mcp-CYLPUEHC.js.map +7 -0
- package/dist/mcp-serve.d.ts +1 -1
- package/dist/mcp-serve.d.ts.map +1 -1
- package/dist/modeldiag-HENYJ4N7.js +1290 -0
- package/dist/modeldiag-HENYJ4N7.js.map +7 -0
- package/dist/next-task-predictor.d.ts +1 -1
- package/dist/next-task-predictor.d.ts.map +1 -1
- package/dist/permissions-FNYLZIL4.js +115 -0
- package/dist/permissions-FNYLZIL4.js.map +7 -0
- package/dist/picker-key-state.d.ts +7 -0
- package/dist/picker-key-state.d.ts.map +1 -0
- package/dist/picker-model-picker.d.ts +6 -0
- package/dist/picker-model-picker.d.ts.map +1 -0
- package/dist/picker-ui.d.ts +17 -0
- package/dist/picker-ui.d.ts.map +1 -0
- package/dist/picker.d.ts +4 -37
- package/dist/picker.d.ts.map +1 -1
- package/dist/plugin-management.d.ts +1 -1
- package/dist/plugin-management.d.ts.map +1 -1
- package/dist/plugin-usage-OU6X6LM3.js +40 -0
- package/dist/plugin-usage-OU6X6LM3.js.map +7 -0
- package/dist/plugins-4LJ5IUBI.js +24 -0
- package/dist/plugins-4LJ5IUBI.js.map +7 -0
- package/dist/pre-launch.d.ts +0 -1
- package/dist/pre-launch.d.ts.map +1 -1
- package/dist/project-BLQ3ALVL.js +76 -0
- package/dist/project-BLQ3ALVL.js.map +7 -0
- package/dist/project-manifest-GE25PW4S.js +18 -0
- package/dist/project-manifest-GE25PW4S.js.map +7 -0
- package/dist/project-picker-BOCWHBXP.js +17 -0
- package/dist/project-picker-BOCWHBXP.js.map +7 -0
- package/dist/projects-XE76NFNZ.js +38 -0
- package/dist/projects-XE76NFNZ.js.map +7 -0
- package/dist/provider-helpers.d.ts +22 -6
- package/dist/provider-helpers.d.ts.map +1 -1
- package/dist/providers-models-GDELBHZK.js +589 -0
- package/dist/providers-models-GDELBHZK.js.map +7 -0
- package/dist/quick-VIO2BEHS.js +10 -0
- package/dist/quick-VIO2BEHS.js.map +7 -0
- package/dist/repl-auto-proceed.d.ts +19 -0
- package/dist/repl-auto-proceed.d.ts.map +1 -0
- package/dist/repl-client-registration.d.ts +7 -0
- package/dist/repl-client-registration.d.ts.map +1 -0
- package/dist/repl-input.d.ts +11 -0
- package/dist/repl-input.d.ts.map +1 -0
- package/dist/repl-options.d.ts +54 -0
- package/dist/repl-options.d.ts.map +1 -0
- package/dist/repl-rendering.d.ts +4 -0
- package/dist/repl-rendering.d.ts.map +1 -0
- package/dist/repl-suggestions.d.ts +21 -0
- package/dist/repl-suggestions.d.ts.map +1 -0
- package/dist/repl.d.ts +3 -162
- package/dist/repl.d.ts.map +1 -1
- package/dist/replay-KCTXNMZQ.js +75 -0
- package/dist/replay-KCTXNMZQ.js.map +7 -0
- package/dist/rewind-EJMVFVLS.js +185 -0
- package/dist/rewind-EJMVFVLS.js.map +7 -0
- package/dist/sdd-runtime-IKPROVV2.js +54 -0
- package/dist/sdd-runtime-IKPROVV2.js.map +7 -0
- package/dist/services/dispatch-classifier.d.ts +1 -1
- package/dist/services/dispatch-classifier.d.ts.map +1 -1
- package/dist/services/project-facts.d.ts.map +1 -1
- package/dist/services/sdd/project-context.d.ts +1 -1
- package/dist/services/sdd/project-context.d.ts.map +1 -1
- package/dist/services/sdd/task-manager.d.ts +1 -1
- package/dist/services/sdd/task-manager.d.ts.map +1 -1
- package/dist/services/statusline-config.d.ts +1 -1
- package/dist/services/statusline-config.d.ts.map +1 -1
- package/dist/session-event-wiring.d.ts +5 -2
- package/dist/session-event-wiring.d.ts.map +1 -1
- package/dist/sessions-config-NLCMK3BY.js +409 -0
- package/dist/sessions-config-NLCMK3BY.js.map +7 -0
- package/dist/settings-menu.d.ts +4 -19
- package/dist/settings-menu.d.ts.map +1 -1
- package/dist/simpleui-dist-JIFGUJO7.js +93 -0
- package/dist/simpleui-dist-JIFGUJO7.js.map +7 -0
- package/dist/slash-commands/agent-improve.d.ts +6 -5
- package/dist/slash-commands/agent-improve.d.ts.map +1 -1
- package/dist/slash-commands/brain.d.ts.map +1 -1
- package/dist/slash-commands/btw.d.ts +1 -1
- package/dist/slash-commands/btw.d.ts.map +1 -1
- package/dist/slash-commands/clear.d.ts +1 -1
- package/dist/slash-commands/clear.d.ts.map +1 -1
- package/dist/slash-commands/fallback.d.ts.map +1 -1
- package/dist/slash-commands/goal-refiner.d.ts +2 -2
- package/dist/slash-commands/goal-refiner.d.ts.map +1 -1
- package/dist/slash-commands/interrupt.d.ts +1 -1
- package/dist/slash-commands/interrupt.d.ts.map +1 -1
- package/dist/slash-commands/kanban-agent-helpers.d.ts +18 -0
- package/dist/slash-commands/kanban-agent-helpers.d.ts.map +1 -0
- package/dist/slash-commands/kanban-format.d.ts +16 -0
- package/dist/slash-commands/kanban-format.d.ts.map +1 -0
- package/dist/slash-commands/kanban-help.d.ts +2 -0
- package/dist/slash-commands/kanban-help.d.ts.map +1 -0
- package/dist/slash-commands/kanban.d.ts +1 -1
- package/dist/slash-commands/kanban.d.ts.map +1 -1
- package/dist/slash-commands/mailbox-demo.d.ts.map +1 -1
- package/dist/slash-commands/mailbox.d.ts +3 -2
- package/dist/slash-commands/mailbox.d.ts.map +1 -1
- package/dist/slash-commands/memory-compact.d.ts +5 -0
- package/dist/slash-commands/memory-compact.d.ts.map +1 -0
- package/dist/slash-commands/memory-flags.d.ts +36 -0
- package/dist/slash-commands/memory-flags.d.ts.map +1 -0
- package/dist/slash-commands/memory-formatters.d.ts +16 -0
- package/dist/slash-commands/memory-formatters.d.ts.map +1 -0
- package/dist/slash-commands/memory.d.ts.map +1 -1
- package/dist/slash-commands/mouse.d.ts +2 -2
- package/dist/slash-commands/refiner.d.ts +1 -1
- package/dist/slash-commands/refiner.d.ts.map +1 -1
- package/dist/slash-commands/review.d.ts.map +1 -1
- package/dist/slash-commands/sdd-command-helpers.d.ts +23 -0
- package/dist/slash-commands/sdd-command-helpers.d.ts.map +1 -0
- package/dist/slash-commands/sdd-format.d.ts +32 -0
- package/dist/slash-commands/sdd-format.d.ts.map +1 -0
- package/dist/slash-commands/sdd.d.ts +1 -1
- package/dist/slash-commands/sdd.d.ts.map +1 -1
- package/dist/slash-commands/tool.d.ts +1 -1
- package/dist/slash-commands/tool.d.ts.map +1 -1
- package/dist/slash-commands/working-dir.d.ts +1 -1
- package/dist/slash-commands/working-dir.d.ts.map +1 -1
- package/dist/subcommands/handlers/chronicle.d.ts.map +1 -1
- package/dist/subcommands/handlers/mailbox-serve.d.ts.map +1 -1
- package/dist/subcommands/handlers/model-smoke-test.d.ts +51 -0
- package/dist/subcommands/handlers/model-smoke-test.d.ts.map +1 -0
- package/dist/subcommands/handlers/modeldiag-profiles.d.ts +64 -0
- package/dist/subcommands/handlers/modeldiag-profiles.d.ts.map +1 -0
- package/dist/subcommands/handlers/modeldiag.d.ts.map +1 -1
- package/dist/subcommands/handlers/per-subcommand-deep-help-table.d.ts +3 -0
- package/dist/subcommands/handlers/per-subcommand-deep-help-table.d.ts.map +1 -0
- package/dist/subcommands/handlers/per-subcommand-help-data.d.ts +3 -0
- package/dist/subcommands/handlers/per-subcommand-help-data.d.ts.map +1 -0
- package/dist/subcommands/handlers/per-subcommand-help-table.d.ts +36 -0
- package/dist/subcommands/handlers/per-subcommand-help-table.d.ts.map +1 -0
- package/dist/subcommands/handlers/per-subcommand-help-types.d.ts +18 -0
- package/dist/subcommands/handlers/per-subcommand-help-types.d.ts.map +1 -0
- package/dist/subcommands/handlers/per-subcommand-help.d.ts +2 -80
- package/dist/subcommands/handlers/per-subcommand-help.d.ts.map +1 -1
- package/dist/subcommands/handlers/rewind.d.ts.map +1 -1
- package/dist/subcommands/index.d.ts +7 -0
- package/dist/subcommands/index.d.ts.map +1 -1
- package/dist/tools-skills-UNKLOB7M.js +29 -0
- package/dist/tools-skills-UNKLOB7M.js.map +7 -0
- package/dist/update-YC4TYW2Y.js +16 -0
- package/dist/update-YC4TYW2Y.js.map +7 -0
- package/dist/update-check-UMYTOH7Z.js +18 -0
- package/dist/update-check-UMYTOH7Z.js.map +7 -0
- package/dist/version-help-DROHZRW6.js +11 -0
- package/dist/version-help-DROHZRW6.js.map +7 -0
- package/dist/webui-server/connection-handler.d.ts +2 -1
- package/dist/webui-server/connection-handler.d.ts.map +1 -1
- package/dist/webui-server/kanban-host-adapter.d.ts +9 -5
- package/dist/webui-server/kanban-host-adapter.d.ts.map +1 -1
- package/dist/webui-server/listen-helpers.d.ts +18 -0
- package/dist/webui-server/listen-helpers.d.ts.map +1 -0
- package/dist/webui-server/node-pty-loader.d.ts +6 -0
- package/dist/webui-server/node-pty-loader.d.ts.map +1 -0
- package/dist/webui-server/prefs-seeding.d.ts.map +1 -1
- package/dist/webui-server/terminal-log-view.d.ts +30 -0
- package/dist/webui-server/terminal-log-view.d.ts.map +1 -0
- package/dist/webui-server-G3TISUIY.js +1459 -0
- package/dist/webui-server-G3TISUIY.js.map +7 -0
- package/dist/webui-server-options.d.ts +189 -0
- package/dist/webui-server-options.d.ts.map +1 -0
- package/dist/webui-server.d.ts +2 -178
- package/dist/webui-server.d.ts.map +1 -1
- package/dist/wiring/brain-and-orchestration.d.ts +2 -2
- package/dist/wiring/brain-and-orchestration.d.ts.map +1 -1
- package/dist/wiring/codebase-index.d.ts.map +1 -1
- package/dist/wiring/command-host-adapters.d.ts +2 -2
- package/dist/wiring/command-host-adapters.d.ts.map +1 -1
- package/dist/wiring/command-host-state.d.ts +7 -7
- package/dist/wiring/command-host-state.d.ts.map +1 -1
- package/dist/wiring/dep-watcher-bridge.d.ts +23 -0
- package/dist/wiring/dep-watcher-bridge.d.ts.map +1 -0
- package/dist/wiring/dep-watcher.d.ts +1 -1
- package/dist/wiring/dep-watcher.d.ts.map +1 -1
- package/dist/wiring/director-setup.d.ts +4 -4
- package/dist/wiring/director-setup.d.ts.map +1 -1
- package/dist/wiring/eternal-command-handlers.d.ts +5 -5
- package/dist/wiring/eternal-command-handlers.d.ts.map +1 -1
- package/dist/wiring/fleet-command-handlers.d.ts +2 -2
- package/dist/wiring/fleet-command-handlers.d.ts.map +1 -1
- package/dist/wiring/hq-telemetry.d.ts +5 -5
- package/dist/wiring/hq-telemetry.d.ts.map +1 -1
- package/dist/wiring/lifecycle-plugins.d.ts +9 -8
- package/dist/wiring/lifecycle-plugins.d.ts.map +1 -1
- package/dist/wiring/mailbox-bridge-bootstrap.d.ts +1 -1
- package/dist/wiring/management-tools.d.ts +15 -0
- package/dist/wiring/management-tools.d.ts.map +1 -0
- package/dist/wiring/pipeline.d.ts +4 -3
- package/dist/wiring/pipeline.d.ts.map +1 -1
- package/dist/wiring/plugins.d.ts +1 -1
- package/dist/wiring/plugins.d.ts.map +1 -1
- package/dist/wiring/provider-runtime-setup.d.ts +18 -5
- package/dist/wiring/provider-runtime-setup.d.ts.map +1 -1
- package/dist/wiring/provider-status.d.ts +3 -3
- package/dist/wiring/provider-status.d.ts.map +1 -1
- package/dist/wiring/provider-utility-tools.d.ts +4 -4
- package/dist/wiring/provider-utility-tools.d.ts.map +1 -1
- package/dist/wiring/provider.d.ts.map +1 -1
- package/dist/wiring/replay.d.ts +2 -2
- package/dist/wiring/replay.d.ts.map +1 -1
- package/dist/wiring/runtime-controller-deps.d.ts +4 -4
- package/dist/wiring/runtime-controller-deps.d.ts.map +1 -1
- package/dist/wiring/runtime-dispatch-state.d.ts +5 -5
- package/dist/wiring/runtime-dispatch-state.d.ts.map +1 -1
- package/dist/wiring/runtime-picker-deps.d.ts +3 -3
- package/dist/wiring/runtime-picker-deps.d.ts.map +1 -1
- package/dist/wiring/sage.d.ts.map +1 -1
- package/dist/wiring/sdd-handlers.d.ts.map +1 -1
- package/dist/wiring/session-command-handlers.d.ts +5 -5
- package/dist/wiring/session-command-handlers.d.ts.map +1 -1
- package/dist/wiring/session-registry.d.ts +38 -0
- package/dist/wiring/session-registry.d.ts.map +1 -0
- package/dist/wiring/session.d.ts +7 -5
- package/dist/wiring/session.d.ts.map +1 -1
- package/dist/wiring/tools.d.ts +2 -2
- package/dist/wiring/tools.d.ts.map +1 -1
- package/package.json +22 -22
- package/dist/cli-recovery-prompt.d.ts +0 -19
- package/dist/cli-recovery-prompt.d.ts.map +0 -1
- package/dist/first-run-auth-gate.d.ts +0 -20
- package/dist/first-run-auth-gate.d.ts.map +0 -1
- package/dist/pre-launch/indexing-question.d.ts +0 -28
- package/dist/pre-launch/indexing-question.d.ts.map +0 -1
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { type ConfigStore } from '@wrongstack/core/types';
|
|
1
|
+
import type { ConfigStore, FleetChatVerbosity } from '@wrongstack/core/types';
|
|
3
2
|
import { type WstackPaths } from '@wrongstack/core/utils';
|
|
4
|
-
import type { LiveSettingsInput } from '../
|
|
3
|
+
import type { LiveSettingsInput } from '../live-settings-input.js';
|
|
5
4
|
export interface SettingsAdapterContext {
|
|
6
5
|
configStore: ConfigStore;
|
|
7
6
|
wpaths: WstackPaths;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tui-settings-adapter.d.ts","sourceRoot":"","sources":["../../src/boot/tui-settings-adapter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tui-settings-adapter.d.ts","sourceRoot":"","sources":["../../src/boot/tui-settings-adapter.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAU,WAAW,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEtF,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAEvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AASnE,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,WAAW,CAAC;IACpB,qBAAqB,EAAE;QAAE,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;KAAE,GAAG,SAAS,CAAC;IAClG,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CACjE;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,YAAY,EAAE,CAAC,CAAC,EAAE,iBAAiB,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAChE;AAYD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,sBAAsB,GAAG,eAAe,CAselF"}
|
package/dist/boot-config.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { Config } from '@wrongstack/core/types';
|
|
2
2
|
import { bootConfig as coreBootConfig } from '@wrongstack/core/infrastructure';
|
|
3
|
-
import {
|
|
3
|
+
import type { WstackPaths } from '@wrongstack/core/utils';
|
|
4
4
|
import type { DefaultPathResolver } from '@wrongstack/core/infrastructure';
|
|
5
5
|
export interface BootPaths {
|
|
6
6
|
cwd: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boot-config.d.ts","sourceRoot":"","sources":["../src/boot-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"boot-config.d.ts","sourceRoot":"","sources":["../src/boot-config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,WAAW,CAAC;IACpB,YAAY,EAAE,mBAAmB,CAAC;CACnC;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,eAAe,CAAC;CACxB;AAED,iEAAiE;AACjE,KAAK,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AAE3E;;;;;;GAMG;AACH,wBAAsB,UAAU,CAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GACtC,OAAO,CAAC,gBAAgB,CAAC,CAc3B"}
|
package/dist/boot.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { Config, ModelsRegistry, SecretVault } from '@wrongstack/core/types';
|
|
2
2
|
import { type WstackPaths } from '@wrongstack/core/utils';
|
|
3
3
|
import { DefaultLogger } from '@wrongstack/core/infrastructure';
|
|
4
4
|
import { ReadlineInputReader } from './input-reader.js';
|
package/dist/boot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boot.d.ts","sourceRoot":"","sources":["../src/boot.ts"],"names":[],"mappings":"AAkCA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"boot.d.ts","sourceRoot":"","sources":["../src/boot.ts"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAqB,KAAK,WAAW,EAAY,MAAM,wBAAwB,CAAC;AAEvF,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAWhE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAYxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAGjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAgDpD;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAC,CAiB1D;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,WAAW,CAAC;IACnB,MAAM,EAAE,WAAW,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IACxC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,cAAc,EAAE,cAAc,CAAC;IAC/B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,EAAE,aAAa,CAAC;IACtB,gFAAgF;IAChF,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IACpC,2FAA2F;IAC3F,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAClC;AAsBD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAGtE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE,OAAO,GAAG,SAAS,EAC/B,IAAI,EAAE,OAAO,GACZ,OAAO,CAET;AAED;;;;;GAKG;AACH,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,CAgfxE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"panel-service.d.ts","sourceRoot":"","sources":["../../src/brain-menu/panel-service.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAoB,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAEjF,OAAO,KAAK,EAAE,cAAc,EAAsB,MAAM,iBAAiB,CAAC;AAE1E,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,YAAY,CAAC;CAC5B;AAQD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"panel-service.d.ts","sourceRoot":"","sources":["../../src/brain-menu/panel-service.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAoB,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAEjF,OAAO,KAAK,EAAE,cAAc,EAAsB,MAAM,iBAAiB,CAAC;AAE1E,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,YAAY,CAAC;CAC5B;AAQD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,GAAG,cAAc,CAkIhF"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CascadeAgentKind, ChimeraCascadeNeededPayload, ChimeraReviewNeededPayload } from '@wrongstack/core/plugin';
|
|
2
|
+
export declare function truncateAtCodePointBoundary(text: string, maxCodeUnits: number): string;
|
|
3
|
+
export declare function isChimeraAllClearReview(text: string): boolean;
|
|
4
|
+
export declare function buildChimeraReviewTaskDescription(p: ChimeraReviewNeededPayload): string;
|
|
5
|
+
export declare function buildChimeraCascadeTaskDescription(agentKind: CascadeAgentKind, p: ChimeraCascadeNeededPayload): string;
|
|
6
|
+
//# sourceMappingURL=chimera-review-task.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chimera-review-task.d.ts","sourceRoot":"","sources":["../src/chimera-review-task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,2BAA2B,EAC3B,0BAA0B,EAC3B,MAAM,yBAAyB,CAAC;AAIjC,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAQtF;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAW7D;AAED,wBAAgB,iCAAiC,CAAC,CAAC,EAAE,0BAA0B,GAAG,MAAM,CAyFvF;AAED,wBAAgB,kCAAkC,CAChD,SAAS,EAAE,gBAAgB,EAC3B,CAAC,EAAE,2BAA2B,GAC7B,MAAM,CA2CR"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { SubagentConfig } from '@wrongstack/core/types';
|
|
2
|
+
/**
|
|
3
|
+
* Resolve the fallback-model chain used when spawning the chimera-review
|
|
4
|
+
* reviewer subagent.
|
|
5
|
+
*
|
|
6
|
+
* Auto-review bundles pass the chain already resolved from the active fallback
|
|
7
|
+
* profile/config. Manual and ordinary Chimera reviews do not inject their own
|
|
8
|
+
* hard-coded model list; they rely on the selected session provider/model unless
|
|
9
|
+
* the caller supplies a resolved fallback chain.
|
|
10
|
+
*/
|
|
11
|
+
export declare function resolveReviewerFallbackModels(reviewFallbackModels?: readonly string[] | undefined,
|
|
12
|
+
/** Append session ref as a final fallback chain entry. */
|
|
13
|
+
sessionRef?: string): string[];
|
|
14
|
+
/** Test hook — reset the process-local reviewer round-robin cursor. */
|
|
15
|
+
export declare function __resetReviewerRoundRobinCursor(value?: number): void;
|
|
16
|
+
/**
|
|
17
|
+
* Assign provider/model/fallbackModels for a Chimera reviewer spawn.
|
|
18
|
+
*
|
|
19
|
+
* Builds the pool from the configured primary + fallback chain, then picks
|
|
20
|
+
* the next entry via round-robin. When the pool has <=1 usable entry the
|
|
21
|
+
* original primary/fallbacks are returned unchanged.
|
|
22
|
+
*/
|
|
23
|
+
export declare function assignReviewerModelsRoundRobin(provider: string, model: string, fallbackModels: readonly string[]): {
|
|
24
|
+
provider: string;
|
|
25
|
+
model: string;
|
|
26
|
+
fallbackModels: string[];
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Chimera reviewers only inspect code and return a report. They never repair
|
|
30
|
+
* files themselves; bug-hunter/security-scanner/fix agents own all mutations.
|
|
31
|
+
*/
|
|
32
|
+
export declare const CHIMERA_REVIEW_READ_ONLY_TOOLS: readonly ["read", "grep", "glob", "tree", "codebase-search", "codebase-stats"];
|
|
33
|
+
export declare function applyChimeraReviewerReadOnlyPolicy(config: SubagentConfig): SubagentConfig;
|
|
34
|
+
//# sourceMappingURL=chimera-reviewer-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chimera-reviewer-policy.d.ts","sourceRoot":"","sources":["../src/chimera-reviewer-policy.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAC3C,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS;AACpD,0DAA0D;AAC1D,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,EAAE,CAQV;AASD,uEAAuE;AACvE,wBAAgB,+BAA+B,CAAC,KAAK,SAAI,GAAG,IAAI,CAE/D;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,SAAS,MAAM,EAAE,GAChC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,EAAE,CAAA;CAAE,CAqB/D;AAED;;;GAGG;AACH,eAAO,MAAM,8BAA8B,gFAOhC,CAAC;AAEZ,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,cAAc,GAAG,cAAc,CASzF"}
|
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
import "./chunk-7OCVIDC7.js";
|
|
2
|
+
|
|
3
|
+
// src/subcommands/handlers/chronicle.ts
|
|
4
|
+
import { statSync } from "node:fs";
|
|
5
|
+
import {
|
|
6
|
+
createChronicleProjectAccess
|
|
7
|
+
} from "@wrongstack/core/chronicle";
|
|
8
|
+
var facets = /* @__PURE__ */ new Set([
|
|
9
|
+
"eventType",
|
|
10
|
+
"outcome",
|
|
11
|
+
"projectId",
|
|
12
|
+
"sessionId",
|
|
13
|
+
"agentId",
|
|
14
|
+
"taskId",
|
|
15
|
+
"providerId",
|
|
16
|
+
"modelId",
|
|
17
|
+
"resourceKind",
|
|
18
|
+
"resourcePath",
|
|
19
|
+
"toolCallId"
|
|
20
|
+
]);
|
|
21
|
+
var chronicleCmd = async (args, deps) => {
|
|
22
|
+
const operation = args[0] ?? "query";
|
|
23
|
+
if (operation === "help" || operation === "--help" || operation === "-h") {
|
|
24
|
+
deps.renderer.write(usage());
|
|
25
|
+
return 0;
|
|
26
|
+
}
|
|
27
|
+
let access;
|
|
28
|
+
try {
|
|
29
|
+
access = createChronicleProjectAccess({
|
|
30
|
+
projectRoot: deps.projectRoot,
|
|
31
|
+
userHome: deps.userHome
|
|
32
|
+
});
|
|
33
|
+
if (operation === "status") {
|
|
34
|
+
const health = await access.call("ping", {});
|
|
35
|
+
deps.renderer.write(
|
|
36
|
+
`${JSON.stringify(
|
|
37
|
+
{
|
|
38
|
+
mode: access.mode,
|
|
39
|
+
owner: {
|
|
40
|
+
pid: health.pid,
|
|
41
|
+
uptimeMs: health.uptimeMs,
|
|
42
|
+
clients: health.clients,
|
|
43
|
+
activeRequests: health.activeRequests,
|
|
44
|
+
endpoint: health.endpoint
|
|
45
|
+
},
|
|
46
|
+
pipeline: {
|
|
47
|
+
collection: "session-event-adapters",
|
|
48
|
+
processing: access.mode === "server" ? "project-chronicle-server" : "inline-chronicle-fallback",
|
|
49
|
+
storage: health.chronicleDirectory,
|
|
50
|
+
serving: "wstack-chronicle-cli"
|
|
51
|
+
},
|
|
52
|
+
journal: health.journal,
|
|
53
|
+
watcher: health.watcher
|
|
54
|
+
},
|
|
55
|
+
null,
|
|
56
|
+
2
|
|
57
|
+
)}
|
|
58
|
+
`
|
|
59
|
+
);
|
|
60
|
+
return 0;
|
|
61
|
+
}
|
|
62
|
+
if (operation === "prune") {
|
|
63
|
+
const dryRun = args.includes("--dry-run") || args.includes("-n");
|
|
64
|
+
const daysIndex = args.indexOf("--days");
|
|
65
|
+
const rawDays = daysIndex >= 0 && daysIndex + 1 < args.length ? args[daysIndex + 1] : void 0;
|
|
66
|
+
const days = rawDays ? parseInt(rawDays, 10) : 30;
|
|
67
|
+
if (!Number.isFinite(days) || days < 1) {
|
|
68
|
+
deps.renderer.writeError(
|
|
69
|
+
`Invalid retention days: ${rawDays ?? ""}. Use --days N (positive integer).
|
|
70
|
+
`
|
|
71
|
+
);
|
|
72
|
+
return 1;
|
|
73
|
+
}
|
|
74
|
+
const result2 = await access.call("purge", { retentionDays: days, dryRun });
|
|
75
|
+
if (dryRun) {
|
|
76
|
+
deps.renderer.write(`Dry-run: would delete ${result2.candidates?.length ?? 0} entries`);
|
|
77
|
+
if (result2.candidates?.length) {
|
|
78
|
+
const totalBytes = result2.candidates.reduce((sum, f) => {
|
|
79
|
+
try {
|
|
80
|
+
return sum + statSync(f).size;
|
|
81
|
+
} catch {
|
|
82
|
+
return sum;
|
|
83
|
+
}
|
|
84
|
+
}, 0);
|
|
85
|
+
deps.renderer.write(` (${formatBytes(totalBytes)}):
|
|
86
|
+
`);
|
|
87
|
+
for (const file of result2.candidates) {
|
|
88
|
+
const s = tryStat(file);
|
|
89
|
+
const age = s ? `${Math.round((Date.now() - s.mtimeMs) / 864e5)}d` : "?";
|
|
90
|
+
deps.renderer.write(` ${file} (${age}, ${formatBytes(s?.size ?? 0)})
|
|
91
|
+
`);
|
|
92
|
+
}
|
|
93
|
+
} else {
|
|
94
|
+
deps.renderer.write(".\n");
|
|
95
|
+
}
|
|
96
|
+
} else {
|
|
97
|
+
const bytes = result2.deletedBytes;
|
|
98
|
+
deps.renderer.write(`Purged ${result2.deletedCount} entries (${formatBytes(bytes)})`);
|
|
99
|
+
if (result2.errors.length) deps.renderer.write(`, ${result2.errors.length} errors`);
|
|
100
|
+
deps.renderer.write(".\n");
|
|
101
|
+
for (const err of result2.errors) {
|
|
102
|
+
deps.renderer.writeError(` Error: ${err.file}: ${err.reason}
|
|
103
|
+
`);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return result2.errors.length > 0 ? 1 : 0;
|
|
107
|
+
}
|
|
108
|
+
if (operation === "metrics") {
|
|
109
|
+
const hasView = Boolean(args[1] && !args[1].includes("="));
|
|
110
|
+
const rawView = hasView ? args[1] : "summary";
|
|
111
|
+
if (!isMetricsView(rawView)) {
|
|
112
|
+
deps.renderer.writeError(
|
|
113
|
+
`Unknown metrics view: ${rawView}. Use providers|tasks|files|summary.
|
|
114
|
+
`
|
|
115
|
+
);
|
|
116
|
+
return 1;
|
|
117
|
+
}
|
|
118
|
+
const view = rawView;
|
|
119
|
+
const filters = parseQuery(args.slice(hasView ? 2 : 1));
|
|
120
|
+
try {
|
|
121
|
+
const result2 = await access.call("metrics", {
|
|
122
|
+
view,
|
|
123
|
+
...view === "providers" ? {
|
|
124
|
+
providers: {
|
|
125
|
+
...filters.from ? { from: filters.from } : {},
|
|
126
|
+
...filters.to ? { to: filters.to } : {}
|
|
127
|
+
}
|
|
128
|
+
} : {},
|
|
129
|
+
...view === "tasks" ? {
|
|
130
|
+
tasks: {
|
|
131
|
+
...filters.sessionId ? { sessionId: filters.sessionId } : {},
|
|
132
|
+
...filters.limit ? { limit: filters.limit } : {}
|
|
133
|
+
}
|
|
134
|
+
} : {},
|
|
135
|
+
...view === "files" ? {
|
|
136
|
+
files: {
|
|
137
|
+
...filters.path ? { path: filters.path } : {},
|
|
138
|
+
...filters.taskId ? { taskId: filters.taskId } : {},
|
|
139
|
+
...filters.sessionId ? { sessionId: filters.sessionId } : {},
|
|
140
|
+
...filters.limit ? { limit: filters.limit } : {}
|
|
141
|
+
}
|
|
142
|
+
} : {}
|
|
143
|
+
});
|
|
144
|
+
deps.renderer.write(
|
|
145
|
+
JSON.stringify({ refreshed: result2.refreshed, [view]: result2.data }, null, 2) + "\n"
|
|
146
|
+
);
|
|
147
|
+
return 0;
|
|
148
|
+
} catch (error) {
|
|
149
|
+
deps.renderer.writeError(`${error instanceof Error ? error.message : String(error)}
|
|
150
|
+
`);
|
|
151
|
+
return 1;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
if (operation === "facet") {
|
|
155
|
+
const field = args[1];
|
|
156
|
+
if (!field || !facets.has(field)) {
|
|
157
|
+
deps.renderer.writeError(`Unknown facet. Use: ${[...facets].join(", ")}
|
|
158
|
+
`);
|
|
159
|
+
return 1;
|
|
160
|
+
}
|
|
161
|
+
const query = parseQuery(args.slice(2));
|
|
162
|
+
const result2 = await access.call("facet", { field, query });
|
|
163
|
+
deps.renderer.write(JSON.stringify({ field, ...result2 }, null, 2) + "\n");
|
|
164
|
+
return 0;
|
|
165
|
+
}
|
|
166
|
+
if (operation !== "query") {
|
|
167
|
+
deps.renderer.writeError(`Unknown Chronicle operation: ${operation}
|
|
168
|
+
${usage()}`);
|
|
169
|
+
return 1;
|
|
170
|
+
}
|
|
171
|
+
const result = await access.call("query", { query: parseQuery(args.slice(1)) });
|
|
172
|
+
deps.renderer.write(JSON.stringify(result, null, 2) + "\n");
|
|
173
|
+
return 0;
|
|
174
|
+
} catch (error) {
|
|
175
|
+
deps.renderer.writeError(`${error instanceof Error ? error.message : String(error)}
|
|
176
|
+
`);
|
|
177
|
+
return 1;
|
|
178
|
+
} finally {
|
|
179
|
+
await access?.close();
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
function isMetricsView(value) {
|
|
183
|
+
return ["providers", "tasks", "files", "summary"].includes(value);
|
|
184
|
+
}
|
|
185
|
+
function parseQuery(tokens) {
|
|
186
|
+
const query = {};
|
|
187
|
+
for (const token of tokens) {
|
|
188
|
+
const split = token.indexOf("=");
|
|
189
|
+
if (split < 1) continue;
|
|
190
|
+
const key = token.slice(0, split), value = token.slice(split + 1);
|
|
191
|
+
if (key === "eventType") query.eventTypes = value.split(",").filter(Boolean);
|
|
192
|
+
else if (key === "outcome")
|
|
193
|
+
query.outcomes = value.split(",").filter(Boolean);
|
|
194
|
+
else if (key === "resourceKind")
|
|
195
|
+
query.resourceKind = value;
|
|
196
|
+
else if (key === "line" || key === "limit") query[key] = Number(value);
|
|
197
|
+
else if (key === "order" && (value === "asc" || value === "desc")) query.order = value;
|
|
198
|
+
else if (key.startsWith("tag.")) {
|
|
199
|
+
const tags = query.tags ?? {};
|
|
200
|
+
tags[key.slice(4)] = value;
|
|
201
|
+
query.tags = tags;
|
|
202
|
+
} else if (key.startsWith("attr.")) {
|
|
203
|
+
const attributes = query.attributes ?? {};
|
|
204
|
+
attributes[key.slice(5)] = parseValue(value);
|
|
205
|
+
query.attributes = attributes;
|
|
206
|
+
} else if (isStringQueryKey(key)) query[key] = value;
|
|
207
|
+
}
|
|
208
|
+
return query;
|
|
209
|
+
}
|
|
210
|
+
function isStringQueryKey(key) {
|
|
211
|
+
return [
|
|
212
|
+
"from",
|
|
213
|
+
"to",
|
|
214
|
+
"projectId",
|
|
215
|
+
"sessionId",
|
|
216
|
+
"agentId",
|
|
217
|
+
"taskId",
|
|
218
|
+
"providerId",
|
|
219
|
+
"modelId",
|
|
220
|
+
"traceId",
|
|
221
|
+
"logicalRequestId",
|
|
222
|
+
"attemptId",
|
|
223
|
+
"toolCallId",
|
|
224
|
+
"resourceId",
|
|
225
|
+
"path",
|
|
226
|
+
"text",
|
|
227
|
+
"cursor"
|
|
228
|
+
].includes(key);
|
|
229
|
+
}
|
|
230
|
+
function parseValue(value) {
|
|
231
|
+
try {
|
|
232
|
+
return JSON.parse(value);
|
|
233
|
+
} catch {
|
|
234
|
+
return value;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
function usage() {
|
|
238
|
+
return "Usage:\n wstack chronicle query [field=value ...]\n wstack chronicle status\n wstack chronicle facet <field> [field=value ...]\n wstack chronicle metrics [providers|tasks|files|summary] [field=value ...]\n wstack chronicle prune [--days N] [--dry-run]\n\nExamples:\n wstack chronicle status\n wstack chronicle query path=src/app.ts line=42\n wstack chronicle query providerId=openai outcome=failure\n wstack chronicle query eventType=tool.executed sessionId=<id> limit=50\n wstack chronicle query attr.tool.name=read\n wstack chronicle facet modelId from=2026-07-01T00:00:00Z\n wstack chronicle metrics providers from=2026-07-01\n wstack chronicle metrics files path=src/app.ts\n wstack chronicle metrics tasks limit=20\n wstack chronicle prune --days 7 --dry-run\n wstack chronicle prune --days 30\n";
|
|
239
|
+
}
|
|
240
|
+
function formatBytes(bytes) {
|
|
241
|
+
if (bytes < 1024) return `${bytes} B`;
|
|
242
|
+
if (bytes < 1048576) return `${(bytes / 1024).toFixed(1)} KB`;
|
|
243
|
+
return `${(bytes / 1048576).toFixed(1)} MB`;
|
|
244
|
+
}
|
|
245
|
+
function tryStat(file) {
|
|
246
|
+
try {
|
|
247
|
+
const s = statSync(file);
|
|
248
|
+
return { size: s.size, mtimeMs: s.mtimeMs };
|
|
249
|
+
} catch {
|
|
250
|
+
return void 0;
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
export {
|
|
254
|
+
chronicleCmd
|
|
255
|
+
};
|
|
256
|
+
//# sourceMappingURL=chronicle-QQEQFSSE.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/subcommands/handlers/chronicle.ts"],
|
|
4
|
+
"sourcesContent": ["import { statSync } from 'node:fs';\nimport {\n type ChronicleFacet,\n type ChronicleMetricsView,\n type ChronicleQuery,\n createChronicleProjectAccess,\n} from '@wrongstack/core/chronicle';\nimport type { SubcommandHandler } from '../index.js';\n\nconst facets = new Set<ChronicleFacet>([\n 'eventType',\n 'outcome',\n 'projectId',\n 'sessionId',\n 'agentId',\n 'taskId',\n 'providerId',\n 'modelId',\n 'resourceKind',\n 'resourcePath',\n 'toolCallId',\n]);\n\n/** `wstack chronicle` \u2014 query the cross-session provenance ledger. */\nexport const chronicleCmd: SubcommandHandler = async (args, deps) => {\n const operation = args[0] ?? 'query';\n if (operation === 'help' || operation === '--help' || operation === '-h') {\n deps.renderer.write(usage());\n return 0;\n }\n let access: ReturnType<typeof createChronicleProjectAccess> | undefined;\n try {\n access = createChronicleProjectAccess({\n projectRoot: deps.projectRoot,\n userHome: deps.userHome,\n });\n if (operation === 'status') {\n const health = await access.call('ping', {});\n deps.renderer.write(\n `${JSON.stringify(\n {\n mode: access.mode,\n owner: {\n pid: health.pid,\n uptimeMs: health.uptimeMs,\n clients: health.clients,\n activeRequests: health.activeRequests,\n endpoint: health.endpoint,\n },\n pipeline: {\n collection: 'session-event-adapters',\n processing:\n access.mode === 'server' ? 'project-chronicle-server' : 'inline-chronicle-fallback',\n storage: health.chronicleDirectory,\n serving: 'wstack-chronicle-cli',\n },\n journal: health.journal,\n watcher: health.watcher,\n },\n null,\n 2,\n )}\\n`,\n );\n return 0;\n }\n\n // `wstack chronicle prune [--dry-run] [--days N]`\n if (operation === 'prune') {\n const dryRun = args.includes('--dry-run') || args.includes('-n');\n const daysIndex = args.indexOf('--days');\n const rawDays =\n daysIndex >= 0 && daysIndex + 1 < args.length ? args[daysIndex + 1] : undefined;\n const days = rawDays ? parseInt(rawDays, 10) : 30;\n if (!Number.isFinite(days) || days < 1) {\n deps.renderer.writeError(\n `Invalid retention days: ${rawDays ?? ''}. Use --days N (positive integer).\\n`,\n );\n return 1;\n }\n const result = await access.call('purge', { retentionDays: days, dryRun });\n if (dryRun) {\n // \"entries\" rather than \"files\": SQLite purges whole day-chains, the\n // legacy store purged partition files. Both are entries to the caller.\n deps.renderer.write(`Dry-run: would delete ${result.candidates?.length ?? 0} entries`);\n if (result.candidates?.length) {\n const totalBytes = result.candidates.reduce((sum: number, f: string) => {\n try {\n return sum + statSync(f).size;\n } catch {\n return sum;\n }\n }, 0);\n deps.renderer.write(` (${formatBytes(totalBytes)}):\\n`);\n for (const file of result.candidates!) {\n const s = tryStat(file);\n const age = s ? `${Math.round((Date.now() - s.mtimeMs) / 86400000)}d` : '?';\n deps.renderer.write(` ${file} (${age}, ${formatBytes(s?.size ?? 0)})\\n`);\n }\n } else {\n deps.renderer.write('.\\n');\n }\n } else {\n const bytes = result.deletedBytes;\n deps.renderer.write(`Purged ${result.deletedCount} entries (${formatBytes(bytes)})`);\n if (result.errors.length) deps.renderer.write(`, ${result.errors.length} errors`);\n deps.renderer.write('.\\n');\n for (const err of result.errors) {\n deps.renderer.writeError(` Error: ${err.file}: ${err.reason}\\n`);\n }\n }\n return result.errors.length > 0 ? 1 : 0;\n }\n\n // `wstack chronicle metrics [providers|tasks|files|summary] [key=value ...]`\n // Incrementally ingests new journal bytes into metrics.db, then queries the\n // derived aggregates instead of streaming raw partitions.\n if (operation === 'metrics') {\n const hasView = Boolean(args[1] && !args[1].includes('='));\n const rawView = hasView ? args[1]! : 'summary';\n if (!isMetricsView(rawView)) {\n deps.renderer.writeError(\n `Unknown metrics view: ${rawView}. Use providers|tasks|files|summary.\\n`,\n );\n return 1;\n }\n const view: ChronicleMetricsView = rawView;\n const filters = parseQuery(args.slice(hasView ? 2 : 1));\n try {\n const result = await access.call('metrics', {\n view,\n ...(view === 'providers'\n ? {\n providers: {\n ...(filters.from ? { from: filters.from } : {}),\n ...(filters.to ? { to: filters.to } : {}),\n },\n }\n : {}),\n ...(view === 'tasks'\n ? {\n tasks: {\n ...(filters.sessionId ? { sessionId: filters.sessionId } : {}),\n ...(filters.limit ? { limit: filters.limit } : {}),\n },\n }\n : {}),\n ...(view === 'files'\n ? {\n files: {\n ...(filters.path ? { path: filters.path } : {}),\n ...(filters.taskId ? { taskId: filters.taskId } : {}),\n ...(filters.sessionId ? { sessionId: filters.sessionId } : {}),\n ...(filters.limit ? { limit: filters.limit } : {}),\n },\n }\n : {}),\n });\n deps.renderer.write(\n JSON.stringify({ refreshed: result.refreshed, [view]: result.data }, null, 2) + '\\n',\n );\n return 0;\n } catch (error) {\n deps.renderer.writeError(`${error instanceof Error ? error.message : String(error)}\\n`);\n return 1;\n }\n }\n\n if (operation === 'facet') {\n const field = args[1] as ChronicleFacet | undefined;\n if (!field || !facets.has(field)) {\n deps.renderer.writeError(`Unknown facet. Use: ${[...facets].join(', ')}\\n`);\n return 1;\n }\n const query = parseQuery(args.slice(2));\n const result = await access.call('facet', { field, query });\n deps.renderer.write(JSON.stringify({ field, ...result }, null, 2) + '\\n');\n return 0;\n }\n if (operation !== 'query') {\n deps.renderer.writeError(`Unknown Chronicle operation: ${operation}\\n${usage()}`);\n return 1;\n }\n const result = await access.call('query', { query: parseQuery(args.slice(1)) });\n deps.renderer.write(JSON.stringify(result, null, 2) + '\\n');\n return 0;\n } catch (error) {\n deps.renderer.writeError(`${error instanceof Error ? error.message : String(error)}\\n`);\n return 1;\n } finally {\n await access?.close();\n }\n};\n\nfunction isMetricsView(value: string): value is ChronicleMetricsView {\n return ['providers', 'tasks', 'files', 'summary'].includes(value);\n}\n\nfunction parseQuery(tokens: string[]): ChronicleQuery {\n const query: ChronicleQuery = {};\n for (const token of tokens) {\n const split = token.indexOf('=');\n if (split < 1) continue;\n const key = token.slice(0, split),\n value = token.slice(split + 1);\n if (key === 'eventType') query.eventTypes = value.split(',').filter(Boolean);\n else if (key === 'outcome')\n query.outcomes = value.split(',').filter(Boolean) as NonNullable<ChronicleQuery['outcomes']>;\n else if (key === 'resourceKind')\n query.resourceKind = value as NonNullable<ChronicleQuery['resourceKind']>;\n else if (key === 'line' || key === 'limit') query[key] = Number(value);\n else if (key === 'order' && (value === 'asc' || value === 'desc')) query.order = value;\n else if (key.startsWith('tag.')) {\n const tags = query.tags ?? {};\n tags[key.slice(4)] = value;\n query.tags = tags;\n } else if (key.startsWith('attr.')) {\n const attributes = query.attributes ?? {};\n attributes[key.slice(5)] = parseValue(value);\n query.attributes = attributes;\n } else if (isStringQueryKey(key)) query[key] = value;\n }\n return query;\n}\n\nfunction isStringQueryKey(\n key: string,\n): key is\n | 'from'\n | 'to'\n | 'projectId'\n | 'sessionId'\n | 'agentId'\n | 'taskId'\n | 'providerId'\n | 'modelId'\n | 'traceId'\n | 'logicalRequestId'\n | 'attemptId'\n | 'toolCallId'\n | 'resourceId'\n | 'path'\n | 'text'\n | 'cursor' {\n return [\n 'from',\n 'to',\n 'projectId',\n 'sessionId',\n 'agentId',\n 'taskId',\n 'providerId',\n 'modelId',\n 'traceId',\n 'logicalRequestId',\n 'attemptId',\n 'toolCallId',\n 'resourceId',\n 'path',\n 'text',\n 'cursor',\n ].includes(key);\n}\n\nfunction parseValue(value: string): unknown {\n try {\n return JSON.parse(value);\n } catch {\n return value;\n }\n}\n\nfunction usage(): string {\n return (\n 'Usage:\\n' +\n ' wstack chronicle query [field=value ...]\\n' +\n ' wstack chronicle status\\n' +\n ' wstack chronicle facet <field> [field=value ...]\\n' +\n ' wstack chronicle metrics [providers|tasks|files|summary] [field=value ...]\\n' +\n ' wstack chronicle prune [--days N] [--dry-run]\\n\\n' +\n 'Examples:\\n' +\n ' wstack chronicle status\\n' +\n ' wstack chronicle query path=src/app.ts line=42\\n' +\n ' wstack chronicle query providerId=openai outcome=failure\\n' +\n ' wstack chronicle query eventType=tool.executed sessionId=<id> limit=50\\n' +\n ' wstack chronicle query attr.tool.name=read\\n' +\n ' wstack chronicle facet modelId from=2026-07-01T00:00:00Z\\n' +\n ' wstack chronicle metrics providers from=2026-07-01\\n' +\n ' wstack chronicle metrics files path=src/app.ts\\n' +\n ' wstack chronicle metrics tasks limit=20\\n' +\n ' wstack chronicle prune --days 7 --dry-run\\n' +\n ' wstack chronicle prune --days 30\\n'\n );\n}\n\nfunction formatBytes(bytes: number): string {\n if (bytes < 1024) return `${bytes} B`;\n if (bytes < 1048576) return `${(bytes / 1024).toFixed(1)} KB`;\n return `${(bytes / 1048576).toFixed(1)} MB`;\n}\n\nfunction tryStat(file: string): { size: number; mtimeMs: number } | undefined {\n try {\n const s = statSync(file);\n return { size: s.size, mtimeMs: s.mtimeMs };\n } catch {\n return undefined;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["result"]
|
|
7
|
+
}
|