peaks-loop 4.0.0-beta.9 → 4.0.1
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 +910 -141
- package/README-en.md +26 -7
- package/README.md +75 -6
- package/agents/karpathy-reviewer.md +33 -0
- package/bin/peaks.js +0 -0
- package/dist/cli/cli-helpers.d.ts +31 -6
- package/dist/cli/cli-helpers.js +48 -25
- package/dist/cli/commands/_register.d.ts +3 -0
- package/dist/cli/commands/_register.js +139 -0
- package/dist/cli/commands/_super.d.ts +10 -0
- package/dist/cli/commands/_super.js +97 -0
- package/dist/cli/commands/adapter-commands-s2a.js +1 -1
- package/dist/cli/commands/asset-commands.js +33 -16
- package/dist/cli/commands/audit-commands.js +2 -2
- package/dist/cli/commands/autonomous-swarm-commands.d.ts +12 -0
- package/dist/cli/commands/autonomous-swarm-commands.js +120 -0
- package/dist/cli/commands/bee-commands.js +1 -1
- package/dist/cli/commands/capability-commands.js +1 -1
- package/dist/cli/commands/capability-worker-config-sc-commands.js +0 -2
- package/dist/cli/commands/changeset-commands.d.ts +13 -0
- package/dist/cli/commands/changeset-commands.js +46 -0
- package/dist/cli/commands/code-commands.d.ts +11 -1
- package/dist/cli/commands/code-commands.js +19 -699
- package/dist/cli/commands/code-job-shape-commands.d.ts +9 -0
- package/dist/cli/commands/code-job-shape-commands.js +164 -0
- package/dist/cli/commands/code-mode-gate-commands.d.ts +9 -0
- package/dist/cli/commands/code-mode-gate-commands.js +223 -0
- package/dist/cli/commands/code-review-commands.js +2 -2
- package/dist/cli/commands/code-run-command.d.ts +12 -0
- package/dist/cli/commands/code-run-command.js +68 -0
- package/dist/cli/commands/code-runtime-commands.d.ts +11 -0
- package/dist/cli/commands/code-runtime-commands.js +391 -0
- package/dist/cli/commands/codegraph-commands.js +1 -1
- package/dist/cli/commands/compact-command.js +53 -1
- package/dist/cli/commands/complexity-commands.js +1 -1
- package/dist/cli/commands/config-commands.js +4 -75
- package/dist/cli/commands/container-commands.d.ts +28 -0
- package/dist/cli/commands/container-commands.js +221 -0
- package/dist/cli/commands/context-commands.js +3 -2
- package/dist/cli/commands/core/artifacts-command.js +1 -1
- package/dist/cli/commands/core/binding-commands.js +1 -1
- package/dist/cli/commands/core/doctor-command.js +63 -3
- package/dist/cli/commands/core/memory-command.js +1 -1
- package/dist/cli/commands/core/profile-command.js +1 -1
- package/dist/cli/commands/core/proxy-command.js +1 -1
- package/dist/cli/commands/core/session-command.js +9 -7
- package/dist/cli/commands/core/skill-command.js +7 -4
- package/dist/cli/commands/core/standards-command.js +1 -1
- package/dist/cli/commands/cron-commands.d.ts +57 -0
- package/dist/cli/commands/cron-commands.js +257 -0
- package/dist/cli/commands/cron-scheduler-commands.d.ts +47 -0
- package/dist/cli/commands/cron-scheduler-commands.js +284 -0
- package/dist/cli/commands/dashboard-commands.d.ts +4 -0
- package/dist/cli/commands/dashboard-commands.js +10 -0
- package/dist/cli/commands/dashboard-long-run.d.ts +25 -0
- package/dist/cli/commands/dashboard-long-run.js +122 -0
- package/dist/cli/commands/dashboard-summary.d.ts +12 -0
- package/dist/cli/commands/dashboard-summary.js +58 -0
- package/dist/cli/commands/dispatch-commands.d.ts +0 -7
- package/dist/cli/commands/dispatch-commands.js +372 -8
- package/dist/cli/commands/dispatch-from-dag.js +4 -1
- package/dist/cli/commands/doc-commands.js +1 -1
- package/dist/cli/commands/ecc-commands.d.ts +30 -0
- package/dist/cli/commands/ecc-commands.js +119 -0
- package/dist/cli/commands/evolution-commands.js +1 -1
- package/dist/cli/commands/feedback-commands.js +1 -1
- package/dist/cli/commands/final-review-commands.js +1 -1
- package/dist/cli/commands/fixture-commands.js +1 -1
- package/dist/cli/commands/fork-commands.js +1 -1
- package/dist/cli/commands/gate-commands.js +128 -6
- package/dist/cli/commands/governance-classify-contract-commands.d.ts +21 -0
- package/dist/cli/commands/governance-classify-contract-commands.js +273 -0
- package/dist/cli/commands/heartbeat-commands.js +76 -5
- package/dist/cli/commands/heartbeat-watch-command.d.ts +31 -0
- package/dist/cli/commands/heartbeat-watch-command.js +146 -0
- package/dist/cli/commands/hook-handle.js +1 -1
- package/dist/cli/commands/hooks-commands.js +126 -10
- package/dist/cli/commands/ide-commands.js +1 -1
- package/dist/cli/commands/impact-commands.js +1 -1
- package/dist/cli/commands/job-commands.js +34 -1
- package/dist/cli/commands/lease-metrics-commands.d.ts +67 -0
- package/dist/cli/commands/lease-metrics-commands.js +231 -0
- package/dist/cli/commands/lease-stats-commands.d.ts +65 -0
- package/dist/cli/commands/lease-stats-commands.js +107 -0
- package/dist/cli/commands/legacy-commands.js +1 -1
- package/dist/cli/commands/log-commands.js +1 -1
- package/dist/cli/commands/loop-commands.js +1 -1
- package/dist/cli/commands/loop-eval-commands.js +1 -1
- package/dist/cli/commands/memory-commands.js +1 -1
- package/dist/cli/commands/migrate-1-4-1-command.js +1 -1
- package/dist/cli/commands/migrate-v2-10-to-v2-11-command.js +1 -1
- package/dist/cli/commands/mut-commands.d.ts +1 -1
- package/dist/cli/commands/mut-commands.js +1 -5
- package/dist/cli/commands/observability-commands.js +1 -1
- package/dist/cli/commands/openspec-commands.js +65 -4
- package/dist/cli/commands/perf-audit-commands.js +3 -3
- package/dist/cli/commands/perf-commands.js +1 -1
- package/dist/cli/commands/polyrepo-commands.js +1 -1
- package/dist/cli/commands/prd-blocks-commands.js +1 -1
- package/dist/cli/commands/prd-commands.js +4 -2
- package/dist/cli/commands/preferences-commands.js +23 -3
- package/dist/cli/commands/project-commands.js +1 -1
- package/dist/cli/commands/qa-business-review-commands.js +1 -1
- package/dist/cli/commands/qa-commands.d.ts +1 -1
- package/dist/cli/commands/qa-commands.js +39 -3
- package/dist/cli/commands/release-commands.d.ts +15 -0
- package/dist/cli/commands/release-commands.js +113 -21
- package/dist/cli/commands/request-commands.js +1 -1
- package/dist/cli/commands/retrospective-commands.js +1 -1
- package/dist/cli/commands/reviewer-commands.js +1 -1
- package/dist/cli/commands/role-commands.js +1 -1
- package/dist/cli/commands/runtime-commands-helpers.d.ts +7 -0
- package/dist/cli/commands/runtime-commands-helpers.js +24 -0
- package/dist/cli/commands/runtime-commands.js +1 -2
- package/dist/cli/commands/sc-commands.js +4 -2
- package/dist/cli/commands/scan-commands.js +1 -1
- package/dist/cli/commands/security-audit-commands.js +3 -3
- package/dist/cli/commands/sediment-commands.js +10 -1
- package/dist/cli/commands/session-24h-mode.d.ts +26 -0
- package/dist/cli/commands/session-24h-mode.js +196 -0
- package/dist/cli/commands/share-commands.d.ts +19 -0
- package/dist/cli/commands/share-commands.js +121 -2
- package/dist/cli/commands/skill-conformance-commands.js +1 -1
- package/dist/cli/commands/skill-loop-engineering-readiness-commands.js +1 -1
- package/dist/cli/commands/skill-search-commands.js +4 -1
- package/dist/cli/commands/slice-commands.js +1 -1
- package/dist/cli/commands/slice-integrate-commands.js +1 -1
- package/dist/cli/commands/slice-review-commands.js +1 -1
- package/dist/cli/commands/smoke-commands.js +1 -1
- package/dist/cli/commands/sop-commands.js +1 -1
- package/dist/cli/commands/spill-demo-command.d.ts +7 -0
- package/dist/cli/commands/spill-demo-command.js +29 -0
- package/dist/cli/commands/statusline-commands.d.ts +12 -0
- package/dist/cli/commands/statusline-commands.js +79 -17
- package/dist/cli/commands/sub-agent-commands.js +2 -1
- package/dist/cli/commands/sub-agent-shared.d.ts +10 -0
- package/dist/cli/commands/sub-agent-shared.js +24 -1
- package/dist/cli/commands/swarm-commands.d.ts +13 -0
- package/dist/cli/commands/swarm-commands.js +77 -0
- package/dist/cli/commands/tech-commands.d.ts +64 -0
- package/dist/cli/commands/tech-commands.js +195 -0
- package/dist/cli/commands/understand-commands.js +1 -1
- package/dist/cli/commands/upgrade-commands.d.ts +2 -0
- package/dist/cli/commands/upgrade-commands.js +40 -5
- package/dist/cli/commands/user-touchpoint-commands.js +1 -1
- package/dist/cli/commands/verdict-aggregate-command.js +1 -1
- package/dist/cli/commands/vm-commands.d.ts +31 -0
- package/dist/cli/commands/vm-commands.js +274 -0
- package/dist/cli/commands/workflow-commands.js +24 -1
- package/dist/cli/commands/workflow-plan-commands.js +1 -1
- package/dist/cli/commands/workspace/init-command.js +1 -1
- package/dist/cli/commands/workspace/migrate-command.js +1 -1
- package/dist/cli/commands/workspace/reconcile-command.js +1 -1
- package/dist/cli/commands/worktree-auth-commands.d.ts +29 -0
- package/dist/cli/commands/worktree-auth-commands.js +652 -0
- package/dist/cli/index.js +58 -13
- package/dist/cli/program.d.ts +2 -2
- package/dist/cli/program.js +86 -281
- package/dist/services/24h-mode/decider.d.ts +103 -0
- package/dist/services/24h-mode/decider.js +144 -0
- package/dist/services/24h-mode/index.d.ts +12 -0
- package/dist/services/24h-mode/index.js +12 -0
- package/dist/services/24h-mode/state.d.ts +48 -0
- package/dist/services/24h-mode/state.js +51 -0
- package/dist/services/24h-mode/store.d.ts +27 -0
- package/dist/services/24h-mode/store.js +119 -0
- package/dist/services/artifacts/artifact-prerequisites.js +1 -1
- package/dist/services/artifacts/request-artifact-service.js +1 -1
- package/dist/services/artifacts/workspace-service.js +1 -1
- package/dist/services/audit/enforcers/lint-bee-runtime-contract.d.ts +25 -0
- package/dist/services/audit/enforcers/lint-bee-runtime-contract.js +91 -0
- package/dist/services/audit/enforcers/lint-peaks-code-runtime.d.ts +16 -0
- package/dist/services/audit/enforcers/lint-peaks-code-runtime.js +31 -0
- package/dist/services/audit/enforcers/lint-peaks-skill-runtime.d.ts +23 -0
- package/dist/services/audit/enforcers/lint-peaks-skill-runtime.js +59 -0
- package/dist/services/audit/enforcers/lint-peaks-ui-sc-txt-runtime.d.ts +28 -0
- package/dist/services/audit/enforcers/lint-peaks-ui-sc-txt-runtime.js +86 -0
- package/dist/services/audit/enforcers/lint-prd-artifact-handoff.d.ts +16 -0
- package/dist/services/audit/enforcers/lint-prd-artifact-handoff.js +41 -0
- package/dist/services/audit/enforcers/lint-prd-source-snapshot.d.ts +27 -0
- package/dist/services/audit/enforcers/lint-prd-source-snapshot.js +47 -0
- package/dist/services/audit/enforcers/lint-qa-gateguard-and-runtime.d.ts +19 -0
- package/dist/services/audit/enforcers/lint-qa-gateguard-and-runtime.js +47 -0
- package/dist/services/audit/enforcers/lint-rd-handoff-coverage.d.ts +18 -0
- package/dist/services/audit/enforcers/lint-rd-handoff-coverage.js +70 -0
- package/dist/services/audit/enforcers/lint-skill-presence-mandatory.d.ts +25 -0
- package/dist/services/audit/enforcers/lint-skill-presence-mandatory.js +53 -0
- package/dist/services/audit/red-line-catalog-p2-a.d.ts +0 -6
- package/dist/services/audit/red-line-catalog-p2-a.js +230 -1
- package/dist/services/audit/static-service.d.ts +32 -25
- package/dist/services/audit/static-service.js +30 -109
- package/dist/services/audit-independent/index.d.ts +2 -0
- package/dist/services/audit-independent/index.js +2 -0
- package/dist/services/autonomous-swarm/autonomous-swarm-service.d.ts +127 -0
- package/dist/services/autonomous-swarm/autonomous-swarm-service.js +446 -0
- package/dist/services/changeset/changeset-check-service.d.ts +22 -0
- package/dist/services/changeset/changeset-check-service.js +47 -0
- package/dist/services/code/auto-compact-modes.d.ts +30 -0
- package/dist/services/code/auto-compact-modes.js +38 -0
- package/dist/services/code/auto-compact-orchestrator.d.ts +43 -5
- package/dist/services/code/auto-compact-orchestrator.js +101 -21
- package/dist/services/code/dag-orchestrator.d.ts +30 -1
- package/dist/services/code/dag-orchestrator.js +106 -1
- package/dist/services/code/status-line-renderer.d.ts +2 -0
- package/dist/services/code/status-line-renderer.js +21 -3
- package/dist/services/code-review/ocr-service.d.ts +1 -1
- package/dist/services/code-review/ocr-service.js +6 -3
- package/dist/services/compact-history/compact-history-service.d.ts +41 -0
- package/dist/services/compact-history/compact-history-service.js +62 -0
- package/dist/services/compact-statusline/compact-statusline-service.d.ts +16 -0
- package/dist/services/compact-statusline/compact-statusline-service.js +83 -0
- package/dist/services/config/config-service.d.ts +1 -12
- package/dist/services/config/config-service.js +3 -72
- package/dist/services/config/config-types.d.ts +2 -4
- package/dist/services/config/config-types.js +1 -1
- package/dist/services/container/container-lease.d.ts +67 -0
- package/dist/services/container/container-lease.js +135 -0
- package/dist/services/context/auto-compact-dispatcher.d.ts +40 -5
- package/dist/services/context/auto-compact-dispatcher.js +32 -102
- package/dist/services/context/auto-compact-reader.js +1 -1
- package/dist/services/context/auto-compact-types.d.ts +27 -2
- package/dist/services/context/auto-compact-types.js +8 -1
- package/dist/services/context/build-dispatch-system-prompt.d.ts +75 -0
- package/dist/services/context/build-dispatch-system-prompt.js +117 -0
- package/dist/services/context/collector.d.ts +2 -2
- package/dist/services/context/context-builder.d.ts +4 -4
- package/dist/services/context/context-schema.d.ts +48 -48
- package/dist/services/context/ide-detect.d.ts +4 -0
- package/dist/services/context/ide-detect.js +24 -0
- package/dist/services/context/main-session-monitor.d.ts +1 -4
- package/dist/services/context/main-session-monitor.js +1 -24
- package/dist/services/context/memory-index-reader.d.ts +8 -0
- package/dist/services/context/memory-index-reader.js +57 -0
- package/dist/services/context/memory-lru-cache.d.ts +12 -0
- package/dist/services/context/memory-lru-cache.js +60 -0
- package/dist/services/context/memory-preflight-config.d.ts +19 -0
- package/dist/services/context/memory-preflight-config.js +25 -0
- package/dist/services/context/memory-preflight-service.d.ts +19 -0
- package/dist/services/context/memory-preflight-service.js +120 -0
- package/dist/services/context/spillover-store.d.ts +23 -0
- package/dist/services/context/spillover-store.js +155 -0
- package/dist/services/context/spillover-types.d.ts +18 -0
- package/dist/services/context/spillover-types.js +1 -0
- package/dist/services/crystallization/crystallization-service.d.ts +22 -5
- package/dist/services/crystallization/crystallization-service.js +8 -14
- package/dist/services/crystallization/crystallization-types.d.ts +6 -6
- package/dist/services/crystallization/evidence-brief-builder.d.ts +1 -1
- package/dist/services/crystallization/index.d.ts +13 -0
- package/dist/services/crystallization/index.js +13 -0
- package/dist/services/dashboard/project-dashboard-service.js +2 -2
- package/dist/services/dispatch/await-batch.d.ts +70 -0
- package/dist/services/dispatch/await-batch.js +272 -0
- package/dist/services/dispatch/batch-counter.js +1 -1
- package/dist/services/dispatch/dispatch-record-writer.d.ts +126 -4
- package/dist/services/dispatch/dispatch-record-writer.js +239 -9
- package/dist/services/dispatch/slice-dag.d.ts +46 -0
- package/dist/services/dispatch/slice-dag.js +6 -0
- package/dist/services/dispatch/stage-enum.d.ts +27 -0
- package/dist/services/dispatch/stage-enum.js +48 -0
- package/dist/services/dispatch/startup-timeout.d.ts +86 -0
- package/dist/services/dispatch/startup-timeout.js +97 -0
- package/dist/services/dispatch/sub-agent-dispatcher.js +40 -89
- package/dist/services/dispatch/test-tool-detection.d.ts +25 -1
- package/dist/services/dispatch/test-tool-detection.js +80 -0
- package/dist/services/doctor/doctor-service/checks/check-id-schema.d.ts +18 -0
- package/dist/services/doctor/doctor-service/checks/check-id-schema.js +64 -0
- package/dist/services/doctor/doctor-service/checks/codegraph-capability.d.ts +14 -0
- package/dist/services/doctor/doctor-service/checks/codegraph-capability.js +69 -0
- package/dist/services/doctor/doctor-service/checks/dist-source-version.d.ts +32 -0
- package/dist/services/doctor/doctor-service/checks/dist-source-version.js +110 -0
- package/dist/services/doctor/doctor-service/checks/gateguard-conflict.d.ts +24 -0
- package/dist/services/doctor/doctor-service/checks/gateguard-conflict.js +164 -0
- package/dist/services/doctor/doctor-service/checks/l3-memory-health.d.ts +16 -0
- package/dist/services/doctor/doctor-service/checks/l3-memory-health.js +57 -0
- package/dist/services/doctor/doctor-service/checks/l3-orphan-sessions.d.ts +19 -0
- package/dist/services/doctor/doctor-service/checks/l3-orphan-sessions.js +66 -0
- package/dist/services/doctor/doctor-service/checks/schema-validity.d.ts +10 -0
- package/dist/services/doctor/doctor-service/checks/schema-validity.js +33 -0
- package/dist/services/doctor/doctor-service/checks/skill-apply-note.d.ts +20 -0
- package/dist/services/doctor/doctor-service/checks/skill-apply-note.js +85 -0
- package/dist/services/doctor/doctor-service/checks/skill-existence.d.ts +13 -0
- package/dist/services/doctor/doctor-service/checks/skill-existence.js +30 -0
- package/dist/services/doctor/doctor-service/checks/skill-name-match.d.ts +10 -0
- package/dist/services/doctor/doctor-service/checks/skill-name-match.js +25 -0
- package/dist/services/doctor/doctor-service/checks/skill-parse.d.ts +10 -0
- package/dist/services/doctor/doctor-service/checks/skill-parse.js +19 -0
- package/dist/services/doctor/doctor-service/checks/skill-presence.d.ts +21 -0
- package/dist/services/doctor/doctor-service/checks/skill-presence.js +75 -0
- package/dist/services/doctor/doctor-service/checks/skill-runbook.d.ts +14 -0
- package/dist/services/doctor/doctor-service/checks/skill-runbook.js +47 -0
- package/dist/services/doctor/doctor-service/checks/statusline-install.d.ts +14 -0
- package/dist/services/doctor/doctor-service/checks/statusline-install.js +32 -0
- package/dist/services/doctor/doctor-service/checks/statusline-runtime.d.ts +13 -0
- package/dist/services/doctor/doctor-service/checks/statusline-runtime.js +30 -0
- package/dist/services/doctor/doctor-service/checks/user-config.d.ts +11 -0
- package/dist/services/doctor/doctor-service/checks/user-config.js +27 -0
- package/dist/services/doctor/doctor-service/checks/workspace-init.d.ts +16 -0
- package/dist/services/doctor/doctor-service/checks/workspace-init.js +34 -0
- package/dist/services/doctor/doctor-service/checks/workspace-layout.d.ts +33 -0
- package/dist/services/doctor/doctor-service/checks/workspace-layout.js +180 -0
- package/dist/services/doctor/doctor-service/index.d.ts +48 -0
- package/dist/services/doctor/doctor-service/index.js +254 -0
- package/dist/services/doctor/doctor-service/plugin-registry.d.ts +41 -0
- package/dist/services/doctor/doctor-service/plugin-registry.js +77 -0
- package/dist/services/doctor/doctor-service/report/final-summary.d.ts +20 -0
- package/dist/services/doctor/doctor-service/report/final-summary.js +29 -0
- package/dist/services/doctor/doctor-service/types.d.ts +245 -0
- package/dist/services/doctor/doctor-service/types.js +15 -0
- package/dist/services/doctor/doctor-service.d.ts +15 -146
- package/dist/services/doctor/doctor-service.js +22 -926
- package/dist/services/doctor/index.d.ts +22 -0
- package/dist/services/doctor/index.js +22 -0
- package/dist/services/env/shell-probe.d.ts +71 -0
- package/dist/services/env/shell-probe.js +161 -0
- package/dist/services/evolution/evolution-types.d.ts +39 -39
- package/dist/services/final-review/final-review-service.d.ts +11 -1
- package/dist/services/final-review/index.d.ts +2 -0
- package/dist/services/final-review/index.js +1 -0
- package/dist/services/hooks/auto-compact-hook-install.d.ts +4 -5
- package/dist/services/hooks/auto-compact-hook-install.js +4 -5
- package/dist/services/hooks/worktree-authorization-gate.d.ts +205 -0
- package/dist/services/hooks/worktree-authorization-gate.js +492 -0
- package/dist/services/ide/adapters/claude-code-adapter.js +2 -2
- package/dist/services/ide/adapters/qoder-adapter.d.ts +25 -0
- package/dist/services/ide/adapters/qoder-adapter.js +57 -0
- package/dist/services/ide/adapters/tongyi-lingma-adapter.d.ts +16 -0
- package/dist/services/ide/adapters/tongyi-lingma-adapter.js +45 -0
- package/dist/services/ide/ide-registry.js +6 -0
- package/dist/services/ide/ide-types.d.ts +1 -1
- package/dist/services/job/job-types.d.ts +56 -56
- package/dist/services/job-snapshot/index.d.ts +8 -0
- package/dist/services/job-snapshot/index.js +7 -0
- package/dist/services/{job/job-resource-snapshot.d.ts → job-snapshot/snapshot.d.ts} +1 -1
- package/dist/services/job-snapshot/types.d.ts +7 -0
- package/dist/services/job-snapshot/types.js +1 -0
- package/dist/services/karpathy-cost/karpathy-cost-check-service.d.ts +67 -0
- package/dist/services/karpathy-cost/karpathy-cost-check-service.js +108 -0
- package/dist/services/log/retention.d.ts +16 -0
- package/dist/services/log/retention.js +17 -0
- package/dist/services/loop/loop-bee-relation-types.d.ts +6 -6
- package/dist/services/loop/loop-release-types.d.ts +24 -24
- package/dist/services/loop/monotonic-runner.d.ts +17 -11
- package/dist/services/loop/monotonic-runner.js +118 -79
- package/dist/services/memory/project-memory-service/index/kind-dispatch.d.ts +8 -0
- package/dist/services/memory/project-memory-service/index/kind-dispatch.js +253 -0
- package/dist/services/memory/project-memory-service/index/ranking.d.ts +6 -0
- package/dist/services/memory/project-memory-service/index/ranking.js +171 -0
- package/dist/services/memory/project-memory-service/index/search.d.ts +34 -0
- package/dist/services/memory/project-memory-service/index/search.js +194 -0
- package/dist/services/memory/project-memory-service/index.d.ts +9 -0
- package/dist/services/memory/project-memory-service/index.js +24 -0
- package/dist/services/memory/project-memory-service/parsers/frontmatter.d.ts +9 -0
- package/dist/services/memory/project-memory-service/parsers/frontmatter.js +106 -0
- package/dist/services/memory/project-memory-service/parsers/markdown-pure.d.ts +7 -0
- package/dist/services/memory/project-memory-service/parsers/markdown-pure.js +96 -0
- package/dist/services/memory/project-memory-service/store/atomic-write.d.ts +5 -0
- package/dist/services/memory/project-memory-service/store/atomic-write.js +56 -0
- package/dist/services/memory/project-memory-service/store/paths.d.ts +8 -0
- package/dist/services/memory/project-memory-service/store/paths.js +116 -0
- package/dist/services/memory/project-memory-service/types.d.ts +128 -0
- package/dist/services/memory/project-memory-service/types.js +9 -0
- package/dist/services/memory/project-memory-service.d.ts +1 -167
- package/dist/services/memory/project-memory-service.js +19 -816
- package/dist/services/migrate-skill-name/schema.d.ts +2 -2
- package/dist/services/observability/aggregation.d.ts +27 -0
- package/dist/services/observability/aggregation.js +72 -0
- package/dist/services/observability/observability-service.d.ts +73 -7
- package/dist/services/observability/observability-service.js +87 -1
- package/dist/services/openspec/artifact-boundary.d.ts +138 -0
- package/dist/services/openspec/artifact-boundary.js +150 -0
- package/dist/services/openspec/coverage-evidence-reader.d.ts +191 -0
- package/dist/services/openspec/coverage-evidence-reader.js +386 -0
- package/dist/services/openspec/openspec-archive-service.d.ts +70 -0
- package/dist/services/openspec/openspec-archive-service.js +320 -8
- package/dist/services/openspec/openspec-bridge-service.js +1 -1
- package/dist/services/openspec/openspec-init-service.js +1 -1
- package/dist/services/openspec/openspec-propose-from-doctor-service.js +1 -1
- package/dist/services/openspec/openspec-render-service.js +7 -4
- package/dist/services/openspec/openspec-scan-service.js +1 -1
- package/dist/services/openspec/openspec-validate-service.js +5 -4
- package/dist/services/preferences/preferences-service.js +10 -0
- package/dist/services/preferences/preferences-types.d.ts +13 -0
- package/dist/services/preferences/preferences-types.js +11 -0
- package/dist/services/qa/screenshot-archive-service.d.ts +51 -0
- package/dist/services/qa/screenshot-archive-service.js +134 -0
- package/dist/services/rd/rd-service.js +10 -11
- package/dist/services/rd/types.d.ts +32 -32
- package/dist/services/rd-swarm/rd-swarm-service.d.ts +60 -0
- package/dist/services/rd-swarm/rd-swarm-service.js +93 -0
- package/dist/services/recommendations/capability-seed-items.js +0 -1
- package/dist/services/recommendations/capability-seed-mappings.js +0 -1
- package/dist/services/recommendations/capability-seed-sources.js +0 -1
- package/dist/services/release/version-precheck-service.d.ts +51 -0
- package/dist/services/release/version-precheck-service.js +257 -0
- package/dist/services/scan/acceptance-coverage-service.js +1 -1
- package/dist/services/scan/archetype-service.js +1 -1
- package/dist/services/scan/existing-system-service.js +1 -1
- package/dist/services/scan/libraries-service.js +1 -1
- package/dist/services/sediment/json-schema.d.ts +40 -40
- package/dist/services/share/bundle-types.d.ts +12 -12
- package/dist/services/share/run-state-contract.d.ts +2 -2
- package/dist/services/skill/skill-search-service.d.ts +12 -7
- package/dist/services/skill/skill-search-service.js +8 -4
- package/dist/services/skillhub/migrations/001-initial.sql +71 -0
- package/dist/services/skillhub/migrations/002-loop-release.sql +32 -0
- package/dist/services/skillhub/migrations/003-loop-bee-relation.sql +35 -0
- package/dist/services/skillhub/migrations/004-loop-bee-extension.sql +65 -0
- package/dist/services/skillhub/migrations/005-evolution-evaluation.sql +81 -0
- package/dist/services/skillhub/migrations/006-crystallization-event.sql +92 -0
- package/dist/services/skills/hooks-settings-service.d.ts +75 -0
- package/dist/services/skills/hooks-settings-service.js +230 -2
- package/dist/services/skills/skill-registry.d.ts +1 -0
- package/dist/services/skills/skill-registry.js +6 -4
- package/dist/services/skills/skill-runbook-service.js +1 -1
- package/dist/services/slice/slice-check-service.js +1 -1
- package/dist/services/standards/main-session-monitor-ban-hook.d.ts +14 -0
- package/dist/services/standards/main-session-monitor-ban-hook.js +19 -0
- package/dist/services/standards/missing-standards-detector.d.ts +25 -0
- package/dist/services/standards/missing-standards-detector.js +43 -12
- package/dist/services/tech/tech-change-id-service.d.ts +82 -0
- package/dist/services/tech/tech-change-id-service.js +117 -0
- package/dist/services/understand/understand-hybrid-service.js +1 -1
- package/dist/services/understand/understand-scan-service.js +2 -2
- package/dist/services/upgrade/upgrade-service.js +4 -3
- package/dist/services/verdict/envelopes.d.ts +2 -2
- package/dist/services/verdict/envelopes.js +2 -2
- package/dist/services/verdict/verdict-aggregator.d.ts +3 -3
- package/dist/services/vm/vm-lease.d.ts +40 -0
- package/dist/services/vm/vm-lease.js +137 -0
- package/dist/services/workflow/autonomous-resume-writer.js +1 -1
- package/dist/services/workflow/pipeline-verify-gate-support.d.ts +47 -0
- package/dist/services/workflow/pipeline-verify-gate-support.js +194 -0
- package/dist/services/workflow/pipeline-verify-service.d.ts +17 -81
- package/dist/services/workflow/pipeline-verify-service.js +42 -218
- package/dist/services/workflow/pipeline-verify-types.d.ts +90 -0
- package/dist/services/workflow/pipeline-verify-types.js +10 -0
- package/dist/services/workflow/plan-reader.d.ts +1 -1
- package/dist/services/workflow/plan-reader.js +1 -1
- package/dist/services/workflow/plan-refresher.d.ts +1 -1
- package/dist/services/workflow/plan-refresher.js +1 -1
- package/dist/services/workflow/plan-trigger-detector.d.ts +1 -1
- package/dist/services/workflow/plan-trigger-detector.js +1 -1
- package/dist/services/workflow/workflow-autonomous-resume-helpers.d.ts +1 -1
- package/dist/services/workflow/workflow-autonomous-service.d.ts +2 -98
- package/dist/services/workflow/workflow-autonomous-types.d.ts +114 -0
- package/dist/services/workflow/workflow-autonomous-types.js +21 -0
- package/dist/services/workflow/workflow-router-service.js +18 -16
- package/dist/services/workflow/workflow-spec-lint.d.ts +13 -0
- package/dist/services/workflow/workflow-spec-lint.js +75 -0
- package/dist/services/workflow/workflow-spec-types.d.ts +100 -0
- package/dist/services/workflow/workflow-spec-types.js +13 -0
- package/dist/services/workflow/workflow-spec-yaml.d.ts +17 -0
- package/dist/services/workflow/workflow-spec-yaml.js +88 -0
- package/dist/services/workflow/workflow-spec.d.ts +11 -91
- package/dist/services/workflow/workflow-spec.js +16 -145
- package/dist/services/workspace/migrate-service.js +1 -1
- package/dist/services/workspace/workspace-service.js +1 -1
- package/dist/services/worktree/worktree-lease.d.ts +170 -0
- package/dist/services/worktree/worktree-lease.js +242 -0
- package/package.json +47 -51
- package/scripts/clean-dist.mjs +31 -1
- package/scripts/copy-templates.mjs +16 -0
- package/scripts/sync-version.mjs +53 -2
- package/skills/bee/peaks-perf-audit/SKILL.md +17 -0
- package/skills/bee/peaks-prd/SKILL.md +16 -0
- package/skills/bee/peaks-prd/test-prompts.json +12 -0
- package/skills/bee/peaks-qa/SKILL.md +16 -1
- package/skills/bee/peaks-qa/references/qa-sub-agent-dispatch.md +22 -0
- package/skills/bee/peaks-qa/test-prompts.json +12 -0
- package/skills/bee/peaks-rd/SKILL.md +29 -20
- package/skills/bee/peaks-rd/references/rd-sub-agent-dispatch.md +39 -0
- package/skills/bee/peaks-rd/test-prompts.json +12 -0
- package/skills/bee/peaks-reviewer/SKILL.md +17 -0
- package/skills/bee/peaks-sc/SKILL.md +16 -0
- package/skills/bee/peaks-security-audit/SKILL.md +17 -0
- package/skills/bee/peaks-txt/SKILL.md +16 -0
- package/skills/bee/peaks-txt/test-prompts.json +12 -0
- package/skills/bee/peaks-ui/SKILL.md +49 -43
- package/skills/bee/peaks-ui/test-prompts.json +12 -0
- package/skills/peaks-code/SKILL.md +54 -109
- package/skills/peaks-code/references/boundaries.md +15 -1
- package/skills/peaks-code/references/cron-scheduler-deployment.md +313 -0
- package/skills/peaks-code/references/external-skill-invocation.md +27 -0
- package/skills/peaks-code/references/lease-dashboard.html +224 -0
- package/skills/peaks-code/references/lease-stats.sample.json +26 -0
- package/skills/peaks-code/references/peaks-worktree-l2-enforcers.md +208 -0
- package/skills/peaks-code/references/periodic-checkpoint.md +4 -4
- package/skills/peaks-code/references/runbook.md +63 -1
- package/skills/peaks-code/references/startup-sequence.md +110 -0
- package/skills/peaks-code/references/step-0-8-gate.md +1 -1
- package/skills/peaks-code/references/sub-agent-dispatch.md +92 -1
- package/skills/peaks-code/references/worktree-governance.md +123 -0
- package/skills/peaks-code/test-prompts.json +12 -0
- package/skills/peaks-doctor/SKILL.md +1 -1
- package/skills/peaks-ide/SKILL.md +1 -1
- package/skills/peaks-solo/SKILL.md +21 -0
- package/skills/peaks-solo/references/triage-decision-table.md +6 -0
- package/skills/peaks-sop/test-prompts.json +17 -0
- package/dist/cli/commands/agent-commands.d.ts +0 -20
- package/dist/cli/commands/agent-commands.js +0 -48
- package/dist/cli/commands/classify-classify-commands.d.ts +0 -19
- package/dist/cli/commands/classify-classify-commands.js +0 -151
- package/dist/cli/commands/contract-commands.d.ts +0 -26
- package/dist/cli/commands/contract-commands.js +0 -114
- package/dist/cli/commands/session-auto-compact-hook-command.d.ts +0 -37
- package/dist/cli/commands/session-auto-compact-hook-command.js +0 -127
- package/dist/cli/commands/worker-commands.d.ts +0 -3
- package/dist/cli/commands/worker-commands.js +0 -52
- package/dist/services/agent/ecc-agent-service.d.ts +0 -47
- package/dist/services/agent/ecc-agent-service.js +0 -143
- package/dist/services/config/provider-service.d.ts +0 -48
- package/dist/services/config/provider-service.js +0 -143
- package/dist/services/context/dispatch-context-guard.d.ts +0 -27
- package/dist/services/context/dispatch-context-guard.js +0 -192
- package/dist/services/context/shared-channel.d.ts +0 -93
- package/dist/services/context/shared-channel.js +0 -308
- package/dist/services/filesystem/file-lock.d.ts +0 -11
- package/dist/services/filesystem/file-lock.js +0 -152
- package/dist/services/mut/assert-scanner.d.ts +0 -6
- package/dist/services/mut/assert-scanner.js +0 -116
- package/dist/services/mut/index.d.ts +0 -8
- package/dist/services/mut/index.js +0 -7
- package/dist/services/mut/mut-runner.d.ts +0 -39
- package/dist/services/mut/mut-runner.js +0 -29
- package/dist/services/mut/production-stryker.d.ts +0 -2
- package/dist/services/mut/production-stryker.js +0 -75
- package/dist/services/mut/report-builder.d.ts +0 -11
- package/dist/services/mut/report-builder.js +0 -110
- package/dist/services/mut/report-loader.d.ts +0 -31
- package/dist/services/mut/report-loader.js +0 -78
- package/dist/services/mut/thresholds.d.ts +0 -21
- package/dist/services/mut/thresholds.js +0 -22
- package/dist/services/mut/types.d.ts +0 -336
- package/dist/services/mut/types.js +0 -59
- package/dist/services/providers/minimax-provider-service.d.ts +0 -24
- package/dist/services/providers/minimax-provider-service.js +0 -143
- package/dist/services/providers/minimax-worker-service.d.ts +0 -21
- package/dist/services/providers/minimax-worker-service.js +0 -83
- package/dist/shared/fs.d.ts +0 -4
- package/dist/shared/fs.js +0 -26
- package/dist/shared/paths.d.ts +0 -6
- package/dist/shared/paths.js +0 -50
- package/dist/shared/result.d.ts +0 -22
- package/dist/shared/result.js +0 -46
- package/dist/shared/version.d.ts +0 -1
- package/dist/shared/version.js +0 -1
- package/examples/video-demo/README.md +0 -142
- package/examples/video-demo/out/en-closing-960.png +0 -0
- package/examples/video-demo/out/zh-closing-960.png +0 -0
- package/examples/video-demo/preview/peaks-loop-demo-en.mp4 +0 -0
- package/examples/video-demo/preview/peaks-loop-demo.mp4 +0 -0
- /package/dist/services/{job/job-resource-snapshot.js → job-snapshot/snapshot.js} +0 -0
|
@@ -16,13 +16,13 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
16
16
|
hash: z.ZodString;
|
|
17
17
|
}, "strip", z.ZodTypeAny, {
|
|
18
18
|
path: string;
|
|
19
|
-
kind: "doc" | "source" | "test" | "config";
|
|
20
19
|
lines: number;
|
|
20
|
+
kind: "doc" | "source" | "config" | "test";
|
|
21
21
|
hash: string;
|
|
22
22
|
}, {
|
|
23
23
|
path: string;
|
|
24
|
-
kind: "doc" | "source" | "test" | "config";
|
|
25
24
|
lines: number;
|
|
25
|
+
kind: "doc" | "source" | "config" | "test";
|
|
26
26
|
hash: string;
|
|
27
27
|
}>, "many">;
|
|
28
28
|
gitStatus: z.ZodObject<{
|
|
@@ -68,6 +68,12 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
68
68
|
resolved: string;
|
|
69
69
|
}>>;
|
|
70
70
|
}, "strip", z.ZodTypeAny, {
|
|
71
|
+
files: {
|
|
72
|
+
path: string;
|
|
73
|
+
lines: number;
|
|
74
|
+
kind: "doc" | "source" | "config" | "test";
|
|
75
|
+
hash: string;
|
|
76
|
+
}[];
|
|
71
77
|
deps: Record<string, {
|
|
72
78
|
version: string;
|
|
73
79
|
source: "package.json" | "pnpm-lock.yaml" | "yarn.lock";
|
|
@@ -78,12 +84,6 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
78
84
|
branch: string;
|
|
79
85
|
lastCommit: string;
|
|
80
86
|
};
|
|
81
|
-
files: {
|
|
82
|
-
path: string;
|
|
83
|
-
kind: "doc" | "source" | "test" | "config";
|
|
84
|
-
lines: number;
|
|
85
|
-
hash: string;
|
|
86
|
-
}[];
|
|
87
87
|
memoryEntries: {
|
|
88
88
|
path: string;
|
|
89
89
|
title: string;
|
|
@@ -91,6 +91,12 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
91
91
|
excerptHash: string;
|
|
92
92
|
}[];
|
|
93
93
|
}, {
|
|
94
|
+
files: {
|
|
95
|
+
path: string;
|
|
96
|
+
lines: number;
|
|
97
|
+
kind: "doc" | "source" | "config" | "test";
|
|
98
|
+
hash: string;
|
|
99
|
+
}[];
|
|
94
100
|
deps: Record<string, {
|
|
95
101
|
version: string;
|
|
96
102
|
source: "package.json" | "pnpm-lock.yaml" | "yarn.lock";
|
|
@@ -101,12 +107,6 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
101
107
|
branch: string;
|
|
102
108
|
lastCommit: string;
|
|
103
109
|
};
|
|
104
|
-
files: {
|
|
105
|
-
path: string;
|
|
106
|
-
kind: "doc" | "source" | "test" | "config";
|
|
107
|
-
lines: number;
|
|
108
|
-
hash: string;
|
|
109
|
-
}[];
|
|
110
110
|
memoryEntries: {
|
|
111
111
|
path: string;
|
|
112
112
|
title: string;
|
|
@@ -138,8 +138,8 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
138
138
|
stale: z.ZodBoolean;
|
|
139
139
|
}, "strip", z.ZodTypeAny, {
|
|
140
140
|
version: string;
|
|
141
|
-
source: "local-cache" | "remote-fetch";
|
|
142
141
|
stale: boolean;
|
|
142
|
+
source: "local-cache" | "remote-fetch";
|
|
143
143
|
dep: string;
|
|
144
144
|
fetchedAt: string;
|
|
145
145
|
contentHash: string;
|
|
@@ -151,8 +151,8 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
151
151
|
url?: string | undefined;
|
|
152
152
|
}, {
|
|
153
153
|
version: string;
|
|
154
|
-
source: "local-cache" | "remote-fetch";
|
|
155
154
|
stale: boolean;
|
|
155
|
+
source: "local-cache" | "remote-fetch";
|
|
156
156
|
dep: string;
|
|
157
157
|
fetchedAt: string;
|
|
158
158
|
contentHash: string;
|
|
@@ -167,21 +167,21 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
167
167
|
dep: z.ZodString;
|
|
168
168
|
reason: z.ZodEnum<["unconfigured", "network_error", "version_unknown"]>;
|
|
169
169
|
}, "strip", z.ZodTypeAny, {
|
|
170
|
-
dep: string;
|
|
171
170
|
reason: "unconfigured" | "network_error" | "version_unknown";
|
|
172
|
-
}, {
|
|
173
171
|
dep: string;
|
|
172
|
+
}, {
|
|
174
173
|
reason: "unconfigured" | "network_error" | "version_unknown";
|
|
174
|
+
dep: string;
|
|
175
175
|
}>, "many">;
|
|
176
176
|
}, "strip", z.ZodTypeAny, {
|
|
177
177
|
skipped: {
|
|
178
|
-
dep: string;
|
|
179
178
|
reason: "unconfigured" | "network_error" | "version_unknown";
|
|
179
|
+
dep: string;
|
|
180
180
|
}[];
|
|
181
181
|
fetchedDocs: {
|
|
182
182
|
version: string;
|
|
183
|
-
source: "local-cache" | "remote-fetch";
|
|
184
183
|
stale: boolean;
|
|
184
|
+
source: "local-cache" | "remote-fetch";
|
|
185
185
|
dep: string;
|
|
186
186
|
fetchedAt: string;
|
|
187
187
|
contentHash: string;
|
|
@@ -194,13 +194,13 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
194
194
|
}[];
|
|
195
195
|
}, {
|
|
196
196
|
skipped: {
|
|
197
|
-
dep: string;
|
|
198
197
|
reason: "unconfigured" | "network_error" | "version_unknown";
|
|
198
|
+
dep: string;
|
|
199
199
|
}[];
|
|
200
200
|
fetchedDocs: {
|
|
201
201
|
version: string;
|
|
202
|
-
source: "local-cache" | "remote-fetch";
|
|
203
202
|
stale: boolean;
|
|
203
|
+
source: "local-cache" | "remote-fetch";
|
|
204
204
|
dep: string;
|
|
205
205
|
fetchedAt: string;
|
|
206
206
|
contentHash: string;
|
|
@@ -222,17 +222,17 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
222
222
|
timeDecayScore: z.ZodNumber;
|
|
223
223
|
tags: z.ZodArray<z.ZodString, "many">;
|
|
224
224
|
}, "strip", z.ZodTypeAny, {
|
|
225
|
+
id: string;
|
|
225
226
|
kind: "git" | "code" | "doc" | "memory";
|
|
226
227
|
tags: string[];
|
|
227
|
-
id: string;
|
|
228
228
|
blastRadius: string[];
|
|
229
229
|
conflictScore: number;
|
|
230
230
|
timeDecayScore: number;
|
|
231
231
|
version?: string | undefined;
|
|
232
232
|
}, {
|
|
233
|
+
id: string;
|
|
233
234
|
kind: "git" | "code" | "doc" | "memory";
|
|
234
235
|
tags: string[];
|
|
235
|
-
id: string;
|
|
236
236
|
blastRadius: string[];
|
|
237
237
|
conflictScore: number;
|
|
238
238
|
timeDecayScore: number;
|
|
@@ -240,9 +240,9 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
240
240
|
}>, "many">;
|
|
241
241
|
}, "strip", z.ZodTypeAny, {
|
|
242
242
|
metadata: {
|
|
243
|
+
id: string;
|
|
243
244
|
kind: "git" | "code" | "doc" | "memory";
|
|
244
245
|
tags: string[];
|
|
245
|
-
id: string;
|
|
246
246
|
blastRadius: string[];
|
|
247
247
|
conflictScore: number;
|
|
248
248
|
timeDecayScore: number;
|
|
@@ -250,9 +250,9 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
250
250
|
}[];
|
|
251
251
|
}, {
|
|
252
252
|
metadata: {
|
|
253
|
+
id: string;
|
|
253
254
|
kind: "git" | "code" | "doc" | "memory";
|
|
254
255
|
tags: string[];
|
|
255
|
-
id: string;
|
|
256
256
|
blastRadius: string[];
|
|
257
257
|
conflictScore: number;
|
|
258
258
|
timeDecayScore: number;
|
|
@@ -267,15 +267,15 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
267
267
|
truncatedReason: z.ZodOptional<z.ZodEnum<["doc_budget_exceeded", "section_count_exceeded"]>>;
|
|
268
268
|
}, "strip", z.ZodTypeAny, {
|
|
269
269
|
sizeBytes: number;
|
|
270
|
+
truncated: boolean;
|
|
270
271
|
audience: "all" | "peaks-rd" | "peaks-qa" | "peaks-mut";
|
|
271
272
|
renderedAt: string;
|
|
272
|
-
truncated: boolean;
|
|
273
273
|
truncatedReason?: "doc_budget_exceeded" | "section_count_exceeded" | undefined;
|
|
274
274
|
}, {
|
|
275
275
|
sizeBytes: number;
|
|
276
|
+
truncated: boolean;
|
|
276
277
|
audience: "all" | "peaks-rd" | "peaks-qa" | "peaks-mut";
|
|
277
278
|
renderedAt: string;
|
|
278
|
-
truncated: boolean;
|
|
279
279
|
truncatedReason?: "doc_budget_exceeded" | "section_count_exceeded" | undefined;
|
|
280
280
|
}>;
|
|
281
281
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -284,6 +284,12 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
284
284
|
sha256: string;
|
|
285
285
|
generatedAt: string;
|
|
286
286
|
collector: {
|
|
287
|
+
files: {
|
|
288
|
+
path: string;
|
|
289
|
+
lines: number;
|
|
290
|
+
kind: "doc" | "source" | "config" | "test";
|
|
291
|
+
hash: string;
|
|
292
|
+
}[];
|
|
287
293
|
deps: Record<string, {
|
|
288
294
|
version: string;
|
|
289
295
|
source: "package.json" | "pnpm-lock.yaml" | "yarn.lock";
|
|
@@ -294,12 +300,6 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
294
300
|
branch: string;
|
|
295
301
|
lastCommit: string;
|
|
296
302
|
};
|
|
297
|
-
files: {
|
|
298
|
-
path: string;
|
|
299
|
-
kind: "doc" | "source" | "test" | "config";
|
|
300
|
-
lines: number;
|
|
301
|
-
hash: string;
|
|
302
|
-
}[];
|
|
303
303
|
memoryEntries: {
|
|
304
304
|
path: string;
|
|
305
305
|
title: string;
|
|
@@ -309,13 +309,13 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
309
309
|
};
|
|
310
310
|
docRetriever: {
|
|
311
311
|
skipped: {
|
|
312
|
-
dep: string;
|
|
313
312
|
reason: "unconfigured" | "network_error" | "version_unknown";
|
|
313
|
+
dep: string;
|
|
314
314
|
}[];
|
|
315
315
|
fetchedDocs: {
|
|
316
316
|
version: string;
|
|
317
|
-
source: "local-cache" | "remote-fetch";
|
|
318
317
|
stale: boolean;
|
|
318
|
+
source: "local-cache" | "remote-fetch";
|
|
319
319
|
dep: string;
|
|
320
320
|
fetchedAt: string;
|
|
321
321
|
contentHash: string;
|
|
@@ -329,9 +329,9 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
329
329
|
};
|
|
330
330
|
tokenizer: {
|
|
331
331
|
metadata: {
|
|
332
|
+
id: string;
|
|
332
333
|
kind: "git" | "code" | "doc" | "memory";
|
|
333
334
|
tags: string[];
|
|
334
|
-
id: string;
|
|
335
335
|
blastRadius: string[];
|
|
336
336
|
conflictScore: number;
|
|
337
337
|
timeDecayScore: number;
|
|
@@ -340,9 +340,9 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
340
340
|
};
|
|
341
341
|
renderer: {
|
|
342
342
|
sizeBytes: number;
|
|
343
|
+
truncated: boolean;
|
|
343
344
|
audience: "all" | "peaks-rd" | "peaks-qa" | "peaks-mut";
|
|
344
345
|
renderedAt: string;
|
|
345
|
-
truncated: boolean;
|
|
346
346
|
truncatedReason?: "doc_budget_exceeded" | "section_count_exceeded" | undefined;
|
|
347
347
|
};
|
|
348
348
|
}, {
|
|
@@ -351,6 +351,12 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
351
351
|
sha256: string;
|
|
352
352
|
generatedAt: string;
|
|
353
353
|
collector: {
|
|
354
|
+
files: {
|
|
355
|
+
path: string;
|
|
356
|
+
lines: number;
|
|
357
|
+
kind: "doc" | "source" | "config" | "test";
|
|
358
|
+
hash: string;
|
|
359
|
+
}[];
|
|
354
360
|
deps: Record<string, {
|
|
355
361
|
version: string;
|
|
356
362
|
source: "package.json" | "pnpm-lock.yaml" | "yarn.lock";
|
|
@@ -361,12 +367,6 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
361
367
|
branch: string;
|
|
362
368
|
lastCommit: string;
|
|
363
369
|
};
|
|
364
|
-
files: {
|
|
365
|
-
path: string;
|
|
366
|
-
kind: "doc" | "source" | "test" | "config";
|
|
367
|
-
lines: number;
|
|
368
|
-
hash: string;
|
|
369
|
-
}[];
|
|
370
370
|
memoryEntries: {
|
|
371
371
|
path: string;
|
|
372
372
|
title: string;
|
|
@@ -376,13 +376,13 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
376
376
|
};
|
|
377
377
|
docRetriever: {
|
|
378
378
|
skipped: {
|
|
379
|
-
dep: string;
|
|
380
379
|
reason: "unconfigured" | "network_error" | "version_unknown";
|
|
380
|
+
dep: string;
|
|
381
381
|
}[];
|
|
382
382
|
fetchedDocs: {
|
|
383
383
|
version: string;
|
|
384
|
-
source: "local-cache" | "remote-fetch";
|
|
385
384
|
stale: boolean;
|
|
385
|
+
source: "local-cache" | "remote-fetch";
|
|
386
386
|
dep: string;
|
|
387
387
|
fetchedAt: string;
|
|
388
388
|
contentHash: string;
|
|
@@ -396,9 +396,9 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
396
396
|
};
|
|
397
397
|
tokenizer: {
|
|
398
398
|
metadata: {
|
|
399
|
+
id: string;
|
|
399
400
|
kind: "git" | "code" | "doc" | "memory";
|
|
400
401
|
tags: string[];
|
|
401
|
-
id: string;
|
|
402
402
|
blastRadius: string[];
|
|
403
403
|
conflictScore: number;
|
|
404
404
|
timeDecayScore: number;
|
|
@@ -407,9 +407,9 @@ export declare const ContextJsonSchema: z.ZodObject<{
|
|
|
407
407
|
};
|
|
408
408
|
renderer: {
|
|
409
409
|
sizeBytes: number;
|
|
410
|
+
truncated: boolean;
|
|
410
411
|
audience: "all" | "peaks-rd" | "peaks-qa" | "peaks-mut";
|
|
411
412
|
renderedAt: string;
|
|
412
|
-
truncated: boolean;
|
|
413
413
|
truncatedReason?: "doc_budget_exceeded" | "section_count_exceeded" | undefined;
|
|
414
414
|
};
|
|
415
415
|
}>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export const IDE_KINDS = [
|
|
2
|
+
'claude-code',
|
|
3
|
+
'trae',
|
|
4
|
+
'opencode',
|
|
5
|
+
'unknown'
|
|
6
|
+
];
|
|
7
|
+
export function isIdeKind(value) {
|
|
8
|
+
return IDE_KINDS.includes(value);
|
|
9
|
+
}
|
|
10
|
+
export function detectIdeFromEnv(env = process.env) {
|
|
11
|
+
if (typeof env['CLAUDE_CODE_ENTRYPOINT'] === 'string' && env['CLAUDE_CODE_ENTRYPOINT'].length > 0) {
|
|
12
|
+
return 'claude-code';
|
|
13
|
+
}
|
|
14
|
+
if (typeof env['CLAUDE_SESSION_ID'] === 'string' && env['CLAUDE_SESSION_ID'].length > 0) {
|
|
15
|
+
return 'claude-code';
|
|
16
|
+
}
|
|
17
|
+
if (typeof env['TRAE_CLI'] === 'string' && env['TRAE_CLI'].length > 0) {
|
|
18
|
+
return 'trae';
|
|
19
|
+
}
|
|
20
|
+
if (typeof env['OPENCODE'] === 'string' && env['OPENCODE'].length > 0) {
|
|
21
|
+
return 'opencode';
|
|
22
|
+
}
|
|
23
|
+
return 'unknown';
|
|
24
|
+
}
|
|
@@ -20,12 +20,11 @@
|
|
|
20
20
|
* No inline `promptSize / 256K > 0.75` checks scattered across
|
|
21
21
|
* SKILL.md or other services.
|
|
22
22
|
*/
|
|
23
|
+
import { type IdeKind } from './ide-detect.js';
|
|
23
24
|
export type MainSessionTier = 'ok' | 'soft-warn' | 'near-limit' | 'emergency';
|
|
24
25
|
export declare const MAIN_SESSION_THRESHOLD_RATIOS: {
|
|
25
26
|
readonly [K in MainSessionTier]: number;
|
|
26
27
|
};
|
|
27
|
-
export type IdeKind = 'claude-code' | 'trae' | 'opencode' | 'unknown';
|
|
28
|
-
export declare const IDE_KINDS: readonly IdeKind[];
|
|
29
28
|
export type MainSessionTrigger = {
|
|
30
29
|
readonly kind: 'none';
|
|
31
30
|
} | {
|
|
@@ -50,8 +49,6 @@ export interface MainSessionEvaluation {
|
|
|
50
49
|
readonly capacityBytes: number;
|
|
51
50
|
readonly warnings: readonly string[];
|
|
52
51
|
}
|
|
53
|
-
export declare function isIdeKind(value: string): value is IdeKind;
|
|
54
|
-
export declare function detectIdeFromEnv(env?: NodeJS.ProcessEnv): IdeKind;
|
|
55
52
|
/**
|
|
56
53
|
* Threshold check. Pure function (no IO). `capacityBytes` is injectable
|
|
57
54
|
* for tests and future per-IDE capacity overrides. Defaults to the
|
|
@@ -21,36 +21,13 @@
|
|
|
21
21
|
* SKILL.md or other services.
|
|
22
22
|
*/
|
|
23
23
|
import { CONTEXT_CAPACITY_DEFAULT_BYTES, THRESHOLD_SOFT_WARN_RATIO, THRESHOLD_NEAR_LIMIT_RATIO, THRESHOLD_EMERGENCY_RATIO, evaluateThresholdTier } from './threshold.js';
|
|
24
|
+
import { detectIdeFromEnv } from './ide-detect.js';
|
|
24
25
|
export const MAIN_SESSION_THRESHOLD_RATIOS = {
|
|
25
26
|
ok: 0,
|
|
26
27
|
'soft-warn': THRESHOLD_SOFT_WARN_RATIO,
|
|
27
28
|
'near-limit': THRESHOLD_NEAR_LIMIT_RATIO,
|
|
28
29
|
emergency: THRESHOLD_EMERGENCY_RATIO
|
|
29
30
|
};
|
|
30
|
-
export const IDE_KINDS = [
|
|
31
|
-
'claude-code',
|
|
32
|
-
'trae',
|
|
33
|
-
'opencode',
|
|
34
|
-
'unknown'
|
|
35
|
-
];
|
|
36
|
-
export function isIdeKind(value) {
|
|
37
|
-
return IDE_KINDS.includes(value);
|
|
38
|
-
}
|
|
39
|
-
export function detectIdeFromEnv(env = process.env) {
|
|
40
|
-
if (typeof env['CLAUDE_CODE_ENTRYPOINT'] === 'string' && env['CLAUDE_CODE_ENTRYPOINT'].length > 0) {
|
|
41
|
-
return 'claude-code';
|
|
42
|
-
}
|
|
43
|
-
if (typeof env['CLAUDE_SESSION_ID'] === 'string' && env['CLAUDE_SESSION_ID'].length > 0) {
|
|
44
|
-
return 'claude-code';
|
|
45
|
-
}
|
|
46
|
-
if (typeof env['TRAE_CLI'] === 'string' && env['TRAE_CLI'].length > 0) {
|
|
47
|
-
return 'trae';
|
|
48
|
-
}
|
|
49
|
-
if (typeof env['OPENCODE'] === 'string' && env['OPENCODE'].length > 0) {
|
|
50
|
-
return 'opencode';
|
|
51
|
-
}
|
|
52
|
-
return 'unknown';
|
|
53
|
-
}
|
|
54
31
|
/**
|
|
55
32
|
* Threshold check. Pure function (no IO). `capacityBytes` is injectable
|
|
56
33
|
* for tests and future per-IDE capacity overrides. Defaults to the
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { MemoryIndexEntry } from '../memory/memory-search-service.js';
|
|
2
|
+
export declare class MemoryIndexReader {
|
|
3
|
+
private readonly projectRoot;
|
|
4
|
+
private cache;
|
|
5
|
+
constructor(projectRoot: string);
|
|
6
|
+
loadIfStale(): MemoryIndexEntry[];
|
|
7
|
+
selectFeedbackLayerA(cap: number): MemoryIndexEntry[];
|
|
8
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { existsSync, readFileSync, statSync } from 'node:fs';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
const LAYER_A_RE = /peaks-feedback-promoted:\s*layer=A\b/;
|
|
4
|
+
export class MemoryIndexReader {
|
|
5
|
+
projectRoot;
|
|
6
|
+
cache = null;
|
|
7
|
+
constructor(projectRoot) {
|
|
8
|
+
this.projectRoot = projectRoot;
|
|
9
|
+
}
|
|
10
|
+
loadIfStale() {
|
|
11
|
+
const indexPath = join(this.projectRoot, '.peaks', 'memory', 'index.json');
|
|
12
|
+
if (!existsSync(indexPath))
|
|
13
|
+
return [];
|
|
14
|
+
const { mtimeMs } = statSync(indexPath);
|
|
15
|
+
if (this.cache && this.cache.mtimeMs === mtimeMs)
|
|
16
|
+
return this.cache.entries;
|
|
17
|
+
let raw;
|
|
18
|
+
try {
|
|
19
|
+
raw = JSON.parse(readFileSync(indexPath, 'utf8'));
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
this.cache = null;
|
|
23
|
+
return [];
|
|
24
|
+
}
|
|
25
|
+
const entries = flattenIndex(raw);
|
|
26
|
+
this.cache = { mtimeMs, entries };
|
|
27
|
+
return entries;
|
|
28
|
+
}
|
|
29
|
+
selectFeedbackLayerA(cap) {
|
|
30
|
+
const all = this.loadIfStale();
|
|
31
|
+
return all
|
|
32
|
+
.filter((e) => e.kind === 'feedback')
|
|
33
|
+
.filter((e) => LAYER_A_RE.test(e.description))
|
|
34
|
+
.slice(0, Math.max(1, Math.trunc(cap)));
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
function flattenIndex(raw) {
|
|
38
|
+
if (!raw || typeof raw !== 'object')
|
|
39
|
+
return [];
|
|
40
|
+
const out = [];
|
|
41
|
+
const obj = raw;
|
|
42
|
+
for (const layer of ['hot', 'warm', 'cold']) {
|
|
43
|
+
const bucket = obj[layer];
|
|
44
|
+
if (!bucket || typeof bucket !== 'object')
|
|
45
|
+
continue;
|
|
46
|
+
for (const k of ['feedback', 'project', 'reference', 'user']) {
|
|
47
|
+
const list = bucket[k];
|
|
48
|
+
if (!Array.isArray(list))
|
|
49
|
+
continue;
|
|
50
|
+
for (const item of list) {
|
|
51
|
+
if (item && typeof item === 'object')
|
|
52
|
+
out.push(item);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return out;
|
|
57
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare class MemoryLruCache {
|
|
2
|
+
private readonly budgetBytes;
|
|
3
|
+
private readonly store;
|
|
4
|
+
private currentBytes;
|
|
5
|
+
constructor(budgetBytes: number);
|
|
6
|
+
set(key: string, body: string): void;
|
|
7
|
+
get(key: string): string | undefined;
|
|
8
|
+
delete(key: string): void;
|
|
9
|
+
size(): number;
|
|
10
|
+
private evictIfOver;
|
|
11
|
+
private evictAll;
|
|
12
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
export class MemoryLruCache {
|
|
2
|
+
budgetBytes;
|
|
3
|
+
store = new Map();
|
|
4
|
+
currentBytes = 0;
|
|
5
|
+
constructor(budgetBytes) {
|
|
6
|
+
this.budgetBytes = budgetBytes;
|
|
7
|
+
}
|
|
8
|
+
set(key, body) {
|
|
9
|
+
if (this.store.has(key))
|
|
10
|
+
this.delete(key);
|
|
11
|
+
const bytes = Buffer.byteLength(body, 'utf8');
|
|
12
|
+
if (bytes > this.budgetBytes) {
|
|
13
|
+
// Oversized insert: evict ALL existing entries (LRU order) so only
|
|
14
|
+
// the newly inserted key remains in the cache. This prevents the
|
|
15
|
+
// unbounded growth that a naive "single oversized exception" would
|
|
16
|
+
// allow when oversized values are inserted consecutively.
|
|
17
|
+
this.evictAll();
|
|
18
|
+
this.store.set(key, { body, bytes });
|
|
19
|
+
this.currentBytes += bytes;
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
this.store.set(key, { body, bytes });
|
|
23
|
+
this.currentBytes += bytes;
|
|
24
|
+
this.evictIfOver();
|
|
25
|
+
}
|
|
26
|
+
get(key) {
|
|
27
|
+
const entry = this.store.get(key);
|
|
28
|
+
if (!entry)
|
|
29
|
+
return undefined;
|
|
30
|
+
// refresh recency
|
|
31
|
+
this.store.delete(key);
|
|
32
|
+
this.store.set(key, entry);
|
|
33
|
+
return entry.body;
|
|
34
|
+
}
|
|
35
|
+
delete(key) {
|
|
36
|
+
const entry = this.store.get(key);
|
|
37
|
+
if (!entry)
|
|
38
|
+
return;
|
|
39
|
+
this.store.delete(key);
|
|
40
|
+
this.currentBytes -= entry.bytes;
|
|
41
|
+
}
|
|
42
|
+
size() {
|
|
43
|
+
return this.currentBytes;
|
|
44
|
+
}
|
|
45
|
+
evictIfOver() {
|
|
46
|
+
while (this.currentBytes > this.budgetBytes && this.store.size > 0) {
|
|
47
|
+
// Map preserves insertion order — first key is least-recently-touched
|
|
48
|
+
const oldestKey = this.store.keys().next().value;
|
|
49
|
+
if (oldestKey === undefined)
|
|
50
|
+
break;
|
|
51
|
+
this.delete(oldestKey);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
evictAll() {
|
|
55
|
+
// Empty the store; called before an oversized insert so only the new
|
|
56
|
+
// entry remains, per the eviction contract documented above.
|
|
57
|
+
this.store.clear();
|
|
58
|
+
this.currentBytes = 0;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ProjectPreferences } from '../preferences/preferences-types.js';
|
|
2
|
+
export interface MemoryPreflightConfig {
|
|
3
|
+
readonly enabled: boolean;
|
|
4
|
+
readonly maxTokens: number;
|
|
5
|
+
readonly listCap: number;
|
|
6
|
+
readonly contentCacheBytes: number;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Loose input type for `resolveMemoryPreflightConfig`. Accepts either a
|
|
10
|
+
* full `ProjectPreferences` (e.g. the output of `loadPreferences()`) or
|
|
11
|
+
* any object that at minimum carries `memoryPreflight`. Lets callers
|
|
12
|
+
* pass a partial overlay literal — e.g. `{}` or `{ memoryPreflight: {...} }`
|
|
13
|
+
* — without having to construct a fully-populated preferences fixture.
|
|
14
|
+
*
|
|
15
|
+
* Downstream tasks (orchestrator service, dispatch hook) should import
|
|
16
|
+
* this alias rather than re-deriving the structural type.
|
|
17
|
+
*/
|
|
18
|
+
export type MemoryPreflightPrefsInput = ProjectPreferences | Pick<ProjectPreferences, 'memoryPreflight'>;
|
|
19
|
+
export declare function resolveMemoryPreflightConfig(prefs: MemoryPreflightPrefsInput): MemoryPreflightConfig;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
const DEFAULTS = Object.freeze({
|
|
2
|
+
enabled: true,
|
|
3
|
+
maxTokens: 1200,
|
|
4
|
+
listCap: 12,
|
|
5
|
+
contentCacheBytes: 6000,
|
|
6
|
+
});
|
|
7
|
+
const LIST_CAP_MIN = 1;
|
|
8
|
+
const LIST_CAP_MAX = 50;
|
|
9
|
+
function asFiniteInt(value, fallback) {
|
|
10
|
+
return typeof value === 'number' && Number.isFinite(value) && value >= 0
|
|
11
|
+
? Math.trunc(value)
|
|
12
|
+
: fallback;
|
|
13
|
+
}
|
|
14
|
+
export function resolveMemoryPreflightConfig(prefs) {
|
|
15
|
+
const m = prefs.memoryPreflight ?? {};
|
|
16
|
+
const listCapRaw = asFiniteInt(m.listCap, DEFAULTS.listCap);
|
|
17
|
+
return {
|
|
18
|
+
enabled: m.enabled === false ? false : DEFAULTS.enabled,
|
|
19
|
+
maxTokens: m.maxTokens && m.maxTokens > 0 ? m.maxTokens : DEFAULTS.maxTokens,
|
|
20
|
+
listCap: Math.min(LIST_CAP_MAX, Math.max(LIST_CAP_MIN, listCapRaw)),
|
|
21
|
+
contentCacheBytes: m.contentCacheBytes && m.contentCacheBytes > 0
|
|
22
|
+
? m.contentCacheBytes
|
|
23
|
+
: DEFAULTS.contentCacheBytes,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type MemoryPreflightPrefsInput } from './memory-preflight-config.js';
|
|
2
|
+
export interface MemoryPreflightResult {
|
|
3
|
+
available: boolean;
|
|
4
|
+
block?: string;
|
|
5
|
+
feedbackListItems?: number;
|
|
6
|
+
cachedItemCount?: number;
|
|
7
|
+
reason?: string;
|
|
8
|
+
truncated?: boolean | undefined;
|
|
9
|
+
droppedCount?: number | undefined;
|
|
10
|
+
}
|
|
11
|
+
export declare class MemoryPreflightService {
|
|
12
|
+
private readonly reader;
|
|
13
|
+
private readonly config;
|
|
14
|
+
/** path -> body; sub-agent-requested memo contents (Task 4 deviation, see module header). */
|
|
15
|
+
private readonly cachedMemoContents;
|
|
16
|
+
constructor(projectRoot: string, prefs: MemoryPreflightPrefsInput);
|
|
17
|
+
cacheMemoContent(path: string, content: string): void;
|
|
18
|
+
fetchBlock(_taskTitle: string): Promise<MemoryPreflightResult>;
|
|
19
|
+
}
|