peaks-loop 4.1.0 → 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 +75 -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/_register.js +2 -2
- 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 +1 -5
- 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/comments-commands.d.ts +14 -0
- package/dist/cli/commands/comments-commands.js +96 -0
- 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 +10 -1
- package/dist/cli/commands/core/session-command.js +0 -14
- package/dist/cli/commands/core/skill-command.js +1 -10
- package/dist/cli/commands/core/standards-command.js +1 -1
- 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 +16 -22
- package/dist/cli/commands/ecc-commands.js +38 -26
- 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 +8 -4
- 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 +4 -16
- 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 +1 -3
- package/dist/services/code/mode-gate-types.js +0 -2
- package/dist/services/code/mode-gate.d.ts +0 -5
- package/dist/services/code/mode-gate.js +1 -14
- 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/user-touchpoint-classifier.js +0 -7
- package/dist/services/code-review/ecc-bridge.d.ts +6 -7
- 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/citation-rules.d.ts +154 -0
- package/dist/services/comments/citation-rules.js +241 -0
- package/dist/services/comments/comment-audit.d.ts +68 -0
- package/dist/services/comments/comment-audit.js +121 -0
- package/dist/services/comments/comment-citations.d.ts +66 -0
- package/dist/services/comments/comment-citations.js +184 -0
- package/dist/services/comments/comment-hygiene.d.ts +105 -0
- package/dist/services/comments/comment-hygiene.js +170 -0
- package/dist/services/comments/comment-prune.d.ts +88 -0
- package/dist/services/comments/comment-prune.js +196 -0
- 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 +82 -0
- package/dist/services/comments/prune-apply.js +217 -0
- package/dist/services/comments/repo-path-probe.d.ts +43 -0
- package/dist/services/comments/repo-path-probe.js +78 -0
- 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 -17
- package/dist/services/log/retention.js +0 -18
- 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/index.d.ts +1 -1
- package/dist/services/memory/project-memory-service/index.js +1 -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/store/atomic-write.d.ts +19 -7
- package/dist/services/memory/project-memory-service/store/atomic-write.js +120 -26
- 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 +61 -2
- package/dist/services/prd/handoff-gate-evidence.d.ts +0 -1
- package/dist/services/prd/handoff-gate-evidence.js +12 -12
- 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 +11 -3
- package/dist/services/prd/handoff-service.js +11 -3
- package/dist/services/prd/handoff-types.d.ts +33 -3
- 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 +5 -6
- package/dist/services/recommendations/installed-capability-detector.js +11 -11
- 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-detection.d.ts +37 -0
- package/dist/services/scan/archetype-detection.js +175 -2
- package/dist/services/scan/archetype-service.js +36 -23
- 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/scan/scan-types.d.ts +9 -0
- 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/generated-artifacts-stamp.d.ts +2 -2
- package/dist/services/workspace/generated-artifacts-stamp.js +2 -2
- 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 +1 -17
- 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 -560
- package/skills/bee/peaks-qa/references/reading-handoff-frontmatter.md +3 -1
- package/skills/bee/peaks-rd/references/parallel-review-fanout.md +1 -1
- package/skills/bee/peaks-rd/references/rd-fanout-contracts.md +3 -2
- package/skills/bee/peaks-rd/references/writing-handoff-frontmatter.md +29 -7
- package/skills/peaks-audit/SKILL.md +3 -3
- package/skills/peaks-code/references/frontend-only-mode.md +2 -2
- package/skills/peaks-code/references/startup-sequence.md +0 -4
- package/dist/cli/commands/upgrade-commands.d.ts +0 -25
- package/dist/cli/commands/upgrade-commands.js +0 -154
- package/dist/services/codegraph/codegraph-include-reconciler.d.ts +0 -10
- package/dist/services/codegraph/codegraph-include-reconciler.js +0 -160
- package/dist/services/upgrade/1x-detector-service.d.ts +0 -7
- package/dist/services/upgrade/1x-detector-service.js +0 -96
- package/dist/services/upgrade/gitignore-migrate-service.d.ts +0 -56
- package/dist/services/upgrade/gitignore-migrate-service.js +0 -170
- package/dist/services/upgrade/upgrade-service.d.ts +0 -81
- package/dist/services/upgrade/upgrade-service.js +0 -428
- package/skills/peaks-code/references/step-0-55-1x-detection.md +0 -83
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
// src/services/codegraph/codegraph-exclude-reconciler.ts
|
|
2
2
|
//
|
|
3
|
-
// Slice S1 of `2026-09-12-codegraph-exclude-integrity` — the pure
|
|
4
3
|
// reconciliation core. It answers one question:
|
|
5
4
|
//
|
|
6
5
|
// "Which git-tracked source files does the codegraph `exclude` list
|
|
@@ -34,10 +33,9 @@
|
|
|
34
33
|
// uses `//` lines. Do not convert them to `/* ... */`.
|
|
35
34
|
import { execFileSync } from 'node:child_process';
|
|
36
35
|
import { readFileSync } from 'node:fs';
|
|
37
|
-
import { join } from 'node:path';
|
|
38
36
|
import picomatch from 'picomatch';
|
|
39
37
|
import { normalizePath } from '../../shared/path-utils.js';
|
|
40
|
-
import {
|
|
38
|
+
import { codegraphConfigSourceFor, resolveCodegraphConfigSource } from './codegraph-project-config.js';
|
|
41
39
|
// ─────────────────────────────────────────────────────────────────────
|
|
42
40
|
// Glob matching — delegated to `picomatch`, the same engine upstream uses
|
|
43
41
|
//
|
|
@@ -129,6 +127,32 @@ export function compileCodegraphGlobs(patterns) {
|
|
|
129
127
|
}
|
|
130
128
|
};
|
|
131
129
|
}
|
|
130
|
+
// The tracked files an `exclude` rule can actually cost the index, per model.
|
|
131
|
+
//
|
|
132
|
+
// WHY THIS IS MODEL-DEPENDENT (the 1.6.2 defect). A rule that only blocks files
|
|
133
|
+
// upstream would not ingest is harmless, so the reconciler always pre-filtered
|
|
134
|
+
// the tracked list — with the config's `include` globs, which is right only
|
|
135
|
+
// when `include` IS the whitelist (0.7.x). Under 1.6.x selection is
|
|
136
|
+
// `.gitignore`-driven and `include` can only force files IN, so an absent
|
|
137
|
+
// list admits NOTHING: the candidate set came out empty, no rule could ever be
|
|
138
|
+
// a violation, and the gate reported clean on every 1.6.x project while its own
|
|
139
|
+
// `exclude` rules silently dropped tracked source. `force-include` answers
|
|
140
|
+
// the same question with upstream's own extractor decision — the oracle the
|
|
141
|
+
// index axis uses — so both axes agree on what upstream would ingest.
|
|
142
|
+
//
|
|
143
|
+
// `supportsPath` omitted keeps every tracked file: a caller with no oracle
|
|
144
|
+
// reports MORE, never less, so the failure direction is a reviewable false
|
|
145
|
+
// positive rather than a silent pass.
|
|
146
|
+
function excludeCandidates(input) {
|
|
147
|
+
if (input.admissionModel !== 'force-include') {
|
|
148
|
+
return filterAdmittedTrackedFiles(input.trackedFiles, input.include);
|
|
149
|
+
}
|
|
150
|
+
const supportsPath = input.supportsPath;
|
|
151
|
+
if (supportsPath === undefined) {
|
|
152
|
+
return input.trackedFiles.map((file) => normalizePath(file));
|
|
153
|
+
}
|
|
154
|
+
return input.trackedFiles.map((file) => normalizePath(file)).filter((file) => supportsPath(file));
|
|
155
|
+
}
|
|
132
156
|
// The project-relative paths of the tracked files the config's `include`
|
|
133
157
|
// globs admit, normalized. This is the ONE place the "would the index
|
|
134
158
|
// ingest this path" question is answered, so this reconciler and the
|
|
@@ -165,7 +189,7 @@ export function reconcileCodegraphExclude(input) {
|
|
|
165
189
|
// is the same verdict as an explicitly empty `include` list, so it
|
|
166
190
|
// needs no special case here.
|
|
167
191
|
const excludeRules = compileRules(input.exclude);
|
|
168
|
-
const trackedSourceFiles =
|
|
192
|
+
const trackedSourceFiles = excludeCandidates(input);
|
|
169
193
|
const violations = [];
|
|
170
194
|
const offendingRules = new Set();
|
|
171
195
|
const blockedFiles = new Set();
|
|
@@ -187,11 +211,6 @@ export function reconcileCodegraphExclude(input) {
|
|
|
187
211
|
};
|
|
188
212
|
}
|
|
189
213
|
// ─────────────────────────────────────────────────────────────────────
|
|
190
|
-
// Thin boundary adapters — READ ONLY
|
|
191
|
-
// ─────────────────────────────────────────────────────────────────────
|
|
192
|
-
// Upstream `CONFIG_FILENAME` inside `<projectRoot>/.codegraph/`.
|
|
193
|
-
export const CODEGRAPH_CONFIG_FILENAME = 'config.json';
|
|
194
|
-
// ─────────────────────────────────────────────────────────────────────
|
|
195
214
|
// Read provenance — why the shared-input seam refuses a fabricated value
|
|
196
215
|
// ─────────────────────────────────────────────────────────────────────
|
|
197
216
|
// Code review R4-1. The shared-input seam (perf F1) hands an inspector the
|
|
@@ -275,19 +294,63 @@ export function assertStringArray(value, field, configPath) {
|
|
|
275
294
|
}
|
|
276
295
|
return value;
|
|
277
296
|
}
|
|
278
|
-
//
|
|
279
|
-
//
|
|
280
|
-
//
|
|
297
|
+
// Every key of the 1.6.x project config is OPTIONAL: upstream returns an empty
|
|
298
|
+
// list for an absent one and only warns-and-skips a wrong-typed one. So a
|
|
299
|
+
// hand-authored `codegraph.json` carrying only `exclude` is VALID, and treating
|
|
300
|
+
// it as malformed would turn a legitimate project into exit 76. The line is
|
|
301
|
+
// kept exact — absent → `[]`, present-but-not-an-array → throw, because
|
|
302
|
+
// ignoring the second is how a wrong list survives a gate that reported clean.
|
|
303
|
+
export function optionalStringArray(value, field, configPath) {
|
|
304
|
+
return value === undefined ? [] : assertStringArray(value, field, configPath);
|
|
305
|
+
}
|
|
306
|
+
// Read this project's codegraph config — the file the INSTALLED upstream reads
|
|
307
|
+
// (`resolveCodegraphConfigSource`), not a path spelled here — and return just
|
|
308
|
+
// the glob lists the reconciler needs, plus the source they came from.
|
|
309
|
+
// Read-only, and READ-MARKED (see `readTrackedFiles`).
|
|
310
|
+
//
|
|
311
|
+
// ABSENCE IS NOT ONE THING — it is read per model:
|
|
312
|
+
//
|
|
313
|
+
// - `force-include` (1.6.x): a missing `<root>/codegraph.json` is upstream's
|
|
314
|
+
// own documented ZERO-CONFIG DEFAULT, and its parser returns an empty
|
|
315
|
+
// config for it without throwing. Throwing here WAS the 1.6.2 defect:
|
|
316
|
+
// every freshly initialised project reported `index integrity could not be
|
|
317
|
+
// evaluated` and exited 76, over a config whose absence means "nothing
|
|
318
|
+
// withheld, nothing forced in".
|
|
319
|
+
// - `include-whitelist` (0.7.x): a missing config means the withholding list
|
|
320
|
+
// is unknown, so the read still throws.
|
|
321
|
+
//
|
|
322
|
+
// A file that EXISTS but does not parse throws in BOTH models: upstream
|
|
323
|
+
// degrades a malformed config to the defaults, which is exactly the silent
|
|
324
|
+
// pass this gate exists to prevent.
|
|
281
325
|
export function readCodegraphExcludeConfig(projectRoot) {
|
|
282
|
-
|
|
326
|
+
return readCodegraphConfigFrom(projectRoot, resolveCodegraphConfigSource(projectRoot).model);
|
|
327
|
+
}
|
|
328
|
+
// `readCodegraphExcludeConfig` for a KNOWN model — the same split
|
|
329
|
+
// `codegraphConfigSourceFor` makes, for the same reason: the model decides the
|
|
330
|
+
// ABSENCE semantics as well as the path, so both arms must be drivable without
|
|
331
|
+
// an install of the upstream that selects them.
|
|
332
|
+
export function readCodegraphConfigFrom(projectRoot, model) {
|
|
333
|
+
const source = codegraphConfigSourceFor(projectRoot, model);
|
|
334
|
+
const { configPath } = source;
|
|
335
|
+
if (!source.present) {
|
|
336
|
+
if (model === 'force-include') {
|
|
337
|
+
return markAsRead({ configPath, present: false, model, include: [], exclude: [] });
|
|
338
|
+
}
|
|
339
|
+
// `readFileSync` still raises the ENOENT, so the operator-facing message
|
|
340
|
+
// keeps naming the path it looked for, as it always did.
|
|
341
|
+
readFileSync(configPath, 'utf8');
|
|
342
|
+
}
|
|
283
343
|
const parsed = JSON.parse(readFileSync(configPath, 'utf8'));
|
|
284
344
|
if (typeof parsed !== 'object' || parsed === null) {
|
|
285
345
|
throw new Error(`codegraph config ${configPath}: expected a JSON object`);
|
|
286
346
|
}
|
|
287
347
|
const record = parsed;
|
|
288
348
|
return markAsRead({
|
|
289
|
-
|
|
290
|
-
|
|
349
|
+
configPath,
|
|
350
|
+
present: true,
|
|
351
|
+
model,
|
|
352
|
+
include: optionalStringArray(record.include, 'include', configPath),
|
|
353
|
+
exclude: optionalStringArray(record.exclude, 'exclude', configPath)
|
|
291
354
|
});
|
|
292
355
|
}
|
|
293
356
|
// Read both shared inputs exactly once, in the one place that owns the
|
|
@@ -322,8 +385,14 @@ export function resolveSharedConfig(supplied, projectRoot) {
|
|
|
322
385
|
// Read-only entry point: resolve the project's tracked files + codegraph
|
|
323
386
|
// config from disk and reconcile them. S2's repair path consumes this
|
|
324
387
|
// result and writes the reduced `exclude` list back; S1 only computes.
|
|
325
|
-
export function reconcileCodegraphExcludeFromProject(projectRoot) {
|
|
388
|
+
export function reconcileCodegraphExcludeFromProject(projectRoot, supportsPath) {
|
|
326
389
|
const trackedFiles = readTrackedFiles(projectRoot);
|
|
327
|
-
const
|
|
328
|
-
return reconcileCodegraphExclude({
|
|
390
|
+
const config = readCodegraphExcludeConfig(projectRoot);
|
|
391
|
+
return reconcileCodegraphExclude({
|
|
392
|
+
trackedFiles,
|
|
393
|
+
include: config.include,
|
|
394
|
+
exclude: config.exclude,
|
|
395
|
+
admissionModel: config.model,
|
|
396
|
+
supportsPath
|
|
397
|
+
});
|
|
329
398
|
}
|
|
@@ -1,64 +1,14 @@
|
|
|
1
1
|
import { type CodegraphProcessRunner } from './codegraph-service.js';
|
|
2
|
-
import { applyCodegraphConfigRepair, CODEGRAPH_CONFIG_BACKUP_SUFFIX, repairCodegraphExclude,
|
|
3
|
-
export { applyCodegraphConfigRepair, CODEGRAPH_CONFIG_BACKUP_SUFFIX, repairCodegraphExclude
|
|
2
|
+
import { applyCodegraphConfigRepair, CODEGRAPH_CONFIG_BACKUP_SUFFIX, repairCodegraphExclude, type CodegraphConfigRepairOutcome, type CodegraphConfigRepairPlan, type CodegraphExcludeRepairPlan } from './codegraph-config-repair-writer.js';
|
|
3
|
+
export { applyCodegraphConfigRepair, CODEGRAPH_CONFIG_BACKUP_SUFFIX, repairCodegraphExclude };
|
|
4
4
|
export type { CodegraphConfigRepairOutcome, CodegraphConfigRepairPlan, CodegraphExcludeRepairPlan };
|
|
5
5
|
export type CodegraphExcludeRepairReport = {
|
|
6
6
|
/** True when the config was actually rewritten. */
|
|
7
7
|
readonly applied: boolean;
|
|
8
8
|
/** Rules dropped from `exclude`. */
|
|
9
9
|
readonly rulesRemoved: readonly string[];
|
|
10
|
-
/**
|
|
11
|
-
* Patterns appended to `include` (slice-002). Always a subset of the
|
|
12
|
-
* include reconciler's candidates that were not already admitted.
|
|
13
|
-
*/
|
|
14
|
-
readonly includePatternsAdded: readonly string[];
|
|
15
10
|
/** Distinct tracked source files the dropped rules had been hiding. */
|
|
16
11
|
readonly filesRecovered: number;
|
|
17
|
-
/**
|
|
18
|
-
* Distinct tracked source files the WIDENED `include` list newly admits —
|
|
19
|
-
* the INCLUDE axis' counterpart of `filesRecovered`, and a DIFFERENT
|
|
20
|
-
* number on purpose.
|
|
21
|
-
*
|
|
22
|
-
* `filesRecovered` counts the exclude axis only. Before this field
|
|
23
|
-
* existed, `appliedRepairNote` printed `filesRecovered` inside a sentence
|
|
24
|
-
* whose subject was both axes, so the measured run that added 5 include
|
|
25
|
-
* patterns for 31 tracked `.mjs`/`.cjs` files reported "removed 0 exclude
|
|
26
|
-
* rule(s), recovering 0 tracked source file(s)" — a true statement about
|
|
27
|
-
* one axis read as a verdict on both (defect A1 of
|
|
28
|
-
* `2026-09-17-codegraph-msg-and-refresh`).
|
|
29
|
-
*
|
|
30
|
-
* It is a measured DELTA, not a re-report of an absolute count:
|
|
31
|
-
* `includeAdmittedAfter` minus the same admission measurement taken over
|
|
32
|
-
* the ON-DISK include list. Reporting `includeAdmittedAfter` itself as
|
|
33
|
-
* "recovered" would be the tautology slice-002 removed from the
|
|
34
|
-
* coverage ratio (an absolute count says nothing about what changed).
|
|
35
|
-
*
|
|
36
|
-
* Zero by construction when the include plan did not change — the
|
|
37
|
-
* normalized list IS the on-disk list then — which is also why the extra
|
|
38
|
-
* admission pass is gated on `includePlan.changed`: the no-op path (every
|
|
39
|
-
* automatic seam, every re-run) pays nothing for it, unlike the pass
|
|
40
|
-
* slice-002 removed (that one ran on ALL seams, including no-ops).
|
|
41
|
-
*/
|
|
42
|
-
readonly includeFilesRecovered: number;
|
|
43
|
-
/**
|
|
44
|
-
* Tracked files the normalized `include` list admits — the NUMERATOR of
|
|
45
|
-
* the coverage ratio. Identical to
|
|
46
|
-
* `reconcileCodegraphExclude`'s `trackedSourceCount` for the normalized
|
|
47
|
-
* list, so it costs no second filtering pass.
|
|
48
|
-
*/
|
|
49
|
-
readonly includeAdmittedAfter: number;
|
|
50
|
-
/**
|
|
51
|
-
* Tracked files upstream's extractor would ingest (any supported
|
|
52
|
-
* extension) — the DENOMINATOR, and the same quantity the index axis
|
|
53
|
-
* reports under this same field name (`CodegraphIndexIntegrityReport`).
|
|
54
|
-
*
|
|
55
|
-
* It is measured independently of `includeAdmittedAfter` (an extension
|
|
56
|
-
* decision per tracked file, not a glob match), so the two CAN differ and
|
|
57
|
-
* the ratio can report a shortfall. The field used to be fed from the
|
|
58
|
-
* reconciler's admitted count, i.e. the numerator again, which made every
|
|
59
|
-
* "N of N" the consumers printed a tautology.
|
|
60
|
-
*/
|
|
61
|
-
readonly trackedSourceCount: number;
|
|
62
12
|
/**
|
|
63
13
|
* Absolute path of the rewritten config. Empty when nothing was written
|
|
64
14
|
* AND the reads failed (there is no config to name).
|
|
@@ -153,16 +103,14 @@ export type CodegraphExcludeRepairOptions = {
|
|
|
153
103
|
readonly reindex?: boolean | 'force';
|
|
154
104
|
};
|
|
155
105
|
/**
|
|
156
|
-
* Reconcile `projectRoot`'s config against its tracked files —
|
|
157
|
-
* `
|
|
158
|
-
*
|
|
106
|
+
* Reconcile `projectRoot`'s config against its tracked files — drop the
|
|
107
|
+
* `exclude` rules that block tracked source files — and rebuild the index so
|
|
108
|
+
* the recovered files actually land in it.
|
|
159
109
|
*
|
|
160
|
-
*
|
|
161
|
-
*
|
|
162
|
-
*
|
|
163
|
-
*
|
|
164
|
-
* run report success over a config it had just made worse. See the module
|
|
165
|
-
* header.
|
|
110
|
+
* The reconciliation runs the config's OWN `include` filter first, exactly as
|
|
111
|
+
* upstream applies it, so a rule that only blocks files the index would not
|
|
112
|
+
* ingest anyway is not a violation. See the module header for what this seam
|
|
113
|
+
* no longer does and why.
|
|
166
114
|
*
|
|
167
115
|
* This is the ONE shared "after upstream init" self-heal: the CLI's
|
|
168
116
|
* fresh `peaks codegraph init`, the pre-dispatch preflight and the
|
|
@@ -1,55 +1,49 @@
|
|
|
1
1
|
// src/services/codegraph/codegraph-exclude-repair.ts
|
|
2
2
|
//
|
|
3
|
-
//
|
|
4
|
-
// WIDENED by slice-002 of `2026-09-16-codegraph-index-integrity` from one
|
|
5
|
-
// axis to BOTH config axes; the file name and the entry point's name are
|
|
3
|
+
// reconcilers to the config axes; the file name and the entry point's name are
|
|
6
4
|
// retained because three seams import them by name and the exclude axis is
|
|
7
|
-
// still the entry condition.
|
|
8
|
-
//
|
|
9
|
-
//
|
|
5
|
+
// still the entry condition.
|
|
6
|
+
//
|
|
7
|
+
// ── THE INCLUDE AXIS IS GONE (1.6.2 upgrade) ──────────────────────────
|
|
8
|
+
//
|
|
9
|
+
// This seam used to repair BOTH axes: it appended the extensions upstream's
|
|
10
|
+
// own default `include` template omitted, then reconciled `exclude` against
|
|
11
|
+
// that widened list. 1.6.x removed both halves of the premise. It ships no
|
|
12
|
+
// `include` template at all, and it inverted what `include` MEANS: upstream's
|
|
13
|
+
// own description is now "first-party source to force INTO the index even when
|
|
14
|
+
// `.gitignore` drops it", while selection became `.gitignore`-driven. So the
|
|
15
|
+
// candidate set stopped being "the five extensions the template forgot" and
|
|
16
|
+
// became every extension the extractor supports — and appending those would
|
|
17
|
+
// not have covered a gap, it would have told upstream to index gitignored
|
|
18
|
+
// source. That is a defect, not a deferral, so the axis and its reconciler
|
|
19
|
+
// were deleted rather than left pending.
|
|
20
|
+
//
|
|
21
|
+
// The exclude axis survives, and its job is now STRICTLY NARROWER than it was.
|
|
22
|
+
// It used to hunt two things: a rule from upstream's 99-entry default template
|
|
23
|
+
// that collided with real source (1.6.x ships no such template, so that class
|
|
24
|
+
// is gone), and a rule a project AUTHORED that blocks its own tracked source.
|
|
25
|
+
// The second is live — `codegraph.json`'s `exclude` still means "keep OUT of
|
|
26
|
+
// the index even when git-tracked" — and it is what this seam repairs.
|
|
10
27
|
//
|
|
11
28
|
// The reconcilers compute; this module applies. Two callers are allowed to
|
|
12
29
|
// reach it and nothing else is:
|
|
13
30
|
//
|
|
14
|
-
// 1. `peaks codegraph init` — after a fresh upstream init
|
|
15
|
-
//
|
|
16
|
-
//
|
|
17
|
-
//
|
|
18
|
-
//
|
|
19
|
-
//
|
|
20
|
-
// rebuild) and `peaks codegraph repair-index` (both axes, FORCED
|
|
21
|
-
// rebuild) — the explicit repair for a workspace that was
|
|
22
|
-
// initialized before this shipped, or whose config drifted.
|
|
31
|
+
// 1. `peaks codegraph init` — after a fresh upstream init, so a brand new
|
|
32
|
+
// clone / new machine ends up with an index that does not silently drop
|
|
33
|
+
// tracked source files.
|
|
34
|
+
// 2. `peaks codegraph repair-exclude` (incremental rebuild) and
|
|
35
|
+
// `peaks codegraph repair-index` (FORCED rebuild) — the explicit repair
|
|
36
|
+
// for a workspace whose config drifted.
|
|
23
37
|
//
|
|
24
38
|
// `status` and the doctor check deliberately do NOT live here: they
|
|
25
39
|
// read the integrity inspectors and never write.
|
|
26
40
|
//
|
|
27
|
-
// ── WHY THE INCLUDE AXIS IS PART OF *THIS* REPAIR ─────────────────────
|
|
28
|
-
//
|
|
29
|
-
// Slice-001's RD measured the reason with a real test failure: an
|
|
30
|
-
// `exclude` rule that blocks ONLY a file `include` already drops
|
|
31
|
-
// reconciles COMPLETELY CLEAN today — `include: ['**/*.ts']` with
|
|
32
|
-
// `exclude: ['**/tool.mjs']` reports `gap:false, rulesToRemove:[]` even
|
|
33
|
-
// though that rule is actively harmful. The moment `include` is widened
|
|
34
|
-
// (which is exactly what repairing the include axis does) the rule starts
|
|
35
|
-
// biting, and the exclude reconciliation is the only thing that can see it.
|
|
36
|
-
//
|
|
37
|
-
// So the ORDER IS LOAD-BEARING and is enforced structurally rather than by
|
|
38
|
-
// comment: `repairCodegraphExcludeFromProject` reconciles `exclude` against
|
|
39
|
-
// the NORMALIZED include list, never against the on-disk one. Reconciling
|
|
40
|
-
// first would bless a rule that the same run was about to make harmful —
|
|
41
|
-
// the repair would report success over a config it had just broken.
|
|
42
|
-
//
|
|
43
41
|
// Safety posture (the file being edited belongs to a THIRD-PARTY tool):
|
|
44
42
|
// - `rulesToRemove` comes from the exclude reconciler, which only ever
|
|
45
43
|
// lists a rule that actually blocks at least one git-tracked source
|
|
46
|
-
// file
|
|
47
|
-
//
|
|
48
|
-
// -
|
|
49
|
-
// ever appends a bare-extension pattern for an extension upstream's
|
|
50
|
-
// extractor supports and its own template omits. User entries are
|
|
51
|
-
// never removed, reordered or rewritten.
|
|
52
|
-
// - Nothing is written when both lists are empty — the config bytes, and
|
|
44
|
+
// file. A rule that matches nothing tracked is never dropped, and no
|
|
45
|
+
// user entry is ever added, removed, reordered or rewritten.
|
|
46
|
+
// - Nothing is written when the list is empty — the config bytes, and
|
|
53
47
|
// its mtime, are untouched.
|
|
54
48
|
// - The original bytes are copied to `config.json.bak` before the
|
|
55
49
|
// rewrite, so a rollback is byte-exact *whenever that copy is THIS
|
|
@@ -76,40 +70,37 @@
|
|
|
76
70
|
// write can be redirected into another project's `.codegraph/`
|
|
77
71
|
// (security R1). Containment is the predicate, not link-ness — see the
|
|
78
72
|
// function's own note on why an in-project link is allowed.
|
|
79
|
-
// -
|
|
80
|
-
//
|
|
81
|
-
// never a moment where `include` is widened but `exclude` still holds
|
|
82
|
-
// the rules the widened list just made harmful, and one backup covers
|
|
83
|
-
// both.
|
|
73
|
+
// - The rewrite is ONE same-directory temp file plus `renameSync`, so the
|
|
74
|
+
// config is never observed half-written.
|
|
84
75
|
// - Every other key of the config survives verbatim, in its original
|
|
85
|
-
// position; only `
|
|
86
|
-
import {
|
|
87
|
-
import { CODEGRAPH_CONFIG_FILENAME, filterAdmittedTrackedFiles, readCodegraphProjectInputs, reconcileCodegraphExclude } from './codegraph-exclude-reconciler.js';
|
|
88
|
-
import { normalizeCodegraphInclude, upstreamUnnamedIncludeExtensions } from './codegraph-include-reconciler.js';
|
|
76
|
+
// position; only `exclude` changes.
|
|
77
|
+
import { readCodegraphProjectInputs, reconcileCodegraphExclude } from './codegraph-exclude-reconciler.js';
|
|
89
78
|
import { upstreamSupportsPath } from './codegraph-index-integrity.js';
|
|
90
|
-
import {
|
|
91
|
-
import {
|
|
79
|
+
import { resolveCodegraphConfigSource } from './codegraph-project-config.js';
|
|
80
|
+
import { createCodegraphInvocation, executeCodegraphInvocation } from './codegraph-service.js';
|
|
81
|
+
import { applyCodegraphConfigRepair, CODEGRAPH_CONFIG_BACKUP_SUFFIX, repairCodegraphExclude } from './codegraph-config-repair-writer.js';
|
|
92
82
|
// ─────────────────────────────────────────────────────────────────────
|
|
93
83
|
// Public surface, unchanged
|
|
94
84
|
// ─────────────────────────────────────────────────────────────────────
|
|
95
85
|
// Re-exported so every existing `codegraph-exclude-repair.js` import site
|
|
96
86
|
// keeps resolving: the extraction moved the definitions, not the contract.
|
|
97
|
-
export { applyCodegraphConfigRepair, CODEGRAPH_CONFIG_BACKUP_SUFFIX, repairCodegraphExclude
|
|
87
|
+
export { applyCodegraphConfigRepair, CODEGRAPH_CONFIG_BACKUP_SUFFIX, repairCodegraphExclude };
|
|
98
88
|
function errorMessage(error) {
|
|
99
89
|
return error instanceof Error ? error.message : String(error);
|
|
100
90
|
}
|
|
91
|
+
// The config this seam reads and writes is the one the installed upstream
|
|
92
|
+
// consults, so the path comes from that one resolver rather than being spelled
|
|
93
|
+
// here — see `codegraph-project-config.ts`. Called on failure paths too, which
|
|
94
|
+
// is safe: resolving is a probe, not a read, so it names the file even when
|
|
95
|
+
// opening it is what failed.
|
|
101
96
|
function configPathOf(projectRoot) {
|
|
102
|
-
return
|
|
97
|
+
return resolveCodegraphConfigSource(projectRoot).configPath;
|
|
103
98
|
}
|
|
104
99
|
function emptyRepairReport(warning) {
|
|
105
100
|
return {
|
|
106
101
|
applied: false,
|
|
107
102
|
rulesRemoved: [],
|
|
108
|
-
includePatternsAdded: [],
|
|
109
103
|
filesRecovered: 0,
|
|
110
|
-
includeFilesRecovered: 0,
|
|
111
|
-
includeAdmittedAfter: 0,
|
|
112
|
-
trackedSourceCount: 0,
|
|
113
104
|
configPath: '',
|
|
114
105
|
backupPath: null,
|
|
115
106
|
reindexed: false,
|
|
@@ -118,16 +109,14 @@ function emptyRepairReport(warning) {
|
|
|
118
109
|
};
|
|
119
110
|
}
|
|
120
111
|
/**
|
|
121
|
-
* Reconcile `projectRoot`'s config against its tracked files —
|
|
122
|
-
* `
|
|
123
|
-
*
|
|
112
|
+
* Reconcile `projectRoot`'s config against its tracked files — drop the
|
|
113
|
+
* `exclude` rules that block tracked source files — and rebuild the index so
|
|
114
|
+
* the recovered files actually land in it.
|
|
124
115
|
*
|
|
125
|
-
*
|
|
126
|
-
*
|
|
127
|
-
*
|
|
128
|
-
*
|
|
129
|
-
* run report success over a config it had just made worse. See the module
|
|
130
|
-
* header.
|
|
116
|
+
* The reconciliation runs the config's OWN `include` filter first, exactly as
|
|
117
|
+
* upstream applies it, so a rule that only blocks files the index would not
|
|
118
|
+
* ingest anyway is not a violation. See the module header for what this seam
|
|
119
|
+
* no longer does and why.
|
|
131
120
|
*
|
|
132
121
|
* This is the ONE shared "after upstream init" self-heal: the CLI's
|
|
133
122
|
* fresh `peaks codegraph init`, the pre-dispatch preflight and the
|
|
@@ -144,83 +133,28 @@ export async function repairCodegraphExcludeFromProject(projectRoot, runner, opt
|
|
|
144
133
|
const forcedRebuild = options.reindex === 'force';
|
|
145
134
|
let trackedFiles;
|
|
146
135
|
let config;
|
|
147
|
-
let includePlan;
|
|
148
136
|
try {
|
|
149
|
-
// Read once, in the one place that owns the readers. The
|
|
150
|
-
//
|
|
151
|
-
//
|
|
152
|
-
// here that reconciles against the on-disk include.
|
|
137
|
+
// Read once, in the one place that owns the readers. The config this
|
|
138
|
+
// returns is the one the installed upstream consults, and `exclude` is
|
|
139
|
+
// reconciled against the on-disk list exactly as upstream would apply it.
|
|
153
140
|
({ trackedFiles, config } = readCodegraphProjectInputs(projectRoot));
|
|
154
|
-
// INSIDE the guard on purpose. The adapter loads upstream's own
|
|
155
|
-
// `types.js` / `extraction/grammars.js` out of the installed package and
|
|
156
|
-
// throws if the pinned install is damaged or its `dist/` layout moved;
|
|
157
|
-
// this function's contract is "never throws", and the alternative is
|
|
158
|
-
// that `repair-exclude` / `repair-index` escape to the CLI's generic
|
|
159
|
-
// UNHANDLED_ERROR (and `init` prints FAILURE for an init that already
|
|
160
|
-
// succeeded). A failure here is reported as a warning like every other
|
|
161
|
-
// one.
|
|
162
|
-
includePlan = normalizeCodegraphInclude({
|
|
163
|
-
include: config.include,
|
|
164
|
-
candidateExtensions: upstreamUnnamedIncludeExtensions()
|
|
165
|
-
});
|
|
166
141
|
}
|
|
167
142
|
catch (error) {
|
|
168
143
|
return emptyRepairReport(`codegraph exclude reconcile skipped: ${errorMessage(error)}`);
|
|
169
144
|
}
|
|
170
|
-
// AFTER normalization, never before. `admitted` here is the normalized
|
|
171
|
-
// admission set, so a rule that the widening would make harmful is
|
|
172
|
-
// visible to this reconciliation in the SAME run that widens.
|
|
173
145
|
const reconcile = reconcileCodegraphExclude({
|
|
174
146
|
trackedFiles,
|
|
175
|
-
include:
|
|
176
|
-
exclude: config.exclude
|
|
147
|
+
include: config.include,
|
|
148
|
+
exclude: config.exclude,
|
|
149
|
+
admissionModel: config.model,
|
|
150
|
+
// Same oracle as the index axis — see `excludeCandidates`.
|
|
151
|
+
supportsPath: upstreamSupportsPath
|
|
177
152
|
});
|
|
178
|
-
|
|
179
|
-
// just computed — it is not re-filtered here.
|
|
180
|
-
const includeAdmittedAfter = reconcile.trackedSourceCount;
|
|
181
|
-
// The denominator is a DIFFERENT measurement over the same file list: an
|
|
182
|
-
// extension decision per tracked file (`upstreamSupportsPath`, the same
|
|
183
|
-
// oracle the index axis uses), not a glob match. Two independent
|
|
184
|
-
// measurements can disagree, which is the whole point — a ratio whose
|
|
185
|
-
// numerator and denominator are the same expression cannot report the
|
|
186
|
-
// shortfall it exists to report. It is also cheap: no glob is compiled.
|
|
187
|
-
//
|
|
188
|
-
// This replaced a full `filterAdmittedTrackedFiles(trackedFiles,
|
|
189
|
-
// config.include)` pass whose only consumer was the on-disk "was N"
|
|
190
|
-
// trailer of a user-facing sentence. Perf measured that second pass at
|
|
191
|
-
// 11.73 ms of the repair entry's +14.13 ms (83 %), on ALL THREE automatic
|
|
192
|
-
// seams and both repair commands, including no-ops; the trailer was not
|
|
193
|
-
// worth it. Measured again here on this repo (2,104 tracked files x 32
|
|
194
|
-
// include rules, paired runs): the removed pass 9.78 ms median, this
|
|
195
|
-
// extension check 0.18 ms — and it reports the same 1,240 the status line
|
|
196
|
-
// reports as the denominator, which is the point of using one oracle.
|
|
197
|
-
const trackedSourceCount = trackedFiles.filter((file) => upstreamSupportsPath(file)).length;
|
|
198
|
-
// A1 (2026-09-17): the include axis' own file count, measured as a DELTA
|
|
199
|
-
// against the ON-DISK include list — `includeAdmittedAfter` is the count
|
|
200
|
-
// for the NORMALIZED list, so the difference is exactly the tracked files
|
|
201
|
-
// this run's appends newly admit. Never negative: `includePlan.include` is
|
|
202
|
-
// a superset of `config.include` and admission is monotone in the rule
|
|
203
|
-
// list, so the before-count cannot exceed the after-count.
|
|
204
|
-
//
|
|
205
|
-
// GATED on `includePlan.changed`, which is exact rather than an
|
|
206
|
-
// optimization: when nothing was appended the normalized list IS the
|
|
207
|
-
// on-disk list, so the delta is 0 without measuring anything. The pass
|
|
208
|
-
// this gate keeps off the hot path is the one slice-002 deleted for cost
|
|
209
|
-
// (see the `trackedSourceCount` note above) — the difference is that THIS
|
|
210
|
-
// pass runs only on the one run per project that actually widens
|
|
211
|
-
// `include`, where a repair is about to spend seconds rebuilding an index.
|
|
212
|
-
const includeFilesRecovered = includePlan.changed
|
|
213
|
-
? includeAdmittedAfter - filterAdmittedTrackedFiles(trackedFiles, config.include).length
|
|
214
|
-
: 0;
|
|
215
|
-
const nothingToRepair = includePlan.addedPatterns.length === 0 && reconcile.rulesToRemove.length === 0;
|
|
153
|
+
const nothingToRepair = reconcile.rulesToRemove.length === 0;
|
|
216
154
|
const unchanged = {
|
|
217
155
|
applied: false,
|
|
218
156
|
rulesRemoved: [],
|
|
219
|
-
includePatternsAdded: [],
|
|
220
157
|
filesRecovered: 0,
|
|
221
|
-
includeFilesRecovered: 0,
|
|
222
|
-
includeAdmittedAfter,
|
|
223
|
-
trackedSourceCount,
|
|
224
158
|
configPath: configPathOf(projectRoot),
|
|
225
159
|
backupPath: null,
|
|
226
160
|
reindexed: false,
|
|
@@ -244,8 +178,7 @@ export async function repairCodegraphExcludeFromProject(projectRoot, runner, opt
|
|
|
244
178
|
if (!nothingToRepair) {
|
|
245
179
|
try {
|
|
246
180
|
outcome = applyCodegraphConfigRepair(projectRoot, {
|
|
247
|
-
rulesToRemove: reconcile.rulesToRemove
|
|
248
|
-
includePatternsToAdd: includePlan.addedPatterns
|
|
181
|
+
rulesToRemove: reconcile.rulesToRemove
|
|
249
182
|
});
|
|
250
183
|
}
|
|
251
184
|
catch (error) {
|
|
@@ -261,11 +194,7 @@ export async function repairCodegraphExcludeFromProject(projectRoot, runner, opt
|
|
|
261
194
|
const base = {
|
|
262
195
|
applied: outcome !== null,
|
|
263
196
|
rulesRemoved: outcome?.removedRules ?? [],
|
|
264
|
-
includePatternsAdded: outcome?.addedIncludePatterns ?? [],
|
|
265
197
|
filesRecovered: reconcile.excludedTrackedCount,
|
|
266
|
-
includeFilesRecovered,
|
|
267
|
-
includeAdmittedAfter,
|
|
268
|
-
trackedSourceCount,
|
|
269
198
|
configPath: configPathOf(projectRoot),
|
|
270
199
|
backupPath: outcome?.backupPath ?? null
|
|
271
200
|
};
|
|
@@ -313,13 +242,12 @@ export async function repairCodegraphExcludeFromProject(projectRoot, runner, opt
|
|
|
313
242
|
};
|
|
314
243
|
}
|
|
315
244
|
}
|
|
316
|
-
// "2 exclude rule(s) removed
|
|
317
|
-
//
|
|
318
|
-
//
|
|
319
|
-
// either may be the one that changed.
|
|
245
|
+
// "2 exclude rule(s) removed" — the trailing half of every degraded-path
|
|
246
|
+
// warning above. Written once so the four warnings cannot drift from each
|
|
247
|
+
// other.
|
|
320
248
|
function describeRepair(outcome) {
|
|
321
249
|
if (outcome === null || !outcome.applied) {
|
|
322
250
|
return 'nothing written';
|
|
323
251
|
}
|
|
324
|
-
return `${outcome.removedRules.length} exclude rule(s) removed
|
|
252
|
+
return `${outcome.removedRules.length} exclude rule(s) removed`;
|
|
325
253
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type CodegraphInitGuardResult } from './codegraph-service.js';
|
|
2
|
+
/** Reported by the CLI as `CODEGRAPH_FOREIGN_REMOVAL_REFUSED`. */
|
|
3
|
+
export declare class ForeignCodegraphRemovalError extends Error {
|
|
4
|
+
constructor(message: string);
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Remove `<projectRoot>/.codegraph` and return the path that was deleted.
|
|
8
|
+
* Throws `ForeignCodegraphRemovalError` for a link or for a
|
|
9
|
+
* peaks-loop-managed directory.
|
|
10
|
+
*/
|
|
11
|
+
export declare function removeForeignCodegraphDir(projectRoot: string): string;
|
|
12
|
+
/**
|
|
13
|
+
* Remove the foreign directory and re-run the init guard, so the caller sees an
|
|
14
|
+
* ordinary fresh init. Kept next to the removal because the two are one
|
|
15
|
+
* decision: what `--force` means is "replace it, then continue as if it had
|
|
16
|
+
* never been foreign".
|
|
17
|
+
*/
|
|
18
|
+
export declare function forcePastForeignConflict(projectRoot: string): {
|
|
19
|
+
removed: string;
|
|
20
|
+
outcome: CodegraphInitGuardResult;
|
|
21
|
+
};
|