peaks-loop 4.1.1 → 4.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +50 -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/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-commands.js +21 -24
- package/dist/cli/commands/autonomous-swarm-commands.js +0 -1
- 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-commands.d.ts +0 -3
- package/dist/cli/commands/code-commands.js +0 -3
- 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-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-run-command.js +0 -1
- package/dist/cli/commands/code-runtime-commands.d.ts +0 -3
- package/dist/cli/commands/code-runtime-commands.js +0 -15
- 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 +0 -1
- package/dist/cli/commands/compact-command.js +0 -4
- 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.js +0 -9
- 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-commands.d.ts +0 -1
- package/dist/cli/commands/dispatch-commands.js +10 -37
- package/dist/cli/commands/dispatch-from-dag.js +0 -4
- 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-commands.d.ts +0 -1
- package/dist/cli/commands/evolution-commands.js +0 -1
- package/dist/cli/commands/feedback-commands.d.ts +0 -1
- package/dist/cli/commands/feedback-commands.js +0 -2
- 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 +0 -2
- 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-commands.js +0 -4
- 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-commands.js +0 -3
- 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-commands.d.ts +0 -1
- package/dist/cli/commands/request-commands.js +0 -10
- 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/runtime-commands.d.ts +0 -1
- package/dist/cli/commands/sc-commands.js +0 -1
- 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 +0 -3
- package/dist/cli/commands/share-commands.js +0 -13
- package/dist/cli/commands/skill-search-commands.d.ts +0 -2
- package/dist/cli/commands/slice-commands.js +0 -2
- package/dist/cli/commands/slice-integrate-commands.js +0 -1
- 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.js +0 -14
- 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/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-command.d.ts +0 -6
- package/dist/cli/commands/workspace/init-command.js +0 -17
- 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.js +0 -1
- package/dist/cli/program.js +0 -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/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/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 +0 -5
- package/dist/services/ide/adapters/claude-code-adapter.js +0 -11
- 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-types.d.ts +0 -12
- 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/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/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/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 +0 -3
- package/dist/services/skills/hooks-codegate-superpowers.js +0 -14
- package/dist/services/skills/hooks-settings-service.d.ts +0 -2
- package/dist/services/skills/hooks-settings-service.js +0 -6
- 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 +12 -10
- 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.mjs +175 -383
- package/skills/peaks-audit/SKILL.md +3 -3
- package/dist/services/codegraph/codegraph-include-reconciler.d.ts +0 -10
- package/dist/services/codegraph/codegraph-include-reconciler.js +0 -160
|
@@ -9,10 +9,8 @@ export interface Heartbeat {
|
|
|
9
9
|
export type HeartbeatStatus = 'queued' | 'running' | 'finalizing' | 'done' | 'failed' | 'stale' | 'cancelled' | 'no-execution' | 'never-started' | 'unreadable';
|
|
10
10
|
export type DispatchRecordStatus = 'queued' | 'running' | 'finalizing' | 'done' | 'failed' | 'cancelled' | 'no-execution' | 'stale' | 'never-started' | 'unreadable';
|
|
11
11
|
export type DispatchOutcome = 'success' | 'failed' | 'timeout' | 'cancelled' | 'no-execution';
|
|
12
|
-
/** G2+G5+G6 dispatch record schema (AC-26 + AC-34). */
|
|
13
12
|
export interface DispatchRecord {
|
|
14
13
|
/**
|
|
15
|
-
* Slice 2026-07-29-worktree-l2-extended Part 4.C: schema v3 makes
|
|
16
14
|
* `leaseId` a structurally required field (was `leaseId?: string | null`
|
|
17
15
|
* in v2). The v3 upgrade is a "fill in" migration: every dispatch
|
|
18
16
|
* writer knows its lease id at construction time (Part 2.C's
|
|
@@ -23,7 +21,6 @@ export interface DispatchRecord {
|
|
|
23
21
|
* moves the optional off the type and adds the field to the
|
|
24
22
|
* 4 literal sites in one pass.
|
|
25
23
|
*
|
|
26
|
-
* Slice 2026-07-29-worktree-l2-extended Part 7: schema v3.1 adds
|
|
27
24
|
* `isolationStartedAt: string | null` for the L4 isolation
|
|
28
25
|
* bridge (Part 8 container POC). It's the ISO timestamp of
|
|
29
26
|
* when the isolation mode was set up (e.g. when the worktree
|
|
@@ -51,15 +48,12 @@ export interface DispatchRecord {
|
|
|
51
48
|
readonly sessionId: string;
|
|
52
49
|
readonly prompt: string;
|
|
53
50
|
readonly toolCall: SubAgentToolCall;
|
|
54
|
-
/** G5 batch id (AC-27) — uuid-like opaque token grouping one batch. */
|
|
55
51
|
readonly batchId: string;
|
|
56
|
-
/** G6 fields (AC-34) — backward compat: defaults on read. */
|
|
57
52
|
readonly heartbeats: readonly Heartbeat[];
|
|
58
53
|
readonly lastBeatAt: string | null;
|
|
59
54
|
readonly status: DispatchRecordStatus;
|
|
60
55
|
readonly stage: string | null;
|
|
61
56
|
/**
|
|
62
|
-
* Slice 2026-07-29-worktree-l2-extended Part 3.A + Part 4.C: the
|
|
63
57
|
* worktree lease id stamped on this dispatch (via `peaks sub-agent
|
|
64
58
|
* dispatch --isolation worktree`). The release hook (see
|
|
65
59
|
* markCompleted + `peaks sub-agent heartbeat --status done`)
|
|
@@ -76,7 +70,6 @@ export interface DispatchRecord {
|
|
|
76
70
|
*/
|
|
77
71
|
readonly leaseId: string | null;
|
|
78
72
|
/**
|
|
79
|
-
* Slice 2026-07-29-worktree-l2-extended Part 7: ISO timestamp of
|
|
80
73
|
* when the isolation mode was set up. For `--isolation worktree`
|
|
81
74
|
* this is the moment `peaks worktree spawn` returned; for
|
|
82
75
|
* `--isolation container` (Part 8) it's when the container
|
|
@@ -87,7 +80,6 @@ export interface DispatchRecord {
|
|
|
87
80
|
*/
|
|
88
81
|
readonly isolationStartedAt: string | null;
|
|
89
82
|
/**
|
|
90
|
-
* Slice 2026-08-01-subagent-merge-and-e2e (Task 7): v3.2 schema
|
|
91
83
|
* bump. One entry per pid the parent best-effort-killed during
|
|
92
84
|
* the service-shutdown phase of the merge-back pipeline (see
|
|
93
85
|
* src/services/dispatch/service-shutdown.ts). Empty array when
|
|
@@ -107,7 +99,6 @@ export interface DispatchRecord {
|
|
|
107
99
|
readonly reason?: string;
|
|
108
100
|
}>;
|
|
109
101
|
/**
|
|
110
|
-
* Slice 2026-08-01-subagent-merge-and-e2e (Task 7): v3.2 schema
|
|
111
102
|
* bump. Counts how many merge attempts the parent session has
|
|
112
103
|
* made against this dispatch's branch. The conflict-replay
|
|
113
104
|
* orchestrator bumps this on each retry (bounded to ONE re-dispatch
|
|
@@ -198,7 +189,6 @@ export type LifecycleInput = {
|
|
|
198
189
|
artifactPaths?: readonly string[];
|
|
199
190
|
now?: () => Date;
|
|
200
191
|
/**
|
|
201
|
-
* Slice 2026-06-23-audit-4th #A4: trusted project root. Required
|
|
202
192
|
* so the active-dispatches index can be updated without deriving
|
|
203
193
|
* the root from the recordPath (the same anti-pattern that
|
|
204
194
|
* audit-3rd #1 fixed for heartbeat). The CLI / LLM-side runner
|
|
@@ -10,13 +10,11 @@ export function parseUpgradeRecordLegacyFields(obj) {
|
|
|
10
10
|
const requestId = stringField(obj, 'requestId');
|
|
11
11
|
const sessionId = stringField(obj, 'sessionId');
|
|
12
12
|
const prompt = stringField(obj, 'prompt');
|
|
13
|
-
// Slice 2026-06-23-audit-4th #C2: preserve toolCallVersion on read.
|
|
14
13
|
const toolCall = parseLegacyToolCallField(obj);
|
|
15
14
|
const createdAt = stringField(obj, 'createdAt');
|
|
16
15
|
return { role, requestId, sessionId, prompt, toolCall, createdAt };
|
|
17
16
|
}
|
|
18
17
|
/**
|
|
19
|
-
* Slice 2026-06-23-audit-4th #C2 — pre-versioning records default to
|
|
20
18
|
* '2.0.0' (the pre-#C2 implicit shape; matches the version stamped by
|
|
21
19
|
* every current dispatcher). Throws exactly where the inline block threw.
|
|
22
20
|
*/
|
|
@@ -40,7 +38,6 @@ function parseLegacyToolCallField(obj) {
|
|
|
40
38
|
function parseLegacyStateFields(obj) {
|
|
41
39
|
const heartbeats = Array.isArray(obj.heartbeats) ? obj.heartbeats.filter(isValidHeartbeat) : [];
|
|
42
40
|
const lastBeatAt = typeof obj.lastBeatAt === 'string' ? obj.lastBeatAt : null;
|
|
43
|
-
// Slice 2026-07-29-dispatch-stall-governance / S1 (UQ-1) — `no-execution`
|
|
44
41
|
// keeps its natural "dispatched, never executed" reading; an unparseable
|
|
45
42
|
// status field now resolves to a *distinct* `unreadable` label so the
|
|
46
43
|
// caller can tell "corrupt record" apart from "record written, no first
|
|
@@ -104,17 +101,14 @@ export function parseUpgradeRecordMigrationFields(obj) {
|
|
|
104
101
|
};
|
|
105
102
|
}
|
|
106
103
|
/**
|
|
107
|
-
* Slice 2026-07-29-dispatch-stall-governance / S5 (AC-5.1 / PB-2)
|
|
108
104
|
* — legacy records (pre-slice) had no `stage` field. The reader
|
|
109
105
|
* defaults to `null` so the watch surface can tell "no stage ever
|
|
110
106
|
* emitted" apart from "stage: ''" (which is itself a *valid*
|
|
111
107
|
* round-trip through the writer — an empty stage is rejected by
|
|
112
108
|
* `setStage`, but a record that round-tripped through a non-strict
|
|
113
109
|
* tool would land here).
|
|
114
|
-
* Slice 2026-07-29-worktree-l2-extended Part 3.A: legacy records
|
|
115
110
|
* have no `leaseId`; default to `null` so the auto-release hook
|
|
116
111
|
* in `markCompleted` is a clean no-op for them.
|
|
117
|
-
* Slice 2026-07-29-worktree-l2-extended Part 7: v3 → v3.1
|
|
118
112
|
* migration. Legacy records have no `isolationStartedAt`; default
|
|
119
113
|
* to `null`. v3.1 readers can treat the field as opt-in.
|
|
120
114
|
*/
|
|
@@ -128,7 +122,6 @@ function parseStallGovernanceFields(obj) {
|
|
|
128
122
|
};
|
|
129
123
|
}
|
|
130
124
|
/**
|
|
131
|
-
* Slice 2026-08-01-subagent-merge-and-e2e (Task 7): v3.1 → v3.2
|
|
132
125
|
* migration. Legacy v3.1 records have no `serviceKill` or
|
|
133
126
|
* `mergeBackAttempts` fields. Default to [] and 0 so the
|
|
134
127
|
* merge-back-runner (Task 9) can read either schema on disk.
|
|
@@ -23,7 +23,6 @@ function isHeartbeatStatus(v) {
|
|
|
23
23
|
v === 'done' ||
|
|
24
24
|
v === 'failed' ||
|
|
25
25
|
v === 'stale' ||
|
|
26
|
-
// Slice 2026-07-29-dispatch-stall-governance / S2 — accept the
|
|
27
26
|
// S1 terminal members so a sub-agent can report `cancelled`,
|
|
28
27
|
// `no-execution`, `never-started`, or `unreadable` through the
|
|
29
28
|
// heartbeat CLI.
|
|
@@ -41,7 +40,6 @@ export function isDispatchStatus(v) {
|
|
|
41
40
|
v === 'cancelled' ||
|
|
42
41
|
v === 'no-execution' ||
|
|
43
42
|
v === 'stale' ||
|
|
44
|
-
// Slice 2026-07-29-dispatch-stall-governance / S1 — accept the two
|
|
45
43
|
// new terminal members from the startup-timeout service.
|
|
46
44
|
v === 'never-started' ||
|
|
47
45
|
v === 'unreadable');
|
|
@@ -21,17 +21,14 @@ export interface ActiveDispatchEntry {
|
|
|
21
21
|
readonly status: 'queued' | 'running' | 'finalizing' | 'done' | 'failed' | 'cancelled' | 'stale' | 'no-execution' | 'never-started' | 'unreadable';
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
|
-
* Slice 2026-06-23-audit-4th #A4: read the active-dispatches index
|
|
25
24
|
* for a session. Returns the current map<recordPath, entry>. Used
|
|
26
25
|
* by the LLM-side runner to discover in-flight records on restart.
|
|
27
26
|
* Returns an empty map when the index file is missing or corrupt
|
|
28
27
|
* (the on-disk records directory is the next fallback).
|
|
29
28
|
*/
|
|
30
29
|
export declare function readActiveDispatchIndex(projectRoot: string, sessionId: string): Record<string, ActiveDispatchEntry>;
|
|
31
|
-
/** Slice 2026-06-23-audit-4th #A3: default TTL for dispatch records. */
|
|
32
30
|
export declare const DISPATCH_RECORD_TTL_DAYS = 30;
|
|
33
31
|
/**
|
|
34
|
-
* Slice 2026-06-23-audit-4th #A3: is this dispatch record an orphan
|
|
35
32
|
* (older than DISPATCH_RECORD_TTL_DAYS or already GC'd)? Mirrors
|
|
36
33
|
* `isOrphanChannel` in shared-channel.ts so a future
|
|
37
34
|
* `peaks sub-agent cleanup` umbrella can run all three sweeps
|
|
@@ -55,7 +52,6 @@ export declare function applyTruncation(entries: readonly Heartbeat[]): {
|
|
|
55
52
|
truncated: boolean;
|
|
56
53
|
};
|
|
57
54
|
/**
|
|
58
|
-
* Slice 2026-07-29-worktree-l2-extended Part 3.A: fire-and-forget
|
|
59
55
|
* auto-release for the lease owned by a dispatch. Called from
|
|
60
56
|
* `markCompleted` (terminal status) and from the heartbeat CLI
|
|
61
57
|
* (`--status done`).
|
|
@@ -91,7 +87,6 @@ export declare function markDisposed(recordPath: string, now?: () => Date): {
|
|
|
91
87
|
record: DispatchRecord;
|
|
92
88
|
};
|
|
93
89
|
/**
|
|
94
|
-
* Slice 2026-07-29-dispatch-stall-governance / S5 (AC-5.1) — promote
|
|
95
90
|
* the record's `stage` field. Rejects unknown values with
|
|
96
91
|
* `INVALID_STAGE`; the LLM-side runner surfaces the error so the
|
|
97
92
|
* sub-agent can pick from the bounded enum in ./stage-enum.ts.
|
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Dispatch record writer — slice 2026-06-07-sub-agent-dispatch-decouple (G2 + G5 + G6).
|
|
3
2
|
*
|
|
4
3
|
* Owns the on-disk format of `.peaks/_sub_agents/<sid>/dispatch-<rid>-<ts>.json`:
|
|
5
4
|
* - G2: atomic write helper (mkdirSync recursive + tmp + rename) and
|
|
6
5
|
* R-2 guard (path must live under `.peaks/_sub_agents/<sid>/`).
|
|
7
6
|
* - G5: lifecycle schema (`createdAt` / `completedAt` / `outcome` /
|
|
8
|
-
* `artifactPaths` / `disposed` / `disposedAt`) per AC-26 + RL-6..RL-9.
|
|
9
|
-
* - G6: heartbeat schema upgrade per AC-33/AC-34 — `heartbeats[]` +
|
|
10
7
|
* `lastBeatAt` + `status` aggregate. Read-side backward compat
|
|
11
8
|
* supplies defaults for old records missing the G6 fields.
|
|
12
9
|
*
|
|
@@ -47,7 +44,6 @@ export function writeInitialDispatchRecord(input) {
|
|
|
47
44
|
const safePath = assertSafeDispatchRecordPath(path, projectRoot);
|
|
48
45
|
const record = buildInitialDispatchRecord(input, now);
|
|
49
46
|
writeAtomic(safePath, record);
|
|
50
|
-
// Slice 2026-06-23-audit-4th #A4: register the path in the
|
|
51
47
|
// session's active-dispatches index so a future restart can
|
|
52
48
|
// discover in-flight records without scanning the directory.
|
|
53
49
|
// The index is best-effort (no lock): the on-disk record is the
|
|
@@ -85,7 +81,6 @@ function buildInitialDispatchRecord(input, now) {
|
|
|
85
81
|
requestId,
|
|
86
82
|
sessionId,
|
|
87
83
|
prompt,
|
|
88
|
-
// Slice 2026-06-23-audit-4th #C2: propagate toolCallVersion.
|
|
89
84
|
// The dispatcher's buildToolCall already stamps it (claude-code 2.0.0
|
|
90
85
|
// etc.); we re-default to '2.0.0' if absent so the on-disk record
|
|
91
86
|
// is self-describing without reading the dispatcher source.
|
|
@@ -94,11 +89,9 @@ function buildInitialDispatchRecord(input, now) {
|
|
|
94
89
|
heartbeats: [],
|
|
95
90
|
lastBeatAt: null,
|
|
96
91
|
status: 'queued',
|
|
97
|
-
// Slice 2026-07-29-dispatch-stall-governance / S5 (AC-5.1) — new
|
|
98
92
|
// records start with `stage: null`; the sub-agent promotes it
|
|
99
93
|
// through `setStage` / the heartbeat CLI's `--stage` flag.
|
|
100
94
|
stage: null,
|
|
101
|
-
// Slice 2026-07-29-worktree-l2-extended Part 3.A: when the
|
|
102
95
|
// dispatch was issued with --isolation worktree, persist the
|
|
103
96
|
// lease id so the finalize-time release hook in markCompleted
|
|
104
97
|
// can fire. Validation is the same 16-hex regex the gate uses
|
|
@@ -108,7 +101,6 @@ function buildInitialDispatchRecord(input, now) {
|
|
|
108
101
|
leaseId: typeof input.leaseId === 'string' && /^[a-f0-9]{16}$/.test(input.leaseId)
|
|
109
102
|
? input.leaseId
|
|
110
103
|
: null,
|
|
111
|
-
// Slice 2026-07-29-worktree-l2-extended Part 7: v3.1 field.
|
|
112
104
|
// ISO timestamp when the isolation mode was set up. Default
|
|
113
105
|
// null when the dispatch did not request isolation. We do
|
|
114
106
|
// NOT validate the format — the writer is the source of
|
|
@@ -117,7 +109,6 @@ function buildInitialDispatchRecord(input, now) {
|
|
|
117
109
|
isolationStartedAt: typeof input.isolationStartedAt === 'string' && input.isolationStartedAt.length > 0
|
|
118
110
|
? input.isolationStartedAt
|
|
119
111
|
: null,
|
|
120
|
-
// Slice 2026-08-01-subagent-merge-and-e2e (Task 7): v3.2 fields.
|
|
121
112
|
// New records start with empty serviceKill and zero attempts;
|
|
122
113
|
// the merge-back-runner (Task 9) populates them in place.
|
|
123
114
|
serviceKill: [],
|
|
@@ -218,7 +209,6 @@ function unregisterActiveDispatch(input) {
|
|
|
218
209
|
}
|
|
219
210
|
if (input.recordPath in index) {
|
|
220
211
|
index[input.recordPath] = { ...index[input.recordPath], status: input.status };
|
|
221
|
-
// Slice 2026-07-29-dispatch-stall-governance / S1 — `never-started`
|
|
222
212
|
// and `unreadable` are terminal (the startup-timeout service writes
|
|
223
213
|
// them as terminal markers). Unregister on the full terminal set.
|
|
224
214
|
if (input.status === 'done' ||
|
|
@@ -235,7 +225,6 @@ function unregisterActiveDispatch(input) {
|
|
|
235
225
|
}
|
|
236
226
|
}
|
|
237
227
|
/**
|
|
238
|
-
* Slice 2026-06-23-audit-4th #A4: read the active-dispatches index
|
|
239
228
|
* for a session. Returns the current map<recordPath, entry>. Used
|
|
240
229
|
* by the LLM-side runner to discover in-flight records on restart.
|
|
241
230
|
* Returns an empty map when the index file is missing or corrupt
|
|
@@ -262,10 +251,8 @@ export function readActiveDispatchIndex(projectRoot, sessionId) {
|
|
|
262
251
|
return {};
|
|
263
252
|
}
|
|
264
253
|
}
|
|
265
|
-
/** Slice 2026-06-23-audit-4th #A3: default TTL for dispatch records. */
|
|
266
254
|
export const DISPATCH_RECORD_TTL_DAYS = 30;
|
|
267
255
|
/**
|
|
268
|
-
* Slice 2026-06-23-audit-4th #A3: is this dispatch record an orphan
|
|
269
256
|
* (older than DISPATCH_RECORD_TTL_DAYS or already GC'd)? Mirrors
|
|
270
257
|
* `isOrphanChannel` in shared-channel.ts so a future
|
|
271
258
|
* `peaks sub-agent cleanup` umbrella can run all three sweeps
|
|
@@ -308,7 +295,6 @@ export function appendHeartbeat(input) {
|
|
|
308
295
|
lastBeatAt: entry.at,
|
|
309
296
|
status: mapStatusToAggregate(status, existing.status)
|
|
310
297
|
};
|
|
311
|
-
// Slice 2026-06-23-audit-3rd #3: wrap the read-then-write in a file
|
|
312
298
|
// lock. Without the lock, a heartbeat arriving 100ms before
|
|
313
299
|
// markCompleted can be silently discarded — the parent's view of the
|
|
314
300
|
// sub-agent shows "completed" but the last progress update is lost.
|
|
@@ -349,7 +335,6 @@ function mapStatusToAggregate(latest, current) {
|
|
|
349
335
|
return latest;
|
|
350
336
|
}
|
|
351
337
|
/**
|
|
352
|
-
* Slice 2026-07-29-worktree-l2-extended Part 3.A: fire-and-forget
|
|
353
338
|
* auto-release for the lease owned by a dispatch. Called from
|
|
354
339
|
* `markCompleted` (terminal status) and from the heartbeat CLI
|
|
355
340
|
* (`--status done`).
|
|
@@ -439,7 +424,6 @@ async function spawnLeaseReleaseChild(args) {
|
|
|
439
424
|
child.unref();
|
|
440
425
|
}
|
|
441
426
|
catch (e) {
|
|
442
|
-
// Slice 2026-07-29-worktree-l2-extended Part 4.A: surface
|
|
443
427
|
// auto-release failures to the observability stream so the
|
|
444
428
|
// dashboard can alert. The spawn-attempt itself threw (not
|
|
445
429
|
// a child-process exit-code failure — those are not
|
|
@@ -471,7 +455,6 @@ async function spawnLeaseReleaseChild(args) {
|
|
|
471
455
|
}
|
|
472
456
|
/** Mark a record as completed (success / failed / cancelled / no-execution). */
|
|
473
457
|
export function markCompleted(input) {
|
|
474
|
-
// Slice 2026-06-23-audit-3rd #3: lock + re-read so a concurrent
|
|
475
458
|
// heartbeat arriving just before markCompleted is preserved in the
|
|
476
459
|
// final record.
|
|
477
460
|
const result = withFileLockSync(input.recordPath, () => {
|
|
@@ -502,7 +485,6 @@ export function markCompleted(input) {
|
|
|
502
485
|
result.record.graphRef !== null) {
|
|
503
486
|
scheduleGraphEnvelopeTransition(input, result.record);
|
|
504
487
|
}
|
|
505
|
-
// Slice 2026-06-23-audit-4th #A4: update the active-dispatches
|
|
506
488
|
// index. Best-effort (the on-disk record is the source of truth);
|
|
507
489
|
// we only attempt the update when the trusted projectRoot is
|
|
508
490
|
// available so a malicious recordPath cannot redirect the index
|
|
@@ -521,7 +503,6 @@ export function markCompleted(input) {
|
|
|
521
503
|
/* best-effort */
|
|
522
504
|
}
|
|
523
505
|
}
|
|
524
|
-
// Slice 2026-07-29-worktree-l2-extended Part 3.A: finalize-time
|
|
525
506
|
// lease release. The terminal status (done/failed/cancelled/
|
|
526
507
|
// no-execution) means the sub-agent is no longer using the
|
|
527
508
|
// worktree; auto-release closes the loop. The release is detached
|
|
@@ -625,7 +606,6 @@ export function markDisposed(recordPath, now = () => new Date()) {
|
|
|
625
606
|
});
|
|
626
607
|
}
|
|
627
608
|
/**
|
|
628
|
-
* Slice 2026-07-29-dispatch-stall-governance / S5 (AC-5.1) — promote
|
|
629
609
|
* the record's `stage` field. Rejects unknown values with
|
|
630
610
|
* `INVALID_STAGE`; the LLM-side runner surfaces the error so the
|
|
631
611
|
* sub-agent can pick from the bounded enum in ./stage-enum.ts.
|
|
@@ -692,7 +672,6 @@ export function readRecords(paths) {
|
|
|
692
672
|
}
|
|
693
673
|
function writeAtomic(path, record) {
|
|
694
674
|
const dir = dirname(path);
|
|
695
|
-
// Slice 2026-06-23-audit-3rd #11: skip mkdirSync when the dir already
|
|
696
675
|
// exists (every heartbeat + every dispatch read-modify-write).
|
|
697
676
|
if (!existsSync(dir)) {
|
|
698
677
|
mkdirSync(dir, { recursive: true });
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* F5 follow-up (sediment 2026-08-11-rid-001-redo-fake-green-recovery-closure
|
|
3
2
|
* §Lesson 1): synchronous anti-fake-green file-existence gate. Runs
|
|
4
3
|
* `git ls-files <glob>` against `projectRoot` and returns the matching
|
|
5
4
|
* tracked file paths (relative to projectRoot). Empty array when no
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* F5 follow-up (sediment 2026-08-11-rid-001-redo-fake-green-recovery-closure
|
|
3
2
|
* §Lesson 1): synchronous anti-fake-green file-existence gate. Runs
|
|
4
3
|
* `git ls-files <glob>` against `projectRoot` and returns the matching
|
|
5
4
|
* tracked file paths (relative to projectRoot). Empty array when no
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* e2e-fixtures — pure reader for `qa/e2e/<slice>/<scenario>/*.md`.
|
|
3
3
|
*
|
|
4
|
-
* Slice 2026-08-01-subagent-merge-and-e2e (Task 4). The parent session
|
|
5
4
|
* calls `peaks e2e verify --slice <rid>` after the merge-back step. The
|
|
6
5
|
* CLI delegates to `runE2EVerify` (Task 10), which uses this reader to
|
|
7
6
|
* enumerate the fixtures for the slice. The reader returns one of
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Part 2.C (slice 2026-07-29-worktree-l2-extended) — spawn a worktree
|
|
3
2
|
* lease by shelling out to `peaks worktree spawn` (avoid re-implementing
|
|
4
3
|
* the lease-write + git-worktree-add sequence in this file). The CLI
|
|
5
4
|
* does the lease write, the git worktree add, AND the error handling;
|
|
@@ -23,7 +22,6 @@ export declare function spawnWorktreeLease(args: {
|
|
|
23
22
|
expiresAt: number;
|
|
24
23
|
}>;
|
|
25
24
|
/**
|
|
26
|
-
* Slice 2026-07-29-worktree-l2-extended Part 12: container
|
|
27
25
|
* isolation bridge. Shells out to `peaks container spawn` to
|
|
28
26
|
* run `docker run` + write the container lease. Returns the
|
|
29
27
|
* leaseId the dispatch record needs to persist. The shape is
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { spawn as childProcessSpawn } from 'node:child_process';
|
|
2
2
|
/**
|
|
3
|
-
* Part 2.C (slice 2026-07-29-worktree-l2-extended) — spawn a worktree
|
|
4
3
|
* lease by shelling out to `peaks worktree spawn` (avoid re-implementing
|
|
5
4
|
* the lease-write + git-worktree-add sequence in this file). The CLI
|
|
6
5
|
* does the lease write, the git worktree add, AND the error handling;
|
|
@@ -85,7 +84,6 @@ export function spawnWorktreeLease(args) {
|
|
|
85
84
|
});
|
|
86
85
|
}
|
|
87
86
|
/**
|
|
88
|
-
* Slice 2026-07-29-worktree-l2-extended Part 12: container
|
|
89
87
|
* isolation bridge. Shells out to `peaks container spawn` to
|
|
90
88
|
* run `docker run` + write the container lease. Returns the
|
|
91
89
|
* leaseId the dispatch record needs to persist. The shape is
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* service-shutdown — best-effort kill helper for sub-agent-registered
|
|
3
3
|
* local services.
|
|
4
4
|
*
|
|
5
|
-
* Slice 2026-08-01-subagent-merge-and-e2e (Task 3). The parent session
|
|
6
5
|
* reads `.peaks/_runtime/<sid>/dispatch/<dispatchId>/service-registrations.json`
|
|
7
6
|
* (written by `peaks sub-agent shutdown register --pid <pid> --name <label>`)
|
|
8
7
|
* and calls `killRegisteredServices` BEFORE the merge-back step so a
|
|
@@ -39,7 +39,6 @@ export interface SliceNode {
|
|
|
39
39
|
*/
|
|
40
40
|
readonly complexity?: SliceComplexity;
|
|
41
41
|
/**
|
|
42
|
-
* Slice 2026-09-10-dispatch-token-and-swarm §3: files this slice is
|
|
43
42
|
* expected to touch. When EVERY node of a topological level declares
|
|
44
43
|
* `files`, `--from-dag` emits a file-overlap wave plan (`firstLevelWaves`)
|
|
45
44
|
* so the LLM can fan the level out without serializing on a shared file.
|
|
@@ -82,7 +82,6 @@ export function validateDag(dag) {
|
|
|
82
82
|
if (n.complexity !== undefined && !isSliceComplexity(n.complexity)) {
|
|
83
83
|
throw new InvalidSliceDagError(`node ${n.id} complexity must be one of ${SLICE_COMPLEXITIES.join('|')} when present`);
|
|
84
84
|
}
|
|
85
|
-
// Slice 2026-09-10 §3: optional file list. Only shape-checked when
|
|
86
85
|
// present so pre-existing DAGs stay valid.
|
|
87
86
|
if (n.files !== undefined &&
|
|
88
87
|
(!isArray(n.files) || n.files.some((f) => typeof f !== 'string' || f.length === 0))) {
|
|
@@ -205,7 +204,6 @@ export function serializeDag(dag) {
|
|
|
205
204
|
...(n.foundation !== undefined ? { foundation: n.foundation } : {}),
|
|
206
205
|
...(n.upstreamSync !== undefined ? { upstreamSync: n.upstreamSync } : {}),
|
|
207
206
|
...(n.complexity !== undefined ? { complexity: n.complexity } : {}),
|
|
208
|
-
// Slice 2026-09-10 §3: only present when declared, so the hash of a
|
|
209
207
|
// file-less DAG is unchanged.
|
|
210
208
|
...(n.files !== undefined ? { files: [...n.files] } : {})
|
|
211
209
|
}));
|
|
@@ -34,7 +34,6 @@ import { awaitBatch as awaitBatchUnified } from './await-batch.js';
|
|
|
34
34
|
* for the MVP; the real cross-process version uses heartbeat polling).
|
|
35
35
|
*/
|
|
36
36
|
export async function awaitClaudeCodeBatch(input) {
|
|
37
|
-
// Slice 2026-07-29-dispatch-stall-governance / S4 (G8) — this
|
|
38
37
|
// function is now a thin wrapper around the unified `awaitBatch`
|
|
39
38
|
// service. The back-compat envelope shape is preserved (one
|
|
40
39
|
// `SubAgentBatchResult` per record path) so the S3 characterization
|
|
@@ -42,7 +41,6 @@ export async function awaitClaudeCodeBatch(input) {
|
|
|
42
41
|
// codex / cursor wrappers below. The new typed outcome
|
|
43
42
|
// lives on the unified service; the S4 fail-fast test pins it.
|
|
44
43
|
//
|
|
45
|
-
// Slice 2026-07-30-nightshift: claude-code does NOT use a
|
|
46
44
|
// per-IDE note prefix. The 1.4 dogfood contract says the done
|
|
47
45
|
// note is `null` (raw outcome) and the failed note is the raw
|
|
48
46
|
// `outcome` string with no prefix. The 3 non-Claude IDEs
|
|
@@ -58,7 +56,6 @@ export async function awaitClaudeCodeBatch(input) {
|
|
|
58
56
|
return unified.results;
|
|
59
57
|
}
|
|
60
58
|
export async function pollDispatchRecords(input, opts) {
|
|
61
|
-
// Slice 2026-07-29-dispatch-stall-governance / S4 (G8) — this
|
|
62
59
|
// function is now a thin wrapper around the unified `awaitBatch`
|
|
63
60
|
// service. Pre-S4 it diverged from `awaitClaudeCodeBatch` in
|
|
64
61
|
// (a) the default-fallback source and (b) the `Math.max(deadline, 0)`
|
|
@@ -34,7 +34,6 @@ export interface SubAgentToolCall {
|
|
|
34
34
|
readonly name: string;
|
|
35
35
|
readonly args: Readonly<Record<string, unknown>>;
|
|
36
36
|
/**
|
|
37
|
-
* Slice 2026-06-23-audit-4th #C2: toolCall version. The IDE's
|
|
38
37
|
* arg shape can change between versions (e.g. Claude Code's
|
|
39
38
|
* `subagent_type: "general-purpose"` may become
|
|
40
39
|
* `subagent_type: "claude-code-3.5"` in a future release). The
|
|
@@ -24,7 +24,6 @@
|
|
|
24
24
|
* `peaks sub-agent dispatch <role>`, and the IDE-private tool
|
|
25
25
|
* name flows through the returned `data.toolCall` at runtime.
|
|
26
26
|
*
|
|
27
|
-
* Cross-reference: PRD #002 G1 (AC-1..AC-5); RD tech-doc-002 §2.
|
|
28
27
|
*/
|
|
29
28
|
import { existsSync, readFileSync } from 'node:fs';
|
|
30
29
|
import { awaitClaudeCodeBatch, pollDispatchRecords } from './sub-agent-batch-await.js';
|
|
@@ -48,7 +47,6 @@ export const claudeCodeSubAgentDispatcher = {
|
|
|
48
47
|
description: `${role} for rid=${requestId}`,
|
|
49
48
|
prompt
|
|
50
49
|
},
|
|
51
|
-
// Slice 2026-06-23-audit-4th #C2: stamp the IDE-arg shape
|
|
52
50
|
// version. When Claude Code changes the Task args shape (e.g.
|
|
53
51
|
// a new subagent_type value), bump this and the dispatch record
|
|
54
52
|
// propagates it so a future reader can detect a stale record.
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Slice 2026-06-24-test-tool-detection-injection.
|
|
3
2
|
*
|
|
4
3
|
* The Test Tool Detection block is prepended to every sub-agent prompt
|
|
5
4
|
* dispatched by peaks-loop (both the single-dispatch chokepoint in
|
|
@@ -27,7 +26,6 @@
|
|
|
27
26
|
* the dispatch CLI always prepends it. This is a guarantee, not a
|
|
28
27
|
* suggestion.
|
|
29
28
|
*
|
|
30
|
-
* 2026-09-10-dispatch-block-d (Option D): ONE block for EVERY role. The
|
|
31
29
|
* runner-table EXAMPLES were dropped — they were never rules, and
|
|
32
30
|
* `package.json#scripts.test` is the source of truth at run time — while
|
|
33
31
|
* the one missing real rule is stated inline: PB-5, i.e. repo-defined
|
|
@@ -46,7 +44,6 @@ export declare const TEST_TOOL_DETECTION_BLOCK = "## Test Tool Detection (mandat
|
|
|
46
44
|
*/
|
|
47
45
|
export declare function formatTestToolDetection(): string;
|
|
48
46
|
/**
|
|
49
|
-
* Slice 2026-07-29-dispatch-stall-governance / S5 (AC-4.1 / AC-4.2) —
|
|
50
47
|
* pure scope classifier. Returns a typed result so callers (the
|
|
51
48
|
* dispatch prompt template, future test-runner bridges) can decide
|
|
52
49
|
* whether the command is allowed, refused, or requires the explicit
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Slice 2026-06-24-test-tool-detection-injection.
|
|
3
2
|
*
|
|
4
3
|
* The Test Tool Detection block is prepended to every sub-agent prompt
|
|
5
4
|
* dispatched by peaks-loop (both the single-dispatch chokepoint in
|
|
@@ -27,7 +26,6 @@
|
|
|
27
26
|
* the dispatch CLI always prepends it. This is a guarantee, not a
|
|
28
27
|
* suggestion.
|
|
29
28
|
*
|
|
30
|
-
* 2026-09-10-dispatch-block-d (Option D): ONE block for EVERY role. The
|
|
31
29
|
* runner-table EXAMPLES were dropped — they were never rules, and
|
|
32
30
|
* `package.json#scripts.test` is the source of truth at run time — while
|
|
33
31
|
* the one missing real rule is stated inline: PB-5, i.e. repo-defined
|
|
@@ -17,14 +17,14 @@
|
|
|
17
17
|
* `createRequire(import.meta.url)` to find the package.
|
|
18
18
|
*/
|
|
19
19
|
import { existsSync, readFileSync, statSync } from 'node:fs';
|
|
20
|
-
import { dirname, join
|
|
20
|
+
import { dirname, join } from 'node:path';
|
|
21
21
|
import { createRequire } from 'node:module';
|
|
22
22
|
import { getErrorMessage } from 'peaks-loop-shared/result';
|
|
23
23
|
import { resolveCodegraphProjectRoot } from '../../../codegraph/codegraph-service.js';
|
|
24
|
-
|
|
24
|
+
import { codegraphUpstreamLayoutFor } from '../../../codegraph/codegraph-upstream-layout.js';
|
|
25
|
+
const CODEGRAPH_EXPECTED_VERSION = '1.6.2';
|
|
25
26
|
const CODEGRAPH_PACKAGE_NAME = '@colbymchenry/codegraph';
|
|
26
27
|
function findCodegraphPackageJsonFallback(startDir) {
|
|
27
|
-
// Slice rid-CG-007 (downstream safety): yarn-pnp / pnpm-strict /
|
|
28
28
|
// sub-package consumers may not expose `@colbymchenry/codegraph` to
|
|
29
29
|
// `createRequire(import.meta.url).resolve`. The fallback walks up
|
|
30
30
|
// the directory tree from `startDir` looking for
|
|
@@ -78,9 +78,13 @@ function defaultCodegraphProbe() {
|
|
|
78
78
|
// Fall through with version='unknown'; the binary-existence
|
|
79
79
|
// check below is the load-bearing assertion.
|
|
80
80
|
}
|
|
81
|
+
// Probing, not path-joining: 1.6.x keeps the entry in the per-platform
|
|
82
|
+
// bundle's `lib/dist/`, not in the main package's own `dist/`. The shared
|
|
83
|
+
// resolver is the same one the spawn path uses, so the doctor cannot
|
|
84
|
+
// report "binary exists" at a path the spawn would not use.
|
|
81
85
|
let binaryPath;
|
|
82
86
|
try {
|
|
83
|
-
binaryPath =
|
|
87
|
+
binaryPath = codegraphUpstreamLayoutFor(packagePath).binaryPath;
|
|
84
88
|
}
|
|
85
89
|
catch {
|
|
86
90
|
binaryPath = '';
|
|
@@ -131,18 +135,22 @@ function runCheck(probe, managedPathProbe) {
|
|
|
131
135
|
const versionOk = result.version === CODEGRAPH_EXPECTED_VERSION;
|
|
132
136
|
const managedPathSuffix = renderManagedPathSuffix(managedPath);
|
|
133
137
|
if (!versionOk) {
|
|
134
|
-
//
|
|
135
|
-
//
|
|
136
|
-
//
|
|
137
|
-
// the
|
|
138
|
-
// compatible with
|
|
139
|
-
//
|
|
138
|
+
// version via yarn-pnp / pnpm-strict. Still a warning rather than an
|
|
139
|
+
// error — the pinned subcommand surface is stable, and a drift is not
|
|
140
|
+
// by itself a broken install — but the tolerance is NOT the wire
|
|
141
|
+
// compatibility the old `0.7.x` band had, where patch drift really was
|
|
142
|
+
// wire-compatible with the pin. 1.6.x is a rewrite of the runtime and
|
|
143
|
+
// of the index's on-disk schema: opening a 0.7.10-built `.codegraph/`
|
|
144
|
+
// with it migrates the database, and the migration is not reversible.
|
|
145
|
+
// So the message states the drift and the pin command and names the
|
|
146
|
+
// axis that actually moves, instead of reassuring the reader about a
|
|
147
|
+
// compatibility that does not hold across 0.7.x → 1.6.x.
|
|
140
148
|
return [
|
|
141
149
|
{
|
|
142
150
|
id: 'capability:codegraph',
|
|
143
151
|
ok: false,
|
|
144
152
|
severity: 'warning',
|
|
145
|
-
message: `@colbymchenry/codegraph version drift: expected ${CODEGRAPH_EXPECTED_VERSION}, resolved ${result.version} at ${result.packagePath} — peaks-loop uses an allow-list of subcommands
|
|
153
|
+
message: `@colbymchenry/codegraph version drift: expected ${CODEGRAPH_EXPECTED_VERSION}, resolved ${result.version} at ${result.packagePath} — peaks-loop uses an allow-list of subcommands, but the index schema is NOT stable across a major version (0.7.x and 1.6.x cannot share one .codegraph/ directory). Run \`pnpm install @colbymchenry/codegraph@${CODEGRAPH_EXPECTED_VERSION}\` to pin.${managedPathSuffix}`
|
|
146
154
|
}
|
|
147
155
|
];
|
|
148
156
|
}
|
|
@@ -181,7 +189,6 @@ function run({ options }) {
|
|
|
181
189
|
function defaultCodegraphManagedPathProbe() {
|
|
182
190
|
return detectManagedCodegraphPath(process.cwd());
|
|
183
191
|
}
|
|
184
|
-
// Slice S3b (rid-s3b-doctor-check-typing): `satisfies` instead of a
|
|
185
192
|
// `: DoctorCheckPlugin` annotation. The annotation widened this object
|
|
186
193
|
// literal to the interface's `run` return type
|
|
187
194
|
// (`readonly DoctorCheck[] | Promise<readonly DoctorCheck[]>`) — an
|
|
@@ -62,7 +62,6 @@ function elide(paths) {
|
|
|
62
62
|
}
|
|
63
63
|
/**
|
|
64
64
|
* 2026-09-17 — `projectRoot` is the doctor's resolved L3 root, NOT
|
|
65
|
-
* `process.cwd()`. It used to read `process.cwd()`, which is a different
|
|
66
65
|
* thing from the root the rest of the doctor was pointed at: a caller that
|
|
67
66
|
* injects `projectRootResolver` (e.g.
|
|
68
67
|
* `tests/unit/doctor/doctor-exit-code-warn-only.test.ts`) got every other
|
|
@@ -100,7 +99,7 @@ function renderGapMessage(includeGap, admittedTrackedCount, trackedSourceCount,
|
|
|
100
99
|
// none while none existed); the command name is a shared constant, so this
|
|
101
100
|
// message cannot drift from the CLI surface it points at.
|
|
102
101
|
function remediation() {
|
|
103
|
-
return `Run \`${CODEGRAPH_REPAIR_INDEX_COMMAND}\` to
|
|
102
|
+
return `Run \`${CODEGRAPH_REPAIR_INDEX_COMMAND}\` to drop the blocking exclude rules and rebuild the index without the stale rows.`;
|
|
104
103
|
}
|
|
105
104
|
function run({ options, resolvedL3Root }) {
|
|
106
105
|
const probe = options.codegraphIndexIntegrityProbe ?? (() => defaultProbe(resolvedL3Root));
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Checks for `.peaks/memory/` health (`L3:l3-memory-health` and siblings).
|
|
3
3
|
*
|
|
4
|
-
* Slice 2026-06-13-repair-pre-existing-test-failures: the
|
|
5
4
|
* production MemoryIndex schema (see
|
|
6
5
|
* `src/services/memory/project-memory-service.ts`) uses
|
|
7
6
|
* `version: 1` as the schema marker, NOT `schema_version`.
|
|
@@ -11,7 +10,6 @@
|
|
|
11
10
|
* When no `.peaks/memory/index.json` exists yet, the check passes
|
|
12
11
|
* (fresh project — no memories have been extracted).
|
|
13
12
|
*
|
|
14
|
-
* Slice 2026-09-09-memory-system-overhaul (D) extends the check with the
|
|
15
13
|
* drift findings the original version could not see. It used to report
|
|
16
14
|
* `ok: true` for "index.json is well-formed JSON; 100 hot + 131 warm" and
|
|
17
15
|
* never looked at coverage, orphans, or unclassified files. It now emits,
|