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
|
@@ -9,7 +9,6 @@ export function preferencesPath(projectRoot) {
|
|
|
9
9
|
export function loadPreferences(projectRoot) {
|
|
10
10
|
const filePath = preferencesPath(projectRoot);
|
|
11
11
|
if (!existsSync(filePath)) {
|
|
12
|
-
// Slice 2026-07-22-orchestrator-memory-preflight: when
|
|
13
12
|
// .peaks/preferences.json is missing, this returns a clone of
|
|
14
13
|
// DEFAULT_PREFERENCES, which now carries the `memoryPreflight`
|
|
15
14
|
// block (see preferences-types.ts). Partial overlays fall through
|
|
@@ -33,7 +32,6 @@ export function loadPreferences(projectRoot) {
|
|
|
33
32
|
raw.schema_version !== PREFERENCES_SCHEMA_VERSION) {
|
|
34
33
|
throw new Error(`PREFERENCES_SCHEMA_MISMATCH: expected schema_version=${PREFERENCES_SCHEMA_VERSION} in ${filePath}, got ${raw?.schema_version}`);
|
|
35
34
|
}
|
|
36
|
-
// Slice 2026-06-24-audit-5th-p2: fail fast on any fanout mode value
|
|
37
35
|
// outside the closed set `['fan-out']`. The previous 'serial' opt-out
|
|
38
36
|
// was removed by user direction — a saved `defaultMode = 'serial'`
|
|
39
37
|
// (or a hand-edited unknown value) now throws at load rather than
|
|
@@ -58,7 +56,6 @@ export function savePreferences(projectRoot, overrides) {
|
|
|
58
56
|
const filePath = preferencesPath(projectRoot);
|
|
59
57
|
const current = loadPreferences(projectRoot);
|
|
60
58
|
const merged = mergePreferences(current, overrides);
|
|
61
|
-
// Slice 2026-06-23-audit-4th #A2: use tmp + rename so a crash
|
|
62
59
|
// mid-write cannot leave a zero-byte or half-written preferences
|
|
63
60
|
// file. Before the fix, a power-cut or OOM-kill between
|
|
64
61
|
// writeFileSync's open and the final byte would leave
|
|
@@ -86,7 +83,6 @@ function mergePreferences(base, overrides) {
|
|
|
86
83
|
// Shallow merge at the top level, BUT merge the `fanout` object
|
|
87
84
|
// deeply so a partial override like `{"fanout": {"perTouchpoint": {...}}}`
|
|
88
85
|
// does not silently drop `defaultMode`. Slice
|
|
89
|
-
// 2026-06-23-audit-p0-cleanup: today the fanout schema is 1 level
|
|
90
86
|
// deep, so shallow merge happens to be safe — but the field is
|
|
91
87
|
// likely to grow (perTouchpoint / perRole are obvious next additions),
|
|
92
88
|
// and a future bug fix should not silently regress opt-out callers
|
|
@@ -142,7 +138,6 @@ export function migratePreferences(projectRoot, opts = {}) {
|
|
|
142
138
|
raw.fanout !== null &&
|
|
143
139
|
!Array.isArray(raw.fanout) &&
|
|
144
140
|
raw.fanout.defaultMode === 'serial') {
|
|
145
|
-
// Slice 2026-06-24-audit-5th-p2: 2.8.3-era preferences.json files
|
|
146
141
|
// that opted into serial dispatch must be migrated to fan-out on
|
|
147
142
|
// load. The user's directive ("禁止单 sub-agent") makes the serial
|
|
148
143
|
// opt-out a breaking change for any project that used it.
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
* Per spec §8.4 — per-project state lives in `.peaks/preferences.json`,
|
|
4
4
|
* NOT in `~/.peaks/config.json` (which is slim global).
|
|
5
5
|
*
|
|
6
|
-
* Spec reference: docs/superpowers/specs/2026-06-11-peaks-loop-l1-l2-l3-redesign.md §8.4
|
|
7
6
|
*/
|
|
8
7
|
export declare const PREFERENCES_SCHEMA_VERSION = "2.0.0";
|
|
9
8
|
/**
|
|
@@ -33,7 +32,6 @@ export interface ClassifyRuleOverrides {
|
|
|
33
32
|
export interface SwarmSpeculativePreferences {
|
|
34
33
|
/** Whether speculative dispatch is enabled. Default: true */
|
|
35
34
|
readonly enabled: boolean;
|
|
36
|
-
/** Max concurrent speculative sub-agents. Default: 3 (slice 2026-06-24-efficiency-4p-bundle, G3/P1.1) */
|
|
37
35
|
readonly maxConcurrent: number;
|
|
38
36
|
/** Min hit rate below which speculative auto-disables. Default: 0.5 */
|
|
39
37
|
readonly minHitRate: number;
|
|
@@ -47,7 +45,6 @@ export interface ProjectPreferences {
|
|
|
47
45
|
*/
|
|
48
46
|
readonly schema_version: typeof PREFERENCES_SCHEMA_VERSION;
|
|
49
47
|
/**
|
|
50
|
-
* Slice 2026-06-28-code-mode-bypass-fix: economyMode is a
|
|
51
48
|
* **MODEL-SELECTION** knob only — it chooses between the cheap
|
|
52
49
|
* configured provider (`getConfiguredExecutionModelId`) and the
|
|
53
50
|
* strongest planner/reviewer model (`getStrongestModelId(...)`). It does
|
|
@@ -69,7 +66,6 @@ export interface ProjectPreferences {
|
|
|
69
66
|
*/
|
|
70
67
|
readonly economyMode: boolean;
|
|
71
68
|
/**
|
|
72
|
-
* Slice 2026-06-28: swarmMode controls whether the swarm subgraph
|
|
73
69
|
* (peaks-rd/qa worker graph) is generated at all. It does NOT
|
|
74
70
|
* control fan-out. Fan-out is governed by the slice DAG + the
|
|
75
71
|
* `fanout.defaultMode` preference; swarmMode only decides the
|
|
@@ -105,7 +101,6 @@ export interface ProjectPreferences {
|
|
|
105
101
|
*/
|
|
106
102
|
readonly agentShieldEnabled: boolean;
|
|
107
103
|
/**
|
|
108
|
-
* Slice 2026-06-24-audit-5th-p2: fan-out is now a HARD constraint.
|
|
109
104
|
* The previous opt-out (`defaultMode = 'serial'`) is removed by user
|
|
110
105
|
* direction. Single-sub-agent dispatch is no longer permitted when
|
|
111
106
|
* the slice DAG has ≥ 2 leaves at the same topological level; the
|
|
@@ -119,7 +114,6 @@ export interface ProjectPreferences {
|
|
|
119
114
|
*/
|
|
120
115
|
readonly fanout: FanoutPreference;
|
|
121
116
|
/**
|
|
122
|
-
* Slice 2026-07-22-orchestrator-memory-preflight: orchestrator-side memory
|
|
123
117
|
* preflight knobs. Optional — `resolveMemoryPreflightConfig` (see
|
|
124
118
|
* src/services/context/memory-preflight-config.ts) merges over a hard-coded
|
|
125
119
|
* default block when this key is absent, so legacy preferences.json files
|
|
@@ -132,31 +126,23 @@ export interface ProjectPreferences {
|
|
|
132
126
|
/** Back-compat hot item cap; `hotItemCap` overrides it when set. */
|
|
133
127
|
readonly listCap?: number;
|
|
134
128
|
readonly contentCacheBytes?: number;
|
|
135
|
-
/** Slice 2026-09-09-memory-retrieval: hard byte cap on the block. */
|
|
136
129
|
readonly maxBytes?: number;
|
|
137
|
-
/** Slice 2026-09-09-memory-retrieval: max hot items (default 10). */
|
|
138
130
|
readonly hotItemCap?: number;
|
|
139
|
-
/** Slice 2026-09-09-memory-retrieval: max warm items (default 4; 0 disables). */
|
|
140
131
|
readonly warmItemCap?: number;
|
|
141
|
-
/** Slice 2026-09-09-memory-retrieval: min task-token hits for warm eligibility. */
|
|
142
132
|
readonly warmMinTokenHits?: number;
|
|
143
|
-
/** Slice 2026-09-09-memory-retrieval: soft selection wall-clock budget (ms). */
|
|
144
133
|
readonly selectionTimeBudgetMs?: number;
|
|
145
|
-
/** Slice 2026-09-09-memory-retrieval: inline memo bodies (default false). */
|
|
146
134
|
readonly includeBodies?: boolean;
|
|
147
135
|
};
|
|
148
136
|
}
|
|
149
137
|
export type FanoutMode = 'fan-out';
|
|
150
138
|
export declare const FANOUT_MODES: readonly FanoutMode[];
|
|
151
139
|
/**
|
|
152
|
-
* Runtime type guard for `FanoutMode`. Slice 2026-06-24-audit-5th-p2
|
|
153
140
|
* narrowed the closed set from `['fan-out','serial']` to `['fan-out']`
|
|
154
141
|
* — stale preferences.json files with `"serial"` must now fail-fast at
|
|
155
142
|
* load (see `preferences-service.ts`) instead of being silently coerced.
|
|
156
143
|
*/
|
|
157
144
|
export declare function isFanoutMode(value: unknown): value is FanoutMode;
|
|
158
145
|
export interface FanoutPreference {
|
|
159
|
-
/** Hard-coded mode. Slice 2026-06-24-audit-5th-p2 removed the serial opt-out. */
|
|
160
146
|
readonly defaultMode: FanoutMode;
|
|
161
147
|
}
|
|
162
148
|
export declare const DEFAULT_PREFERENCES: ProjectPreferences;
|
|
@@ -3,12 +3,10 @@
|
|
|
3
3
|
* Per spec §8.4 — per-project state lives in `.peaks/preferences.json`,
|
|
4
4
|
* NOT in `~/.peaks/config.json` (which is slim global).
|
|
5
5
|
*
|
|
6
|
-
* Spec reference: docs/superpowers/specs/2026-06-11-peaks-loop-l1-l2-l3-redesign.md §8.4
|
|
7
6
|
*/
|
|
8
7
|
export const PREFERENCES_SCHEMA_VERSION = '2.0.0';
|
|
9
8
|
export const FANOUT_MODES = ['fan-out'];
|
|
10
9
|
/**
|
|
11
|
-
* Runtime type guard for `FanoutMode`. Slice 2026-06-24-audit-5th-p2
|
|
12
10
|
* narrowed the closed set from `['fan-out','serial']` to `['fan-out']`
|
|
13
11
|
* — stale preferences.json files with `"serial"` must now fail-fast at
|
|
14
12
|
* load (see `preferences-service.ts`) instead of being silently coerced.
|
|
@@ -38,7 +36,6 @@ export const DEFAULT_PREFERENCES = {
|
|
|
38
36
|
fanout: {
|
|
39
37
|
defaultMode: 'fan-out'
|
|
40
38
|
},
|
|
41
|
-
// Slice 2026-07-22-orchestrator-memory-preflight: defaults aligned with
|
|
42
39
|
// memory-preflight-config.ts::DEFAULTS. Kept in sync manually because
|
|
43
40
|
// loadPreferences() returns DEFAULT_PREFERENCES verbatim when the on-disk
|
|
44
41
|
// file is absent, and partial overlays rely on memoryPreflight being
|
|
@@ -48,7 +45,6 @@ export const DEFAULT_PREFERENCES = {
|
|
|
48
45
|
maxTokens: 1200,
|
|
49
46
|
listCap: 12,
|
|
50
47
|
contentCacheBytes: 6000,
|
|
51
|
-
// Slice 2026-09-09-memory-retrieval tiered budget (see
|
|
52
48
|
// memory-preflight-config.ts::DEFAULTS).
|
|
53
49
|
maxBytes: 4800,
|
|
54
50
|
hotItemCap: 10,
|
|
@@ -31,7 +31,6 @@ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
|
31
31
|
import { dirname, join, resolve } from 'node:path';
|
|
32
32
|
import { getSessionIdCanonical } from '../session/session-manager.js';
|
|
33
33
|
import { findProjectRoot } from '../config/config-safety.js';
|
|
34
|
-
// As of slice 2026-06-06-sub-agent-spawn-bug-and-decouple, the per-session
|
|
35
34
|
// sub-agent state files live under `.peaks/_sub_agents/<sid>/`, NOT under
|
|
36
35
|
// `.peaks/_runtime/<sid>/system/`. The new path mirrors the existing `_runtime/`
|
|
37
36
|
// and `_dogfood/` convention (leading underscore = meta-classification, not
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* src/services/qa/bdd-test-style-verifier.ts
|
|
3
3
|
*
|
|
4
|
-
* rid-2026-08-05-bdd-test-style Slice B — peaks-qa verification-time
|
|
5
4
|
* BDD test-style verifier. This is the read-only, post-edit companion
|
|
6
5
|
* to the `scripts/migrate-to-bdd.mjs` AST migrator shipped in Slice A.
|
|
7
6
|
*
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* src/services/qa/bdd-test-style-verifier.ts
|
|
3
3
|
*
|
|
4
|
-
* rid-2026-08-05-bdd-test-style Slice B — peaks-qa verification-time
|
|
5
4
|
* BDD test-style verifier. This is the read-only, post-edit companion
|
|
6
5
|
* to the `scripts/migrate-to-bdd.mjs` AST migrator shipped in Slice A.
|
|
7
6
|
*
|
|
@@ -60,8 +60,6 @@ export function getQaReviewDir(projectRoot, sessionId) {
|
|
|
60
60
|
//
|
|
61
61
|
// It does NOT cover the rid axis: the request id is joined one function later,
|
|
62
62
|
// in `getQaReviewPath` below. Corrected 2026-09-14 (repair R1) — this comment
|
|
63
|
-
// previously said "one guard here covers the whole family", and the security
|
|
64
|
-
// audit of `2026-09-14-cli-id-escape-instrumentation` (F1b) measured that claim
|
|
65
63
|
// false: `qa-business-review '../../../../…/EVILQA3'` wrote a `.json` file
|
|
66
64
|
// outside the project root under `ok: true`.
|
|
67
65
|
if (isUnsafePathInput(sessionId)) {
|
package/dist/services/rd/impl.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Per spec §4.3 战术审计 (peaks-rd/战术) — impl.json writer + TACT.sig computation.
|
|
3
|
-
* Spec anchor: docs/superpowers/specs/2026-06-21-context-audit-redesign-design.md §4.3
|
|
4
3
|
* (R1-W3 consolidation; previously referenced as §4.2 which is `peaks-mut`).
|
|
5
4
|
*
|
|
6
5
|
* Hard constraints:
|
|
@@ -17,7 +17,6 @@ export type RdModelRole = 'strongest' | 'execution';
|
|
|
17
17
|
export type RdSwarmPlanRequest = {
|
|
18
18
|
skill: RdSkill;
|
|
19
19
|
/**
|
|
20
|
-
* Slice 2026-06-29-change-id-root-removal: change-id is metadata-only.
|
|
21
20
|
* It is no longer used for filesystem routing (the session-axis
|
|
22
21
|
* `getSessionDir` is the canonical authority), but it is retained
|
|
23
22
|
* on the request type for trace correlation and to avoid sweeping
|
|
@@ -32,7 +31,6 @@ export type RdSwarmPlanRequest = {
|
|
|
32
31
|
workspace?: WorkspaceConfig;
|
|
33
32
|
requiresTechApproval?: boolean;
|
|
34
33
|
executionModelId?: string;
|
|
35
|
-
/** Project root for the missing-standards diagnostic (slice 2026-06-16-peaks-rd-no-gates). */
|
|
36
34
|
projectRoot?: string;
|
|
37
35
|
/** Opt-in strict mode: hard-fail when project-local standards are missing. */
|
|
38
36
|
strictStandards?: boolean;
|
|
@@ -64,7 +62,6 @@ export type RdConflictGroup = {
|
|
|
64
62
|
export type RdPlanResult = {
|
|
65
63
|
available: true;
|
|
66
64
|
/**
|
|
67
|
-
* Slice 2026-06-29-change-id-root-removal: change-id is metadata-only.
|
|
68
65
|
* It is no longer emitted in the planner envelope at runtime, but
|
|
69
66
|
* retained on the result type for trace correlation and to avoid
|
|
70
67
|
* breaking 30+ tests that assert against it.
|
|
@@ -89,7 +86,6 @@ export type RdPlanResult = {
|
|
|
89
86
|
skipReason?: string;
|
|
90
87
|
/** Gate list (code-review / security / performance) reflecting standards availability. */
|
|
91
88
|
standardsGates?: ReadonlyArray<RdStandardGate>;
|
|
92
|
-
/** Diagnostic line emitted to stderr when standards are missing (slice 2026-06-16-peaks-rd-no-gates). */
|
|
93
89
|
standardsDiagnostic?: string;
|
|
94
90
|
/** When `--strict-standards` is on AND standards are missing, the stable error code. */
|
|
95
91
|
standardsErrorCode?: typeof import('./standards-diagnostic.js').EPEAKS_NO_STANDARDS;
|
|
@@ -118,7 +114,6 @@ export type RdPlanResult = {
|
|
|
118
114
|
skipReason?: string;
|
|
119
115
|
/** Gate list (code-review / security / performance) reflecting standards availability. */
|
|
120
116
|
standardsGates?: ReadonlyArray<RdStandardGate>;
|
|
121
|
-
/** Diagnostic line emitted to stderr when standards are missing (slice 2026-06-16-peaks-rd-no-gates). */
|
|
122
117
|
standardsDiagnostic?: string;
|
|
123
118
|
/** When `--strict-standards` is on AND standards are missing, the stable error code. */
|
|
124
119
|
standardsErrorCode?: typeof import('./standards-diagnostic.js').EPEAKS_NO_STANDARDS;
|
|
@@ -19,7 +19,6 @@ const RD_FIXED_TASK_BOUNDARY = RD_IMPLEMENTATION_BAND_START;
|
|
|
19
19
|
const RD_QUALITY_GATE_BAND_SIZE = 5;
|
|
20
20
|
const RD_TASK_ID_PAD_WIDTH = 3;
|
|
21
21
|
/**
|
|
22
|
-
* 2.0.1-bug1: the slim 2.0 `~/.peaks/config.json` no longer carries a
|
|
23
22
|
* `providers` block (legacy model config lives in
|
|
24
23
|
* `.peaks/preferences.json` per spec §10.4). `buildPlan` is a pure
|
|
25
24
|
* planner function and historically took its execution model from a
|
|
@@ -242,7 +241,6 @@ function getConcreteTargetAreas(request, artifactWorkspacePath, hasApprovedTechA
|
|
|
242
241
|
!hasPlannerArtifactWorkspace(request, artifactWorkspacePath)) {
|
|
243
242
|
return [];
|
|
244
243
|
}
|
|
245
|
-
// Slice 2026-06-29-change-id-root-removal: read path now resolves via
|
|
246
244
|
// the session-axis `getSessionDir(root, sessionId)` (the change-id
|
|
247
245
|
// identifier is reused as the session-dir name for tech-artifact
|
|
248
246
|
// reads, matching the test helper `writeApprovedTechArtifacts` and
|
|
@@ -268,7 +266,6 @@ function buildStandardsOverlay(request) {
|
|
|
268
266
|
projectRoot: request.projectRoot,
|
|
269
267
|
strict: request.strictStandards === true
|
|
270
268
|
});
|
|
271
|
-
// Slice 2026-06-16-peaks-rd-no-gates — Repair cycle 1:
|
|
272
269
|
// thread BOTH diagnostic and errorCode so strict-mode callers still
|
|
273
270
|
// surface `EPEAKS_NO_STANDARDS`. The pre-fix version early-returned
|
|
274
271
|
// on `diagnostic !== null` and dropped `errorCode` (QA#4 AC3 violation).
|
|
@@ -279,12 +276,10 @@ function buildStandardsOverlay(request) {
|
|
|
279
276
|
: withDiagnostic;
|
|
280
277
|
}
|
|
281
278
|
function buildPlan(request, standardsOverlay) {
|
|
282
|
-
// Slice 2026-06-29-change-id-root-removal: change-id is metadata-only;
|
|
283
279
|
// no structural validation gate fires here.
|
|
284
280
|
const goal = normalizeGoal(request.goal);
|
|
285
281
|
const swarmMode = request.swarmMode ?? true;
|
|
286
282
|
const executionModelId = request.executionModelId?.trim() || resolveExecutionModelId();
|
|
287
|
-
// Slice 2026-07-09 add-zcode-adapter (A.3): strongest planner/reviewer
|
|
288
283
|
// model is resolved dynamically (config.model → env-var fallback).
|
|
289
284
|
const strongestModelId = getStrongestModelId();
|
|
290
285
|
const { workerTarget, blockedReasons } = resolveWorkerTarget(request.maxWorkers);
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Slice 2026-06-24-efficiency-4p-bundle / G4 (P1.3) — karpathy-skip policy
|
|
3
2
|
* Slice v2.12.0 Group B (Tier 4) — collapse 5-way → 3-way fanout.
|
|
4
3
|
*
|
|
5
4
|
* Background — peaks-rd's "Parallel review fan-out" (SKILL.md §130) is
|
|
@@ -34,9 +33,7 @@
|
|
|
34
33
|
* reason every export below sat at zero importers until slice F2.
|
|
35
34
|
*
|
|
36
35
|
* Pinning is half-done. The two test files this block used to cite —
|
|
37
|
-
* `tests/unit/rd/karpathy-skip-on-config-docs-chore.test.ts` (the 5 → 3
|
|
38
36
|
* element pinning) and
|
|
39
|
-
* `tests/unit/rd/deprecated-reviewer-back-compat.test.ts` (the 8
|
|
40
37
|
* back-compat cases) — were both deleted in `f17aa377`. The **predicate
|
|
41
38
|
* half** was re-pinned by `tests/unit/rd/reviewer-dispatch-policy.test.ts`
|
|
42
39
|
* (`7191140f`, 6 cases: `RD_DEPRECATED_REVIEWERS` + `isDeprecatedReviewer`).
|
|
@@ -44,7 +41,6 @@
|
|
|
44
41
|
* membership, `reviewerListFor`, `karpathySlotIndex`,
|
|
45
42
|
* `shouldDispatchKarpathy` — still has no pin.
|
|
46
43
|
*
|
|
47
|
-
* Slice F2 (rid-f2-ac1-wiring) gave this module its FIRST caller in
|
|
48
44
|
* `src/cli/commands/sub-agent-shared.ts` (`deprecatedReviewerWarnings`),
|
|
49
45
|
* invoked from the dispatch chokepoint in
|
|
50
46
|
* `src/cli/commands/dispatch-commands.ts` and pinned by
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Slice 2026-06-24-efficiency-4p-bundle / G4 (P1.3) — karpathy-skip policy
|
|
3
2
|
* Slice v2.12.0 Group B (Tier 4) — collapse 5-way → 3-way fanout.
|
|
4
3
|
*
|
|
5
4
|
* Background — peaks-rd's "Parallel review fan-out" (SKILL.md §130) is
|
|
@@ -34,9 +33,7 @@
|
|
|
34
33
|
* reason every export below sat at zero importers until slice F2.
|
|
35
34
|
*
|
|
36
35
|
* Pinning is half-done. The two test files this block used to cite —
|
|
37
|
-
* `tests/unit/rd/karpathy-skip-on-config-docs-chore.test.ts` (the 5 → 3
|
|
38
36
|
* element pinning) and
|
|
39
|
-
* `tests/unit/rd/deprecated-reviewer-back-compat.test.ts` (the 8
|
|
40
37
|
* back-compat cases) — were both deleted in `f17aa377`. The **predicate
|
|
41
38
|
* half** was re-pinned by `tests/unit/rd/reviewer-dispatch-policy.test.ts`
|
|
42
39
|
* (`7191140f`, 6 cases: `RD_DEPRECATED_REVIEWERS` + `isDeprecatedReviewer`).
|
|
@@ -44,7 +41,6 @@
|
|
|
44
41
|
* membership, `reviewerListFor`, `karpathySlotIndex`,
|
|
45
42
|
* `shouldDispatchKarpathy` — still has no pin.
|
|
46
43
|
*
|
|
47
|
-
* Slice F2 (rid-f2-ac1-wiring) gave this module its FIRST caller in
|
|
48
44
|
* `src/cli/commands/sub-agent-shared.ts` (`deprecatedReviewerWarnings`),
|
|
49
45
|
* invoked from the dispatch chokepoint in
|
|
50
46
|
* `src/cli/commands/dispatch-commands.ts` and pinned by
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Per spec §4.3 战术审计 (peaks-rd/战术) — orchestrator.
|
|
3
3
|
* Runs AST gate first; only writes TACT.sig if gate passes.
|
|
4
|
-
* Spec anchor: docs/superpowers/specs/2026-06-21-context-audit-redesign-design.md §4.3
|
|
5
4
|
* (R1-W3 consolidation; previously referenced as §4.2 which is `peaks-mut`).
|
|
6
5
|
*/
|
|
7
6
|
import { dirname } from 'node:path';
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* rd-swarm-types — the pure declaration surface of the RD swarm dry-run
|
|
3
3
|
* planner (`rd-swarm-service.ts`).
|
|
4
4
|
*
|
|
5
|
-
* Slice rid-013 owns the planner behavior; this module owns only the graph
|
|
6
5
|
* shapes (wave names, task records, conflict groups, and the task-graph
|
|
7
6
|
* envelope). `rd-swarm-service.ts` imports and re-exports every name here, so
|
|
8
7
|
* importers keep resolving them from the original path.
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* rd-swarm-types — the pure declaration surface of the RD swarm dry-run
|
|
3
3
|
* planner (`rd-swarm-service.ts`).
|
|
4
4
|
*
|
|
5
|
-
* Slice rid-013 owns the planner behavior; this module owns only the graph
|
|
6
5
|
* shapes (wave names, task records, conflict groups, and the task-graph
|
|
7
6
|
* envelope). `rd-swarm-service.ts` imports and re-exports every name here, so
|
|
8
7
|
* importers keep resolving them from the original path.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { PlaceholderSpec, ReadOnlyWhitelistEntry } from './readonly-whitelist.js';
|
|
2
|
+
/** Upper bound on any single placeholder value, whatever its type. */
|
|
3
|
+
export declare const READONLY_VALUE_MAX_LENGTH = 200;
|
|
4
|
+
export type GuardRejection = {
|
|
5
|
+
readonly ok: false;
|
|
6
|
+
readonly param: string;
|
|
7
|
+
readonly code: GuardRejectionCode;
|
|
8
|
+
readonly message: string;
|
|
9
|
+
};
|
|
10
|
+
export type GuardRejectionCode = 'NOT_A_STRING' | 'EMPTY' | 'TOO_LONG' | 'FLAG_SHAPED' | 'CONTROL_CHARACTER' | 'WHITESPACE' | 'PATTERN_MISMATCH' | 'NOT_IN_ENUM' | 'NOT_AN_INTEGER' | 'OUT_OF_RANGE' | 'NOT_ABSOLUTE';
|
|
11
|
+
export type GuardResult = {
|
|
12
|
+
readonly ok: true;
|
|
13
|
+
readonly value: string;
|
|
14
|
+
} | GuardRejection;
|
|
15
|
+
/** The process options that keep the array from being re-parsed by a shell. */
|
|
16
|
+
export declare function readonlySpawnOptions(): {
|
|
17
|
+
readonly shell: false;
|
|
18
|
+
};
|
|
19
|
+
/** Validate one placeholder value against its spec. */
|
|
20
|
+
export declare function validatePlaceholderValue(param: string, spec: PlaceholderSpec, raw: unknown): GuardResult;
|
|
21
|
+
export type BuildArgvResult = {
|
|
22
|
+
readonly ok: true;
|
|
23
|
+
readonly argv: string[];
|
|
24
|
+
} | GuardRejection;
|
|
25
|
+
/**
|
|
26
|
+
* Render a whitelist entry into a concrete argv ARRAY.
|
|
27
|
+
*
|
|
28
|
+
* The output is never a string: literals and validated values are pushed as
|
|
29
|
+
* separate elements, so no value can contribute token boundaries. A parameter the
|
|
30
|
+
* entry does not declare is refused rather than appended.
|
|
31
|
+
*/
|
|
32
|
+
export declare function buildArgv(entry: ReadOnlyWhitelistEntry, values: Readonly<Record<string, string>>): BuildArgvResult;
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parameter-injection guard for the read-only surface.
|
|
3
|
+
*
|
|
4
|
+
* THE ATTACK. An argv template has placeholder slots (`request show <rid>`). If a
|
|
5
|
+
* placeholder value is pasted into a command LINE, the value `--apply` stops being
|
|
6
|
+
* a request id and becomes a flag - the semantics of the call are inverted by its
|
|
7
|
+
* own data. Two independent defences, both required (spec §8.1):
|
|
8
|
+
*
|
|
9
|
+
* 1. TYPE WHITELIST - every placeholder declares a type, and the value must
|
|
10
|
+
* satisfy it. No type admits a leading `-`, so a flag-shaped value is never a
|
|
11
|
+
* legal value of any placeholder.
|
|
12
|
+
* 2. ARRAY PASSING - `buildArgv` returns `string[]`. The caller passes the array
|
|
13
|
+
* to the process API with shell parsing disabled (`readonlySpawnOptions`), so
|
|
14
|
+
* no value is ever re-tokenized by a shell.
|
|
15
|
+
*
|
|
16
|
+
* Defence 2 alone is not enough: `spawn(..., {shell:false})` still hands `--apply`
|
|
17
|
+
* to the CLI as a real flag. Defence 1 alone is not enough: a caller that joins
|
|
18
|
+
* the array into a string reintroduces the shell. Hence both.
|
|
19
|
+
*/
|
|
20
|
+
import { isAbsolute } from 'node:path';
|
|
21
|
+
/** Fallback pattern for a `slug` placeholder that declares none. */
|
|
22
|
+
const DEFAULT_SLUG_PATTERN = '^[a-z0-9][a-z0-9-]*$';
|
|
23
|
+
/** Upper bound on any single placeholder value, whatever its type. */
|
|
24
|
+
export const READONLY_VALUE_MAX_LENGTH = 200;
|
|
25
|
+
/** The process options that keep the array from being re-parsed by a shell. */
|
|
26
|
+
export function readonlySpawnOptions() {
|
|
27
|
+
return { shell: false };
|
|
28
|
+
}
|
|
29
|
+
function reject(param, code, message) {
|
|
30
|
+
return { ok: false, param, code, message };
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Control characters, matched by Unicode category rather than by a literal range:
|
|
34
|
+
* a hand-written `\x00-\x1f` class is a lint error (`no-control-regex`) precisely
|
|
35
|
+
* because such a range in a pattern is usually a bug, and `\p{Cc}` says what is
|
|
36
|
+
* meant without spelling out code points.
|
|
37
|
+
*/
|
|
38
|
+
function hasControlCharacter(value) {
|
|
39
|
+
return /\p{Cc}/u.test(value);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* The rules that hold for EVERY type, before any type-specific rule runs. A
|
|
43
|
+
* leading `-` is refused here, so no type can carry a flag into the argv.
|
|
44
|
+
*/
|
|
45
|
+
function precheckCommon(param, raw) {
|
|
46
|
+
if (typeof raw !== 'string') {
|
|
47
|
+
return reject(param, 'NOT_A_STRING', `Parameter ${param} must be a string.`);
|
|
48
|
+
}
|
|
49
|
+
if (raw.length === 0)
|
|
50
|
+
return reject(param, 'EMPTY', `Parameter ${param} must not be empty.`);
|
|
51
|
+
if (raw.length > READONLY_VALUE_MAX_LENGTH) {
|
|
52
|
+
return reject(param, 'TOO_LONG', `Parameter ${param} exceeds ${READONLY_VALUE_MAX_LENGTH} characters.`);
|
|
53
|
+
}
|
|
54
|
+
if (raw.startsWith('-')) {
|
|
55
|
+
return reject(param, 'FLAG_SHAPED', `Parameter ${param} must not look like a flag: ${raw}`);
|
|
56
|
+
}
|
|
57
|
+
if (hasControlCharacter(raw)) {
|
|
58
|
+
return reject(param, 'CONTROL_CHARACTER', `Parameter ${param} must not contain control characters.`);
|
|
59
|
+
}
|
|
60
|
+
return { ok: true, value: raw };
|
|
61
|
+
}
|
|
62
|
+
function checkToken(param, value) {
|
|
63
|
+
if (/\s/.test(value)) {
|
|
64
|
+
return reject(param, 'WHITESPACE', `Parameter ${param} must be a single token.`);
|
|
65
|
+
}
|
|
66
|
+
return { ok: true, value };
|
|
67
|
+
}
|
|
68
|
+
function checkSlug(param, value, spec) {
|
|
69
|
+
const asToken = checkToken(param, value);
|
|
70
|
+
if (!asToken.ok)
|
|
71
|
+
return asToken;
|
|
72
|
+
const pattern = new RegExp(spec.pattern ?? DEFAULT_SLUG_PATTERN);
|
|
73
|
+
if (!pattern.test(value)) {
|
|
74
|
+
return reject(param, 'PATTERN_MISMATCH', `Parameter ${param} must match ${pattern.source}: ${value}`);
|
|
75
|
+
}
|
|
76
|
+
return { ok: true, value };
|
|
77
|
+
}
|
|
78
|
+
function checkEnum(param, value, spec) {
|
|
79
|
+
if (spec.values === undefined || !spec.values.includes(value)) {
|
|
80
|
+
return reject(param, 'NOT_IN_ENUM', `Parameter ${param} must be one of: ${(spec.values ?? []).join(', ')}`);
|
|
81
|
+
}
|
|
82
|
+
return { ok: true, value };
|
|
83
|
+
}
|
|
84
|
+
function checkInteger(param, value, spec) {
|
|
85
|
+
if (!/^[0-9]+$/.test(value)) {
|
|
86
|
+
return reject(param, 'NOT_AN_INTEGER', `Parameter ${param} must be an integer: ${value}`);
|
|
87
|
+
}
|
|
88
|
+
const parsed = Number.parseInt(value, 10);
|
|
89
|
+
const min = spec.min ?? 0;
|
|
90
|
+
const max = spec.max ?? Number.MAX_SAFE_INTEGER;
|
|
91
|
+
if (parsed < min || parsed > max) {
|
|
92
|
+
return reject(param, 'OUT_OF_RANGE', `Parameter ${param} must be between ${min} and ${max}.`);
|
|
93
|
+
}
|
|
94
|
+
return { ok: true, value };
|
|
95
|
+
}
|
|
96
|
+
function checkPath(param, value) {
|
|
97
|
+
// Spaces are legal in a path and irrelevant under array passing; the absolute
|
|
98
|
+
// check is what keeps `--apply` and a bare word out.
|
|
99
|
+
if (!isAbsolute(value)) {
|
|
100
|
+
return reject(param, 'NOT_ABSOLUTE', `Parameter ${param} must be an absolute path.`);
|
|
101
|
+
}
|
|
102
|
+
return { ok: true, value };
|
|
103
|
+
}
|
|
104
|
+
const TYPE_CHECKS = {
|
|
105
|
+
token: (param, value) => checkToken(param, value),
|
|
106
|
+
slug: (param, value, spec) => checkSlug(param, value, spec),
|
|
107
|
+
enum: (param, value, spec) => checkEnum(param, value, spec),
|
|
108
|
+
integer: (param, value, spec) => checkInteger(param, value, spec),
|
|
109
|
+
path: (param, value) => checkPath(param, value)
|
|
110
|
+
};
|
|
111
|
+
/** Validate one placeholder value against its spec. */
|
|
112
|
+
export function validatePlaceholderValue(param, spec, raw) {
|
|
113
|
+
const prechecked = precheckCommon(param, raw);
|
|
114
|
+
if (!prechecked.ok)
|
|
115
|
+
return prechecked;
|
|
116
|
+
return TYPE_CHECKS[spec.type](param, prechecked.value, spec);
|
|
117
|
+
}
|
|
118
|
+
function missingParam(param) {
|
|
119
|
+
return reject(param, 'EMPTY', `Parameter ${param} was not supplied.`);
|
|
120
|
+
}
|
|
121
|
+
/** A value is required for every placeholder present in the template. */
|
|
122
|
+
function resolveParamValue(param, declared, values) {
|
|
123
|
+
if (declared === undefined)
|
|
124
|
+
return missingParam(param);
|
|
125
|
+
const supplied = values[param];
|
|
126
|
+
// Every placeholder in this surface is required (introspected), and a missing
|
|
127
|
+
// OPTIONAL value could only be honoured by also dropping the flag literal the
|
|
128
|
+
// loop has already pushed. Refusing is the honest answer.
|
|
129
|
+
if (supplied === undefined)
|
|
130
|
+
return missingParam(param);
|
|
131
|
+
return validatePlaceholderValue(param, declared, supplied);
|
|
132
|
+
}
|
|
133
|
+
function unknownParams(entry, values) {
|
|
134
|
+
for (const name of Object.keys(values)) {
|
|
135
|
+
if (!(name in entry.params)) {
|
|
136
|
+
return reject(name, 'NOT_A_STRING', `Entry ${entry.id} declares no parameter ${name}.`);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
return undefined;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Render a whitelist entry into a concrete argv ARRAY.
|
|
143
|
+
*
|
|
144
|
+
* The output is never a string: literals and validated values are pushed as
|
|
145
|
+
* separate elements, so no value can contribute token boundaries. A parameter the
|
|
146
|
+
* entry does not declare is refused rather than appended.
|
|
147
|
+
*/
|
|
148
|
+
export function buildArgv(entry, values) {
|
|
149
|
+
const unexpected = unknownParams(entry, values);
|
|
150
|
+
if (unexpected !== undefined)
|
|
151
|
+
return unexpected;
|
|
152
|
+
const argv = [];
|
|
153
|
+
for (const segment of entry.argv) {
|
|
154
|
+
if (segment.kind === 'literal') {
|
|
155
|
+
argv.push(segment.value);
|
|
156
|
+
continue;
|
|
157
|
+
}
|
|
158
|
+
const resolved = resolveParamValue(segment.name, entry.params[segment.name], values);
|
|
159
|
+
if (!resolved.ok)
|
|
160
|
+
return resolved;
|
|
161
|
+
argv.push(resolved.value);
|
|
162
|
+
}
|
|
163
|
+
return { ok: true, argv };
|
|
164
|
+
}
|