peaks-loop 4.1.1 → 4.1.3
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/.claude-plugin/marketplace.json +136 -47
- package/CHANGELOG.md +106 -0
- package/README-en.md +4 -4
- package/README.md +25 -4
- package/bin/node-floor.mjs +59 -0
- package/bin/peaks.js +13 -0
- package/config/eslint/tsconfig.lint.json +2 -1
- package/contracts/readonly-argv-whitelist.json +211 -0
- package/dist/cli/cli-helpers.d.ts +0 -1
- package/dist/cli/cli-helpers.js +0 -1
- package/dist/cli/commands/_cli-error-envelope.js +0 -3
- package/dist/cli/commands/adapter-commands-s2a.d.ts +0 -1
- package/dist/cli/commands/adapter-commands.d.ts +0 -1
- package/dist/cli/commands/api-diff-commands.d.ts +0 -1
- package/dist/cli/commands/api-diff-commands.js +0 -1
- package/dist/cli/commands/audit-artifact-runners.d.ts +16 -0
- package/dist/cli/commands/audit-artifact-runners.js +170 -0
- package/dist/cli/commands/audit-command-shared.d.ts +97 -0
- package/dist/cli/commands/audit-command-shared.js +60 -0
- package/dist/cli/commands/audit-commands.d.ts +7 -31
- package/dist/cli/commands/audit-commands.js +65 -477
- package/dist/cli/commands/audit-goal-runners.d.ts +17 -0
- package/dist/cli/commands/audit-goal-runners.js +114 -0
- package/dist/cli/commands/audit-red-lines-runners.d.ts +11 -0
- package/dist/cli/commands/audit-red-lines-runners.js +43 -0
- package/dist/cli/commands/audit-refusal-data.d.ts +23 -0
- package/dist/cli/commands/audit-refusal-data.js +69 -0
- package/dist/cli/commands/audit-static-runners.d.ts +13 -0
- package/dist/cli/commands/audit-static-runners.js +139 -0
- package/dist/cli/commands/autonomous-swarm-commands.js +0 -1
- package/dist/cli/commands/await-runners.d.ts +11 -0
- package/dist/cli/commands/await-runners.js +148 -0
- package/dist/cli/commands/bee-commands.d.ts +0 -2
- package/dist/cli/commands/bee-commands.js +0 -2
- package/dist/cli/commands/best-practice-scan-command.d.ts +0 -1
- package/dist/cli/commands/best-practice-scan-helpers.js +0 -1
- package/dist/cli/commands/changeset-commands.d.ts +0 -2
- package/dist/cli/commands/changeset-commands.js +0 -2
- package/dist/cli/commands/code-auto-compact-command.d.ts +3 -0
- package/dist/cli/commands/code-auto-compact-command.js +124 -0
- package/dist/cli/commands/code-auto-compact-envelope.d.ts +22 -0
- package/dist/cli/commands/code-auto-compact-envelope.js +39 -0
- package/dist/cli/commands/code-commands.d.ts +0 -3
- package/dist/cli/commands/code-commands.js +0 -3
- package/dist/cli/commands/code-context-audit-command.d.ts +3 -0
- package/dist/cli/commands/code-context-audit-command.js +68 -0
- package/dist/cli/commands/code-context-now-command.d.ts +3 -0
- package/dist/cli/commands/code-context-now-command.js +124 -0
- package/dist/cli/commands/code-context-now-envelope.d.ts +66 -0
- package/dist/cli/commands/code-context-now-envelope.js +136 -0
- package/dist/cli/commands/code-context-now-mapping.d.ts +27 -0
- package/dist/cli/commands/code-context-now-mapping.js +43 -0
- package/dist/cli/commands/code-emit-handoff-command.d.ts +3 -0
- package/dist/cli/commands/code-emit-handoff-command.js +99 -0
- package/dist/cli/commands/code-gate-command.d.ts +0 -1
- package/dist/cli/commands/code-gate-command.js +0 -1
- package/dist/cli/commands/code-gate-step-08-command.d.ts +3 -0
- package/dist/cli/commands/code-gate-step-08-command.js +139 -0
- package/dist/cli/commands/code-job-shape-commands-read-job-shape.d.ts +0 -1
- package/dist/cli/commands/code-job-shape-commands-read-job-shape.js +0 -1
- package/dist/cli/commands/code-job-shape-commands.d.ts +0 -2
- package/dist/cli/commands/code-job-shape-commands.js +0 -3
- package/dist/cli/commands/code-mode-gate-commands.d.ts +0 -2
- package/dist/cli/commands/code-mode-gate-commands.js +0 -3
- package/dist/cli/commands/code-mode-gate-should-pause-command.js +0 -4
- package/dist/cli/commands/code-mode-gate-should-pause-envelope.d.ts +0 -1
- package/dist/cli/commands/code-mode-gate-should-pause-envelope.js +0 -2
- package/dist/cli/commands/code-mode-status-command.d.ts +0 -1
- package/dist/cli/commands/code-mode-status-command.js +0 -1
- package/dist/cli/commands/code-orchestrator-can-do.d.ts +0 -1
- package/dist/cli/commands/code-orchestrator-can-do.js +0 -1
- package/dist/cli/commands/code-post-compact-detect-command.d.ts +3 -0
- package/dist/cli/commands/code-post-compact-detect-command.js +50 -0
- package/dist/cli/commands/code-run-command.js +0 -1
- package/dist/cli/commands/code-runtime-commands.d.ts +9 -46
- package/dist/cli/commands/code-runtime-commands.js +20 -687
- package/dist/cli/commands/code-runtime-session.d.ts +1 -0
- package/dist/cli/commands/code-runtime-session.js +15 -0
- package/dist/cli/commands/codegraph-command-runtime.d.ts +6 -0
- package/dist/cli/commands/codegraph-command-runtime.js +19 -7
- package/dist/cli/commands/codegraph-commands.js +20 -193
- package/dist/cli/commands/codegraph-init-command.d.ts +8 -0
- package/dist/cli/commands/codegraph-init-command.js +162 -0
- package/dist/cli/commands/codegraph-status-command.js +5 -6
- package/dist/cli/commands/compact-command.d.ts +6 -3
- package/dist/cli/commands/compact-command.js +12 -563
- package/dist/cli/commands/compact-dry-run-command.d.ts +3 -0
- package/dist/cli/commands/compact-dry-run-command.js +87 -0
- package/dist/cli/commands/compact-force-command.d.ts +3 -0
- package/dist/cli/commands/compact-force-command.js +98 -0
- package/dist/cli/commands/compact-harness-window-command.d.ts +3 -0
- package/dist/cli/commands/compact-harness-window-command.js +174 -0
- package/dist/cli/commands/compact-history-command.d.ts +3 -0
- package/dist/cli/commands/compact-history-command.js +89 -0
- package/dist/cli/commands/compact-read-commands.d.ts +3 -0
- package/dist/cli/commands/compact-read-commands.js +123 -0
- package/dist/cli/commands/compact-settle-command.d.ts +3 -0
- package/dist/cli/commands/compact-settle-command.js +130 -0
- package/dist/cli/commands/compact-shared.d.ts +9 -0
- package/dist/cli/commands/compact-shared.js +26 -0
- package/dist/cli/commands/container-commands.d.ts +0 -1
- package/dist/cli/commands/container-commands.js +0 -1
- package/dist/cli/commands/context-commands.d.ts +0 -1
- package/dist/cli/commands/context-commands.js +0 -1
- package/dist/cli/commands/core/doctor-command.d.ts +0 -1
- package/dist/cli/commands/core/doctor-command.js +0 -9
- package/dist/cli/commands/core/memory-command.js +0 -1
- package/dist/cli/commands/core/session-command.js +0 -14
- package/dist/cli/commands/core/skill-command.d.ts +1 -44
- package/dist/cli/commands/core/skill-command.js +13 -550
- package/dist/cli/commands/core/skill-context-verdict.d.ts +38 -0
- package/dist/cli/commands/core/skill-context-verdict.js +63 -0
- package/dist/cli/commands/core/skill-generated-config-notice.d.ts +41 -0
- package/dist/cli/commands/core/skill-generated-config-notice.js +75 -0
- package/dist/cli/commands/core/skill-heartbeat-commands.d.ts +3 -0
- package/dist/cli/commands/core/skill-heartbeat-commands.js +50 -0
- package/dist/cli/commands/core/skill-presence-commands.d.ts +3 -0
- package/dist/cli/commands/core/skill-presence-commands.js +123 -0
- package/dist/cli/commands/core/skill-presence-housekeeping-commands.d.ts +3 -0
- package/dist/cli/commands/core/skill-presence-housekeeping-commands.js +165 -0
- package/dist/cli/commands/core/skill-registry-commands.d.ts +3 -0
- package/dist/cli/commands/core/skill-registry-commands.js +117 -0
- package/dist/cli/commands/core/skill-runbook-command.d.ts +3 -0
- package/dist/cli/commands/core/skill-runbook-command.js +29 -0
- package/dist/cli/commands/core-artifact-commands.d.ts +0 -1
- package/dist/cli/commands/core-artifact-commands.js +0 -1
- package/dist/cli/commands/cron-commands-actions.d.ts +0 -1
- package/dist/cli/commands/cron-commands-actions.js +0 -2
- package/dist/cli/commands/cron-commands-schedule.d.ts +0 -3
- package/dist/cli/commands/cron-commands-schedule.js +0 -1
- package/dist/cli/commands/cron-commands.d.ts +0 -1
- package/dist/cli/commands/cron-commands.js +0 -2
- package/dist/cli/commands/cron-scheduler-commands.d.ts +0 -1
- package/dist/cli/commands/cron-scheduler-commands.js +0 -1
- package/dist/cli/commands/cron-scheduler-persist.d.ts +0 -5
- package/dist/cli/commands/cron-scheduler-persist.js +0 -5
- package/dist/cli/commands/dashboard-summary.d.ts +0 -1
- package/dist/cli/commands/dispatch-command-spec.d.ts +2 -0
- package/dist/cli/commands/dispatch-command-spec.js +62 -0
- package/dist/cli/commands/dispatch-commands.d.ts +0 -1
- package/dist/cli/commands/dispatch-commands.js +159 -802
- package/dist/cli/commands/dispatch-detached-branch.d.ts +3 -0
- package/dist/cli/commands/dispatch-detached-branch.js +58 -0
- package/dist/cli/commands/dispatch-envelope.d.ts +36 -0
- package/dist/cli/commands/dispatch-envelope.js +104 -0
- package/dist/cli/commands/dispatch-from-dag.js +0 -4
- package/dist/cli/commands/dispatch-isolation-lease.d.ts +17 -0
- package/dist/cli/commands/dispatch-isolation-lease.js +149 -0
- package/dist/cli/commands/dispatch-preflight.d.ts +7 -0
- package/dist/cli/commands/dispatch-preflight.js +105 -0
- package/dist/cli/commands/dispatch-prompt-blocks.d.ts +10 -0
- package/dist/cli/commands/dispatch-prompt-blocks.js +56 -0
- package/dist/cli/commands/dispatch-prompt-composition.d.ts +30 -0
- package/dist/cli/commands/dispatch-prompt-composition.js +171 -0
- package/dist/cli/commands/dispatch-record-write.d.ts +24 -0
- package/dist/cli/commands/dispatch-record-write.js +96 -0
- package/dist/cli/commands/dispatch-tool-call.d.ts +15 -0
- package/dist/cli/commands/dispatch-tool-call.js +128 -0
- package/dist/cli/commands/doctor/invoke-from-code.js +0 -1
- package/dist/cli/commands/e2e-verify.d.ts +0 -1
- package/dist/cli/commands/ecc-commands.d.ts +0 -1
- package/dist/cli/commands/evolution-command-shared.d.ts +78 -0
- package/dist/cli/commands/evolution-command-shared.js +107 -0
- package/dist/cli/commands/evolution-commands.d.ts +11 -2
- package/dist/cli/commands/evolution-commands.js +19 -351
- package/dist/cli/commands/evolution-evaluate-command.d.ts +24 -0
- package/dist/cli/commands/evolution-evaluate-command.js +138 -0
- package/dist/cli/commands/evolution-propose-command.d.ts +23 -0
- package/dist/cli/commands/evolution-propose-command.js +145 -0
- package/dist/cli/commands/evolution-status-command.d.ts +17 -0
- package/dist/cli/commands/evolution-status-command.js +41 -0
- package/dist/cli/commands/evolution-verdict-commands.d.ts +30 -0
- package/dist/cli/commands/evolution-verdict-commands.js +100 -0
- package/dist/cli/commands/feedback-commands.d.ts +0 -1
- package/dist/cli/commands/feedback-commands.js +0 -2
- package/dist/cli/commands/finalize-accumulator.d.ts +44 -0
- package/dist/cli/commands/finalize-accumulator.js +55 -0
- package/dist/cli/commands/finalize-branches.d.ts +34 -0
- package/dist/cli/commands/finalize-branches.js +119 -0
- package/dist/cli/commands/finalize-runners.d.ts +3 -0
- package/dist/cli/commands/finalize-runners.js +92 -0
- package/dist/cli/commands/finalize-selection.d.ts +65 -0
- package/dist/cli/commands/finalize-selection.js +35 -0
- package/dist/cli/commands/fixture-commands.d.ts +0 -2
- package/dist/cli/commands/fresh-context-commands.d.ts +0 -1
- package/dist/cli/commands/gate-commands-enforce.d.ts +0 -3
- package/dist/cli/commands/gate-commands-enforce.js +0 -4
- package/dist/cli/commands/gate-commands.js +26 -10
- package/dist/cli/commands/governance-classify-contract-commands.d.ts +0 -3
- package/dist/cli/commands/governance-classify-contract-commands.js +0 -4
- package/dist/cli/commands/heartbeat-commands-action.js +0 -6
- package/dist/cli/commands/heartbeat-commands-validation.d.ts +0 -2
- package/dist/cli/commands/heartbeat-commands-validation.js +0 -2
- package/dist/cli/commands/heartbeat-commands.d.ts +0 -1
- package/dist/cli/commands/heartbeat-commands.js +0 -1
- package/dist/cli/commands/hooks-commands.js +0 -11
- package/dist/cli/commands/ide-commands.d.ts +0 -1
- package/dist/cli/commands/job-add-slice-command.d.ts +0 -2
- package/dist/cli/commands/job-add-slice-command.js +0 -2
- package/dist/cli/commands/job-checkpoint-commands.d.ts +3 -0
- package/dist/cli/commands/job-checkpoint-commands.js +157 -0
- package/dist/cli/commands/job-command-shared.d.ts +109 -0
- package/dist/cli/commands/job-command-shared.js +72 -0
- package/dist/cli/commands/job-commands.d.ts +4 -64
- package/dist/cli/commands/job-commands.js +42 -556
- package/dist/cli/commands/job-cost-check-command.d.ts +3 -0
- package/dist/cli/commands/job-cost-check-command.js +41 -0
- package/dist/cli/commands/job-init-status-commands.d.ts +3 -0
- package/dist/cli/commands/job-init-status-commands.js +149 -0
- package/dist/cli/commands/job-run-commands.d.ts +3 -0
- package/dist/cli/commands/job-run-commands.js +97 -0
- package/dist/cli/commands/job-state-root.d.ts +35 -0
- package/dist/cli/commands/job-state-root.js +76 -0
- package/dist/cli/commands/lease-metrics-commands.d.ts +0 -1
- package/dist/cli/commands/lease-metrics-commands.js +0 -1
- package/dist/cli/commands/lease-stats-commands.d.ts +0 -1
- package/dist/cli/commands/lease-stats-commands.js +0 -1
- package/dist/cli/commands/log-commands.d.ts +0 -2
- package/dist/cli/commands/log-commands.js +0 -3
- package/dist/cli/commands/loop-eval-capture-index.d.ts +4 -0
- package/dist/cli/commands/loop-eval-capture-index.js +44 -0
- package/dist/cli/commands/loop-eval-commands.d.ts +8 -5
- package/dist/cli/commands/loop-eval-commands.js +12 -629
- package/dist/cli/commands/loop-eval-eval-command.d.ts +3 -0
- package/dist/cli/commands/loop-eval-eval-command.js +168 -0
- package/dist/cli/commands/loop-eval-monotonic-command.d.ts +3 -0
- package/dist/cli/commands/loop-eval-monotonic-command.js +90 -0
- package/dist/cli/commands/loop-eval-parents.d.ts +7 -0
- package/dist/cli/commands/loop-eval-parents.js +20 -0
- package/dist/cli/commands/loop-eval-run-code.d.ts +7 -0
- package/dist/cli/commands/loop-eval-run-code.js +40 -0
- package/dist/cli/commands/loop-eval-run-command.d.ts +3 -0
- package/dist/cli/commands/loop-eval-run-command.js +113 -0
- package/dist/cli/commands/loop-eval-spec-commands.d.ts +3 -0
- package/dist/cli/commands/loop-eval-spec-commands.js +165 -0
- package/dist/cli/commands/loop-eval-spec-lint-command.d.ts +3 -0
- package/dist/cli/commands/loop-eval-spec-lint-command.js +42 -0
- package/dist/cli/commands/loop-eval-workflow-commands.d.ts +3 -0
- package/dist/cli/commands/loop-eval-workflow-commands.js +141 -0
- package/dist/cli/commands/mcp-commands.d.ts +10 -0
- package/dist/cli/commands/mcp-commands.js +157 -0
- package/dist/cli/commands/memory-commands.d.ts +0 -1
- package/dist/cli/commands/memory-commands.js +0 -1
- package/dist/cli/commands/observability-commands.d.ts +0 -6
- package/dist/cli/commands/observability-commands.js +0 -6
- package/dist/cli/commands/outer-cache-commands.js +0 -2
- package/dist/cli/commands/playwright-commands.d.ts +0 -1
- package/dist/cli/commands/playwright-commands.js +0 -1
- package/dist/cli/commands/polyrepo-commands.d.ts +0 -1
- package/dist/cli/commands/prd-commands.d.ts +0 -1
- package/dist/cli/commands/prd-commands.js +0 -2
- package/dist/cli/commands/preferences-commands.js +0 -2
- package/dist/cli/commands/primer-command.d.ts +0 -1
- package/dist/cli/commands/primer-command.js +0 -1
- package/dist/cli/commands/project-commands.js +0 -1
- package/dist/cli/commands/qa-commands.d.ts +0 -1
- package/dist/cli/commands/qa-commands.js +0 -2
- package/dist/cli/commands/release-commands.js +0 -9
- package/dist/cli/commands/request-command-options.d.ts +49 -0
- package/dist/cli/commands/request-command-options.js +1 -0
- package/dist/cli/commands/request-commands.d.ts +3 -10
- package/dist/cli/commands/request-commands.js +17 -532
- package/dist/cli/commands/request-format-helpers.d.ts +0 -1
- package/dist/cli/commands/request-format-helpers.js +0 -2
- package/dist/cli/commands/request-init-command.d.ts +3 -0
- package/dist/cli/commands/request-init-command.js +100 -0
- package/dist/cli/commands/request-lint-command.d.ts +3 -0
- package/dist/cli/commands/request-lint-command.js +50 -0
- package/dist/cli/commands/request-list-command.d.ts +10 -0
- package/dist/cli/commands/request-list-command.js +53 -0
- package/dist/cli/commands/request-repair-status-command.d.ts +3 -0
- package/dist/cli/commands/request-repair-status-command.js +61 -0
- package/dist/cli/commands/request-show-command.d.ts +3 -0
- package/dist/cli/commands/request-show-command.js +56 -0
- package/dist/cli/commands/request-transition-command.d.ts +3 -0
- package/dist/cli/commands/request-transition-command.js +122 -0
- package/dist/cli/commands/request-transition-failures.d.ts +8 -0
- package/dist/cli/commands/request-transition-failures.js +90 -0
- package/dist/cli/commands/request-transition-hooks.d.ts +50 -0
- package/dist/cli/commands/request-transition-hooks.js +115 -0
- package/dist/cli/commands/request-transition-preflight.d.ts +10 -0
- package/dist/cli/commands/request-transition-preflight.js +107 -0
- package/dist/cli/commands/runtime-commands.d.ts +0 -1
- package/dist/cli/commands/sc-commands.js +0 -1
- package/dist/cli/commands/scan-command-shared.d.ts +96 -0
- package/dist/cli/commands/scan-command-shared.js +83 -0
- package/dist/cli/commands/scan-commands.d.ts +3 -2
- package/dist/cli/commands/scan-commands.js +23 -463
- package/dist/cli/commands/scan-inventory-commands.d.ts +3 -0
- package/dist/cli/commands/scan-inventory-commands.js +96 -0
- package/dist/cli/commands/scan-project-commands.d.ts +3 -0
- package/dist/cli/commands/scan-project-commands.js +65 -0
- package/dist/cli/commands/scan-scope-commands.d.ts +3 -0
- package/dist/cli/commands/scan-scope-commands.js +149 -0
- package/dist/cli/commands/scan-scope-helpers.d.ts +8 -0
- package/dist/cli/commands/scan-scope-helpers.js +54 -0
- package/dist/cli/commands/scan-structural-commands.d.ts +3 -0
- package/dist/cli/commands/scan-structural-commands.js +113 -0
- package/dist/cli/commands/session-24h-mode.d.ts +0 -1
- package/dist/cli/commands/session-24h-mode.js +0 -2
- package/dist/cli/commands/session-checkpoint-command.d.ts +0 -1
- package/dist/cli/commands/session-checkpoint-command.js +0 -1
- package/dist/cli/commands/session-resume-command.d.ts +0 -1
- package/dist/cli/commands/session-resume-command.js +0 -1
- package/dist/cli/commands/shadcn-commands.js +0 -2
- package/dist/cli/commands/share-commands.d.ts +12 -71
- package/dist/cli/commands/share-commands.js +47 -569
- package/dist/cli/commands/share-error-hints.d.ts +14 -0
- package/dist/cli/commands/share-error-hints.js +38 -0
- package/dist/cli/commands/share-identity.d.ts +13 -0
- package/dist/cli/commands/share-identity.js +22 -0
- package/dist/cli/commands/share-record-paths.d.ts +37 -0
- package/dist/cli/commands/share-record-paths.js +68 -0
- package/dist/cli/commands/share-runners.d.ts +3 -0
- package/dist/cli/commands/share-runners.js +158 -0
- package/dist/cli/commands/shared-read-runners.d.ts +3 -0
- package/dist/cli/commands/shared-read-runners.js +51 -0
- package/dist/cli/commands/skill-search-commands.d.ts +0 -2
- package/dist/cli/commands/slice-check-command.d.ts +3 -0
- package/dist/cli/commands/slice-check-command.js +54 -0
- package/dist/cli/commands/slice-commands.d.ts +2 -22
- package/dist/cli/commands/slice-commands.js +18 -519
- package/dist/cli/commands/slice-decompose-artifacts.d.ts +18 -0
- package/dist/cli/commands/slice-decompose-artifacts.js +79 -0
- package/dist/cli/commands/slice-decompose-command.d.ts +3 -0
- package/dist/cli/commands/slice-decompose-command.js +123 -0
- package/dist/cli/commands/slice-integrate-commands.js +0 -1
- package/dist/cli/commands/slice-list-commands.d.ts +3 -0
- package/dist/cli/commands/slice-list-commands.js +182 -0
- package/dist/cli/commands/slice-pick-command.d.ts +3 -0
- package/dist/cli/commands/slice-pick-command.js +60 -0
- package/dist/cli/commands/slice-plan-command.d.ts +24 -0
- package/dist/cli/commands/slice-plan-command.js +111 -0
- package/dist/cli/commands/spill-demo-command.d.ts +0 -1
- package/dist/cli/commands/statusline-commands.js +0 -4
- package/dist/cli/commands/sub-agent/detached.js +0 -2
- package/dist/cli/commands/sub-agent-commands.d.ts +0 -3
- package/dist/cli/commands/sub-agent-shared.d.ts +0 -8
- package/dist/cli/commands/sub-agent-shared.js +0 -5
- package/dist/cli/commands/sub-agent-shutdown-commands.d.ts +0 -1
- package/dist/cli/commands/tech-commands.d.ts +0 -4
- package/dist/cli/commands/tech-commands.js +0 -4
- package/dist/cli/commands/vendor-detect.d.ts +0 -3
- package/dist/cli/commands/vendor-detect.js +0 -2
- package/dist/cli/commands/verdict-aggregate-command.d.ts +0 -1
- package/dist/cli/commands/verdict-aggregate-command.js +0 -7
- package/dist/cli/commands/vm-commands.d.ts +0 -1
- package/dist/cli/commands/vm-commands.js +5 -29
- package/dist/cli/commands/vm-hypervisor-probe.d.ts +27 -0
- package/dist/cli/commands/vm-hypervisor-probe.js +78 -0
- package/dist/cli/commands/vm-status-command.d.ts +3 -0
- package/dist/cli/commands/vm-status-command.js +50 -0
- package/dist/cli/commands/wave-plan-commands.d.ts +0 -1
- package/dist/cli/commands/web-lifecycle-commands.d.ts +0 -1
- package/dist/cli/commands/workflow-commands.d.ts +10 -1
- package/dist/cli/commands/workflow-commands.js +6 -608
- package/dist/cli/commands/workflow-gate-commands.d.ts +3 -0
- package/dist/cli/commands/workflow-gate-commands.js +116 -0
- package/dist/cli/commands/workflow-plan-commands-actions.js +0 -2
- package/dist/cli/commands/workflow-plan-commands-session.js +0 -2
- package/dist/cli/commands/workflow-plan-commands.d.ts +0 -1
- package/dist/cli/commands/workflow-plan-helpers.d.ts +48 -0
- package/dist/cli/commands/workflow-plan-helpers.js +103 -0
- package/dist/cli/commands/workflow-planning-commands.d.ts +3 -0
- package/dist/cli/commands/workflow-planning-commands.js +56 -0
- package/dist/cli/commands/workflow-swarm-actions.d.ts +7 -0
- package/dist/cli/commands/workflow-swarm-actions.js +109 -0
- package/dist/cli/commands/workflow-swarm-commands.d.ts +3 -0
- package/dist/cli/commands/workflow-swarm-commands.js +138 -0
- package/dist/cli/commands/workflow-tech-actions.d.ts +10 -0
- package/dist/cli/commands/workflow-tech-actions.js +150 -0
- package/dist/cli/commands/workspace/clean-command.d.ts +0 -1
- package/dist/cli/commands/workspace/clean-command.js +0 -1
- package/dist/cli/commands/workspace/helpers.d.ts +0 -1
- package/dist/cli/commands/workspace/helpers.js +0 -1
- package/dist/cli/commands/workspace/init-actions.d.ts +10 -0
- package/dist/cli/commands/workspace/init-actions.js +199 -0
- package/dist/cli/commands/workspace/init-codegraph-stake.d.ts +10 -0
- package/dist/cli/commands/workspace/init-codegraph-stake.js +54 -0
- package/dist/cli/commands/workspace/init-command.d.ts +8 -130
- package/dist/cli/commands/workspace/init-command.js +59 -640
- package/dist/cli/commands/workspace/init-context.d.ts +58 -0
- package/dist/cli/commands/workspace/init-context.js +121 -0
- package/dist/cli/commands/workspace/init-envelope.d.ts +3 -0
- package/dist/cli/commands/workspace/init-envelope.js +34 -0
- package/dist/cli/commands/workspace/init-failures.d.ts +3 -0
- package/dist/cli/commands/workspace/init-failures.js +84 -0
- package/dist/cli/commands/workspace/init-hooks-decision.d.ts +24 -0
- package/dist/cli/commands/workspace/init-hooks-decision.js +189 -0
- package/dist/cli/commands/workspace/init-options.d.ts +102 -0
- package/dist/cli/commands/workspace/init-options.js +1 -0
- package/dist/cli/commands/workspace/migrate-command.d.ts +0 -2
- package/dist/cli/commands/workspace/migrate-command.js +0 -2
- package/dist/cli/commands/workspace/reconcile-command.d.ts +0 -2
- package/dist/cli/commands/workspace/reconcile-command.js +0 -3
- package/dist/cli/commands/workspace-commands.d.ts +0 -2
- package/dist/cli/commands/workspace-commands.js +0 -4
- package/dist/cli/commands/worktree-auth-commands.d.ts +0 -1
- package/dist/cli/commands/worktree-auth-commands.js +0 -1
- package/dist/cli/commands/worktree-auth-grant-command.d.ts +0 -1
- package/dist/cli/commands/worktree-auth-grant-command.js +0 -1
- package/dist/cli/commands/worktree-auth-manage-commands.d.ts +0 -1
- package/dist/cli/commands/worktree-auth-manage-commands.js +0 -1
- package/dist/cli/commands/worktree-lease-commands.d.ts +10 -6
- package/dist/cli/commands/worktree-lease-commands.js +42 -513
- package/dist/cli/commands/worktree-lease-gc-command.d.ts +12 -0
- package/dist/cli/commands/worktree-lease-gc-command.js +117 -0
- package/dist/cli/commands/worktree-lease-git.d.ts +22 -0
- package/dist/cli/commands/worktree-lease-git.js +48 -0
- package/dist/cli/commands/worktree-lease-list-command.d.ts +12 -0
- package/dist/cli/commands/worktree-lease-list-command.js +100 -0
- package/dist/cli/commands/worktree-lease-load.d.ts +37 -0
- package/dist/cli/commands/worktree-lease-load.js +28 -0
- package/dist/cli/commands/worktree-lease-release-command.d.ts +13 -0
- package/dist/cli/commands/worktree-lease-release-command.js +105 -0
- package/dist/cli/commands/worktree-lease-renew-command.d.ts +11 -0
- package/dist/cli/commands/worktree-lease-renew-command.js +99 -0
- package/dist/cli/commands/worktree-lease-session.d.ts +22 -0
- package/dist/cli/commands/worktree-lease-session.js +29 -0
- package/dist/cli/commands/worktree-lease-spawn-command.d.ts +11 -0
- package/dist/cli/commands/worktree-lease-spawn-command.js +119 -0
- package/dist/cli/commands/worktree-lease-status-command.d.ts +11 -0
- package/dist/cli/commands/worktree-lease-status-command.js +86 -0
- package/dist/cli/commands/worktree-lease-store.d.ts +19 -0
- package/dist/cli/commands/worktree-lease-store.js +24 -0
- package/dist/cli/program.js +5 -7
- package/dist/reporters/bdd-reporter.js +0 -1
- package/dist/services/24h-mode/auto-engage.d.ts +0 -1
- package/dist/services/24h-mode/auto-engage.js +0 -1
- package/dist/services/24h-mode/decider.d.ts +0 -3
- package/dist/services/24h-mode/decider.js +0 -3
- package/dist/services/24h-mode/index.d.ts +0 -2
- package/dist/services/24h-mode/index.js +0 -2
- package/dist/services/24h-mode/state.d.ts +0 -1
- package/dist/services/24h-mode/state.js +0 -1
- package/dist/services/24h-mode/store.d.ts +0 -1
- package/dist/services/24h-mode/store.js +0 -1
- package/dist/services/adapter/adapter-registry.js +0 -1
- package/dist/services/artifacts/artifact-prerequisites.d.ts +0 -5
- package/dist/services/artifacts/artifact-prerequisites.js +0 -19
- package/dist/services/artifacts/artifact-templates.d.ts +0 -1
- package/dist/services/artifacts/artifact-templates.js +0 -1
- package/dist/services/artifacts/request-artifact-service.d.ts +0 -5
- package/dist/services/artifacts/request-artifact-service.js +0 -12
- package/dist/services/artifacts/request-artifact-state-helpers.d.ts +0 -1
- package/dist/services/artifacts/request-artifact-state-helpers.js +0 -1
- package/dist/services/audit/artifact-writer.d.ts +0 -1
- package/dist/services/audit/artifact-writer.js +0 -1
- package/dist/services/audit/decision-writer.js +3 -1
- package/dist/services/audit/enforcer-liveness.js +0 -1
- package/dist/services/audit/enforcers/active-skill-resolver.d.ts +0 -2
- package/dist/services/audit/enforcers/active-skill-resolver.js +0 -2
- package/dist/services/audit/red-line-audit-input.d.ts +11 -0
- package/dist/services/audit/red-line-audit-input.js +103 -0
- package/dist/services/audit/red-line-catalog-p2-a-bee-runtime.d.ts +0 -1
- package/dist/services/audit/red-line-catalog-p2-a.js +0 -9
- package/dist/services/audit/types.d.ts +0 -2
- package/dist/services/audit/types.js +0 -2
- package/dist/services/audit-independent/perf-audit-service.d.ts +0 -2
- package/dist/services/audit-independent/security-audit-service.d.ts +0 -5
- package/dist/services/audit-independent/security-audit-service.js +0 -2
- package/dist/services/autonomous-swarm/autonomous-swarm-service.d.ts +0 -5
- package/dist/services/autonomous-swarm/autonomous-swarm-service.js +0 -5
- package/dist/services/best-practice/language-detector.js +0 -1
- package/dist/services/best-practice/output-formatter.d.ts +0 -1
- package/dist/services/best-practice/scan-orchestrator.d.ts +0 -1
- package/dist/services/capability-audit-service/types.d.ts +1 -3
- package/dist/services/capability-guard-runner/contracts/J08.js +2 -2
- package/dist/services/changeset/changeset-check-service.d.ts +0 -3
- package/dist/services/changeset/changeset-check-service.js +0 -3
- package/dist/services/classify/classify-service.d.ts +0 -1
- package/dist/services/classify/classify-service.js +0 -1
- package/dist/services/classify/classify-types.d.ts +0 -1
- package/dist/services/classify/classify-types.js +0 -1
- package/dist/services/code/auto-compact-lifecycle.d.ts +0 -11
- package/dist/services/code/auto-compact-lifecycle.js +0 -10
- package/dist/services/code/auto-compact-modes.d.ts +0 -3
- package/dist/services/code/auto-compact-modes.js +0 -3
- package/dist/services/code/auto-compact-orchestrator.d.ts +0 -9
- package/dist/services/code/auto-compact-orchestrator.js +0 -29
- package/dist/services/code/batch-heartbeat-poller.js +0 -1
- package/dist/services/code/compact-event-settle.js +0 -1
- package/dist/services/code/dag-orchestrator.d.ts +0 -1
- package/dist/services/code/dag-orchestrator.js +0 -1
- package/dist/services/code/mode-gate-types.d.ts +0 -2
- package/dist/services/code/mode-gate-types.js +0 -1
- package/dist/services/code/mode-gate.d.ts +0 -5
- package/dist/services/code/mode-gate.js +0 -5
- package/dist/services/code/orchestrator-can-do-advisories.d.ts +0 -2
- package/dist/services/code/orchestrator-can-do-advisories.js +0 -5
- package/dist/services/code/orchestrator-can-do.d.ts +0 -4
- package/dist/services/code/orchestrator-can-do.js +0 -3
- package/dist/services/code/status-line-renderer.js +0 -1
- package/dist/services/code-review/ecc-bridge.d.ts +0 -1
- package/dist/services/codegraph/codegraph-autorefresh.js +6 -4
- package/dist/services/codegraph/codegraph-backend-advice.d.ts +26 -0
- package/dist/services/codegraph/codegraph-backend-advice.js +166 -0
- package/dist/services/codegraph/codegraph-config-repair-writer.d.ts +0 -24
- package/dist/services/codegraph/codegraph-config-repair-writer.js +32 -73
- package/dist/services/codegraph/codegraph-exclude-integrity.d.ts +14 -6
- package/dist/services/codegraph/codegraph-exclude-integrity.js +24 -14
- package/dist/services/codegraph/codegraph-exclude-reconciler.d.ts +9 -2
- package/dist/services/codegraph/codegraph-exclude-reconciler.js +87 -18
- package/dist/services/codegraph/codegraph-exclude-repair.d.ts +9 -61
- package/dist/services/codegraph/codegraph-exclude-repair.js +67 -139
- package/dist/services/codegraph/codegraph-foreign-removal.d.ts +21 -0
- package/dist/services/codegraph/codegraph-foreign-removal.js +77 -0
- package/dist/services/codegraph/codegraph-index-integrity.d.ts +12 -25
- package/dist/services/codegraph/codegraph-index-integrity.js +84 -23
- package/dist/services/codegraph/codegraph-preflight-service.js +15 -6
- package/dist/services/codegraph/codegraph-project-config.d.ts +35 -0
- package/dist/services/codegraph/codegraph-project-config.js +90 -0
- package/dist/services/codegraph/codegraph-service.d.ts +1 -2
- package/dist/services/codegraph/codegraph-service.js +11 -11
- package/dist/services/codegraph/codegraph-upstream-layout.d.ts +24 -0
- package/dist/services/codegraph/codegraph-upstream-layout.js +85 -0
- package/dist/services/comments/comment-audit.d.ts +15 -4
- package/dist/services/comments/comment-audit.js +25 -4
- package/dist/services/comments/comment-citations.d.ts +8 -2
- package/dist/services/comments/comment-citations.js +31 -33
- package/dist/services/comments/comment-hygiene.d.ts +29 -3
- package/dist/services/comments/comment-hygiene.js +40 -3
- package/dist/services/comments/comment-prune.js +52 -4
- package/dist/services/comments/comment-spans.d.ts +30 -0
- package/dist/services/comments/comment-spans.js +266 -0
- package/dist/services/comments/prune-apply.d.ts +22 -0
- package/dist/services/comments/prune-apply.js +69 -2
- package/dist/services/compact/decision-tables.d.ts +0 -2
- package/dist/services/compact/decision-tables.js +0 -2
- package/dist/services/compact/request-transition-hook.js +0 -2
- package/dist/services/compact-history/compact-history-service.d.ts +0 -2
- package/dist/services/compact-history/compact-history-service.js +0 -1
- package/dist/services/compact-statusline/compact-lifecycle-store.js +0 -2
- package/dist/services/compact-statusline/compact-lifecycle-types.d.ts +0 -1
- package/dist/services/compact-statusline/compact-statusline-service.js +0 -4
- package/dist/services/config/config-rollback.js +0 -1
- package/dist/services/config/config-safety.d.ts +0 -1
- package/dist/services/config/config-safety.js +0 -1
- package/dist/services/config/config-service.d.ts +0 -1
- package/dist/services/config/config-service.js +0 -1
- package/dist/services/config/model-routing.d.ts +0 -3
- package/dist/services/config/model-routing.js +0 -5
- package/dist/services/container/container-lease.d.ts +0 -1
- package/dist/services/container/container-lease.js +0 -1
- package/dist/services/context/artifact-meta.js +0 -1
- package/dist/services/context/auto-compact-dispatcher-input.d.ts +0 -3
- package/dist/services/context/auto-compact-dispatcher.js +0 -14
- package/dist/services/context/auto-compact-reader-input.d.ts +0 -1
- package/dist/services/context/auto-compact-reader.d.ts +0 -2
- package/dist/services/context/auto-compact-reader.js +0 -7
- package/dist/services/context/auto-compact-types.d.ts +0 -11
- package/dist/services/context/auto-compact-types.js +0 -1
- package/dist/services/context/build-dispatch-system-prompt.d.ts +11 -29
- package/dist/services/context/build-dispatch-system-prompt.js +8 -27
- package/dist/services/context/codegraph-unavailable-block.d.ts +38 -0
- package/dist/services/context/codegraph-unavailable-block.js +77 -0
- package/dist/services/context/context-audit-hint.d.ts +0 -1
- package/dist/services/context/context-audit-hint.js +0 -1
- package/dist/services/context/context-audit.d.ts +0 -1
- package/dist/services/context/context-audit.js +0 -1
- package/dist/services/context/harness-window-config.d.ts +0 -4
- package/dist/services/context/harness-window-config.js +0 -4
- package/dist/services/context/main-session-monitor.d.ts +0 -2
- package/dist/services/context/main-session-monitor.js +0 -2
- package/dist/services/context/memory-index-reader.d.ts +0 -2
- package/dist/services/context/memory-index-reader.js +0 -1
- package/dist/services/context/memory-preflight-config.d.ts +0 -1
- package/dist/services/context/memory-preflight-service.d.ts +0 -1
- package/dist/services/context/memory-preflight-service.js +0 -3
- package/dist/services/context/memory-preflight-support.d.ts +0 -5
- package/dist/services/context/post-compact-reinjection.d.ts +0 -1
- package/dist/services/context/post-compact-reinjection.js +0 -1
- package/dist/services/context/summary-view.d.ts +0 -1
- package/dist/services/context/summary-view.js +0 -1
- package/dist/services/crystallization/crystallization-service.d.ts +5 -11
- package/dist/services/crystallization/crystallization-service.js +3 -11
- package/dist/services/crystallization/crystallization-store.d.ts +6 -6
- package/dist/services/dispatch/await-batch-helpers.js +0 -3
- package/dist/services/dispatch/await-batch.d.ts +0 -1
- package/dist/services/dispatch/await-batch.js +0 -4
- package/dist/services/dispatch/batch-counter.js +0 -1
- package/dist/services/dispatch/conflict-replay.d.ts +0 -1
- package/dist/services/dispatch/conflict-replay.js +0 -1
- package/dist/services/dispatch/contract-store.d.ts +0 -2
- package/dist/services/dispatch/contract-store.js +0 -2
- package/dist/services/dispatch/dispatch-record-input-types.d.ts +0 -2
- package/dist/services/dispatch/dispatch-record-types.d.ts +0 -10
- package/dist/services/dispatch/dispatch-record-upgrade-fields.js +0 -7
- package/dist/services/dispatch/dispatch-record-upgrade-guards.js +0 -2
- package/dist/services/dispatch/dispatch-record-writer.d.ts +0 -5
- package/dist/services/dispatch/dispatch-record-writer.js +0 -21
- package/dist/services/dispatch/dispatch-sub-agent.d.ts +0 -1
- package/dist/services/dispatch/dispatch-sub-agent.js +0 -1
- package/dist/services/dispatch/e2e-fixtures.js +0 -1
- package/dist/services/dispatch/file-overlap-wave-planner.d.ts +0 -1
- package/dist/services/dispatch/file-overlap-wave-planner.js +0 -1
- package/dist/services/dispatch/isolation-lease.d.ts +0 -2
- package/dist/services/dispatch/isolation-lease.js +0 -2
- package/dist/services/dispatch/service-shutdown.js +0 -1
- package/dist/services/dispatch/session-capsule.js +0 -1
- package/dist/services/dispatch/slice-dag-types.d.ts +0 -1
- package/dist/services/dispatch/slice-dag.js +0 -2
- package/dist/services/dispatch/stage-enum.d.ts +0 -1
- package/dist/services/dispatch/stage-enum.js +0 -1
- package/dist/services/dispatch/startup-timeout.d.ts +0 -1
- package/dist/services/dispatch/sub-agent-batch-await.js +0 -3
- package/dist/services/dispatch/sub-agent-dispatcher-types.d.ts +0 -1
- package/dist/services/dispatch/sub-agent-dispatcher.js +0 -2
- package/dist/services/dispatch/test-tool-detection.d.ts +0 -3
- package/dist/services/dispatch/test-tool-detection.js +0 -2
- package/dist/services/distribution/mcp-install-runner.d.ts +21 -0
- package/dist/services/distribution/mcp-install-runner.js +59 -0
- package/dist/services/distribution/mcp-install.d.ts +95 -0
- package/dist/services/distribution/mcp-install.js +179 -0
- package/dist/services/distribution/plugin-manifest.d.ts +97 -0
- package/dist/services/distribution/plugin-manifest.js +126 -0
- package/dist/services/doctor/doctor-service/checks/codegraph-capability.js +19 -12
- package/dist/services/doctor/doctor-service/checks/codegraph-index-integrity.js +1 -2
- package/dist/services/doctor/doctor-service/checks/l3-memory-health.d.ts +0 -2
- package/dist/services/doctor/doctor-service/checks/l3-memory-health.js +0 -2
- package/dist/services/doctor/doctor-service/checks/l3-orphan-sessions.d.ts +0 -1
- package/dist/services/doctor/doctor-service/checks/l3-orphan-sessions.js +0 -1
- package/dist/services/doctor/doctor-service/checks/multi-binary-drift.d.ts +0 -1
- package/dist/services/doctor/doctor-service/checks/multi-binary-drift.js +0 -3
- package/dist/services/doctor/doctor-service/checks/workspace-layout.js +0 -2
- package/dist/services/doctor/doctor-service/index.d.ts +0 -1
- package/dist/services/doctor/doctor-service/index.js +0 -1
- package/dist/services/doctor/doctor-service/plugin-registry.d.ts +0 -2
- package/dist/services/doctor/doctor-service/plugin-registry.js +0 -2
- package/dist/services/doctor/doctor-service/probe-types.d.ts +0 -4
- package/dist/services/doctor/doctor-service/report/final-summary.d.ts +0 -1
- package/dist/services/doctor/doctor-service/report/final-summary.js +0 -1
- package/dist/services/doctor/doctor-service/types.d.ts +0 -5
- package/dist/services/doctor/doctor-service/types.js +0 -1
- package/dist/services/doctor/doctor-service.d.ts +0 -1
- package/dist/services/doctor/doctor-service.js +0 -2
- package/dist/services/env/shell-probe.js +0 -1
- package/dist/services/evidence/evidence-generator.js +0 -8
- package/dist/services/evolution/evolution-constraints.d.ts +0 -2
- package/dist/services/evolution/evolution-constraints.js +0 -2
- package/dist/services/evolution/evolution-service.d.ts +2 -12
- package/dist/services/evolution/evolution-service.js +0 -9
- package/dist/services/evolution/evolution-store.d.ts +6 -8
- package/dist/services/evolution/evolution-store.js +1 -3
- package/dist/services/evolution/evolution-types.d.ts +0 -2
- package/dist/services/evolution/evolution-types.js +0 -6
- package/dist/services/evolution/independent-evaluator-runner.d.ts +0 -3
- package/dist/services/evolution/independent-evaluator-runner.js +0 -1
- package/dist/services/evolution/regression-skeptic-runner.d.ts +0 -1
- package/dist/services/feedback/feedback-promotion-service.d.ts +0 -8
- package/dist/services/feedback/feedback-promotion-service.js +0 -10
- package/dist/services/feedback/promotion-artifact-evidence.d.ts +0 -1
- package/dist/services/feedback/promotion-artifact-evidence.js +0 -1
- package/dist/services/final-review/final-review-evidence-budget.d.ts +0 -3
- package/dist/services/final-review/final-review-evidence-budget.js +0 -5
- package/dist/services/final-review/final-review-evidence-sources.d.ts +0 -1
- package/dist/services/final-review/final-review-evidence-sources.js +0 -1
- package/dist/services/final-review/final-review-output-budget.d.ts +0 -1
- package/dist/services/final-review/final-review-output-budget.js +0 -3
- package/dist/services/final-review/final-review-service.d.ts +0 -1
- package/dist/services/final-review/final-review-service.js +0 -1
- package/dist/services/fixture/fixture-capture-service.js +0 -1
- package/dist/services/fixture/fixture-sanitize-service.d.ts +0 -3
- package/dist/services/fixture/fixture-sanitize-service.js +0 -3
- package/dist/services/fresh-context/config.js +0 -1
- package/dist/services/fresh-context/fresh-context-block.js +0 -1
- package/dist/services/fresh-context/trigger-scan.d.ts +0 -1
- package/dist/services/fresh-context/trigger-scan.js +0 -1
- package/dist/services/fuzzy-matching/fzf-pick-service.d.ts +0 -1
- package/dist/services/fuzzy-matching/fzf-pick-service.js +0 -1
- package/dist/services/handoff/handoff-parser.d.ts +0 -1
- package/dist/services/handoff/handoff-parser.js +0 -1
- package/dist/services/handoff/handoff-types.d.ts +0 -1
- package/dist/services/handoff/handoff-types.js +0 -1
- package/dist/services/handoff/handoff-writer.d.ts +0 -1
- package/dist/services/handoff/handoff-writer.js +0 -1
- package/dist/services/hooks/auto-compact-hook-install.d.ts +0 -1
- package/dist/services/hooks/auto-compact-hook-install.js +0 -1
- package/dist/services/hooks/mcp-surface-gate.d.ts +19 -0
- package/dist/services/hooks/mcp-surface-gate.js +87 -0
- package/dist/services/hooks/output.d.ts +0 -1
- package/dist/services/hooks/output.js +0 -1
- package/dist/services/hooks/pre-tool-code-gate.d.ts +0 -1
- package/dist/services/hooks/pre-tool-code-gate.js +0 -1
- package/dist/services/hooks/presence-marker-detector.js +0 -1
- package/dist/services/hooks/worktree-authorization-gate.d.ts +0 -3
- package/dist/services/hooks/worktree-authorization-gate.js +0 -1
- package/dist/services/ide/adapters/claude-code-adapter.d.ts +4 -40
- package/dist/services/ide/adapters/claude-code-adapter.js +48 -182
- package/dist/services/ide/adapters/claude-code-local-state.d.ts +28 -0
- package/dist/services/ide/adapters/claude-code-local-state.js +112 -0
- package/dist/services/ide/adapters/claude-code-model-window.d.ts +37 -0
- package/dist/services/ide/adapters/claude-code-model-window.js +113 -0
- package/dist/services/ide/adapters/qoder-adapter.d.ts +0 -3
- package/dist/services/ide/adapters/qoder-adapter.js +0 -5
- package/dist/services/ide/adapters/tongyi-lingma-adapter.d.ts +0 -2
- package/dist/services/ide/adapters/tongyi-lingma-adapter.js +0 -2
- package/dist/services/ide/adapters/trae-adapter.d.ts +0 -3
- package/dist/services/ide/adapters/trae-adapter.js +3 -6
- package/dist/services/ide/adapters/zcode-adapter.js +0 -2
- package/dist/services/ide/current-model-detector.js +0 -1
- package/dist/services/ide/hook-protocol.d.ts +0 -2
- package/dist/services/ide/hook-protocol.js +0 -2
- package/dist/services/ide/ide-compact-types.d.ts +0 -7
- package/dist/services/ide/ide-mcp-install-types.d.ts +78 -0
- package/dist/services/ide/ide-mcp-install-types.js +104 -0
- package/dist/services/ide/ide-types.d.ts +45 -13
- package/dist/services/ide/mcp-tool-matcher.d.ts +34 -0
- package/dist/services/ide/mcp-tool-matcher.js +84 -0
- package/dist/services/ide/resource-profile.d.ts +0 -1
- package/dist/services/job/job-commit-verification.d.ts +0 -2
- package/dist/services/job/job-commit-verification.js +0 -2
- package/dist/services/job/job-orchestrator.d.ts +0 -1
- package/dist/services/job/job-orchestrator.js +0 -1
- package/dist/services/job/job-progress-store.d.ts +0 -2
- package/dist/services/job/job-progress-store.js +0 -3
- package/dist/services/job/job-types.js +0 -1
- package/dist/services/job-snapshot/snapshot.js +0 -1
- package/dist/services/karpathy-cost/karpathy-cost-check-service.js +0 -1
- package/dist/services/legacy/legacy-detector.js +0 -1
- package/dist/services/lint/npx-resolver.js +7 -0
- package/dist/services/log/log-commands-service.d.ts +0 -2
- package/dist/services/log/log-commands-service.js +0 -2
- package/dist/services/log/logger.d.ts +0 -1
- package/dist/services/log/logger.js +0 -1
- package/dist/services/log/redact.d.ts +0 -1
- package/dist/services/log/redact.js +0 -1
- package/dist/services/log/retention.d.ts +0 -1
- package/dist/services/log/retention.js +0 -1
- package/dist/services/loop/loop-bee-relation-service.d.ts +3 -3
- package/dist/services/loop/loop-bee-relation-service.js +14 -13
- package/dist/services/loop/loop-bee-relation-store.d.ts +9 -10
- package/dist/services/loop/loop-bee-relation-store.js +1 -2
- package/dist/services/loop/loop-bee-relation-types.d.ts +1 -1
- package/dist/services/loop/loop-bee-relation-types.js +1 -1
- package/dist/services/loop/loop-release-service.d.ts +3 -3
- package/dist/services/loop/loop-release-service.js +1 -1
- package/dist/services/loop/loop-release-store.d.ts +6 -7
- package/dist/services/loop/loop-release-store.js +0 -1
- package/dist/services/loop/monotonic-guard.d.ts +0 -1
- package/dist/services/loop/monotonic-guard.js +0 -1
- package/dist/services/mcp/cli-executor.d.ts +36 -0
- package/dist/services/mcp/cli-executor.js +97 -0
- package/dist/services/mcp/json-rpc.d.ts +81 -0
- package/dist/services/mcp/json-rpc.js +116 -0
- package/dist/services/mcp/memory-tool.d.ts +3 -0
- package/dist/services/mcp/memory-tool.js +62 -0
- package/dist/services/mcp/server-main.d.ts +1 -0
- package/dist/services/mcp/server-main.js +66 -0
- package/dist/services/mcp/server.d.ts +22 -0
- package/dist/services/mcp/server.js +152 -0
- package/dist/services/mcp/surface.d.ts +62 -0
- package/dist/services/mcp/surface.js +198 -0
- package/dist/services/mcp/tool-core.d.ts +42 -0
- package/dist/services/mcp/tool-core.js +137 -0
- package/dist/services/mcp/tools.d.ts +13 -0
- package/dist/services/mcp/tools.js +58 -0
- package/dist/services/memory/memory-ingest-service.js +0 -1
- package/dist/services/memory/project-context-service.d.ts +0 -1
- package/dist/services/memory/project-context-service.js +0 -1
- package/dist/services/memory/project-memory-service/index/reindex.d.ts +0 -2
- package/dist/services/memory/project-memory-service/index/reindex.js +0 -1
- package/dist/services/memory/project-memory-service/index/search.d.ts +0 -1
- package/dist/services/memory/project-memory-service/index/search.js +0 -1
- package/dist/services/memory/project-memory-service/memory-kinds.d.ts +0 -1
- package/dist/services/memory/project-memory-service/memory-kinds.js +0 -1
- package/dist/services/memory/project-memory-service/parsers/frontmatter.d.ts +0 -1
- package/dist/services/memory/project-memory-service/parsers/frontmatter.js +0 -1
- package/dist/services/memory/project-memory-service.js +0 -1
- package/dist/services/mode/mode-enforcement.js +0 -1
- package/dist/services/mode/mode-status-service.d.ts +0 -2
- package/dist/services/mode/mode-status-service.js +0 -2
- package/dist/services/observability/aggregation.d.ts +0 -4
- package/dist/services/observability/aggregation.js +0 -6
- package/dist/services/observability/observability-schema.js +0 -1
- package/dist/services/observability/observability-service.d.ts +0 -5
- package/dist/services/observability/observability-service.js +0 -4
- package/dist/services/observability/report-formatter.d.ts +0 -2
- package/dist/services/observability/report-formatter.js +0 -2
- package/dist/services/openspec/artifact-boundary.d.ts +0 -4
- package/dist/services/openspec/artifact-boundary.js +0 -4
- package/dist/services/openspec/coverage-evidence-reader.d.ts +0 -1
- package/dist/services/openspec/coverage-evidence-reader.js +0 -1
- package/dist/services/polyrepo/polyrepo-dispatcher.js +0 -1
- package/dist/services/polyrepo/polyrepo-scanner.js +0 -1
- package/dist/services/polyrepo/polyrepo-service.js +0 -1
- package/dist/services/polyrepo/polyrepo-types.d.ts +0 -1
- package/dist/services/prd/best-practice-auto-trigger.d.ts +0 -2
- package/dist/services/prd/best-practice-auto-trigger.js +0 -2
- package/dist/services/prd/gate-evidence-derivation.d.ts +0 -4
- package/dist/services/prd/gate-evidence-derivation.js +0 -5
- package/dist/services/prd/handoff-auto-regen.js +0 -5
- package/dist/services/prd/handoff-frontmatter-shape.d.ts +0 -2
- package/dist/services/prd/handoff-frontmatter-shape.js +0 -2
- package/dist/services/prd/handoff-frontmatter.d.ts +0 -1
- package/dist/services/prd/handoff-frontmatter.js +0 -2
- package/dist/services/prd/handoff-gate-evidence.d.ts +0 -1
- package/dist/services/prd/handoff-gate-evidence.js +0 -4
- package/dist/services/prd/handoff-path-resolution.d.ts +0 -7
- package/dist/services/prd/handoff-path-resolution.js +0 -10
- package/dist/services/prd/handoff-service.d.ts +0 -2
- package/dist/services/prd/handoff-service.js +0 -2
- package/dist/services/prd/handoff-types.d.ts +0 -2
- package/dist/services/prd/handoff-types.js +0 -1
- package/dist/services/prd/project-scan-bootstrap-service.d.ts +0 -1
- package/dist/services/prd/project-scan-bootstrap-service.js +0 -4
- package/dist/services/prd/project-scan-types.d.ts +0 -1
- package/dist/services/prd/project-scan-types.js +0 -1
- package/dist/services/preferences/preferences-service.d.ts +0 -1
- package/dist/services/preferences/preferences-service.js +0 -5
- package/dist/services/preferences/preferences-types.d.ts +0 -14
- package/dist/services/preferences/preferences-types.js +0 -4
- package/dist/services/progress/progress-service.js +0 -1
- package/dist/services/qa/bdd-test-style-verifier.d.ts +0 -1
- package/dist/services/qa/bdd-test-style-verifier.js +0 -1
- package/dist/services/qa/browser-event-logger.d.ts +0 -1
- package/dist/services/qa/browser-event-logger.js +0 -1
- package/dist/services/qa/browser-restart-detector.d.ts +0 -1
- package/dist/services/qa/browser-restart-detector.js +0 -1
- package/dist/services/qa/browser-reuse-hint.d.ts +0 -1
- package/dist/services/qa/browser-reuse-hint.js +0 -1
- package/dist/services/qa/qa-business-review-state.js +0 -2
- package/dist/services/qa/screenshot-archive-service.d.ts +0 -1
- package/dist/services/qa/screenshot-archive-service.js +0 -1
- package/dist/services/rd/impl.js +0 -1
- package/dist/services/rd/rd-service.d.ts +0 -5
- package/dist/services/rd/rd-service.js +0 -5
- package/dist/services/rd/reviewer-dispatch-policy.d.ts +0 -4
- package/dist/services/rd/reviewer-dispatch-policy.js +0 -4
- package/dist/services/rd/standards-diagnostic.js +0 -1
- package/dist/services/rd/tactical-stage.js +0 -1
- package/dist/services/rd-swarm/rd-swarm-types.d.ts +0 -1
- package/dist/services/rd-swarm/rd-swarm-types.js +0 -1
- package/dist/services/readonly-surface/argv-guard.d.ts +32 -0
- package/dist/services/readonly-surface/argv-guard.js +164 -0
- package/dist/services/readonly-surface/readonly-whitelist.d.ts +147 -0
- package/dist/services/readonly-surface/readonly-whitelist.js +107 -0
- package/dist/services/readonly-surface/whitelist-generator.d.ts +64 -0
- package/dist/services/readonly-surface/whitelist-generator.js +212 -0
- package/dist/services/recommendations/installed-capability-detector.d.ts +0 -1
- package/dist/services/recommendations/installed-capability-detector.js +0 -1
- package/dist/services/release/version-precheck-service.d.ts +0 -2
- package/dist/services/release/version-precheck-service.js +0 -3
- package/dist/services/retrospective/retrospective-index.d.ts +0 -1
- package/dist/services/retrospective/retrospective-index.js +0 -1
- package/dist/services/retrospective/retrospective-show.d.ts +0 -1
- package/dist/services/retrospective/retrospective-show.js +0 -1
- package/dist/services/reviewer/model-family.js +0 -1
- package/dist/services/reviewer/reviewer-config.js +0 -1
- package/dist/services/reviewer/reviewer-service.d.ts +0 -1
- package/dist/services/reviewer/reviewer-service.js +0 -3
- package/dist/services/reviewer/selection-strategies.js +0 -1
- package/dist/services/runtime/runtime-detector.js +0 -1
- package/dist/services/runtime/runtime-service.d.ts +0 -2
- package/dist/services/runtime/vendor-adapter.d.ts +0 -7
- package/dist/services/runtime/vendors/claude-code.js +0 -1
- package/dist/services/runtime/vendors/codex.js +0 -1
- package/dist/services/runtime/vendors/copilot.js +0 -1
- package/dist/services/sc/sc-service.js +0 -6
- package/dist/services/scan/acceptance-coverage-service.js +0 -2
- package/dist/services/scan/api-diff-recorded.d.ts +0 -1
- package/dist/services/scan/api-diff-recorded.js +0 -1
- package/dist/services/scan/api-diff-service.d.ts +0 -1
- package/dist/services/scan/api-diff-service.js +0 -1
- package/dist/services/scan/api-diff-types.d.ts +0 -1
- package/dist/services/scan/api-diff-types.js +0 -1
- package/dist/services/scan/archetype-service.js +0 -1
- package/dist/services/scan/file-size-policy.d.ts +0 -1
- package/dist/services/scan/file-size-policy.js +0 -5
- package/dist/services/scan/file-size-scan.d.ts +0 -1
- package/dist/services/security/safe-settings-path.js +0 -1
- package/dist/services/session/binding-store.d.ts +0 -4
- package/dist/services/session/binding-store.js +0 -7
- package/dist/services/session/caller-binding-service.d.ts +0 -6
- package/dist/services/session/caller-binding-service.js +0 -4
- package/dist/services/session/caller-id-types.d.ts +0 -3
- package/dist/services/session/caller-id-types.js +0 -2
- package/dist/services/session/getSessionDir.js +0 -1
- package/dist/services/session/index.js +0 -1
- package/dist/services/session/platform-fallbacks.d.ts +0 -3
- package/dist/services/session/platform-fallbacks.js +0 -3
- package/dist/services/session/resolve-caller-id.d.ts +0 -2
- package/dist/services/session/resolve-caller-id.js +0 -2
- package/dist/services/session/session-binding-bridge.d.ts +0 -2
- package/dist/services/session/session-binding-bridge.js +0 -15
- package/dist/services/session/session-checkpoint-service.d.ts +0 -1
- package/dist/services/session/session-checkpoint-service.js +0 -1
- package/dist/services/session/session-manager.d.ts +0 -8
- package/dist/services/session/session-manager.js +0 -19
- package/dist/services/session/session-resume-service.d.ts +0 -1
- package/dist/services/session/session-resume-service.js +0 -1
- package/dist/services/share/bundle-reader.d.ts +2 -5
- package/dist/services/share/bundle-reader.js +6 -8
- package/dist/services/share/bundle-writer.d.ts +2 -2
- package/dist/services/skill/resume-detector.js +0 -3
- package/dist/services/skill/skill-scheduler.d.ts +0 -1
- package/dist/services/skill/skill-scheduler.js +0 -1
- package/dist/services/skill/skill-search-service.d.ts +0 -2
- package/dist/services/skill/skill-search-service.js +0 -2
- package/dist/services/skillhub/release-diff.d.ts +2 -2
- package/dist/services/skillhub/release-export.d.ts +2 -2
- package/dist/services/skillhub/release-gc-blobs.d.ts +2 -2
- package/dist/services/skillhub/release-import.d.ts +2 -2
- package/dist/services/skillhub/release-import.js +2 -1
- package/dist/services/skillhub/release-retain.d.ts +2 -2
- package/dist/services/skillhub/release-retain.js +2 -1
- package/dist/services/skillhub/sqlite-store.d.ts +3 -3
- package/dist/services/skillhub/sqlite-store.js +4 -5
- package/dist/services/skills/hooks-codegate-superpowers.d.ts +1 -3
- package/dist/services/skills/hooks-codegate-superpowers.js +26 -14
- package/dist/services/skills/hooks-settings-service.d.ts +0 -2
- package/dist/services/skills/hooks-settings-service.js +10 -8
- package/dist/services/skills/presence-lease-service.d.ts +0 -1
- package/dist/services/skills/presence-lease-service.js +0 -1
- package/dist/services/skills/session-start-hook-constants.d.ts +0 -4
- package/dist/services/skills/session-start-hook-constants.js +0 -4
- package/dist/services/skills/skill-presence-service.d.ts +0 -8
- package/dist/services/skills/skill-presence-service.js +0 -13
- package/dist/services/skills/skill-statusline-model.d.ts +0 -6
- package/dist/services/skills/skill-statusline-model.js +1 -4
- package/dist/services/skills/skill-statusline-renderer.d.ts +0 -1
- package/dist/services/skills/skill-statusline-renderer.js +0 -12
- package/dist/services/skills/skill-statusline-service.js +0 -6
- package/dist/services/skills/skill-statusline-sid-suffix.d.ts +0 -2
- package/dist/services/skills/skill-statusline-sid-suffix.js +0 -2
- package/dist/services/skills/statusline-palette.d.ts +0 -2
- package/dist/services/skills/statusline-palette.js +0 -3
- package/dist/services/slice/slice-archive-service.js +0 -1
- package/dist/services/slice/slice-benchmark-service.d.ts +0 -1
- package/dist/services/slice/slice-benchmark-service.js +0 -1
- package/dist/services/slice/slice-check-service.js +0 -6
- package/dist/services/slice/slice-check-types.d.ts +0 -1
- package/dist/services/slice/slice-pick-service.d.ts +0 -1
- package/dist/services/slice/slice-pick-service.js +0 -1
- package/dist/services/slice/slice-review-state.js +0 -2
- package/dist/services/sqlite/sqlite-driver.d.ts +118 -0
- package/dist/services/sqlite/sqlite-driver.js +159 -0
- package/dist/services/standards/ide-aware-standards-service.d.ts +0 -2
- package/dist/services/standards/ide-aware-standards-service.js +0 -1
- package/dist/services/standards/loop-engineering-readiness-lint.d.ts +0 -1
- package/dist/services/standards/loop-engineering-readiness-lint.js +0 -1
- package/dist/services/standards/migrate-claude-rules-service.js +0 -3
- package/dist/services/standards/migrate-service.d.ts +0 -1
- package/dist/services/standards/migrate-service.js +0 -1
- package/dist/services/standards/missing-standards-detector.d.ts +0 -2
- package/dist/services/standards/missing-standards-detector.js +0 -3
- package/dist/services/standards/project-standards-service.d.ts +0 -1
- package/dist/services/standards/project-standards-service.js +0 -1
- package/dist/services/standards/standards-render.d.ts +0 -1
- package/dist/services/standards/standards-render.js +0 -1
- package/dist/services/standards/ui-library-dispatch-block.d.ts +0 -1
- package/dist/services/standards/ui-library-dispatch-block.js +0 -1
- package/dist/services/tech/tech-change-id-service.d.ts +0 -7
- package/dist/services/tech/tech-change-id-service.js +0 -7
- package/dist/services/tech/tech-service.js +0 -5
- package/dist/services/verdict/envelope-parsers.d.ts +0 -2
- package/dist/services/verdict/envelope-parsers.js +0 -2
- package/dist/services/verdict/envelopes.d.ts +0 -1
- package/dist/services/vm/vm-lease.js +0 -1
- package/dist/services/web/aria-node.d.ts +0 -1
- package/dist/services/web/bounded-output.d.ts +0 -1
- package/dist/services/web/bounded-output.js +0 -1
- package/dist/services/web/browser-acquire.js +0 -1
- package/dist/services/web/browser-cache-probe.js +0 -1
- package/dist/services/web/browser-session-manager.js +0 -1
- package/dist/services/web/daemon-entry.js +0 -1
- package/dist/services/web/daemon-registry.js +0 -1
- package/dist/services/web/daemon-supervisor.d.ts +4 -3
- package/dist/services/web/daemon-supervisor.js +4 -4
- package/dist/services/web/playwright-loader.js +0 -1
- package/dist/services/web/playwright-types.d.ts +0 -1
- package/dist/services/web/snapshot-pruner.js +0 -1
- package/dist/services/web/untrusted-envelope.d.ts +0 -1
- package/dist/services/web/web-artifact-paths.js +0 -1
- package/dist/services/web/web-client.d.ts +0 -1
- package/dist/services/web/web-daemon-service.js +0 -1
- package/dist/services/web/web-fallback.d.ts +0 -1
- package/dist/services/web/web-fallback.js +0 -1
- package/dist/services/web/web-install-service.js +0 -1
- package/dist/services/web/web-login-profile.js +0 -1
- package/dist/services/web/web-protocol.d.ts +0 -1
- package/dist/services/web/web-protocol.js +0 -1
- package/dist/services/web/web-status-report.js +0 -1
- package/dist/services/workflow/artifact-paths.js +0 -3
- package/dist/services/workflow/autonomous-resume-writer.js +0 -2
- package/dist/services/workflow/pipeline-verify-gate-support.d.ts +0 -5
- package/dist/services/workflow/pipeline-verify-gate-support.js +0 -11
- package/dist/services/workflow/pipeline-verify-service.d.ts +0 -2
- package/dist/services/workflow/pipeline-verify-service.js +0 -15
- package/dist/services/workflow/pipeline-verify-types.d.ts +0 -10
- package/dist/services/workflow/pipeline-verify-types.js +0 -2
- package/dist/services/workflow/plan-reader.d.ts +0 -1
- package/dist/services/workflow/plan-reader.js +0 -5
- package/dist/services/workflow/plan-refresher.js +0 -2
- package/dist/services/workflow/plan-trigger-detector.d.ts +0 -2
- package/dist/services/workflow/plan-trigger-detector.js +0 -3
- package/dist/services/workflow/workflow-autonomous-resume-helpers.js +0 -5
- package/dist/services/workflow/workflow-autonomous-service.js +0 -2
- package/dist/services/workflow/workflow-autonomous-types.d.ts +0 -2
- package/dist/services/workflow/workflow-autonomous-types.js +0 -2
- package/dist/services/workflow/workflow-graph-types.d.ts +0 -1
- package/dist/services/workflow/workflow-graph-types.js +0 -1
- package/dist/services/workflow/workflow-router-service.js +0 -4
- package/dist/services/workflow/workflow-skip-service.d.ts +0 -1
- package/dist/services/workflow/workflow-skip-service.js +0 -1
- package/dist/services/workflow/workflow-spec-lint.d.ts +0 -2
- package/dist/services/workflow/workflow-spec-lint.js +0 -2
- package/dist/services/workflow/workflow-spec-types.d.ts +0 -1
- package/dist/services/workflow/workflow-spec-types.js +0 -1
- package/dist/services/workflow/workflow-spec-yaml.d.ts +0 -2
- package/dist/services/workflow/workflow-spec-yaml.js +0 -2
- package/dist/services/workflow/workflow-spec.js +0 -1
- package/dist/services/workflow/workflow-state-store.js +0 -1
- package/dist/services/workspace/claude-settings-template.d.ts +0 -4
- package/dist/services/workspace/claude-settings-template.js +0 -4
- package/dist/services/workspace/migrate-1-4-1-service.d.ts +0 -1
- package/dist/services/workspace/migrate-1-4-1-service.js +0 -1
- package/dist/services/workspace/migrate-service.js +0 -8
- package/dist/services/workspace/migrate-types.d.ts +0 -4
- package/dist/services/workspace/migrate-types.js +0 -1
- package/dist/services/workspace/reconcile-migrate.d.ts +0 -3
- package/dist/services/workspace/reconcile-migrate.js +0 -5
- package/dist/services/workspace/reconcile-service.d.ts +0 -3
- package/dist/services/workspace/reconcile-service.js +0 -7
- package/dist/services/workspace/reconcile-types.d.ts +0 -5
- package/dist/services/workspace/sid-naming-guard.d.ts +0 -1
- package/dist/services/workspace/sid-naming-guard.js +0 -1
- package/dist/services/workspace/templates/project-scan/index.d.ts +0 -3
- package/dist/services/workspace/templates/project-scan/index.js +0 -3
- package/dist/services/workspace/workspace-claude-settings-materializer.d.ts +0 -1
- package/dist/services/workspace/workspace-claude-settings-materializer.js +0 -4
- package/dist/services/workspace/workspace-service.d.ts +0 -7
- package/dist/services/workspace/workspace-service.js +0 -16
- package/dist/services/worktree/playwright-profile.js +0 -1
- package/dist/services/worktree/worktree-lease-types.d.ts +0 -1
- package/dist/services/worktree/worktree-lease-types.js +0 -1
- package/dist/services/worktree/worktree-lease.d.ts +0 -2
- package/dist/services/worktree/worktree-lease.js +0 -2
- package/dist/shared/format-md-compact.d.ts +0 -2
- package/dist/shared/format-md-compact.js +0 -2
- package/dist/shared/incrementing-number.d.ts +0 -1
- package/dist/shared/incrementing-number.js +0 -1
- package/dist/shared/path-utils.d.ts +0 -1
- package/dist/shared/path-utils.js +0 -1
- package/dist/shared/runtime-root.d.ts +0 -1
- package/dist/shared/runtime-root.js +0 -1
- package/dist/shared/stale-policy.d.ts +0 -1
- package/dist/shared/stale-policy.js +0 -1
- package/package.json +24 -11
- package/scripts/canonical-store-link.mjs +296 -0
- package/scripts/canonical-store-prune.mjs +131 -0
- package/scripts/canonical-store.mjs +298 -0
- package/scripts/install-skills-bundles.mjs +233 -0
- package/scripts/install-skills-fs.mjs +148 -0
- package/scripts/install-skills-ide.mjs +279 -0
- package/scripts/install-skills-output-style-default.mjs +196 -0
- package/scripts/install-skills-output-styles.mjs +121 -0
- package/scripts/install-skills-report.mjs +42 -0
- package/scripts/install-skills-user-config.mjs +198 -0
- package/scripts/install-skills.mjs +41 -1279
- package/scripts/watch-tree.mjs +140 -0
- package/scripts/watch.mjs +4 -126
- package/skills/peaks-audit/SKILL.md +3 -3
- package/skills/peaks-status/SKILL.md +31 -13
- package/dist/services/codegraph/codegraph-include-reconciler.d.ts +0 -10
- package/dist/services/codegraph/codegraph-include-reconciler.js +0 -160
|
@@ -24,7 +24,6 @@
|
|
|
24
24
|
import { z } from 'zod';
|
|
25
25
|
export declare const JOB_PROGRESS_SCHEMA_VERSION: 1;
|
|
26
26
|
/**
|
|
27
|
-
* D3 (rid 2026-10-03-job-ledger-truthfulness) — what the mirror says when the
|
|
28
27
|
* ledger has no pending slice.
|
|
29
28
|
*
|
|
30
29
|
* `currentSlice` is required by the schema below (it is a `string`, and readers
|
|
@@ -80,7 +79,6 @@ export interface NextSliceFacts {
|
|
|
80
79
|
readonly currentSlice: string;
|
|
81
80
|
}
|
|
82
81
|
/**
|
|
83
|
-
* criterion (c) (rid 2026-10-03-job-ledger-repair1) — the one sentence the reader
|
|
84
82
|
* acts on, built from the mirror instead of guessed at.
|
|
85
83
|
*
|
|
86
84
|
* WHY THIS EXISTS. The parent slice made `currentSlice` honest (§2.38: it used to
|
|
@@ -29,7 +29,6 @@ import { guardRuntimeSegment, runtimeRoot } from '../../shared/runtime-root.js';
|
|
|
29
29
|
* The single place a job-progress directory is built, and therefore the single
|
|
30
30
|
* place the two ids that reach it are guarded.
|
|
31
31
|
*
|
|
32
|
-
* Slice 2026-09-15 (runtime-path-unrepresentable): this join used to be written
|
|
33
32
|
* at three sites, none of them guarded, and the shipped text rule could not see
|
|
34
33
|
* them — they sit in the service layer, outside the command layer it scans.
|
|
35
34
|
* Both ids are caller-supplied (`peaks job checkpoint` takes them from flags).
|
|
@@ -41,7 +40,6 @@ function jobProgressDir(projectRoot, sessionId, jobId) {
|
|
|
41
40
|
}
|
|
42
41
|
export const JOB_PROGRESS_SCHEMA_VERSION = 1;
|
|
43
42
|
/**
|
|
44
|
-
* D3 (rid 2026-10-03-job-ledger-truthfulness) — what the mirror says when the
|
|
45
43
|
* ledger has no pending slice.
|
|
46
44
|
*
|
|
47
45
|
* `currentSlice` is required by the schema below (it is a `string`, and readers
|
|
@@ -114,7 +112,6 @@ function addSliceAdvice(jobId) {
|
|
|
114
112
|
return `peaks job add-slice --job-id ${jobId ?? '<job-id>'} --slice-label ${ADD_SLICE_LABEL_SLOT}`;
|
|
115
113
|
}
|
|
116
114
|
/**
|
|
117
|
-
* criterion (c) (rid 2026-10-03-job-ledger-repair1) — the one sentence the reader
|
|
118
115
|
* acts on, built from the mirror instead of guessed at.
|
|
119
116
|
*
|
|
120
117
|
* WHY THIS EXISTS. The parent slice made `currentSlice` honest (§2.38: it used to
|
|
@@ -99,7 +99,6 @@ export const JobCheckpointInputSchema = z
|
|
|
99
99
|
})
|
|
100
100
|
.superRefine((v, ctx) => {
|
|
101
101
|
if (v.state === 'done') {
|
|
102
|
-
// D2 (rid 2026-10-03-job-ledger-truthfulness). Two rules, in this order,
|
|
103
102
|
// both on the same claim about the same field.
|
|
104
103
|
//
|
|
105
104
|
// 1. THE SHAPE RULE. It stays exactly where the defect was measured
|
|
@@ -29,7 +29,6 @@ export function collectResourceSnapshot(jobDir) {
|
|
|
29
29
|
// Non-enumerable internal attachment for test-time access via
|
|
30
30
|
// `collectResourceSnapshot.dirSizeMb`. NOT a public export — keeps
|
|
31
31
|
// the prod module surface clean per PRD while still allowing
|
|
32
|
-
// targeted AC-1/AC-2/AC-3 unit tests to drive `dirSizeMb` directly.
|
|
33
32
|
Object.defineProperty(collectResourceSnapshot, 'dirSizeMb', {
|
|
34
33
|
value: dirSizeMb,
|
|
35
34
|
enumerable: false,
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
// src/services/karpathy-cost/karpathy-cost-check-service.ts
|
|
2
2
|
//
|
|
3
|
-
// Slice 2026-07-30-karpathy-cost-self-review (slice 2/4). The
|
|
4
3
|
// karpathy-reviewer's JSON envelope is extended with `evaluationCost`
|
|
5
4
|
// + `costRatio` (see agents/karpathy-reviewer.md §4). This service
|
|
6
5
|
// is the orchestrator-side consumer of those fields.
|
|
@@ -25,7 +25,6 @@ const PATTERNS = [
|
|
|
25
25
|
];
|
|
26
26
|
/**
|
|
27
27
|
* NOT the file-size cap, and NOT a second copy of it — decided 2026-09-30, rid
|
|
28
|
-
* `2026-09-30-cap-unify-01` repair cycle (F6), and recorded in
|
|
29
28
|
* `.peaks/docs/lint-gate.md` §4b row 7 so the next reader does not re-litigate it.
|
|
30
29
|
*
|
|
31
30
|
* This is a legacy SMELL heuristic: a number above which a file is big enough to
|
|
@@ -17,6 +17,13 @@ import process from 'node:process';
|
|
|
17
17
|
function locateNpmCliScript(scriptFile) {
|
|
18
18
|
const candidates = process.platform === 'win32'
|
|
19
19
|
? [
|
|
20
|
+
// Standard Windows layout — the installer, the zip, and
|
|
21
|
+
// nvm-for-windows all put `node_modules/npm` beside `node.exe`, so the
|
|
22
|
+
// install is ONE level up from `process.execPath`, not two. This is the
|
|
23
|
+
// `npm` belonging to the very `node` that will run the script, so it is
|
|
24
|
+
// tried first; the three entries after it are the backstop for an `npm`
|
|
25
|
+
// installed elsewhere.
|
|
26
|
+
join(process.execPath, '..', 'node_modules', 'npm', 'bin', scriptFile),
|
|
20
27
|
join(process.execPath, '..', '..', 'node_modules', 'npm', 'bin', scriptFile),
|
|
21
28
|
`C:/nvm4w/nodejs/node_modules/npm/bin/${scriptFile}`,
|
|
22
29
|
`C:/Program Files/nodejs/node_modules/npm/bin/${scriptFile}`
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Service layer for `peaks log tail` and `peaks log ls` subcommands.
|
|
3
3
|
*
|
|
4
|
-
* Slice 2026-06-16-cli-logging (G4). Pure helpers that the
|
|
5
4
|
* commander layer in `src/cli/commands/log-commands.ts` wraps.
|
|
6
5
|
* Separated from `logger.ts` so the surface is small + testable
|
|
7
6
|
* without spinning up a Commander program.
|
|
@@ -30,7 +29,6 @@ export type TailLogOptions = {
|
|
|
30
29
|
/** Override the date (PRD AC2: PEAKS_LOG_DATE_OVERRIDE). */
|
|
31
30
|
dateOverride?: string;
|
|
32
31
|
/**
|
|
33
|
-
* Slice 2026-06-23-audit-4th #B2: filter by batchId. When set,
|
|
34
32
|
* only entries whose `batchId` field matches are returned (and
|
|
35
33
|
* the trailing-window accounting respects the post-filter total
|
|
36
34
|
* so a busy day does not push old matching entries out of view).
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Service layer for `peaks log tail` and `peaks log ls` subcommands.
|
|
3
3
|
*
|
|
4
|
-
* Slice 2026-06-16-cli-logging (G4). Pure helpers that the
|
|
5
4
|
* commander layer in `src/cli/commands/log-commands.ts` wraps.
|
|
6
5
|
* Separated from `logger.ts` so the surface is small + testable
|
|
7
6
|
* without spinning up a Commander program.
|
|
@@ -64,7 +63,6 @@ export function tailLog(opts = {}) {
|
|
|
64
63
|
if (total === 0) {
|
|
65
64
|
return { file: null, entries: [], total: 0 };
|
|
66
65
|
}
|
|
67
|
-
// Slice 2026-06-23-audit-4th #B2: batchId filter — apply AFTER the
|
|
68
66
|
// read but BEFORE the trailing window, so a single batch's
|
|
69
67
|
// interleaved log lines surface as a coherent sequence instead of
|
|
70
68
|
// being pushed out by sibling-batch lines.
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Secret redaction for peaks-loop JSONL log lines.
|
|
3
3
|
*
|
|
4
|
-
* Slice 2026-06-16-cli-logging (G6). The logger must NEVER write
|
|
5
4
|
* a raw secret to disk. We redact at two levels:
|
|
6
5
|
* 1. Field level — when a structured payload contains a key whose
|
|
7
6
|
* name matches a secret pattern (`api_key`, `password`, `token`,
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Secret redaction for peaks-loop JSONL log lines.
|
|
3
3
|
*
|
|
4
|
-
* Slice 2026-06-16-cli-logging (G6). The logger must NEVER write
|
|
5
4
|
* a raw secret to disk. We redact at two levels:
|
|
6
5
|
* 1. Field level — when a structured payload contains a key whose
|
|
7
6
|
* name matches a secret pattern (`api_key`, `password`, `token`,
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 7-day log rotation for peaks-loop.
|
|
3
3
|
*
|
|
4
|
-
* Slice 2026-06-16-cli-logging (G2). Cheapest possible rotation:
|
|
5
4
|
* daily files are named by UTC date, so a "new day" automatically
|
|
6
5
|
* means a new file. The retention sweep runs at the start of every
|
|
7
6
|
* peaks-loop invocation and removes any `peaks-loop-*.log` whose
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 7-day log rotation for peaks-loop.
|
|
3
3
|
*
|
|
4
|
-
* Slice 2026-06-16-cli-logging (G2). Cheapest possible rotation:
|
|
5
4
|
* daily files are named by UTC date, so a "new day" automatically
|
|
6
5
|
* means a new file. The retention sweep runs at the start of every
|
|
7
6
|
* peaks-loop invocation and removes any `peaks-loop-*.log` whose
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type SqliteDatabase } from '../sqlite/sqlite-driver.js';
|
|
2
2
|
import { ZodError } from 'zod';
|
|
3
3
|
import { type LoopBeeRelation, type LoopBeeRelationInput, type LoopBeeRelationRole } from './loop-bee-relation-types.js';
|
|
4
4
|
/**
|
|
@@ -46,7 +46,7 @@ export declare class LoopBeeRelationIntegrityError extends Error {
|
|
|
46
46
|
* — enforced at DB level (UNIQUE).
|
|
47
47
|
* — surfaced as DUP_RELATION for friendlier errors.
|
|
48
48
|
*
|
|
49
|
-
* The constructor takes an open
|
|
49
|
+
* The constructor takes an open SQLite database (the existing
|
|
50
50
|
* `peaks state` boundary) so callers do not have to thread a path
|
|
51
51
|
* through this layer; this matches the LoopReleaseService pattern.
|
|
52
52
|
*
|
|
@@ -55,7 +55,7 @@ export declare class LoopBeeRelationIntegrityError extends Error {
|
|
|
55
55
|
*/
|
|
56
56
|
export declare class LoopBeeRelationService {
|
|
57
57
|
private readonly db;
|
|
58
|
-
constructor(db:
|
|
58
|
+
constructor(db: SqliteDatabase);
|
|
59
59
|
/**
|
|
60
60
|
* Persist a new LoopBeeRelation row.
|
|
61
61
|
*
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { constraintKind } from '../sqlite/sqlite-driver.js';
|
|
1
2
|
import { ZodError } from 'zod';
|
|
2
3
|
import { LoopBeeRelationSchema } from './loop-bee-relation-types.js';
|
|
3
4
|
import { ensureLoopBeeRelationTable, insertLoopBeeRelation, listLoopBeeRelationsByLoop, listLoopBeeRelationsByBee, updateLoopBeeRelationRole, removeLoopBeeRelation, getLoopBeeRelation } from './loop-bee-relation-store.js';
|
|
@@ -39,7 +40,7 @@ export class LoopBeeRelationIntegrityError extends Error {
|
|
|
39
40
|
* — enforced at DB level (UNIQUE).
|
|
40
41
|
* — surfaced as DUP_RELATION for friendlier errors.
|
|
41
42
|
*
|
|
42
|
-
* The constructor takes an open
|
|
43
|
+
* The constructor takes an open SQLite database (the existing
|
|
43
44
|
* `peaks state` boundary) so callers do not have to thread a path
|
|
44
45
|
* through this layer; this matches the LoopReleaseService pattern.
|
|
45
46
|
*
|
|
@@ -111,15 +112,16 @@ export class LoopBeeRelationService {
|
|
|
111
112
|
return insertLoopBeeRelation(this.db, parsed);
|
|
112
113
|
}
|
|
113
114
|
catch (err) {
|
|
114
|
-
|
|
115
|
+
// The driver's error CODE is not portable across SQLite bindings, so the question
|
|
116
|
+
// "which constraint failed" is asked of the seam, which reads node:sqlite's `errcode`
|
|
117
|
+
// (2067 / 787) and better-sqlite3's `code` alike.
|
|
118
|
+
const kind = constraintKind(err);
|
|
115
119
|
// Partial unique index on (loop_release_id) WHERE role='main'.
|
|
116
|
-
//
|
|
117
|
-
//
|
|
118
|
-
//
|
|
119
|
-
//
|
|
120
|
-
|
|
121
|
-
// in the message.
|
|
122
|
-
if (code === 'SQLITE_CONSTRAINT_UNIQUE') {
|
|
120
|
+
// It surfaces as a UNIQUE violation whose message names only
|
|
121
|
+
// `loop_bee_relation.loop_release_id` (the column the partial index covers), NOT the
|
|
122
|
+
// index name. It is distinguished from the (loop_release_id, bee_release_id)
|
|
123
|
+
// composite UNIQUE violation by the absence of bee_release_id in the message.
|
|
124
|
+
if (kind === 'unique') {
|
|
123
125
|
const msg = err instanceof Error ? err.message : String(err);
|
|
124
126
|
if (msg.includes('loop_bee_relation.bee_release_id')) {
|
|
125
127
|
// Composite UNIQUE(loop_release_id, bee_release_id).
|
|
@@ -138,8 +140,8 @@ export class LoopBeeRelationService {
|
|
|
138
140
|
}
|
|
139
141
|
]);
|
|
140
142
|
}
|
|
141
|
-
// FK violations
|
|
142
|
-
if (
|
|
143
|
+
// FK violations (foreign_keys = ON, which `openStateDb` turns on).
|
|
144
|
+
if (kind === 'foreign-key') {
|
|
143
145
|
// Distinguish by re-checking which row is missing; the friendly
|
|
144
146
|
// pre-check above should have caught these, but defense in depth.
|
|
145
147
|
const loopStill = this.db
|
|
@@ -183,8 +185,7 @@ export class LoopBeeRelationService {
|
|
|
183
185
|
return updateLoopBeeRelationRole(this.db, id, newRole);
|
|
184
186
|
}
|
|
185
187
|
catch (err) {
|
|
186
|
-
|
|
187
|
-
if (code === 'SQLITE_CONSTRAINT_UNIQUE') {
|
|
188
|
+
if (constraintKind(err) === 'unique') {
|
|
188
189
|
const existing = getLoopBeeRelation(this.db, id);
|
|
189
190
|
const loopId = existing?.loop_release_id ?? '<unknown>';
|
|
190
191
|
throw new LoopBeeRelationIntegrityError('TWO_MAIN_BEES', `loop '${loopId}' already has a main bee`, [{ path: 'role', message: 'at most one main bee per loop' }]);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import type { SqliteDatabase } from '../sqlite/sqlite-driver.js';
|
|
2
2
|
import type { LoopBeeRelation, LoopBeeRelationRole } from './loop-bee-relation-types.js';
|
|
3
3
|
/**
|
|
4
4
|
* Low-level SQLite access for the `loop_bee_relation` table. The
|
|
@@ -10,13 +10,12 @@ import type { LoopBeeRelation, LoopBeeRelationRole } from './loop-bee-relation-t
|
|
|
10
10
|
*
|
|
11
11
|
* Defense in depth:
|
|
12
12
|
* - FK constraints enforce loop_release and bee_release referential
|
|
13
|
-
* integrity (
|
|
13
|
+
* integrity (foreign_keys = ON, applied by `openStateDb`).
|
|
14
14
|
* - Partial unique index `WHERE role = 'main'` enforces "at most one
|
|
15
15
|
* main bee per loop" at the storage layer (the service layer adds
|
|
16
16
|
* a friendlier error path on top).
|
|
17
17
|
* - UNIQUE (loop_release_id, bee_release_id) prevents accidental
|
|
18
18
|
* duplicate relations between the same loop and same bee release.
|
|
19
|
-
* - The migration does NOT touch any 4.x `bee_release` column (AC-3).
|
|
20
19
|
* - Lifecycle_status check on loop_release is NOT a DB-level constraint
|
|
21
20
|
* (the retirement rule is enforced in the service layer — see
|
|
22
21
|
* `LoopBeeRelationService.create`) so the DB stays decoupled from
|
|
@@ -27,7 +26,7 @@ import type { LoopBeeRelation, LoopBeeRelationRole } from './loop-bee-relation-t
|
|
|
27
26
|
* database. Used by tests that build their own DB without the
|
|
28
27
|
* openStateDb pipeline. Idempotent.
|
|
29
28
|
*/
|
|
30
|
-
export declare function ensureLoopBeeRelationTable(db:
|
|
29
|
+
export declare function ensureLoopBeeRelationTable(db: SqliteDatabase): void;
|
|
31
30
|
/**
|
|
32
31
|
* Insert a LoopBeeRelation row. The row's `schema_version` is taken from
|
|
33
32
|
* the input (must equal `peaks.loop-bee-relation/1`); `id` and
|
|
@@ -40,14 +39,14 @@ export declare function ensureLoopBeeRelationTable(db: Database.Database): void;
|
|
|
40
39
|
*
|
|
41
40
|
* Returns the persisted row (with `id` filled in).
|
|
42
41
|
*/
|
|
43
|
-
export declare function insertLoopBeeRelation(db:
|
|
42
|
+
export declare function insertLoopBeeRelation(db: SqliteDatabase, row: Omit<LoopBeeRelation, 'id' | 'created_at'>): LoopBeeRelation;
|
|
44
43
|
/** Read a single LoopBeeRelation row by id; returns undefined if absent. */
|
|
45
|
-
export declare function getLoopBeeRelation(db:
|
|
44
|
+
export declare function getLoopBeeRelation(db: SqliteDatabase, id: number): LoopBeeRelation | undefined;
|
|
46
45
|
/** List LoopBeeRelation rows for a given loop_release_id (optionally filtered by role). */
|
|
47
|
-
export declare function listLoopBeeRelationsByLoop(db:
|
|
46
|
+
export declare function listLoopBeeRelationsByLoop(db: SqliteDatabase, loop_release_id: string, role?: LoopBeeRelationRole): LoopBeeRelation[];
|
|
48
47
|
/** List LoopBeeRelation rows for a given bee_release_id (optionally filtered by role). */
|
|
49
|
-
export declare function listLoopBeeRelationsByBee(db:
|
|
48
|
+
export declare function listLoopBeeRelationsByBee(db: SqliteDatabase, bee_release_id: number, role?: LoopBeeRelationRole): LoopBeeRelation[];
|
|
50
49
|
/** Update the role of an existing relation. Returns the new row, or undefined if absent. */
|
|
51
|
-
export declare function updateLoopBeeRelationRole(db:
|
|
50
|
+
export declare function updateLoopBeeRelationRole(db: SqliteDatabase, id: number, newRole: LoopBeeRelationRole): LoopBeeRelation | undefined;
|
|
52
51
|
/** Remove a LoopBeeRelation row by id. Returns true if a row was deleted. */
|
|
53
|
-
export declare function removeLoopBeeRelation(db:
|
|
52
|
+
export declare function removeLoopBeeRelation(db: SqliteDatabase, id: number): boolean;
|
|
@@ -8,13 +8,12 @@
|
|
|
8
8
|
*
|
|
9
9
|
* Defense in depth:
|
|
10
10
|
* - FK constraints enforce loop_release and bee_release referential
|
|
11
|
-
* integrity (
|
|
11
|
+
* integrity (foreign_keys = ON, applied by `openStateDb`).
|
|
12
12
|
* - Partial unique index `WHERE role = 'main'` enforces "at most one
|
|
13
13
|
* main bee per loop" at the storage layer (the service layer adds
|
|
14
14
|
* a friendlier error path on top).
|
|
15
15
|
* - UNIQUE (loop_release_id, bee_release_id) prevents accidental
|
|
16
16
|
* duplicate relations between the same loop and same bee release.
|
|
17
|
-
* - The migration does NOT touch any 4.x `bee_release` column (AC-3).
|
|
18
17
|
* - Lifecycle_status check on loop_release is NOT a DB-level constraint
|
|
19
18
|
* (the retirement rule is enforced in the service layer — see
|
|
20
19
|
* `LoopBeeRelationService.create`) so the DB stays decoupled from
|
|
@@ -41,7 +41,7 @@ export declare const LOOP_BEE_RELATION_ROLES: readonly LoopBeeRelationRole[];
|
|
|
41
41
|
* `loop_release_id` must match the same kebab-case pattern as
|
|
42
42
|
* `LoopRelease.id` — this is a defensive duplicate of the FK target's
|
|
43
43
|
* shape, but the authoritative check is the FK constraint at insert
|
|
44
|
-
* time (
|
|
44
|
+
* time (with `foreign_keys = ON`, which `openStateDb` applies).
|
|
45
45
|
*
|
|
46
46
|
* `bee_release_id` is a positive integer; matching the
|
|
47
47
|
* `bee_release.id` autoincrement INTEGER PK.
|
|
@@ -40,7 +40,7 @@ export const LOOP_BEE_RELATION_ROLES = [
|
|
|
40
40
|
* `loop_release_id` must match the same kebab-case pattern as
|
|
41
41
|
* `LoopRelease.id` — this is a defensive duplicate of the FK target's
|
|
42
42
|
* shape, but the authoritative check is the FK constraint at insert
|
|
43
|
-
* time (
|
|
43
|
+
* time (with `foreign_keys = ON`, which `openStateDb` applies).
|
|
44
44
|
*
|
|
45
45
|
* `bee_release_id` is a positive integer; matching the
|
|
46
46
|
* `bee_release.id` autoincrement INTEGER PK.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import type { SqliteDatabase } from '../sqlite/sqlite-driver.js';
|
|
2
2
|
import { type LoopRelease, type LoopReleaseInput, type LoopReleaseLifecycleStatus } from './loop-release-types.js';
|
|
3
3
|
/**
|
|
4
4
|
* Thin service wrapper around the loop_release store. M1 keeps the
|
|
@@ -7,7 +7,7 @@ import { type LoopRelease, type LoopReleaseInput, type LoopReleaseLifecycleStatu
|
|
|
7
7
|
* deliberately deferred to M2 / M4 / M5 — shipping them here would
|
|
8
8
|
* lock in an interface that the ratchet has not yet ratified.
|
|
9
9
|
*
|
|
10
|
-
* The constructor takes an open
|
|
10
|
+
* The constructor takes an open SQLite database (the existing
|
|
11
11
|
* `peaks state` boundary) so callers do not have to thread a path
|
|
12
12
|
* through this layer; this matches the `retainRelease` pattern in
|
|
13
13
|
* `src/services/skillhub/release-retain.ts`.
|
|
@@ -18,7 +18,7 @@ import { type LoopRelease, type LoopReleaseInput, type LoopReleaseLifecycleStatu
|
|
|
18
18
|
*/
|
|
19
19
|
export declare class LoopReleaseService {
|
|
20
20
|
private readonly db;
|
|
21
|
-
constructor(db:
|
|
21
|
+
constructor(db: SqliteDatabase);
|
|
22
22
|
/**
|
|
23
23
|
* Persist a new LoopRelease row. Re-validates the input via the
|
|
24
24
|
* Zod schema; throws ZodError on failure.
|
|
@@ -7,7 +7,7 @@ import { ensureLoopReleaseTable, insertLoopRelease, getLoopRelease, listLoopRele
|
|
|
7
7
|
* deliberately deferred to M2 / M4 / M5 — shipping them here would
|
|
8
8
|
* lock in an interface that the ratchet has not yet ratified.
|
|
9
9
|
*
|
|
10
|
-
* The constructor takes an open
|
|
10
|
+
* The constructor takes an open SQLite database (the existing
|
|
11
11
|
* `peaks state` boundary) so callers do not have to thread a path
|
|
12
12
|
* through this layer; this matches the `retainRelease` pattern in
|
|
13
13
|
* `src/services/skillhub/release-retain.ts`.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import type { SqliteDatabase } from '../sqlite/sqlite-driver.js';
|
|
2
2
|
import type { LoopRelease, LoopReleaseLifecycleStatus } from './loop-release-types.js';
|
|
3
3
|
/**
|
|
4
4
|
* Low-level SQLite access for the `loop_release` table. The
|
|
@@ -17,7 +17,6 @@ import type { LoopRelease, LoopReleaseLifecycleStatus } from './loop-release-typ
|
|
|
17
17
|
* INDEX IF NOT EXISTS) so re-running it is safe.
|
|
18
18
|
* - The M3 migration (`004-loop-bee-extension.sql`) is non-breaking:
|
|
19
19
|
* it only adds new columns with DEFAULTs and does NOT touch any
|
|
20
|
-
* pre-existing column on `bee_release` (AC-3).
|
|
21
20
|
*/
|
|
22
21
|
/**
|
|
23
22
|
* Re-apply the loop_release table migration against an already-open
|
|
@@ -31,7 +30,7 @@ import type { LoopRelease, LoopReleaseLifecycleStatus } from './loop-release-typ
|
|
|
31
30
|
* the columns will exist; for a freshly-built DB via this helper the
|
|
32
31
|
* columns are baked in. Either way the schema converges.
|
|
33
32
|
*/
|
|
34
|
-
export declare function ensureLoopReleaseTable(db:
|
|
33
|
+
export declare function ensureLoopReleaseTable(db: SqliteDatabase): void;
|
|
35
34
|
/**
|
|
36
35
|
* Insert a LoopRelease row. The row's `schema_version` is taken from
|
|
37
36
|
* the input (must equal `peaks.loop/1`); `archived_at` is stamped
|
|
@@ -41,15 +40,15 @@ export declare function ensureLoopReleaseTable(db: Database.Database): void;
|
|
|
41
40
|
* same id throws a UNIQUE-constraint error; callers wanting upsert
|
|
42
41
|
* semantics should use a separate path (M5 / crystallization event).
|
|
43
42
|
*/
|
|
44
|
-
export declare function insertLoopRelease(db:
|
|
43
|
+
export declare function insertLoopRelease(db: SqliteDatabase, row: LoopRelease): void;
|
|
45
44
|
/** Read a single LoopRelease row by id; returns undefined if absent. */
|
|
46
|
-
export declare function getLoopRelease(db:
|
|
45
|
+
export declare function getLoopRelease(db: SqliteDatabase, id: string): LoopRelease | undefined;
|
|
47
46
|
/** List LoopRelease rows filtered by lifecycle_status. */
|
|
48
|
-
export declare function listLoopReleasesByStatus(db:
|
|
47
|
+
export declare function listLoopReleasesByStatus(db: SqliteDatabase, status: LoopReleaseLifecycleStatus): LoopRelease[];
|
|
49
48
|
/**
|
|
50
49
|
* Search LoopRelease rows whose `scenario` contains the query string.
|
|
51
50
|
* M1 uses a case-insensitive LIKE; FTS5 promotion is deferred. The
|
|
52
51
|
* query is treated as a literal substring (no regex, no SQL
|
|
53
52
|
* injection surface) — it is escaped via parameter binding.
|
|
54
53
|
*/
|
|
55
|
-
export declare function searchLoopReleasesByScenario(db:
|
|
54
|
+
export declare function searchLoopReleasesByScenario(db: SqliteDatabase, query: string): LoopRelease[];
|
|
@@ -15,7 +15,6 @@
|
|
|
15
15
|
* INDEX IF NOT EXISTS) so re-running it is safe.
|
|
16
16
|
* - The M3 migration (`004-loop-bee-extension.sql`) is non-breaking:
|
|
17
17
|
* it only adds new columns with DEFAULTs and does NOT touch any
|
|
18
|
-
* pre-existing column on `bee_release` (AC-3).
|
|
19
18
|
*/
|
|
20
19
|
/**
|
|
21
20
|
* Re-apply the loop_release table migration against an already-open
|
|
@@ -22,7 +22,6 @@ export declare function toScoreRow(evaluator: string, gateAction: 'pass' | 'warn
|
|
|
22
22
|
export declare const DEFAULT_MONOTONIC_THRESHOLD = 0.05;
|
|
23
23
|
/** Compare `previous` against `current` and report monotonicity.
|
|
24
24
|
*
|
|
25
|
-
* Rules (reflected in `tests/unit/loop/monotonic-guard.test.ts`):
|
|
26
25
|
* - missing previous cycle → skip (`MONOTONIC_NO_PREVIOUS`)
|
|
27
26
|
* - evaluators not present in both cycles → skip that evaluator
|
|
28
27
|
* - score unchanged / up → ok
|
|
@@ -50,7 +50,6 @@ export function toScoreRow(evaluator, gateAction, degraded, observedAtIso = new
|
|
|
50
50
|
export const DEFAULT_MONOTONIC_THRESHOLD = 0.05;
|
|
51
51
|
/** Compare `previous` against `current` and report monotonicity.
|
|
52
52
|
*
|
|
53
|
-
* Rules (reflected in `tests/unit/loop/monotonic-guard.test.ts`):
|
|
54
53
|
* - missing previous cycle → skip (`MONOTONIC_NO_PREVIOUS`)
|
|
55
54
|
* - evaluators not present in both cycles → skip that evaluator
|
|
56
55
|
* - score unchanged / up → ok
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/** Ceiling on one CLI execution. Generous for a read, far short of "forever". */
|
|
2
|
+
export declare const DEFAULT_EXECUTION_TIMEOUT_MS = 15000;
|
|
3
|
+
/** How to start this tree's own CLI. */
|
|
4
|
+
export interface CliLaunch {
|
|
5
|
+
readonly command: string;
|
|
6
|
+
readonly argsPrefix: readonly string[];
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Resolve the platform-neutral launch shape. Uses the shared daemon-supervisor
|
|
10
|
+
* resolvers rather than a second copy of them: the entry path and the
|
|
11
|
+
* TypeScript-loader flags have to agree with every other self-spawn in this
|
|
12
|
+
* tree, and the file that owns them says so in as many words.
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolveCliLaunch(): CliLaunch;
|
|
15
|
+
export interface CliExecution {
|
|
16
|
+
/** The concrete argv that was handed to the CLI, without the launch prefix. */
|
|
17
|
+
readonly argv: readonly string[];
|
|
18
|
+
/** Exit status, or `null` when the process died on a signal or was killed. */
|
|
19
|
+
readonly exitCode: number | null;
|
|
20
|
+
readonly stdout: string;
|
|
21
|
+
readonly stderr: string;
|
|
22
|
+
/** True when the deadline fired and the child was killed. */
|
|
23
|
+
readonly timedOut: boolean;
|
|
24
|
+
/** Set ONLY when the process could not be started at all. Never set on timeout. */
|
|
25
|
+
readonly launchError?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface ExecuteOptions {
|
|
28
|
+
readonly launch?: CliLaunch;
|
|
29
|
+
readonly timeoutMs?: number;
|
|
30
|
+
readonly cwd?: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Run one argv. Always resolves: a failure is a described outcome, never a
|
|
34
|
+
* rejection, because the caller has to report it to the harness either way.
|
|
35
|
+
*/
|
|
36
|
+
export declare function executeCliArgv(argv: readonly string[], options?: ExecuteOptions): Promise<CliExecution>;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
// src/services/mcp/cli-executor.ts
|
|
2
|
+
//
|
|
3
|
+
// The one place the MCP server touches the outside world: it runs a concrete
|
|
4
|
+
// argv against the peaks CLI and hands back what happened.
|
|
5
|
+
//
|
|
6
|
+
// THREE RULES, EACH MEASURED INTO THE SHAPE BELOW.
|
|
7
|
+
//
|
|
8
|
+
// 1. NO SHELL, NO PLATFORM BRANCH (spec §8.2). The launch is
|
|
9
|
+
// `node <this tree's CLI entry>` — `process.execPath` plus the argument list
|
|
10
|
+
// that makes this Node interpret that entry. Naming the CLI as a command
|
|
11
|
+
// (`peaks`) is measurably wrong on a platform whose CLI is a batch shim:
|
|
12
|
+
// Node refuses to spawn `.cmd`/`.bat` without a shell, and with a shell the
|
|
13
|
+
// argv array stops being an argv array. `process.execPath` needs neither, so
|
|
14
|
+
// one shape serves every platform and no `if (platform)` exists.
|
|
15
|
+
//
|
|
16
|
+
// 2. THE TIMEOUT IS MANDATORY, NOT OPTIONAL. `peaks job status --watch` never
|
|
17
|
+
// returns. It is outside the read-only surface, but it proves the class: a
|
|
18
|
+
// server that waits forever on a hung child gives its caller no recovery
|
|
19
|
+
// path. A timeout therefore returns a NAMED failure, never an empty success
|
|
20
|
+
// (spec §7.2 + §9 rule 3).
|
|
21
|
+
//
|
|
22
|
+
// 3. THE CHILD GETS NO STDIN. Our stdin is the JSON-RPC transport; a child that
|
|
23
|
+
// inherited it would read our protocol stream and answer the harness itself.
|
|
24
|
+
import { spawn } from 'node:child_process';
|
|
25
|
+
import { readonlySpawnOptions } from '../readonly-surface/argv-guard.js';
|
|
26
|
+
import { cliEntryPath, interpreterArgs } from '../web/daemon-supervisor.js';
|
|
27
|
+
/** Ceiling on one CLI execution. Generous for a read, far short of "forever". */
|
|
28
|
+
export const DEFAULT_EXECUTION_TIMEOUT_MS = 15_000;
|
|
29
|
+
/**
|
|
30
|
+
* Resolve the platform-neutral launch shape. Uses the shared daemon-supervisor
|
|
31
|
+
* resolvers rather than a second copy of them: the entry path and the
|
|
32
|
+
* TypeScript-loader flags have to agree with every other self-spawn in this
|
|
33
|
+
* tree, and the file that owns them says so in as many words.
|
|
34
|
+
*/
|
|
35
|
+
export function resolveCliLaunch() {
|
|
36
|
+
return { command: process.execPath, argsPrefix: interpreterArgs(cliEntryPath()) };
|
|
37
|
+
}
|
|
38
|
+
/** The spawn + drain half: one child, one settlement, whatever happens to it. */
|
|
39
|
+
function runChild(launch, argv, cwd, timeoutMs) {
|
|
40
|
+
return new Promise((resolve) => {
|
|
41
|
+
let stdout = '';
|
|
42
|
+
let stderr = '';
|
|
43
|
+
let timedOut = false;
|
|
44
|
+
let settled = false;
|
|
45
|
+
let launchError;
|
|
46
|
+
const child = spawn(launch.command, [...launch.argsPrefix, ...argv], {
|
|
47
|
+
...readonlySpawnOptions(),
|
|
48
|
+
cwd,
|
|
49
|
+
// stdin must stay ours; stdout/stderr are read as data.
|
|
50
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
51
|
+
// Windows contract: a spawned child must not allocate a console window.
|
|
52
|
+
windowsHide: true
|
|
53
|
+
});
|
|
54
|
+
const deadline = setTimeout(() => {
|
|
55
|
+
timedOut = true;
|
|
56
|
+
child.kill();
|
|
57
|
+
}, timeoutMs);
|
|
58
|
+
const settle = (exitCode) => {
|
|
59
|
+
if (settled)
|
|
60
|
+
return;
|
|
61
|
+
settled = true;
|
|
62
|
+
clearTimeout(deadline);
|
|
63
|
+
const outcome = { argv, exitCode, stdout, stderr, timedOut };
|
|
64
|
+
resolve(launchError === undefined ? outcome : { ...outcome, launchError });
|
|
65
|
+
};
|
|
66
|
+
child.stdout.setEncoding('utf8');
|
|
67
|
+
child.stdout.on('data', (chunk) => {
|
|
68
|
+
stdout += chunk;
|
|
69
|
+
});
|
|
70
|
+
child.stderr.setEncoding('utf8');
|
|
71
|
+
child.stderr.on('data', (chunk) => {
|
|
72
|
+
stderr += chunk;
|
|
73
|
+
});
|
|
74
|
+
child.on('error', (error) => {
|
|
75
|
+
launchError = error.message;
|
|
76
|
+
});
|
|
77
|
+
// `close` (not `exit`) so both pipes are drained before we read them.
|
|
78
|
+
child.on('close', (code) => {
|
|
79
|
+
settle(code);
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Run one argv. Always resolves: a failure is a described outcome, never a
|
|
85
|
+
* rejection, because the caller has to report it to the harness either way.
|
|
86
|
+
*/
|
|
87
|
+
export async function executeCliArgv(argv, options = {}) {
|
|
88
|
+
let launch;
|
|
89
|
+
try {
|
|
90
|
+
launch = options.launch ?? resolveCliLaunch();
|
|
91
|
+
}
|
|
92
|
+
catch (error) {
|
|
93
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
94
|
+
return { argv, exitCode: null, stdout: '', stderr: '', timedOut: false, launchError: message };
|
|
95
|
+
}
|
|
96
|
+
return runChild(launch, argv, options.cwd ?? process.cwd(), options.timeoutMs ?? DEFAULT_EXECUTION_TIMEOUT_MS);
|
|
97
|
+
}
|