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
|
@@ -25,7 +25,6 @@ export const VALID_SKILL_PRESENCE_MODES = [
|
|
|
25
25
|
'strict',
|
|
26
26
|
'24h'
|
|
27
27
|
];
|
|
28
|
-
// Migration note (slice 2026-09-09-mode-consolidation): `swarm` was REMOVED
|
|
29
28
|
// as a mode — parallel fan-out is now the default execution strategy in
|
|
30
29
|
// every mode. A legacy on-disk `mode: 'swarm'` is normalized on read to
|
|
31
30
|
// `'full-auto'` (never crash, never drop the presence).
|
|
@@ -105,7 +104,6 @@ function resolveProjectRoot(override) {
|
|
|
105
104
|
* to auto-resolve `--session-id` when the LLM driver forgets to
|
|
106
105
|
* pass the flag, so dispatch records land in the right
|
|
107
106
|
* `.peaks/_sub_agents/<sid>/` tree instead of an `unknown-sid`
|
|
108
|
-
* fallback (slice 2026-06-26-unknown-sid-fallback-fix).
|
|
109
107
|
*/
|
|
110
108
|
export function getCurrentSessionId(projectRootOverride) {
|
|
111
109
|
const projectRoot = resolveProjectRoot(projectRootOverride);
|
|
@@ -161,7 +159,6 @@ function readSkillPresenceFromLease(projectRootOverride) {
|
|
|
161
159
|
// not the legacy `outerSessionId` field. Project it for back-compat
|
|
162
160
|
// with `clearStalePresenceOnRotation`'s outer-mismatch check.
|
|
163
161
|
//
|
|
164
|
-
// Slice 2026-09-09-mode-consolidation: `mode` is projected too (it was
|
|
165
162
|
// silently dropped before, which made `getSkillPresence().mode` always
|
|
166
163
|
// undefined and left every `presence.mode` consumer dead). Normalize on
|
|
167
164
|
// read so a legacy `'swarm'` lease surfaces as `'full-auto'`.
|
|
@@ -206,12 +203,10 @@ function getBoundOuterSessionId(projectRootOverride) {
|
|
|
206
203
|
* are about to stamp, the user probably closed the previous outer
|
|
207
204
|
* session and is now driving peaks from a new one.
|
|
208
205
|
*
|
|
209
|
-
* As of slice 018 (auto-roll on outer-mismatch), the actual rotation
|
|
210
206
|
* is `ensureSessionWithRotation`'s job, not this one. The presence
|
|
211
207
|
* service still emits the structured `outerSessionMismatch` field on
|
|
212
208
|
* the presence envelope (useful for the statusline to render a stale
|
|
213
209
|
* marker and for the QA / log consumers to know an outer-session swap
|
|
214
|
-
* happened), but it no longer carries the implicit "ask the user"
|
|
215
210
|
* promise — `peaks-code`'s Step 0 no longer needs to surface an
|
|
216
211
|
* AskUserQuestion, because the rotation already fired by the time the
|
|
217
212
|
* skill is invoked.
|
|
@@ -232,12 +227,10 @@ function getPreviousOuterSessionId(projectRootOverride) {
|
|
|
232
227
|
return undefined;
|
|
233
228
|
}
|
|
234
229
|
// ============================================================================
|
|
235
|
-
// Slice 020 — caller-keyed active-skill marker (D6).
|
|
236
230
|
// ============================================================================
|
|
237
231
|
//
|
|
238
232
|
// Today's per-project active-skill marker (`.peaks/_runtime/active-skill.json`)
|
|
239
233
|
// races when multiple Claude Code windows (or different platforms) drive the
|
|
240
|
-
// same project concurrently. Slice 020 introduces a per-caller file at
|
|
241
234
|
// `.peaks/_runtime/<peakSid>/active-skill-<callerId>.json` (D6). Two callers
|
|
242
235
|
// bound to the same peak session never clobber each other.
|
|
243
236
|
//
|
|
@@ -311,7 +304,6 @@ export function setSkillPresence(skill, mode, gate, projectRootOverride) {
|
|
|
311
304
|
const outerSessionId = getCurrentOuterSessionId();
|
|
312
305
|
const previousOuterSessionId = getPreviousOuterSessionId(projectRootOverride);
|
|
313
306
|
const now = new Date().toISOString();
|
|
314
|
-
// v2.15.0 slice 002 repair: always write `outerSessionId` (even
|
|
315
307
|
// as `''`) when no harness env var is set. Without this, the JSON
|
|
316
308
|
// envelope omits the key entirely, which makes downstream staleness
|
|
317
309
|
// detection unreliable (consumers can't tell "no signal" from
|
|
@@ -368,7 +360,6 @@ export function setSkillPresence(skill, mode, gate, projectRootOverride) {
|
|
|
368
360
|
import('./presence-lease-service.js')
|
|
369
361
|
]);
|
|
370
362
|
const projection = resolveCallerProjection({ projectRoot, env: process.env });
|
|
371
|
-
// Slice 2026-08-06-session-cacde8-A.4: derive the legacy compat
|
|
372
363
|
// shim's workflowId from `projection.callerId` (caller-keyed,
|
|
373
364
|
// matching the 4.0.8 caller-binding direction) instead of
|
|
374
365
|
// `sessionId` (sid-keyed, pre-4.0.8). `slice(0, 189)` caps the
|
|
@@ -479,8 +470,6 @@ export function checkStalePresence(opts) {
|
|
|
479
470
|
};
|
|
480
471
|
}
|
|
481
472
|
/**
|
|
482
|
-
* Slice 002 (v2.15.0) — auto-clear stale presence on session
|
|
483
|
-
* rotation (AC-1).
|
|
484
473
|
*
|
|
485
474
|
* Called from `peaks workspace init` immediately after a successful
|
|
486
475
|
* `outer-session-mismatch` rotation. When the previous session's
|
|
@@ -488,7 +477,6 @@ export function checkStalePresence(opts) {
|
|
|
488
477
|
* clearing it prevents peaks-code Step 1 from picking up a stale
|
|
489
478
|
* `mode` field that the user never explicitly chose.
|
|
490
479
|
*
|
|
491
|
-
* Slice rid-skill-persistence-001 (2026-08-12): added an outerSessionId
|
|
492
480
|
* intent-source guard at the top of the function. The user constraint
|
|
493
481
|
* (preserved in `.peaks/memory/2026-08-11-peaks-code-skill-persistence-pause.md`)
|
|
494
482
|
* requires that "the current bee (peaks-code) can only be replaced or
|
|
@@ -525,7 +513,6 @@ export function checkStalePresence(opts) {
|
|
|
525
513
|
* decide what the "rotated-out" id was.
|
|
526
514
|
*/
|
|
527
515
|
export function clearStalePresenceOnRotation(opts) {
|
|
528
|
-
// Slice rid-skill-persistence-001 (2026-08-12): user-explicit intent
|
|
529
516
|
// guard. When the caller has no caller-binding outerSessionId
|
|
530
517
|
// (env vars unset, system-triggered rotation), refuse the mutation
|
|
531
518
|
// up-front — the recorded presence may belong to a user-explicit
|
|
@@ -42,7 +42,6 @@ export type StatusLineModel = {
|
|
|
42
42
|
compact: CompactStatuslineState;
|
|
43
43
|
activeLeaf: StatusLineActiveLeaf | null;
|
|
44
44
|
/**
|
|
45
|
-
* Slice 2026-08-05-statusline-sid-only-marker: the canonical session
|
|
46
45
|
* id resolved for the project root (`getSessionIdCanonical`), or
|
|
47
46
|
* `null` when no project root is bound or no `.peaks/_runtime/<sid>/`
|
|
48
47
|
* session is on disk. The renderer reads this to append ` [shortSid]`
|
|
@@ -56,7 +55,6 @@ export type StatusLineModel = {
|
|
|
56
55
|
*/
|
|
57
56
|
sessionId: string | null;
|
|
58
57
|
/**
|
|
59
|
-
* Slice rid-statusline-24h-overlay (2026-08-10): the 24h-mode
|
|
60
58
|
* overlay snapshot read from `.peaks/_runtime/<sid>/24h-state.json`,
|
|
61
59
|
* or `null` when no file exists / file is corrupt / file has wrong
|
|
62
60
|
* shape. The renderer reads this to append `[24h-<state>]` after
|
|
@@ -68,25 +66,21 @@ export type StatusLineModel = {
|
|
|
68
66
|
twentyFourHourState: TwentyFourHourOverlay | null;
|
|
69
67
|
};
|
|
70
68
|
/**
|
|
71
|
-
* Slice rid-statusline-24h-overlay (2026-08-10): minimal overlay
|
|
72
69
|
* type returned by `read24hOverlay`. The renderer only consumes
|
|
73
70
|
* `state` (to format `[24h-<state.toLowerCase()>]`). The canonical
|
|
74
71
|
* schema at `src/services/24h-mode/state.ts:55-66` carries additional
|
|
75
72
|
* fields (`attempts: Record<DecisionKey, number>`, `enteredAt`,
|
|
76
73
|
* `checkpoints`, etc.) but the overlay is deliberately MINIMAL —
|
|
77
74
|
* it tolerates forward compatibility with new states the writer
|
|
78
|
-
* may add, and it never throws on malformed shapes (PRD AC-3:
|
|
79
75
|
* graceful null on any invalid input).
|
|
80
76
|
*/
|
|
81
77
|
export type TwentyFourHourOverlay = {
|
|
82
78
|
state: string;
|
|
83
79
|
};
|
|
84
80
|
/**
|
|
85
|
-
* Slice rid-statusline-24h-overlay (2026-08-10): name-distinct from
|
|
86
81
|
* the canonical `read24hState` in `src/services/24h-mode/store.ts:108`.
|
|
87
82
|
* The canonical reader calls `coerceSnapshot` (which throws on
|
|
88
83
|
* malformed shapes via `24H_STATE_INVALID`); this overlay reader
|
|
89
|
-
* returns `null` for ANY malformed shape (per PRD AC-3 — never
|
|
90
84
|
* throw across the statusline boundary).
|
|
91
85
|
*
|
|
92
86
|
* Returns null when:
|
|
@@ -13,11 +13,9 @@ import { decideCompactStatusline } from '../compact-statusline/compact-statuslin
|
|
|
13
13
|
import { getSessionIdCanonical } from '../session/session-manager.js';
|
|
14
14
|
import { readActiveDispatchIndex } from '../dispatch/dispatch-record-writer.js';
|
|
15
15
|
/**
|
|
16
|
-
* Slice rid-statusline-24h-overlay (2026-08-10): name-distinct from
|
|
17
16
|
* the canonical `read24hState` in `src/services/24h-mode/store.ts:108`.
|
|
18
17
|
* The canonical reader calls `coerceSnapshot` (which throws on
|
|
19
18
|
* malformed shapes via `24H_STATE_INVALID`); this overlay reader
|
|
20
|
-
* returns `null` for ANY malformed shape (per PRD AC-3 — never
|
|
21
19
|
* throw across the statusline boundary).
|
|
22
20
|
*
|
|
23
21
|
* Returns null when:
|
|
@@ -44,7 +42,6 @@ export function read24hOverlay(projectRoot, sessionId) {
|
|
|
44
42
|
parsed = JSON.parse(raw);
|
|
45
43
|
}
|
|
46
44
|
catch {
|
|
47
|
-
// corrupt JSON — graceful null (PRD AC-3)
|
|
48
45
|
return null;
|
|
49
46
|
}
|
|
50
47
|
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed))
|
|
@@ -125,7 +122,7 @@ export function readActiveLeaf(projectRoot, sessionId) {
|
|
|
125
122
|
'never-started',
|
|
126
123
|
'unreadable',
|
|
127
124
|
'stale',
|
|
128
|
-
'queued'
|
|
125
|
+
'queued'
|
|
129
126
|
// not pollute statusline as in-flight leaves.
|
|
130
127
|
]);
|
|
131
128
|
const inFlight = Object.values(index).filter((e) => !terminalStatuses.has(e.status));
|
|
@@ -20,7 +20,6 @@ export interface StatusLineRenderOptions {
|
|
|
20
20
|
}
|
|
21
21
|
export declare function formatHumanAge(ageMs: number | null): string;
|
|
22
22
|
/**
|
|
23
|
-
* Slice rid-statusline-24h-overlay (2026-08-10): format the 24h-mode
|
|
24
23
|
* overlay suffix appended after the existing `<baseMode>` token in
|
|
25
24
|
* the ACTIVE state. Returns `''` when the overlay is `null` (missing
|
|
26
25
|
* file / corrupt file / wrong shape — see `read24hOverlay`).
|
|
@@ -4,13 +4,11 @@ import { computeRootSuffix as computeRootSuffixImpl } from './skill-statusline-s
|
|
|
4
4
|
// Re-export so existing test imports
|
|
5
5
|
// (`import { formatShortSid, computeRootSuffix } from '.../skill-statusline-renderer'`)
|
|
6
6
|
// keep working byte-identically after the helper extraction in slice
|
|
7
|
-
// 2026-08-05-statusline-sid-only-marker-and-multi-binary-drift-guard
|
|
8
7
|
// repair cycle.
|
|
9
8
|
export { formatShortSid } from './skill-statusline-sid-suffix.js';
|
|
10
9
|
export const computeRootSuffix = computeRootSuffixImpl;
|
|
11
10
|
import { DEFAULT_CAPABILITY, HIGHLIGHT_SGR_OPEN, brandRun, brandText, isAttentionGate, paletteFor, renderActiveDot } from './statusline-palette.js';
|
|
12
11
|
function formatAge(ageMs) {
|
|
13
|
-
// Slice rid-statusline-stale-ux AC-1: this legacy `stale <N>h/m`
|
|
14
12
|
// token is NO LONGER used by renderStale. Kept exported / defined
|
|
15
13
|
// for any downstream caller / test that still asserts against the
|
|
16
14
|
// `stale` substring. The active renderer path uses `formatHumanAge`.
|
|
@@ -22,7 +20,6 @@ function formatAge(ageMs) {
|
|
|
22
20
|
const minutes = Math.max(1, Math.round(ageMs / (60 * 1000)));
|
|
23
21
|
return `stale ${minutes}m`;
|
|
24
22
|
}
|
|
25
|
-
// Slice rid-statusline-stale-ux AC-1 + perf H2: human-friendly neutral
|
|
26
23
|
// age label for the stale branch. en-US strings per RD §5 R1 (codebase
|
|
27
24
|
// consistency); zh-CN deferred to a future i18n slice. Backed by a
|
|
28
25
|
// bounded Map cache (parity with `formatShortSid` memoization at
|
|
@@ -66,7 +63,6 @@ function rootLabel(projectRoot) {
|
|
|
66
63
|
return basename(projectRoot);
|
|
67
64
|
}
|
|
68
65
|
/**
|
|
69
|
-
* Slice rid-statusline-24h-overlay (2026-08-10): format the 24h-mode
|
|
70
66
|
* overlay suffix appended after the existing `<baseMode>` token in
|
|
71
67
|
* the ACTIVE state. Returns `''` when the overlay is `null` (missing
|
|
72
68
|
* file / corrupt file / wrong shape — see `read24hOverlay`).
|
|
@@ -88,7 +84,6 @@ export function format24hSuffix(overlay, palette, capability, noColor) {
|
|
|
88
84
|
/**
|
|
89
85
|
* `formatShortSid` + `computeRootSuffix` were extracted to
|
|
90
86
|
* `./skill-statusline-sid-suffix.ts` in the slice
|
|
91
|
-
* 2026-08-05-statusline-sid-only-marker-and-multi-binary-drift-guard
|
|
92
87
|
* repair cycle so the renderer file stays under the Karpathy
|
|
93
88
|
* 800-line cap. Both helpers are re-exported above for back-compat
|
|
94
89
|
* with existing test imports.
|
|
@@ -99,7 +94,6 @@ export function format24hSuffix(overlay, palette, capability, noColor) {
|
|
|
99
94
|
* is obvious at the call site and so each state has a single
|
|
100
95
|
* responsibility.
|
|
101
96
|
*
|
|
102
|
-
* Active-leaf rendering (slice 2026-08-04-rid-005-statusline-dual-skill):
|
|
103
97
|
* when the model carries an `activeLeaf` (an in-flight bee dispatch under
|
|
104
98
|
* the orchestrator), the line surfaces the leaf role alongside the
|
|
105
99
|
* orchestrator skill. The render priorities are:
|
|
@@ -118,7 +112,6 @@ function renderActive(presence, palette, nowMs, capability, noColor, activeLeaf,
|
|
|
118
112
|
if (!presence) {
|
|
119
113
|
return `${palette.idle} ${palette.idleLabel}`;
|
|
120
114
|
}
|
|
121
|
-
// Slice rid-statusline-24h-overlay (2026-08-10): the 24h suffix
|
|
122
115
|
// is appended on every active-return branch that carries a skill
|
|
123
116
|
// token. The `!presence` branch (idle mark, no skill token) is
|
|
124
117
|
// intentionally NOT modified — 24h overlays are active-only.
|
|
@@ -145,7 +138,6 @@ function renderActive(presence, palette, nowMs, capability, noColor, activeLeaf,
|
|
|
145
138
|
return `${dot} ${brandRun(skill, noColor, capability)}${modeToken}${suffix}`;
|
|
146
139
|
}
|
|
147
140
|
function renderStale(presence, ageMs, palette, capability, noColor) {
|
|
148
|
-
// Slice rid-statusline-stale-ux AC-1: stale presence belongs to a
|
|
149
141
|
// *previous* session (outer-session-mismatch). Line still emits the
|
|
150
142
|
// recorded skill name (per C-1 — `expect(out).toContain('peaks-code')`
|
|
151
143
|
// must keep passing), but uses `palette.idleStale` (new muted palette,
|
|
@@ -208,7 +200,6 @@ function renderCompact(state, palette) {
|
|
|
208
200
|
? `${palette.inlineSeparator}${formatRatio(state.triggerRatio)}`
|
|
209
201
|
: ''}`;
|
|
210
202
|
case 'armed': {
|
|
211
|
-
// Slice 2026-09-12-compact-band-policy: NO bar. A bar is a
|
|
212
203
|
// progress claim, and a registered-but-unfired trigger has no
|
|
213
204
|
// progress to report — it is waiting for the ratio to reach the
|
|
214
205
|
// red line on its own. Say exactly that instead.
|
|
@@ -506,8 +497,6 @@ export function renderStatusLine(model, options, env) {
|
|
|
506
497
|
const palette = paletteFor(capability, noColor);
|
|
507
498
|
const root = rootLabel(model.projectRoot);
|
|
508
499
|
// short-sid suffix (slices
|
|
509
|
-
// - 2026-08-05-statusline-empty-render-and-short-sid-suffix (active only)
|
|
510
|
-
// - 2026-08-05-statusline-sid-only-marker (idle + stale also)
|
|
511
500
|
// ):
|
|
512
501
|
// the project root cell carries ` [shortSid]` after `peaks-loop` whenever
|
|
513
502
|
// a canonical session id resolves. Per-state matrix:
|
|
@@ -534,7 +523,6 @@ export function renderStatusLine(model, options, env) {
|
|
|
534
523
|
const compactSegment = renderCompact(model.compact, palette);
|
|
535
524
|
let line;
|
|
536
525
|
const hasCompact = compactSegment.length > 0;
|
|
537
|
-
// Slice 2026-09-12-compact-band-policy: `armed` is a RESTING state, not
|
|
538
526
|
// an in-flight compact. It can hold for the whole band between the
|
|
539
527
|
// auto-fire ratio and the red line, so it is appended to the normal
|
|
540
528
|
// line instead of REPLACING the skill token — hiding which skill is
|
|
@@ -21,7 +21,6 @@ export { parseStatusLineStdin, read24hOverlay } from './skill-statusline-model.j
|
|
|
21
21
|
* skill-presence-service.ts, it never deletes or rewrites the presence file:
|
|
22
22
|
* the statusLine runs on every turn and must have zero side effects.
|
|
23
23
|
*
|
|
24
|
-
* Slice 2026-08-05-statusline-sid-scoped-lease-B: the read no longer falls
|
|
25
24
|
* back to the project-level `.peaks/_runtime/active-skill.json` (or its
|
|
26
25
|
* legacy `.peaks/.active-skill.json`). The canonical lease projection is
|
|
27
26
|
* the only source. When `callerId === null` (non-IDE caller), the read
|
|
@@ -35,7 +34,6 @@ const STALE_THRESHOLD_MS = 24 * 60 * 60 * 1000;
|
|
|
35
34
|
* absent (idle) and a sentinel object for malformed content (invalid-presence).
|
|
36
35
|
*
|
|
37
36
|
* Both branches now route through the canonical sid-scoped lease projection
|
|
38
|
-
* (slice 2026-08-05-statusline-sid-scoped-lease-B):
|
|
39
37
|
* - `callerId !== null` → `resolveActiveSkillForCaller` with the canonical
|
|
40
38
|
* (non-legacy) lease projection, filtered to this callerId. When the
|
|
41
39
|
* callerId-filtered resolution returns `source: 'none'` (no lease under
|
|
@@ -43,7 +41,6 @@ const STALE_THRESHOLD_MS = 24 * 60 * 60 * 1000;
|
|
|
43
41
|
* to the session's most-recent in-flight lease. AC4 multi-tenant isolation
|
|
44
42
|
* is preserved: when callerId A DOES have a lease, the first call returns
|
|
45
43
|
* it and the fallback never fires — callerId B's lease is never surfaced
|
|
46
|
-
* to callerId A. (Slice 2026-08-05-statusline-empty-render-and-short-sid-suffix.)
|
|
47
44
|
* - `callerId === null` → enumerate `listPresenceLeases` for the
|
|
48
45
|
* canonical session and pick the most recent in-flight lease. Back-compat
|
|
49
46
|
* for non-IDE callers (e.g. legacy CLI invocations) that have no callerId.
|
|
@@ -119,7 +116,6 @@ function readPresenceReadOnly(projectRoot, callerId) {
|
|
|
119
116
|
// spreads `input.mode` when present); the typed `SkillPresenceLease` does
|
|
120
117
|
// not declare it, so widen the read shape here. Normalized on read: a
|
|
121
118
|
// legacy `'swarm'` lease renders as `'full-auto'` (slice
|
|
122
|
-
// 2026-09-09-mode-consolidation).
|
|
123
119
|
const latestMode = normalizeSkillPresenceMode(latest.mode);
|
|
124
120
|
return {
|
|
125
121
|
presence: {
|
|
@@ -137,7 +133,6 @@ export function buildStatusLineModel(stdin, nowMs) {
|
|
|
137
133
|
// and reads `.peaks/_runtime/<sid>/compact-lifecycle.json` (or its legacy
|
|
138
134
|
// fallbacks). It replaces the active skill content when kind != 'none'.
|
|
139
135
|
const compact = readCompactState(projectRoot, nowMs);
|
|
140
|
-
// Slice 2026-08-05-statusline-sid-only-marker: resolve the canonical
|
|
141
136
|
// session id once, up front, so the renderer can read it from the model
|
|
142
137
|
// without re-running `getSessionIdCanonical`. `null` when the project
|
|
143
138
|
// root is unbound OR when no `.peaks/_runtime/<sid>/` session exists.
|
|
@@ -221,7 +216,6 @@ export function buildStatusLineModel(stdin, nowMs) {
|
|
|
221
216
|
catch {
|
|
222
217
|
activeLeaf = null;
|
|
223
218
|
}
|
|
224
|
-
// Slice rid-statusline-24h-overlay (2026-08-10): read the 24h-mode
|
|
225
219
|
// overlay snapshot ONLY when state === 'active'. Stale / idle /
|
|
226
220
|
// invalid-presence / idle-via-outer-mismatch never carry the suffix
|
|
227
221
|
// (per PRD §Non-goals.6 — "不在 idle / stale / invalid-presence
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* Pure short-sid suffix helpers for the Peaks statusLine.
|
|
3
3
|
*
|
|
4
4
|
* Extracted from `skill-statusline-renderer.ts` (slice
|
|
5
|
-
* 2026-08-05-statusline-sid-only-marker-and-multi-binary-drift-guard
|
|
6
5
|
* repair cycle) to keep the renderer under the Karpathy 800-line cap.
|
|
7
6
|
* The module is I/O-free and only depends on the read-only
|
|
8
7
|
* `StatusLineModel` shape from `skill-statusline-service.ts` plus the
|
|
@@ -32,7 +31,6 @@ export interface SidSuffixPalette {
|
|
|
32
31
|
* the input is empty. Pure; safe for ASCII rendering across
|
|
33
32
|
* PowerShell, Git Bash, and zsh (AC7).
|
|
34
33
|
*
|
|
35
|
-
* Slice 2026-08-05-statusline-empty-render-and-short-sid-suffix.
|
|
36
34
|
*/
|
|
37
35
|
export declare function formatShortSid(sessionId: string): string;
|
|
38
36
|
/**
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* Pure short-sid suffix helpers for the Peaks statusLine.
|
|
3
3
|
*
|
|
4
4
|
* Extracted from `skill-statusline-renderer.ts` (slice
|
|
5
|
-
* 2026-08-05-statusline-sid-only-marker-and-multi-binary-drift-guard
|
|
6
5
|
* repair cycle) to keep the renderer under the Karpathy 800-line cap.
|
|
7
6
|
* The module is I/O-free and only depends on the read-only
|
|
8
7
|
* `StatusLineModel` shape from `skill-statusline-service.ts` plus the
|
|
@@ -22,7 +21,6 @@
|
|
|
22
21
|
* the input is empty. Pure; safe for ASCII rendering across
|
|
23
22
|
* PowerShell, Git Bash, and zsh (AC7).
|
|
24
23
|
*
|
|
25
|
-
* Slice 2026-08-05-statusline-empty-render-and-short-sid-suffix.
|
|
26
24
|
*/
|
|
27
25
|
export function formatShortSid(sessionId) {
|
|
28
26
|
if (sessionId.length === 0)
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Visual / palette / SGR rendering block extracted from
|
|
3
|
-
* `skill-statusline-renderer.ts` (slice 2026-09-06-split-batch-b) so the
|
|
4
3
|
* renderer stays under the 800-line cap. Behaviour-preserving verbatim move;
|
|
5
4
|
* `export` keywords were added to the symbols the renderer still imports.
|
|
6
5
|
*/
|
|
@@ -36,7 +35,6 @@ interface CompactPalette {
|
|
|
36
35
|
readonly preparing: string;
|
|
37
36
|
readonly compacting: string;
|
|
38
37
|
/**
|
|
39
|
-
* Slice 2026-09-12-compact-band-policy: a trigger is registered but no
|
|
40
38
|
* compaction is running. Rendered WITHOUT a bar — see
|
|
41
39
|
* `renderCompact` in skill-statusline-renderer.ts.
|
|
42
40
|
*/
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Visual / palette / SGR rendering block extracted from
|
|
3
|
-
* `skill-statusline-renderer.ts` (slice 2026-09-06-split-batch-b) so the
|
|
4
3
|
* renderer stays under the 800-line cap. Behaviour-preserving verbatim move;
|
|
5
4
|
* `export` keywords were added to the symbols the renderer still imports.
|
|
6
5
|
*/
|
|
@@ -105,7 +104,6 @@ function buildPalette(capability, noColor) {
|
|
|
105
104
|
return {
|
|
106
105
|
active: '*',
|
|
107
106
|
idle: 'o',
|
|
108
|
-
// Slice rid-statusline-stale-ux AC-1: stale residue uses the same
|
|
109
107
|
// glyph as `idle` (`o`) but stays static (no slow-blink — the user
|
|
110
108
|
// is reading a *previous* session's residue, not a live idle state).
|
|
111
109
|
// The neutral copy `(previous session · N days ago)` is the
|
|
@@ -133,7 +131,6 @@ function buildPalette(capability, noColor) {
|
|
|
133
131
|
return {
|
|
134
132
|
active: brandGlyph('●'),
|
|
135
133
|
idle: blinkBrand('○'),
|
|
136
|
-
// Slice rid-statusline-stale-ux AC-1: muted slate (`#AAAAC8` dim)
|
|
137
134
|
// — slow-blink OFF, distinct from `idle` (slow-blink brand) and
|
|
138
135
|
// `warning` (yellow invalid-presence). The stale branch is
|
|
139
136
|
// semantically "previous-session residue" (neutral), NOT an error.
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* Slice #009 / G5 RL-8 — sub-agent dispatch record archival + 30-day GC.
|
|
3
3
|
*
|
|
4
4
|
* Called by the `peaks session finish` / `peaks session abandon` /
|
|
5
|
-
* new-rid-startup hooks. Walks the per-session `.peaks/_sub_agents/<sid>/`
|
|
6
5
|
* tree and moves completed + disposed records to
|
|
7
6
|
* `.peaks/_runtime/<sid>/_archive/_sub_agents/<sliceId>/`.
|
|
8
7
|
*
|
|
@@ -2,7 +2,6 @@ import { execFileSync } from 'node:child_process';
|
|
|
2
2
|
import { existsSync, readFileSync, statSync } from 'node:fs';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
4
|
import { isDirectory } from 'peaks-loop-shared/fs';
|
|
5
|
-
// Slice 2026-06-29-change-id-root-removal: `getCurrentChangeId` was
|
|
6
5
|
// removed with the change-id axis. Slice check resolves the rid from
|
|
7
6
|
// `options.rid` only; the binding file at `.peaks/_runtime/current-change`
|
|
8
7
|
// is no longer read. Path-safety helpers now live at
|
|
@@ -206,7 +205,6 @@ async function runUnitTests(projectRoot, runTests) {
|
|
|
206
205
|
// related to git-changed files. Cost drops from 30s+ to ~1-3s in steady
|
|
207
206
|
// state. Opt-in to the full suite via `runTests: true` (CLI flag
|
|
208
207
|
// `--run-tests`). See `references/runbook.md` for the rationale and
|
|
209
|
-
// `tests/unit/slice-check-service.test.ts` for the regression net.
|
|
210
208
|
// Per Windows npx ENOENT (observations 2317+2792), resolve
|
|
211
209
|
// the project-local vitest binary instead of shelling out
|
|
212
210
|
// through npx. 2026-09-10 C6: that binary is the package's JS
|
|
@@ -245,7 +243,6 @@ async function runUnitTests(projectRoot, runTests) {
|
|
|
245
243
|
}
|
|
246
244
|
};
|
|
247
245
|
}
|
|
248
|
-
// Slice `2026-09-14-audit-artifact-rid-scoping`: the evidence filenames
|
|
249
246
|
// carry the rid now. Candidate order is canonical-first, then the
|
|
250
247
|
// back-compat tiers — the same order `artifact-prerequisites.ts` resolves
|
|
251
248
|
// in, so this boundary gate and the transition gate agree on which file is
|
|
@@ -257,7 +254,6 @@ const REVIEW_FILES = [
|
|
|
257
254
|
label: 'code-review'
|
|
258
255
|
},
|
|
259
256
|
// v2.12.0 collapse: security + perf moved to standalone audit skills.
|
|
260
|
-
// `slice check` accepts the rid-scoped audit path, the bare v2.12.0 path
|
|
261
257
|
// OR the v2.11.x legacy path during the 1-minor-release back-compat
|
|
262
258
|
// window (v2.13.0 hard-deletes the legacy paths — see CHANGELOG [2.12.0]).
|
|
263
259
|
{
|
|
@@ -301,7 +297,6 @@ async function runReviewFanout(projectRoot, rid, refresh) {
|
|
|
301
297
|
let hit = null;
|
|
302
298
|
// Back-compat: each entry lists multiple candidate paths. First hit (in
|
|
303
299
|
// declared order) wins; canonical paths come first so a current slice
|
|
304
|
-
// preferentially reports its own rid-scoped evidence even when a legacy
|
|
305
300
|
// file is also present during migration.
|
|
306
301
|
const candidates = review.paths.map((candidate) => candidate.replace('<rid>', rid));
|
|
307
302
|
for (const candidate of candidates) {
|
|
@@ -375,7 +370,6 @@ export async function sliceCheck(options) {
|
|
|
375
370
|
if (!(await isDirectory(peaksRoot))) {
|
|
376
371
|
throw new Error(`.peaks/ not found at ${options.projectRoot}. Run peaks workspace init first.`);
|
|
377
372
|
}
|
|
378
|
-
// Slice 2026-06-29-change-id-root-removal: resolve rid from the
|
|
379
373
|
// explicit `--rid` option only. The `current-change` binding file is
|
|
380
374
|
// gone; the CLI is the single source of truth for the rid.
|
|
381
375
|
if (options.rid === undefined) {
|
|
@@ -69,7 +69,6 @@ export type SliceCheckResult = {
|
|
|
69
69
|
};
|
|
70
70
|
export type SliceCheckOptions = {
|
|
71
71
|
projectRoot: string;
|
|
72
|
-
/** REQUIRED. The `.peaks/_runtime/current-change` binding file is gone (slice 2026-06-29-change-id-root-removal); when omitted, slice check throws rather than guessing. */
|
|
73
72
|
rid?: string;
|
|
74
73
|
/**
|
|
75
74
|
* When true, re-run the 3-way review fan-out (peaks-rd's code-review +
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Slice Pick Service — thin wrapper around the generic fzf picker.
|
|
3
3
|
*
|
|
4
|
-
* v2 (slice 2026-06-14-fzf-rollout): the actual fzf
|
|
5
4
|
* integration is now in `src/services/fuzzy-matching/fzf-pick-service.ts`.
|
|
6
5
|
* This file only knows how to format / parse SliceCandidate rows and
|
|
7
6
|
* pick the output path. The algorithm itself (slice-decompose-service)
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Slice Pick Service — thin wrapper around the generic fzf picker.
|
|
3
3
|
*
|
|
4
|
-
* v2 (slice 2026-06-14-fzf-rollout): the actual fzf
|
|
5
4
|
* integration is now in `src/services/fuzzy-matching/fzf-pick-service.ts`.
|
|
6
5
|
* This file only knows how to format / parse SliceCandidate rows and
|
|
7
6
|
* pick the output path. The algorithm itself (slice-decompose-service)
|
|
@@ -47,8 +47,6 @@ export function getReviewDir(projectRoot, sessionId) {
|
|
|
47
47
|
//
|
|
48
48
|
// It does NOT cover the slice-id axis: the slice id is joined one function
|
|
49
49
|
// later, in `getReviewPath` below. Corrected 2026-09-14 (repair R1) — this
|
|
50
|
-
// comment previously said one guard covered the whole family; the security
|
|
51
|
-
// audit of `2026-09-14-cli-id-escape-instrumentation` (F1b) measured that
|
|
52
50
|
// false: `slice-review '../../../../…/EVILSL'` wrote a `.json` file outside
|
|
53
51
|
// the project root under `ok: true`.
|
|
54
52
|
if (isUnsafePathInput(sessionId)) {
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The SQLite driver seam for every store in this CLI.
|
|
3
|
+
*
|
|
4
|
+
* WHY A SEAM AT ALL. `better-sqlite3` is a native addon: a consumer either got a prebuilt
|
|
5
|
+
* binary matching their exact Node ABI or they needed a C++ toolchain, and the failure was
|
|
6
|
+
* discovered at runtime, not at install. Node ships `node:sqlite`, so the stores do not
|
|
7
|
+
* need that requirement. But the two are NOT the same library — the three places they
|
|
8
|
+
* genuinely differ are the whole reason this file exists, and each is a behaviour, not an
|
|
9
|
+
* import path:
|
|
10
|
+
*
|
|
11
|
+
* - **there is no `pragma()`.** `exec('PRAGMA …')` sets a pragma but returns nothing, so
|
|
12
|
+
* reading one back needs a statement (`pragmaValue`). A pragma that is silently not
|
|
13
|
+
* applied is worse than no pragma: `foreign_keys = ON` is what makes the skillhub
|
|
14
|
+
* schema's REFERENCES clauses mean anything.
|
|
15
|
+
* - **`BEGIN` inside a transaction throws.** better-sqlite3's `db.transaction(fn)` nests
|
|
16
|
+
* with SAVEPOINTs for free, so a store whose body called another store's body worked.
|
|
17
|
+
* Here nesting is explicit and counted, and the inner unit rolls back on its own.
|
|
18
|
+
* - **a read-only open must not create the file.** `codegraph-index-integrity` opens the
|
|
19
|
+
* index read-only; an empty database created by the open is indistinguishable from an
|
|
20
|
+
* index with no rows, and the staleness gate would report a clean graph for a project
|
|
21
|
+
* that was never indexed.
|
|
22
|
+
* - **`foreign_keys` is ON by default here and was OFF in better-sqlite3.** Measured on
|
|
23
|
+
* Node 24.21 (`PRAGMA foreign_keys` answers 1 on a fresh database). The stores that
|
|
24
|
+
* asked for it are unaffected; a site that never asked — the capability guard's
|
|
25
|
+
* `:memory:` probe — gains enforcement, so write order that used to work can start
|
|
26
|
+
* throwing. That is why the call sites keep saying the pragma out loud.
|
|
27
|
+
*
|
|
28
|
+
* WHAT THIS IS NOT. It is not an ORM and not a query builder: statements stay at the call
|
|
29
|
+
* sites, and `prepare`/`run`/`get`/`all`/`exec`/`close` are node:sqlite's own. Only the
|
|
30
|
+
* three behaviours above are wrapped, because those are the ones a port gets wrong quietly.
|
|
31
|
+
*/
|
|
32
|
+
import { DatabaseSync } from 'node:sqlite';
|
|
33
|
+
/** The database handle the stores hold. Exported so call sites stop naming the addon. */
|
|
34
|
+
export type SqliteDatabase = DatabaseSync;
|
|
35
|
+
/**
|
|
36
|
+
* What SQLite accepts as a bound value, and what it hands back.
|
|
37
|
+
*
|
|
38
|
+
* Re-exported from the seam rather than imported from `node:sqlite` at the call sites for
|
|
39
|
+
* one reason: `SQLInputValue` EXCLUDES `undefined`, while better-sqlite3 silently bound
|
|
40
|
+
* `undefined` as NULL. Every store that builds a parameter list wants to say "these are the
|
|
41
|
+
* values I bind" once, in the name the driver actually enforces — and if that name is
|
|
42
|
+
* spelled differently in twenty files, the twenty drift.
|
|
43
|
+
*/
|
|
44
|
+
export type { SQLInputValue as SqlInputValue, SQLOutputValue as SqlOutputValue } from 'node:sqlite';
|
|
45
|
+
export type OpenSqliteOptions = {
|
|
46
|
+
/**
|
|
47
|
+
* Open without creating. A missing file is an error, not an empty database — the
|
|
48
|
+
* read-only caller's question is "what does the existing index say", and an empty
|
|
49
|
+
* database answers that in the most misleading way available.
|
|
50
|
+
*/
|
|
51
|
+
readonly readOnly?: boolean;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Open (or create) the SQLite file at `path`.
|
|
55
|
+
*
|
|
56
|
+
* `readOnly` on a path that does not exist throws here rather than producing a handle over
|
|
57
|
+
* a freshly created empty file — see the option.
|
|
58
|
+
*/
|
|
59
|
+
export declare function openSqlite(path: string, options?: OpenSqliteOptions): SqliteDatabase;
|
|
60
|
+
/**
|
|
61
|
+
* Apply each `PRAGMA` setting, in order.
|
|
62
|
+
*
|
|
63
|
+
* A `;` is refused rather than passed through: these strings are literals today, and the
|
|
64
|
+
* shape that would hurt is a future caller interpolating a name into one and landing a
|
|
65
|
+
* second statement inside a single `exec`.
|
|
66
|
+
*/
|
|
67
|
+
export declare function applyPragmas(db: SqliteDatabase, pragmas: readonly string[]): void;
|
|
68
|
+
/**
|
|
69
|
+
* Read one `PRAGMA` back.
|
|
70
|
+
*
|
|
71
|
+
* `journal_mode` answers with a row keyed `journal_mode`; `foreign_keys` answers with a
|
|
72
|
+
* row keyed `foreign_keys`. Both come back as the FIRST column, whatever the name, so that
|
|
73
|
+
* is what this returns.
|
|
74
|
+
*/
|
|
75
|
+
export declare function pragmaValue(db: SqliteDatabase, name: string): unknown;
|
|
76
|
+
/**
|
|
77
|
+
* Run `body` as ONE unit of work: commit if it returns, roll back everything it wrote if
|
|
78
|
+
* it throws, and let the error continue.
|
|
79
|
+
*
|
|
80
|
+
* Nesting is by SAVEPOINT, which is what `db.transaction(fn)` did in better-sqlite3: an
|
|
81
|
+
* inner unit that fails undoes only itself, and an outer unit that fails undoes both. The
|
|
82
|
+
* alternative — a bare `BEGIN` — throws the moment one store body calls another, which is
|
|
83
|
+
* the least-tested path in the product and the reason this function is not five lines.
|
|
84
|
+
*/
|
|
85
|
+
export declare function withTransaction<T>(db: SqliteDatabase, body: () => T): T;
|
|
86
|
+
/**
|
|
87
|
+
* Which constraint a thrown SQLite error violated.
|
|
88
|
+
*
|
|
89
|
+
* WHY THIS EXISTS. `loop-bee-relation-service` turns a duplicate relation into the
|
|
90
|
+
* documented `DUP_RELATION` / `TWO_MAIN_BEES` errors and an absent parent into `FK_*` by
|
|
91
|
+
* asking which constraint failed. It used to ask
|
|
92
|
+
* `err.code === 'SQLITE_CONSTRAINT_UNIQUE'`, which better-sqlite3 set. node:sqlite sets
|
|
93
|
+
* `code` to the generic `ERR_SQLITE_ERROR` for every SQL failure and puts the real
|
|
94
|
+
* extended result code in `errcode` — measured on this host: 2067 for
|
|
95
|
+
* `SQLITE_CONSTRAINT_UNIQUE`, 787 for `SQLITE_CONSTRAINT_FOREIGNKEY`. A `.code` comparison
|
|
96
|
+
* therefore does not throw the wrong error, it throws NOTHING: the branch is skipped and a
|
|
97
|
+
* raw driver message reaches the operator where the CLI promised an integrity code. That
|
|
98
|
+
* failure is invisible to the type checker and to any test that does not drive a real
|
|
99
|
+
* violation, which is why the classifier has its own arms.
|
|
100
|
+
*
|
|
101
|
+
* Three readings, in order of trustworthiness: `errcode` (node:sqlite), `code`
|
|
102
|
+
* (better-sqlite3, and any error shaped like it), then the message. The message is a last
|
|
103
|
+
* resort rather than the primary because it is the only one of the three that SQLite
|
|
104
|
+
* documents as human-readable and free to change.
|
|
105
|
+
*/
|
|
106
|
+
export type SqliteConstraintKind = 'unique' | 'foreign-key';
|
|
107
|
+
export declare function constraintKind(error: unknown): SqliteConstraintKind | undefined;
|
|
108
|
+
/**
|
|
109
|
+
* Bind `body` as a unit of work WITHOUT running it, returned as a callable — the shape
|
|
110
|
+
* `better-sqlite3`'s `db.transaction(fn)` had, and the shape five stores in this repo are
|
|
111
|
+
* written in (`const tx = db.transaction(…)`, then `tx()` — sometimes more than once).
|
|
112
|
+
*
|
|
113
|
+
* This exists so the port is a name change and not a restructure, because the reuse is
|
|
114
|
+
* load-bearing: each invocation is its own unit, so a second call that fails must not undo
|
|
115
|
+
* a first call that committed. An arm in the driver's test calls it twice to prove that,
|
|
116
|
+
* since no other arm in this file would notice if it were written to run once.
|
|
117
|
+
*/
|
|
118
|
+
export declare function transaction<T>(db: SqliteDatabase, body: () => T): () => T;
|