@cleocode/core 2026.9.8 → 2026.9.9
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/dist/audit/reconstruct.d.ts +13 -43
- package/dist/audit/reconstruct.d.ts.map +1 -1
- package/dist/audit/reconstruct.js +295 -290
- package/dist/audit/reconstruct.js.map +1 -1
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +8 -2
- package/dist/bootstrap.js.map +1 -1
- package/dist/dispatch/mutate-projection.d.ts.map +1 -1
- package/dist/dispatch/mutate-projection.js +12 -0
- package/dist/dispatch/mutate-projection.js.map +1 -1
- package/dist/dispatch/mvi-projection.d.ts +29 -6
- package/dist/dispatch/mvi-projection.d.ts.map +1 -1
- package/dist/dispatch/mvi-projection.js +109 -139
- package/dist/dispatch/mvi-projection.js.map +1 -1
- package/dist/docs/docs-read-model.d.ts +3 -2
- package/dist/docs/docs-read-model.d.ts.map +1 -1
- package/dist/docs/docs-read-model.js +4 -3
- package/dist/docs/docs-read-model.js.map +1 -1
- package/dist/docs/export-document.js +5100 -2297
- package/dist/docs/export-document.js.map +3 -3
- package/dist/docs/projection.d.ts +67 -0
- package/dist/docs/projection.d.ts.map +1 -0
- package/dist/docs/projection.js +370 -0
- package/dist/docs/projection.js.map +1 -0
- package/dist/doctor/acceptance-drift.d.ts +6 -2
- package/dist/doctor/acceptance-drift.d.ts.map +1 -1
- package/dist/doctor/acceptance-drift.js +43 -5
- package/dist/doctor/acceptance-drift.js.map +1 -1
- package/dist/doctor/knowledge-summary.d.ts +41 -0
- package/dist/doctor/knowledge-summary.d.ts.map +1 -0
- package/dist/doctor/knowledge-summary.js +81 -0
- package/dist/doctor/knowledge-summary.js.map +1 -0
- package/dist/doctor/knowledge.d.ts +192 -0
- package/dist/doctor/knowledge.d.ts.map +1 -0
- package/dist/doctor/knowledge.js +1864 -0
- package/dist/doctor/knowledge.js.map +1 -0
- package/dist/git/work-tree.d.ts +64 -0
- package/dist/git/work-tree.d.ts.map +1 -0
- package/dist/git/work-tree.js +111 -0
- package/dist/git/work-tree.js.map +1 -0
- package/dist/hooks/handlers/task-hooks.d.ts +8 -5
- package/dist/hooks/handlers/task-hooks.d.ts.map +1 -1
- package/dist/hooks/handlers/task-hooks.js +15 -60
- package/dist/hooks/handlers/task-hooks.js.map +1 -1
- package/dist/identity/cleo-identity.d.ts +13 -0
- package/dist/identity/cleo-identity.d.ts.map +1 -1
- package/dist/identity/cleo-identity.js +20 -6
- package/dist/identity/cleo-identity.js.map +1 -1
- package/dist/injection.d.ts.map +1 -1
- package/dist/injection.js +29 -13
- package/dist/injection.js.map +1 -1
- package/dist/internal.d.ts +2 -0
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +2 -0
- package/dist/internal.js.map +1 -1
- package/dist/lifecycle/verification/satisfies-validator.d.ts.map +1 -1
- package/dist/lifecycle/verification/satisfies-validator.js +124 -120
- package/dist/lifecycle/verification/satisfies-validator.js.map +1 -1
- package/dist/llm/plugin-facade.js +4018 -1726
- package/dist/llm/plugin-facade.js.map +3 -3
- package/dist/memory/brain-backfill.d.ts +27 -12
- package/dist/memory/brain-backfill.d.ts.map +1 -1
- package/dist/memory/brain-backfill.js +325 -134
- package/dist/memory/brain-backfill.js.map +1 -1
- package/dist/memory/brain-doctor.d.ts +21 -0
- package/dist/memory/brain-doctor.d.ts.map +1 -1
- package/dist/memory/brain-doctor.js +111 -53
- package/dist/memory/brain-doctor.js.map +1 -1
- package/dist/memory/brain-links.d.ts.map +1 -1
- package/dist/memory/brain-links.js +31 -4
- package/dist/memory/brain-links.js.map +1 -1
- package/dist/memory/brain-reasoning.d.ts.map +1 -1
- package/dist/memory/brain-reasoning.js +28 -2
- package/dist/memory/brain-reasoning.js.map +1 -1
- package/dist/memory/brain-reconciler.d.ts +14 -19
- package/dist/memory/brain-reconciler.d.ts.map +1 -1
- package/dist/memory/brain-reconciler.js +70 -97
- package/dist/memory/brain-reconciler.js.map +1 -1
- package/dist/memory/brain-search.d.ts +2 -0
- package/dist/memory/brain-search.d.ts.map +1 -1
- package/dist/memory/brain-search.js +59 -29
- package/dist/memory/brain-search.js.map +1 -1
- package/dist/memory/brain-similarity.d.ts.map +1 -1
- package/dist/memory/brain-similarity.js +5 -4
- package/dist/memory/brain-similarity.js.map +1 -1
- package/dist/memory/brain-stub-prune.d.ts +31 -9
- package/dist/memory/brain-stub-prune.d.ts.map +1 -1
- package/dist/memory/brain-stub-prune.js +65 -18
- package/dist/memory/brain-stub-prune.js.map +1 -1
- package/dist/memory/brain-writer-handlers.d.ts +10 -1
- package/dist/memory/brain-writer-handlers.d.ts.map +1 -1
- package/dist/memory/brain-writer-handlers.js +23 -3
- package/dist/memory/brain-writer-handlers.js.map +1 -1
- package/dist/memory/brain-writer-thread.d.ts +11 -1
- package/dist/memory/brain-writer-thread.d.ts.map +1 -1
- package/dist/memory/brain-writer-thread.js +87 -20
- package/dist/memory/brain-writer-thread.js.map +1 -1
- package/dist/memory/brain-writer-worker.js +8 -1
- package/dist/memory/brain-writer-worker.js.map +1 -1
- package/dist/memory/decision-cross-link.d.ts +39 -0
- package/dist/memory/decision-cross-link.d.ts.map +1 -1
- package/dist/memory/decision-cross-link.js +316 -0
- package/dist/memory/decision-cross-link.js.map +1 -1
- package/dist/memory/decisions.d.ts +4 -1
- package/dist/memory/decisions.d.ts.map +1 -1
- package/dist/memory/decisions.js +7 -24
- package/dist/memory/decisions.js.map +1 -1
- package/dist/memory/dispatch-trace.d.ts +12 -5
- package/dist/memory/dispatch-trace.d.ts.map +1 -1
- package/dist/memory/dispatch-trace.js +17 -7
- package/dist/memory/dispatch-trace.js.map +1 -1
- package/dist/memory/eligibility.d.ts +51 -0
- package/dist/memory/eligibility.d.ts.map +1 -0
- package/dist/memory/eligibility.js +77 -0
- package/dist/memory/eligibility.js.map +1 -0
- package/dist/memory/engine-compat.d.ts +2 -0
- package/dist/memory/engine-compat.d.ts.map +1 -1
- package/dist/memory/engine-compat.js +10 -0
- package/dist/memory/engine-compat.js.map +1 -1
- package/dist/memory/extraction-gate.d.ts +21 -7
- package/dist/memory/extraction-gate.d.ts.map +1 -1
- package/dist/memory/extraction-gate.js +178 -216
- package/dist/memory/extraction-gate.js.map +1 -1
- package/dist/memory/graph-auto-populate.d.ts +38 -5
- package/dist/memory/graph-auto-populate.d.ts.map +1 -1
- package/dist/memory/graph-auto-populate.js +182 -60
- package/dist/memory/graph-auto-populate.js.map +1 -1
- package/dist/memory/graph-memory-bridge.d.ts +14 -1
- package/dist/memory/graph-memory-bridge.d.ts.map +1 -1
- package/dist/memory/graph-memory-bridge.js +66 -28
- package/dist/memory/graph-memory-bridge.js.map +1 -1
- package/dist/memory/index.d.ts +1 -19
- package/dist/memory/index.d.ts.map +1 -1
- package/dist/memory/index.js +1 -50
- package/dist/memory/index.js.map +1 -1
- package/dist/memory/learnings.d.ts.map +1 -1
- package/dist/memory/learnings.js +2 -23
- package/dist/memory/learnings.js.map +1 -1
- package/dist/memory/manifest-filter.d.ts +21 -0
- package/dist/memory/manifest-filter.d.ts.map +1 -0
- package/dist/memory/manifest-filter.js +51 -0
- package/dist/memory/manifest-filter.js.map +1 -0
- package/dist/memory/manifest-ingestion.d.ts +28 -30
- package/dist/memory/manifest-ingestion.d.ts.map +1 -1
- package/dist/memory/manifest-ingestion.js +104 -235
- package/dist/memory/manifest-ingestion.js.map +1 -1
- package/dist/memory/observer-reflector.d.ts +2 -0
- package/dist/memory/observer-reflector.d.ts.map +1 -1
- package/dist/memory/observer-reflector.js +6 -49
- package/dist/memory/observer-reflector.js.map +1 -1
- package/dist/memory/patterns.d.ts +10 -0
- package/dist/memory/patterns.d.ts.map +1 -1
- package/dist/memory/patterns.js +25 -33
- package/dist/memory/patterns.js.map +1 -1
- package/dist/memory/pipeline-manifest-sqlite.d.ts +72 -9
- package/dist/memory/pipeline-manifest-sqlite.d.ts.map +1 -1
- package/dist/memory/pipeline-manifest-sqlite.js +508 -412
- package/dist/memory/pipeline-manifest-sqlite.js.map +1 -1
- package/dist/memory/retrieval/build-retrieval-bundle.d.ts.map +1 -1
- package/dist/memory/retrieval/build-retrieval-bundle.js +16 -15
- package/dist/memory/retrieval/build-retrieval-bundle.js.map +1 -1
- package/dist/memory/retrieval/fetch.d.ts +7 -0
- package/dist/memory/retrieval/fetch.d.ts.map +1 -1
- package/dist/memory/retrieval/fetch.js +14 -11
- package/dist/memory/retrieval/fetch.js.map +1 -1
- package/dist/memory/retrieval/observe.d.ts +7 -1
- package/dist/memory/retrieval/observe.d.ts.map +1 -1
- package/dist/memory/retrieval/observe.js +58 -4
- package/dist/memory/retrieval/observe.js.map +1 -1
- package/dist/memory/retrieval/search.d.ts +14 -1
- package/dist/memory/retrieval/search.d.ts.map +1 -1
- package/dist/memory/retrieval/search.js +133 -69
- package/dist/memory/retrieval/search.js.map +1 -1
- package/dist/memory/retrieval/telemetry.d.ts +31 -0
- package/dist/memory/retrieval/telemetry.d.ts.map +1 -0
- package/dist/memory/retrieval/telemetry.js +53 -0
- package/dist/memory/retrieval/telemetry.js.map +1 -0
- package/dist/nexus/analyze-orchestrator.d.ts +41 -9
- package/dist/nexus/analyze-orchestrator.d.ts.map +1 -1
- package/dist/nexus/analyze-orchestrator.js +257 -58
- package/dist/nexus/analyze-orchestrator.js.map +1 -1
- package/dist/nexus/api-contracts.d.ts +2 -6
- package/dist/nexus/api-contracts.d.ts.map +1 -1
- package/dist/nexus/api-contracts.js +11 -2
- package/dist/nexus/api-contracts.js.map +1 -1
- package/dist/nexus/context.d.ts.map +1 -1
- package/dist/nexus/context.js +14 -37
- package/dist/nexus/context.js.map +1 -1
- package/dist/nexus/diff.d.ts.map +1 -1
- package/dist/nexus/diff.js +2 -1
- package/dist/nexus/diff.js.map +1 -1
- package/dist/nexus/identity.d.ts +29 -3
- package/dist/nexus/identity.d.ts.map +1 -1
- package/dist/nexus/identity.js +63 -12
- package/dist/nexus/identity.js.map +1 -1
- package/dist/nexus/impact.d.ts +21 -19
- package/dist/nexus/impact.d.ts.map +1 -1
- package/dist/nexus/impact.js +96 -192
- package/dist/nexus/impact.js.map +1 -1
- package/dist/nexus/knowledge.d.ts +80 -0
- package/dist/nexus/knowledge.d.ts.map +1 -0
- package/dist/nexus/knowledge.js +786 -0
- package/dist/nexus/knowledge.js.map +1 -0
- package/dist/nexus/living-brain.d.ts +8 -5
- package/dist/nexus/living-brain.d.ts.map +1 -1
- package/dist/nexus/living-brain.js +252 -188
- package/dist/nexus/living-brain.js.map +1 -1
- package/dist/nexus/registry.d.ts +11 -2
- package/dist/nexus/registry.d.ts.map +1 -1
- package/dist/nexus/registry.js +144 -128
- package/dist/nexus/registry.js.map +1 -1
- package/dist/nexus/source-roots.d.ts +16 -0
- package/dist/nexus/source-roots.d.ts.map +1 -0
- package/dist/nexus/source-roots.js +174 -0
- package/dist/nexus/source-roots.js.map +1 -0
- package/dist/nexus/task-evidence.d.ts +22 -0
- package/dist/nexus/task-evidence.d.ts.map +1 -0
- package/dist/nexus/task-evidence.js +210 -0
- package/dist/nexus/task-evidence.js.map +1 -0
- package/dist/nexus/tasks-bridge.d.ts +14 -7
- package/dist/nexus/tasks-bridge.d.ts.map +1 -1
- package/dist/nexus/tasks-bridge.js +81 -40
- package/dist/nexus/tasks-bridge.js.map +1 -1
- package/dist/orchestrate/lifecycle-ops.d.ts.map +1 -1
- package/dist/orchestrate/lifecycle-ops.js +170 -120
- package/dist/orchestrate/lifecycle-ops.js.map +1 -1
- package/dist/orchestrate/query-ops.d.ts +6 -7
- package/dist/orchestrate/query-ops.d.ts.map +1 -1
- package/dist/orchestrate/query-ops.js +509 -532
- package/dist/orchestrate/query-ops.js.map +1 -1
- package/dist/orchestration/bootstrap.d.ts +15 -1
- package/dist/orchestration/bootstrap.d.ts.map +1 -1
- package/dist/orchestration/bootstrap.js +21 -10
- package/dist/orchestration/bootstrap.js.map +1 -1
- package/dist/orchestration/index.d.ts +35 -3
- package/dist/orchestration/index.d.ts.map +1 -1
- package/dist/orchestration/index.js +64 -35
- package/dist/orchestration/index.js.map +1 -1
- package/dist/orchestration/lead-rollup.d.ts +24 -1
- package/dist/orchestration/lead-rollup.d.ts.map +1 -1
- package/dist/orchestration/lead-rollup.js +31 -11
- package/dist/orchestration/lead-rollup.js.map +1 -1
- package/dist/orchestration/spawn-prompt.d.ts.map +1 -1
- package/dist/orchestration/spawn-prompt.js +16 -41
- package/dist/orchestration/spawn-prompt.js.map +1 -1
- package/dist/orchestration/unblock.d.ts +15 -1
- package/dist/orchestration/unblock.d.ts.map +1 -1
- package/dist/orchestration/unblock.js +23 -12
- package/dist/orchestration/unblock.js.map +1 -1
- package/dist/orchestration/validate-spawn.d.ts.map +1 -1
- package/dist/orchestration/validate-spawn.js +3 -3
- package/dist/orchestration/validate-spawn.js.map +1 -1
- package/dist/orchestration/waves.d.ts +29 -13
- package/dist/orchestration/waves.d.ts.map +1 -1
- package/dist/orchestration/waves.js +43 -55
- package/dist/orchestration/waves.js.map +1 -1
- package/dist/paths.d.ts +17 -163
- package/dist/paths.d.ts.map +1 -1
- package/dist/paths.js +145 -496
- package/dist/paths.js.map +1 -1
- package/dist/project-info.d.ts +2 -11
- package/dist/project-info.d.ts.map +1 -1
- package/dist/project-info.js +3 -31
- package/dist/project-info.js.map +1 -1
- package/dist/project-scope.d.ts +239 -0
- package/dist/project-scope.d.ts.map +1 -0
- package/dist/project-scope.js +473 -0
- package/dist/project-scope.js.map +1 -0
- package/dist/release/pr-evidence.d.ts +16 -3
- package/dist/release/pr-evidence.d.ts.map +1 -1
- package/dist/release/pr-evidence.js +53 -7
- package/dist/release/pr-evidence.js.map +1 -1
- package/dist/render/nexus/graph/index.d.ts.map +1 -1
- package/dist/render/nexus/graph/index.js +4 -2
- package/dist/render/nexus/graph/index.js.map +1 -1
- package/dist/render/orchestration/audit-reconstruct.d.ts +11 -0
- package/dist/render/orchestration/audit-reconstruct.d.ts.map +1 -1
- package/dist/render/orchestration/audit-reconstruct.js +21 -6
- package/dist/render/orchestration/audit-reconstruct.js.map +1 -1
- package/dist/render/tasks/show.js +2 -1
- package/dist/render/tasks/show.js.map +1 -1
- package/dist/resources/spawn-wrapper.d.ts +82 -14
- package/dist/resources/spawn-wrapper.d.ts.map +1 -1
- package/dist/resources/spawn-wrapper.js +585 -27
- package/dist/resources/spawn-wrapper.js.map +1 -1
- package/dist/selfimprove/fix-gen.js +4026 -1734
- package/dist/selfimprove/fix-gen.js.map +3 -3
- package/dist/sequence/index.d.ts.map +1 -1
- package/dist/sequence/index.js +76 -68
- package/dist/sequence/index.js.map +1 -1
- package/dist/session/canon-lint.d.ts +24 -3
- package/dist/session/canon-lint.d.ts.map +1 -1
- package/dist/session/canon-lint.js +72 -31
- package/dist/session/canon-lint.js.map +1 -1
- package/dist/session/engine-ops.d.ts +1 -4
- package/dist/session/engine-ops.d.ts.map +1 -1
- package/dist/session/engine-ops.js +6 -2
- package/dist/session/engine-ops.js.map +1 -1
- package/dist/sessions/briefing.d.ts +11 -1
- package/dist/sessions/briefing.d.ts.map +1 -1
- package/dist/sessions/briefing.js +76 -8
- package/dist/sessions/briefing.js.map +1 -1
- package/dist/sessions/handoff.d.ts +3 -1
- package/dist/sessions/handoff.d.ts.map +1 -1
- package/dist/sessions/handoff.js +2 -0
- package/dist/sessions/handoff.js.map +1 -1
- package/dist/shutdown-deadline.d.ts +24 -33
- package/dist/shutdown-deadline.d.ts.map +1 -1
- package/dist/shutdown-deadline.js +71 -14
- package/dist/shutdown-deadline.js.map +1 -1
- package/dist/shutdown.d.ts +21 -10
- package/dist/shutdown.d.ts.map +1 -1
- package/dist/shutdown.js +89 -42
- package/dist/shutdown.js.map +1 -1
- package/dist/skills/index.d.ts +1 -1
- package/dist/skills/index.d.ts.map +1 -1
- package/dist/skills/index.js +1 -1
- package/dist/skills/index.js.map +1 -1
- package/dist/skills/orchestrator/validator.d.ts +87 -20
- package/dist/skills/orchestrator/validator.d.ts.map +1 -1
- package/dist/skills/orchestrator/validator.js +330 -241
- package/dist/skills/orchestrator/validator.js.map +1 -1
- package/dist/store/agent-resolver.d.ts.map +1 -1
- package/dist/store/agent-resolver.js +16 -9
- package/dist/store/agent-resolver.js.map +1 -1
- package/dist/store/attachment-store.d.ts +4 -1
- package/dist/store/attachment-store.d.ts.map +1 -1
- package/dist/store/attachment-store.js +20 -3
- package/dist/store/attachment-store.js.map +1 -1
- package/dist/store/background-jobs.d.ts +426 -105
- package/dist/store/background-jobs.d.ts.map +1 -1
- package/dist/store/background-jobs.js +1208 -252
- package/dist/store/background-jobs.js.map +1 -1
- package/dist/store/background-ops.d.ts +145 -8
- package/dist/store/background-ops.d.ts.map +1 -1
- package/dist/store/background-ops.js +459 -15
- package/dist/store/background-ops.js.map +1 -1
- package/dist/store/backup-inspect.d.ts +48 -4
- package/dist/store/backup-inspect.d.ts.map +1 -1
- package/dist/store/backup-inspect.js +384 -4
- package/dist/store/backup-inspect.js.map +1 -1
- package/dist/store/converters.d.ts.map +1 -1
- package/dist/store/converters.js +19 -2
- package/dist/store/converters.js.map +1 -1
- package/dist/store/data-accessor.d.ts +9 -1
- package/dist/store/data-accessor.d.ts.map +1 -1
- package/dist/store/data-accessor.js +22 -5
- package/dist/store/data-accessor.js.map +1 -1
- package/dist/store/data-safety-central.d.ts.map +1 -1
- package/dist/store/data-safety-central.js +272 -232
- package/dist/store/data-safety-central.js.map +1 -1
- package/dist/store/db-helpers.d.ts +19 -3
- package/dist/store/db-helpers.d.ts.map +1 -1
- package/dist/store/db-helpers.js +42 -58
- package/dist/store/db-helpers.js.map +1 -1
- package/dist/store/dual-scope-db.d.ts +63 -4
- package/dist/store/dual-scope-db.d.ts.map +1 -1
- package/dist/store/dual-scope-db.js +166 -19
- package/dist/store/dual-scope-db.js.map +1 -1
- package/dist/store/exodus/archive.d.ts +21 -7
- package/dist/store/exodus/archive.d.ts.map +1 -1
- package/dist/store/exodus/archive.js +60 -18
- package/dist/store/exodus/archive.js.map +1 -1
- package/dist/store/exodus/migrate.d.ts.map +1 -1
- package/dist/store/exodus/migrate.js +27 -23
- package/dist/store/exodus/migrate.js.map +1 -1
- package/dist/store/exodus/on-open.d.ts +16 -27
- package/dist/store/exodus/on-open.d.ts.map +1 -1
- package/dist/store/exodus/on-open.js +121 -169
- package/dist/store/exodus/on-open.js.map +1 -1
- package/dist/store/exodus/recovery.d.ts +90 -0
- package/dist/store/exodus/recovery.d.ts.map +1 -0
- package/dist/store/exodus/recovery.js +434 -0
- package/dist/store/exodus/recovery.js.map +1 -0
- package/dist/store/exodus/types.d.ts +15 -0
- package/dist/store/exodus/types.d.ts.map +1 -1
- package/dist/store/memory-accessor.d.ts +52 -3
- package/dist/store/memory-accessor.d.ts.map +1 -1
- package/dist/store/memory-accessor.js +122 -7
- package/dist/store/memory-accessor.js.map +1 -1
- package/dist/store/nexus-sqlite.d.ts +24 -6
- package/dist/store/nexus-sqlite.d.ts.map +1 -1
- package/dist/store/nexus-sqlite.js +39 -20
- package/dist/store/nexus-sqlite.js.map +1 -1
- package/dist/store/ports/domain-binding.d.ts.map +1 -1
- package/dist/store/ports/domain-binding.js +27 -5
- package/dist/store/ports/domain-binding.js.map +1 -1
- package/dist/store/schema/background-jobs.d.ts +181 -2
- package/dist/store/schema/background-jobs.d.ts.map +1 -1
- package/dist/store/schema/background-jobs.js +27 -3
- package/dist/store/schema/background-jobs.js.map +1 -1
- package/dist/store/schema/cleo-global/skills.d.ts +2 -2
- package/dist/store/schema/cleo-project/lifecycle.d.ts +2 -2
- package/dist/store/schema/cleo-project/runtime.d.ts +1 -1
- package/dist/store/schema/cleo-project/tasks-core.d.ts +1 -1
- package/dist/store/schema/lifecycle.d.ts +2 -2
- package/dist/store/schema/skills-schema.d.ts +2 -2
- package/dist/store/schema/tasks.d.ts +1 -1
- package/dist/store/session-store.d.ts +3 -1
- package/dist/store/session-store.d.ts.map +1 -1
- package/dist/store/session-store.js +252 -207
- package/dist/store/session-store.js.map +1 -1
- package/dist/store/sqlite-data-accessor.d.ts +39 -4
- package/dist/store/sqlite-data-accessor.d.ts.map +1 -1
- package/dist/store/sqlite-data-accessor.js +689 -527
- package/dist/store/sqlite-data-accessor.js.map +1 -1
- package/dist/store/tasks-sqlite.d.ts +3 -1
- package/dist/store/tasks-sqlite.d.ts.map +1 -1
- package/dist/store/tasks-sqlite.js +309 -279
- package/dist/store/tasks-sqlite.js.map +1 -1
- package/dist/store/validation-schemas.d.ts +8 -8
- package/dist/store/writer-lease.d.ts +80 -8
- package/dist/store/writer-lease.d.ts.map +1 -1
- package/dist/store/writer-lease.js +503 -134
- package/dist/store/writer-lease.js.map +1 -1
- package/dist/system/audit.d.ts +2 -1
- package/dist/system/audit.d.ts.map +1 -1
- package/dist/system/audit.js +118 -71
- package/dist/system/audit.js.map +1 -1
- package/dist/system/backup.d.ts.map +1 -1
- package/dist/system/backup.js +5 -5
- package/dist/system/backup.js.map +1 -1
- package/dist/system/inject-generate.js +1 -1
- package/dist/task-work/index.d.ts +3 -0
- package/dist/task-work/index.d.ts.map +1 -1
- package/dist/task-work/index.js +34 -37
- package/dist/task-work/index.js.map +1 -1
- package/dist/tasks/ac-coverage-gate.d.ts.map +1 -1
- package/dist/tasks/ac-coverage-gate.js +4 -0
- package/dist/tasks/ac-coverage-gate.js.map +1 -1
- package/dist/tasks/ac-immutability.d.ts +7 -4
- package/dist/tasks/ac-immutability.d.ts.map +1 -1
- package/dist/tasks/ac-immutability.js +19 -17
- package/dist/tasks/ac-immutability.js.map +1 -1
- package/dist/tasks/ac-table.d.ts +5 -5
- package/dist/tasks/ac-table.d.ts.map +1 -1
- package/dist/tasks/ac-table.js +26 -12
- package/dist/tasks/ac-table.js.map +1 -1
- package/dist/tasks/acceptance-input.d.ts +52 -0
- package/dist/tasks/acceptance-input.d.ts.map +1 -0
- package/dist/tasks/acceptance-input.js +259 -0
- package/dist/tasks/acceptance-input.js.map +1 -0
- package/dist/tasks/add.d.ts +67 -29
- package/dist/tasks/add.d.ts.map +1 -1
- package/dist/tasks/add.js +255 -97
- package/dist/tasks/add.js.map +1 -1
- package/dist/tasks/complete.d.ts +16 -1
- package/dist/tasks/complete.d.ts.map +1 -1
- package/dist/tasks/complete.js +152 -55
- package/dist/tasks/complete.js.map +1 -1
- package/dist/tasks/decompose.d.ts +103 -0
- package/dist/tasks/decompose.d.ts.map +1 -0
- package/dist/tasks/decompose.js +224 -0
- package/dist/tasks/decompose.js.map +1 -0
- package/dist/tasks/delete.d.ts +5 -8
- package/dist/tasks/delete.d.ts.map +1 -1
- package/dist/tasks/delete.js +4 -3
- package/dist/tasks/delete.js.map +1 -1
- package/dist/tasks/dependency-check.d.ts +59 -0
- package/dist/tasks/dependency-check.d.ts.map +1 -1
- package/dist/tasks/dependency-check.js +73 -0
- package/dist/tasks/dependency-check.js.map +1 -1
- package/dist/tasks/deps-ready.d.ts +13 -1
- package/dist/tasks/deps-ready.d.ts.map +1 -1
- package/dist/tasks/deps-ready.js +16 -5
- package/dist/tasks/deps-ready.js.map +1 -1
- package/dist/tasks/engine-converters.d.ts +7 -0
- package/dist/tasks/engine-converters.d.ts.map +1 -1
- package/dist/tasks/engine-converters.js +8 -1
- package/dist/tasks/engine-converters.js.map +1 -1
- package/dist/tasks/evidence.d.ts +54 -26
- package/dist/tasks/evidence.d.ts.map +1 -1
- package/dist/tasks/evidence.js +292 -40
- package/dist/tasks/evidence.js.map +1 -1
- package/dist/tasks/find.d.ts +16 -12
- package/dist/tasks/find.d.ts.map +1 -1
- package/dist/tasks/find.js +107 -93
- package/dist/tasks/find.js.map +1 -1
- package/dist/tasks/gate-runner.d.ts +88 -14
- package/dist/tasks/gate-runner.d.ts.map +1 -1
- package/dist/tasks/gate-runner.js +596 -253
- package/dist/tasks/gate-runner.js.map +1 -1
- package/dist/tasks/hierarchy-policy.d.ts +8 -0
- package/dist/tasks/hierarchy-policy.d.ts.map +1 -1
- package/dist/tasks/hierarchy-policy.js +9 -2
- package/dist/tasks/hierarchy-policy.js.map +1 -1
- package/dist/tasks/hierarchy.d.ts +67 -1
- package/dist/tasks/hierarchy.d.ts.map +1 -1
- package/dist/tasks/hierarchy.js +81 -1
- package/dist/tasks/hierarchy.js.map +1 -1
- package/dist/tasks/index.d.ts +3 -0
- package/dist/tasks/index.d.ts.map +1 -1
- package/dist/tasks/index.js +3 -0
- package/dist/tasks/index.js.map +1 -1
- package/dist/tasks/infer-add-params.d.ts +1 -20
- package/dist/tasks/infer-add-params.d.ts.map +1 -1
- package/dist/tasks/infer-add-params.js +2 -203
- package/dist/tasks/infer-add-params.js.map +1 -1
- package/dist/tasks/list.d.ts +7 -2
- package/dist/tasks/list.d.ts.map +1 -1
- package/dist/tasks/list.js +24 -36
- package/dist/tasks/list.js.map +1 -1
- package/dist/tasks/ops.d.ts +6 -61
- package/dist/tasks/ops.d.ts.map +1 -1
- package/dist/tasks/ops.js +5 -53
- package/dist/tasks/ops.js.map +1 -1
- package/dist/tasks/plan.d.ts +15 -1
- package/dist/tasks/plan.d.ts.map +1 -1
- package/dist/tasks/plan.js +23 -25
- package/dist/tasks/plan.js.map +1 -1
- package/dist/tasks/population.d.ts +46 -0
- package/dist/tasks/population.d.ts.map +1 -0
- package/dist/tasks/population.js +88 -0
- package/dist/tasks/population.js.map +1 -0
- package/dist/tasks/reconcile-scope.d.ts +157 -0
- package/dist/tasks/reconcile-scope.d.ts.map +1 -0
- package/dist/tasks/reconcile-scope.js +242 -0
- package/dist/tasks/reconcile-scope.js.map +1 -0
- package/dist/tasks/req.d.ts +51 -12
- package/dist/tasks/req.d.ts.map +1 -1
- package/dist/tasks/req.js +125 -69
- package/dist/tasks/req.js.map +1 -1
- package/dist/tasks/session-scope.d.ts +6 -31
- package/dist/tasks/session-scope.d.ts.map +1 -1
- package/dist/tasks/session-scope.js +3 -17
- package/dist/tasks/session-scope.js.map +1 -1
- package/dist/tasks/severity-attestation.d.ts +39 -10
- package/dist/tasks/severity-attestation.d.ts.map +1 -1
- package/dist/tasks/severity-attestation.js +75 -36
- package/dist/tasks/severity-attestation.js.map +1 -1
- package/dist/tasks/task-next.d.ts +5 -0
- package/dist/tasks/task-next.d.ts.map +1 -1
- package/dist/tasks/task-next.js +10 -9
- package/dist/tasks/task-next.js.map +1 -1
- package/dist/tasks/task-reparent.d.ts.map +1 -1
- package/dist/tasks/task-reparent.js +3 -13
- package/dist/tasks/task-reparent.js.map +1 -1
- package/dist/tasks/update.d.ts +20 -43
- package/dist/tasks/update.d.ts.map +1 -1
- package/dist/tasks/update.js +64 -49
- package/dist/tasks/update.js.map +1 -1
- package/dist/validation/engine-ops.d.ts +17 -1
- package/dist/validation/engine-ops.d.ts.map +1 -1
- package/dist/validation/engine-ops.js +149 -11
- package/dist/validation/engine-ops.js.map +1 -1
- package/dist/workgraph/reparent-preflight.d.ts +1 -1
- package/dist/workgraph/reparent-preflight.d.ts.map +1 -1
- package/dist/workgraph/reparent-preflight.js +6 -1
- package/dist/workgraph/reparent-preflight.js.map +1 -1
- package/dist/workgraph/scaffold-apply.d.ts.map +1 -1
- package/dist/workgraph/scaffold-apply.js +81 -76
- package/dist/workgraph/scaffold-apply.js.map +1 -1
- package/dist/workgraph/structure-validation.d.ts +1 -1
- package/dist/workgraph/structure-validation.d.ts.map +1 -1
- package/dist/workgraph/structure-validation.js +6 -1
- package/dist/workgraph/structure-validation.js.map +1 -1
- package/migrations/drizzle-tasks/20260919180000_t12263-job-ownership-fences/migration.sql +34 -0
- package/migrations/drizzle-tasks/20260919184500_t12265-durable-pending-proposals/migration.sql +4 -0
- package/package.json +18 -13
- package/schemas/config.schema.json +2 -2
- package/templates/CLEO-INJECTION.md +103 -101
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
*
|
|
30
30
|
* Here, instead:
|
|
31
31
|
*
|
|
32
|
-
* - **Dry-run is the default.**
|
|
32
|
+
* - **Dry-run is the default.** Quarantine requires an explicit `apply`.
|
|
33
33
|
* - Only OBSERVATIONS are considered. Decisions, patterns and learnings are
|
|
34
34
|
* never touched.
|
|
35
35
|
* - A row is a candidate only if it matches a named, narrow rule AND its
|
|
@@ -53,39 +53,39 @@ export const MAX_STUB_NARRATIVE = 200;
|
|
|
53
53
|
* The prune rules, each narrow and independently justified.
|
|
54
54
|
*
|
|
55
55
|
* Every predicate is ANDed with `length(narrative) <= MAX_STUB_NARRATIVE` and
|
|
56
|
-
* `verified IS NOT 1
|
|
57
|
-
*
|
|
56
|
+
* `verified IS NOT 1`. Exact empty-hook shapes establish candidacy; short
|
|
57
|
+
* narratives with additional content are retained for agent review.
|
|
58
58
|
*/
|
|
59
59
|
export const STUB_PRUNE_RULES = [
|
|
60
60
|
{
|
|
61
61
|
id: 'status-undefined',
|
|
62
62
|
reason: 'Artefact of T12071: PostToolUse was dispatched with `newStatus` while the payload declares `status`, so every completion interpolated the literal string "undefined". Carries no information beyond the task id, which the tasks table already holds.',
|
|
63
|
-
predicate: "
|
|
63
|
+
predicate: "title LIKE 'Task complete: T%' AND narrative = 'Task ' || substr(title, 16) || ' completed with status: undefined'",
|
|
64
64
|
},
|
|
65
65
|
{
|
|
66
66
|
id: 'task-start-stub',
|
|
67
|
-
reason: '
|
|
68
|
-
predicate: "title LIKE 'Task start: T%' AND narrative
|
|
67
|
+
reason: 'Exact empty-title auto-hook record. Nonempty task-start narratives can contain substantive incident evidence and must remain available, regardless of length.',
|
|
68
|
+
predicate: "title LIKE 'Task start: T%' AND narrative IN ('Started work on ' || substr(title, 13) || ': ', 'Started work on ' || substr(title, 13) || ': undefined')",
|
|
69
69
|
},
|
|
70
70
|
{
|
|
71
71
|
id: 'task-complete-stub',
|
|
72
72
|
reason: 'Auto-hook record of the form "Task T#### completed with status: <status>". Duplicates the task row; retained only when it carries a real status AND some other content, which the length guard enforces.',
|
|
73
|
-
predicate: "title LIKE 'Task complete: T%' AND narrative
|
|
73
|
+
predicate: "title LIKE 'Task complete: T%' AND narrative IN ('Task ' || substr(title, 16) || ' completed with status: undefined', 'Task ' || substr(title, 16) || ' completed with status: done', 'Task ' || substr(title, 16) || ' completed with status: completed', 'Task ' || substr(title, 16) || ' completed with status: cancelled')",
|
|
74
74
|
},
|
|
75
75
|
];
|
|
76
76
|
/** Build the WHERE clause shared by counting, sampling and deleting. */
|
|
77
77
|
function ruleClause(rule) {
|
|
78
|
-
return `(${rule.predicate}) AND length(COALESCE(narrative, '')) <= ${MAX_STUB_NARRATIVE} AND COALESCE(verified, 0) != 1`;
|
|
78
|
+
return `(${rule.predicate}) AND length(COALESCE(narrative, '')) <= ${MAX_STUB_NARRATIVE} AND COALESCE(verified, 0) != 1 AND invalid_at IS NULL`;
|
|
79
79
|
}
|
|
80
80
|
/** Combined predicate across every rule. */
|
|
81
81
|
function allRulesClause() {
|
|
82
82
|
return STUB_PRUNE_RULES.map(ruleClause).join(' OR ');
|
|
83
83
|
}
|
|
84
84
|
/**
|
|
85
|
-
* Count, sample and
|
|
85
|
+
* Count, sample and reversibly quarantine confirmed content-free observation stubs.
|
|
86
86
|
*
|
|
87
87
|
* @param nativeDb - open handle to the database holding `brain_observations`.
|
|
88
|
-
* @param apply - when `true`,
|
|
88
|
+
* @param apply - when `true`, invalidate matched rows while retaining their content.
|
|
89
89
|
* @returns counts, per-rule breakdown and a sample of matched rows.
|
|
90
90
|
*
|
|
91
91
|
* @example
|
|
@@ -98,19 +98,27 @@ function allRulesClause() {
|
|
|
98
98
|
* @task T12073
|
|
99
99
|
*/
|
|
100
100
|
export function pruneObservationStubs(nativeDb, apply) {
|
|
101
|
-
const countAll = () => nativeDb
|
|
101
|
+
const countAll = () => nativeDb
|
|
102
|
+
.prepare('SELECT COUNT(*) AS c FROM main.brain_observations WHERE invalid_at IS NULL')
|
|
103
|
+
.get().c;
|
|
102
104
|
const before = countAll();
|
|
103
105
|
const byRule = {};
|
|
104
106
|
for (const rule of STUB_PRUNE_RULES) {
|
|
105
107
|
const row = nativeDb
|
|
106
|
-
.prepare(`SELECT COUNT(*) AS c FROM brain_observations WHERE ${ruleClause(rule)}`)
|
|
108
|
+
.prepare(`SELECT COUNT(*) AS c FROM main.brain_observations WHERE ${ruleClause(rule)}`)
|
|
107
109
|
.get();
|
|
108
110
|
byRule[rule.id] = row.c;
|
|
109
111
|
}
|
|
110
112
|
const combined = allRulesClause();
|
|
111
|
-
const matched = nativeDb
|
|
113
|
+
const matched = nativeDb
|
|
114
|
+
.prepare(`SELECT COUNT(*) AS c FROM main.brain_observations WHERE ${combined}`)
|
|
115
|
+
.get().c;
|
|
116
|
+
const candidateIds = nativeDb
|
|
117
|
+
.prepare(`SELECT id FROM main.brain_observations WHERE ${combined} ORDER BY id`)
|
|
118
|
+
.all()
|
|
119
|
+
.flatMap((row) => (typeof row.id === 'string' ? [row.id] : []));
|
|
112
120
|
const sample = nativeDb
|
|
113
|
-
.prepare(`SELECT id, title, COALESCE(narrative, '') AS narrative FROM brain_observations WHERE ${combined} LIMIT 5`)
|
|
121
|
+
.prepare(`SELECT id, title, COALESCE(narrative, '') AS narrative FROM main.brain_observations WHERE ${combined} LIMIT 5`)
|
|
114
122
|
.all();
|
|
115
123
|
if (!apply || matched === 0) {
|
|
116
124
|
return {
|
|
@@ -118,18 +126,24 @@ export function pruneObservationStubs(nativeDb, apply) {
|
|
|
118
126
|
before,
|
|
119
127
|
after: before,
|
|
120
128
|
matched,
|
|
129
|
+
candidateIds,
|
|
121
130
|
byRule,
|
|
122
131
|
sample: sample.map((r) => ({ ...r, rule: matchingRule(r.narrative, r.title) })),
|
|
123
132
|
};
|
|
124
133
|
}
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
134
|
+
const quarantinedAt = new Date().toISOString();
|
|
135
|
+
const retained = nativeDb
|
|
136
|
+
.prepare(`UPDATE main.brain_observations SET invalid_at = ? WHERE ${combined} RETURNING id`)
|
|
137
|
+
.all(quarantinedAt);
|
|
138
|
+
const quarantinedIds = retained.flatMap((row) => (typeof row.id === 'string' ? [row.id] : []));
|
|
128
139
|
return {
|
|
129
140
|
applied: true,
|
|
141
|
+
quarantinedIds,
|
|
142
|
+
quarantinedAt,
|
|
130
143
|
before,
|
|
131
144
|
after: countAll(),
|
|
132
145
|
matched,
|
|
146
|
+
candidateIds,
|
|
133
147
|
byRule,
|
|
134
148
|
sample: sample.map((r) => ({ ...r, rule: matchingRule(r.narrative, r.title) })),
|
|
135
149
|
};
|
|
@@ -137,7 +151,7 @@ export function pruneObservationStubs(nativeDb, apply) {
|
|
|
137
151
|
/**
|
|
138
152
|
* Best-effort attribution of a sampled row to the rule that matched it.
|
|
139
153
|
*
|
|
140
|
-
* Reporting only —
|
|
154
|
+
* Reporting only — quarantine uses the combined SQL predicate.
|
|
141
155
|
*
|
|
142
156
|
* @param narrative - the row's narrative text.
|
|
143
157
|
* @param title - the row's title.
|
|
@@ -152,4 +166,37 @@ function matchingRule(narrative, title) {
|
|
|
152
166
|
return 'task-complete-stub';
|
|
153
167
|
return 'unknown';
|
|
154
168
|
}
|
|
169
|
+
/**
|
|
170
|
+
* Restore only rows still bearing this quarantine receipt's timestamp.
|
|
171
|
+
* Later invalidations or edits to authority are preserved by the precondition.
|
|
172
|
+
*
|
|
173
|
+
* @param nativeDb - Canonical project database handle.
|
|
174
|
+
* @param receipt - Prior quarantine receipt with retained IDs and timestamp.
|
|
175
|
+
* @returns Count of rows restored; mismatched preconditions are left unchanged.
|
|
176
|
+
* @remarks This helper checks retained IDs and invalidation timestamps. It does
|
|
177
|
+
* not compare source-content hashes; stronger resource guards belong to the
|
|
178
|
+
* repair lifecycle. Original observation content is retained by quarantine.
|
|
179
|
+
* @example
|
|
180
|
+
* ```ts
|
|
181
|
+
* const restoredCount = restoreObservationStubs(nativeDb, quarantineReceipt);
|
|
182
|
+
* ```
|
|
183
|
+
*/
|
|
184
|
+
export function restoreObservationStubs(nativeDb, receipt) {
|
|
185
|
+
if (!receipt.quarantinedAt || !receipt.quarantinedIds?.length)
|
|
186
|
+
return 0;
|
|
187
|
+
let restored = 0;
|
|
188
|
+
const statement = nativeDb.prepare('UPDATE main.brain_observations SET invalid_at = NULL WHERE id = ? AND invalid_at = ?');
|
|
189
|
+
nativeDb.exec('SAVEPOINT restore_observation_stubs');
|
|
190
|
+
try {
|
|
191
|
+
for (const id of receipt.quarantinedIds)
|
|
192
|
+
restored += Number(statement.run(id, receipt.quarantinedAt).changes);
|
|
193
|
+
nativeDb.exec('RELEASE restore_observation_stubs');
|
|
194
|
+
return restored;
|
|
195
|
+
}
|
|
196
|
+
catch (error) {
|
|
197
|
+
nativeDb.exec('ROLLBACK TO restore_observation_stubs');
|
|
198
|
+
nativeDb.exec('RELEASE restore_observation_stubs');
|
|
199
|
+
throw error;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
155
202
|
//# sourceMappingURL=brain-stub-prune.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brain-stub-prune.js","sourceRoot":"","sources":["../../src/memory/brain-stub-prune.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAIH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAYtC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA6B;IACxD;QACE,EAAE,EAAE,kBAAkB;QACtB,MAAM,EACJ,uPAAuP;QACzP,SAAS,
|
|
1
|
+
{"version":3,"file":"brain-stub-prune.js","sourceRoot":"","sources":["../../src/memory/brain-stub-prune.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,13 +13,22 @@
|
|
|
13
13
|
* @epic T10286
|
|
14
14
|
* @saga T10281
|
|
15
15
|
*/
|
|
16
|
+
import type { OperationExecutionContext } from '@cleocode/contracts/jobs';
|
|
16
17
|
import type { BrainWriteOp, BrainWriteResult } from './brain-writer-thread.js';
|
|
17
18
|
/**
|
|
18
19
|
* Dispatch a write op to its terminal handler. Throws on failure — the worker
|
|
19
20
|
* envelope code converts the throw into an `ok:false` response.
|
|
20
21
|
*
|
|
21
22
|
* @param op - The discriminated write op.
|
|
23
|
+
* @param execution - Optional original operation lifetime and persisted document job fence.
|
|
24
|
+
* @throws Error when scope, cancellation, authority or the domain write fails.
|
|
25
|
+
* @remarks Scoped observations use their existing routing context and start no
|
|
26
|
+
* semantic enrichment. The committed result is not reclassified by late cancellation.
|
|
22
27
|
* @returns A typed `BrainWriteResult` mirroring the op's `kind`.
|
|
28
|
+
* @example
|
|
29
|
+
* ```ts
|
|
30
|
+
* const result = await handleWriteOp(op, admittedContext);
|
|
31
|
+
* ```
|
|
23
32
|
*/
|
|
24
|
-
export declare function handleWriteOp(op: BrainWriteOp): Promise<BrainWriteResult>;
|
|
33
|
+
export declare function handleWriteOp(op: BrainWriteOp, execution?: OperationExecutionContext): Promise<BrainWriteResult>;
|
|
25
34
|
//# sourceMappingURL=brain-writer-handlers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brain-writer-handlers.d.ts","sourceRoot":"","sources":["../../src/memory/brain-writer-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"brain-writer-handlers.d.ts","sourceRoot":"","sources":["../../src/memory/brain-writer-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAE1E,OAAO,KAAK,EAOV,YAAY,EACZ,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAmClC;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,aAAa,CACjC,EAAE,EAAE,YAAY,EAChB,SAAS,CAAC,EAAE,yBAAyB,GACpC,OAAO,CAAC,gBAAgB,CAAC,CAuC3B"}
|
|
@@ -54,9 +54,28 @@ function syncWorkerCleoDir(projectRoot) {
|
|
|
54
54
|
* envelope code converts the throw into an `ok:false` response.
|
|
55
55
|
*
|
|
56
56
|
* @param op - The discriminated write op.
|
|
57
|
+
* @param execution - Optional original operation lifetime and persisted document job fence.
|
|
58
|
+
* @throws Error when scope, cancellation, authority or the domain write fails.
|
|
59
|
+
* @remarks Scoped observations use their existing routing context and start no
|
|
60
|
+
* semantic enrichment. The committed result is not reclassified by late cancellation.
|
|
57
61
|
* @returns A typed `BrainWriteResult` mirroring the op's `kind`.
|
|
62
|
+
* @example
|
|
63
|
+
* ```ts
|
|
64
|
+
* const result = await handleWriteOp(op, admittedContext);
|
|
65
|
+
* ```
|
|
58
66
|
*/
|
|
59
|
-
export async function handleWriteOp(op) {
|
|
67
|
+
export async function handleWriteOp(op, execution) {
|
|
68
|
+
execution?.assertActive();
|
|
69
|
+
if (execution) {
|
|
70
|
+
if (!execution.writeFence ||
|
|
71
|
+
execution.identity.operation !== 'docs.projection' ||
|
|
72
|
+
op.kind !== 'observe' ||
|
|
73
|
+
!op.params._skipGate ||
|
|
74
|
+
op.projectRoot !== execution.identity.projectRoot) {
|
|
75
|
+
throw new Error('Scoped writer supports only authenticated document observations');
|
|
76
|
+
}
|
|
77
|
+
return handleObserve(op, execution);
|
|
78
|
+
}
|
|
60
79
|
// Re-point CLEO_DIR to the op's project root on the worker thread so all
|
|
61
80
|
// downstream `.cleo` resolution (incl. cross-db write-guards) is consistent
|
|
62
81
|
// with the main thread regardless of the worker's stale env snapshot.
|
|
@@ -85,16 +104,17 @@ export async function handleWriteOp(op) {
|
|
|
85
104
|
// ---------------------------------------------------------------------------
|
|
86
105
|
// observe — full observeBrain pipeline on the writer side.
|
|
87
106
|
// ---------------------------------------------------------------------------
|
|
88
|
-
async function handleObserve(op) {
|
|
107
|
+
async function handleObserve(op, execution) {
|
|
89
108
|
// T10351: route to the direct-write path inside observeBrain so the
|
|
90
109
|
// chokepoint actually performs the row insert. Passing `_skipQueue: true`
|
|
91
110
|
// signals observeBrain to skip the queue and write directly (preventing
|
|
92
111
|
// an infinite enqueue loop when the worker thread itself calls observeBrain).
|
|
93
112
|
const { observeBrain } = await import('./retrieval/observe.js');
|
|
113
|
+
execution?.assertActive();
|
|
94
114
|
const result = await observeBrain(op.projectRoot, {
|
|
95
115
|
...op.params,
|
|
96
116
|
_skipQueue: true,
|
|
97
|
-
});
|
|
117
|
+
}, execution);
|
|
98
118
|
return { kind: 'observe', result };
|
|
99
119
|
}
|
|
100
120
|
// ---------------------------------------------------------------------------
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brain-writer-handlers.js","sourceRoot":"","sources":["../../src/memory/brain-writer-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"brain-writer-handlers.js","sourceRoot":"","sources":["../../src/memory/brain-writer-handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,6 +43,7 @@
|
|
|
43
43
|
* @saga T10281
|
|
44
44
|
*/
|
|
45
45
|
import type { ObserveBrainParams, ObserveBrainResult } from '@cleocode/contracts';
|
|
46
|
+
import type { OperationExecutionContext, OperationExecutionTransfer } from '@cleocode/contracts/jobs';
|
|
46
47
|
import type { NewBrainDecisionRow, NewBrainLearningRow } from '../store/schema/memory-schema.js';
|
|
47
48
|
/**
|
|
48
49
|
* Discriminated union of all hot-path brain.db write operations.
|
|
@@ -155,6 +156,11 @@ export type BrainWriteResult = {
|
|
|
155
156
|
};
|
|
156
157
|
/** Outbound message envelope (main → worker). */
|
|
157
158
|
export interface WriterRequestEnvelope {
|
|
159
|
+
/**
|
|
160
|
+
* Original admitted lifetime and job fence, serialized without renewing its budget.
|
|
161
|
+
* @defaultValue undefined — legacy unscoped operation.
|
|
162
|
+
*/
|
|
163
|
+
execution?: OperationExecutionTransfer;
|
|
158
164
|
seq: number;
|
|
159
165
|
op: BrainWriteOp;
|
|
160
166
|
}
|
|
@@ -209,9 +215,13 @@ export declare class BrainWriterShutDownError extends Error {
|
|
|
209
215
|
* ```
|
|
210
216
|
*
|
|
211
217
|
* @param op - The write op (discriminated by `kind`).
|
|
218
|
+
* @param execution - Optional original lifetime and validated document job authority.
|
|
219
|
+
* @throws Error when scoped admission, ownership, shutdown or worker execution fails.
|
|
220
|
+
* @remarks Scoped operations preserve their original budget and never retry an
|
|
221
|
+
* uncertain worker outcome inline. A received committed result survives later cancellation.
|
|
212
222
|
* @returns Worker result for the op.
|
|
213
223
|
*/
|
|
214
|
-
export declare function enqueueBrainWrite(op: BrainWriteOp): Promise<BrainWriteResult>;
|
|
224
|
+
export declare function enqueueBrainWrite(op: BrainWriteOp, execution?: OperationExecutionContext): Promise<BrainWriteResult>;
|
|
215
225
|
/**
|
|
216
226
|
* Shutdown the writer-thread singleton (mostly used by tests).
|
|
217
227
|
* @internal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brain-writer-thread.d.ts","sourceRoot":"","sources":["../../src/memory/brain-writer-thread.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAKH,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"brain-writer-thread.d.ts","sourceRoot":"","sources":["../../src/memory/brain-writer-thread.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,6 +46,7 @@ import { existsSync } from 'node:fs';
|
|
|
46
46
|
import { dirname, join } from 'node:path';
|
|
47
47
|
import { fileURLToPath } from 'node:url';
|
|
48
48
|
import { getLogger } from '../logger.js';
|
|
49
|
+
import { transferOperationContext } from '../store/background-ops.js';
|
|
49
50
|
import { resolveDualScopeDbPath } from '../store/dual-scope-db.js';
|
|
50
51
|
import { acquireWriterLease, assertWriterLeaseHeld, resolveLeaseMode, } from '../store/writer-lease.js';
|
|
51
52
|
// ============================================================================
|
|
@@ -98,14 +99,15 @@ class BrainWriterManager {
|
|
|
98
99
|
seqCounter = 0;
|
|
99
100
|
shuttingDown = false;
|
|
100
101
|
/** Lazy-initialize the worker thread on first enqueue. */
|
|
101
|
-
async ensureWorker() {
|
|
102
|
+
async ensureWorker(execution) {
|
|
103
|
+
execution?.assertActive();
|
|
102
104
|
if (this.workerReady || this.shuttingDown)
|
|
103
105
|
return;
|
|
104
106
|
if (this.workerInitError)
|
|
105
107
|
throw this.workerInitError;
|
|
106
108
|
if (this.initPromise)
|
|
107
109
|
return this.initPromise;
|
|
108
|
-
this.initPromise = this.doInit();
|
|
110
|
+
this.initPromise = this.doInit(execution);
|
|
109
111
|
try {
|
|
110
112
|
await this.initPromise;
|
|
111
113
|
}
|
|
@@ -113,7 +115,8 @@ class BrainWriterManager {
|
|
|
113
115
|
this.initPromise = null;
|
|
114
116
|
}
|
|
115
117
|
}
|
|
116
|
-
async doInit() {
|
|
118
|
+
async doInit(execution) {
|
|
119
|
+
execution?.assertActive();
|
|
117
120
|
const workerPath = resolveWorkerPath();
|
|
118
121
|
if (!workerPath) {
|
|
119
122
|
// Worker file unavailable (test sandbox, esbuild bundle). Fall back to
|
|
@@ -122,6 +125,9 @@ class BrainWriterManager {
|
|
|
122
125
|
throw this.workerInitError;
|
|
123
126
|
}
|
|
124
127
|
const { Worker } = await import('node:worker_threads');
|
|
128
|
+
execution?.assertActive();
|
|
129
|
+
if (this.shuttingDown || isBrainWriterShuttingDown())
|
|
130
|
+
throw new BrainWriterShutDownError('observe');
|
|
125
131
|
const worker = new Worker(workerPath);
|
|
126
132
|
worker.on('message', (msg) => {
|
|
127
133
|
this.handleWorkerMessage(msg);
|
|
@@ -168,20 +174,28 @@ class BrainWriterManager {
|
|
|
168
174
|
* Enqueue a write op. Returns a promise that resolves with the worker's
|
|
169
175
|
* result envelope payload (shape depends on op kind).
|
|
170
176
|
*/
|
|
171
|
-
async enqueue(op) {
|
|
177
|
+
async enqueue(op, execution, transfer) {
|
|
178
|
+
execution?.assertActive();
|
|
172
179
|
// Defence in depth (T12239 AC3). The instance flag alone misses a manager
|
|
173
180
|
// captured BEFORE teardown and used after — `getManager()` returns a
|
|
174
181
|
// reference, and nothing stops a caller holding it across a shutdown.
|
|
175
182
|
if (this.shuttingDown || isBrainWriterShuttingDown()) {
|
|
176
183
|
throw new BrainWriterShutDownError(op.kind);
|
|
177
184
|
}
|
|
178
|
-
await this.ensureWorker();
|
|
185
|
+
await this.ensureWorker(execution);
|
|
186
|
+
execution?.assertActive();
|
|
187
|
+
if (this.shuttingDown || isBrainWriterShuttingDown())
|
|
188
|
+
throw new BrainWriterShutDownError(op.kind);
|
|
179
189
|
const worker = this.worker;
|
|
180
190
|
if (!worker) {
|
|
181
191
|
throw new Error('brain-writer worker is not available');
|
|
182
192
|
}
|
|
183
193
|
const seq = ++this.seqCounter;
|
|
184
|
-
const envelope = {
|
|
194
|
+
const envelope = {
|
|
195
|
+
seq,
|
|
196
|
+
op,
|
|
197
|
+
...(transfer ? { execution: transfer } : {}),
|
|
198
|
+
};
|
|
185
199
|
return new Promise((resolve, reject) => {
|
|
186
200
|
this.pending.set(seq, { resolve, reject });
|
|
187
201
|
try {
|
|
@@ -214,6 +228,9 @@ class BrainWriterManager {
|
|
|
214
228
|
this.worker = null;
|
|
215
229
|
}
|
|
216
230
|
this.workerReady = false;
|
|
231
|
+
for (const pending of this.pending.values()) {
|
|
232
|
+
pending.reject(new Error('Brain writer stopped before a result was observed; commit status remains unresolved'));
|
|
233
|
+
}
|
|
217
234
|
this.pending.clear();
|
|
218
235
|
}
|
|
219
236
|
/** @internal — test helper */
|
|
@@ -247,7 +264,25 @@ const _brainBatches = new Map();
|
|
|
247
264
|
* @returns A release callback the caller MUST invoke (in a `finally`) when its
|
|
248
265
|
* write completes; the underlying row is freed only when the batch quiesces.
|
|
249
266
|
*/
|
|
250
|
-
async function enterBrainBatchLease(dbPath) {
|
|
267
|
+
async function enterBrainBatchLease(dbPath, execution) {
|
|
268
|
+
if (execution) {
|
|
269
|
+
execution.assertActive();
|
|
270
|
+
const handle = await acquireWriterLease(BRAIN_LEASE_SCOPE, BRAIN_LEASE_LANE, {
|
|
271
|
+
priority: 50,
|
|
272
|
+
dbPath,
|
|
273
|
+
execution,
|
|
274
|
+
});
|
|
275
|
+
return async () => {
|
|
276
|
+
await handle.release();
|
|
277
|
+
if (handle.cleanupPending) {
|
|
278
|
+
getLogger('brain-writer').warn({
|
|
279
|
+
event: 'scoped-lease-cleanup-pending',
|
|
280
|
+
dbPath,
|
|
281
|
+
jobId: execution.writeFence?.lease.jobId,
|
|
282
|
+
}, 'Committed write outcome is unchanged; original lease cleanup requires TTL recovery');
|
|
283
|
+
}
|
|
284
|
+
};
|
|
285
|
+
}
|
|
251
286
|
if (resolveLeaseMode() === 'off') {
|
|
252
287
|
// No lease in off-mode — pass-through (busy_timeout serializes).
|
|
253
288
|
return async () => { };
|
|
@@ -309,8 +344,8 @@ async function enterBrainBatchLease(dbPath) {
|
|
|
309
344
|
* reintroduce the very race condition the chokepoint exists to eliminate.
|
|
310
345
|
*/
|
|
311
346
|
let inlineQueueTail = Promise.resolve();
|
|
312
|
-
function runInline(op) {
|
|
313
|
-
const next = inlineQueueTail.then(() => executeInline(op));
|
|
347
|
+
function runInline(op, execution) {
|
|
348
|
+
const next = inlineQueueTail.then(() => executeInline(op, execution));
|
|
314
349
|
// Swallow rejection in the chain marker so failures don't break later writes.
|
|
315
350
|
inlineQueueTail = next.catch(() => undefined);
|
|
316
351
|
return next;
|
|
@@ -324,13 +359,17 @@ function runInline(op) {
|
|
|
324
359
|
* The handler module is shared between the worker thread and this fallback,
|
|
325
360
|
* so behaviour is identical except for the thread of execution.
|
|
326
361
|
*/
|
|
327
|
-
async function executeInline(op) {
|
|
362
|
+
async function executeInline(op, execution) {
|
|
363
|
+
execution?.assertActive();
|
|
364
|
+
if (execution && isBrainWriterShuttingDown())
|
|
365
|
+
throw new BrainWriterShutDownError(op.kind);
|
|
328
366
|
// AC4 guard: a lease-less write must NOT open the brain WRITE handle. This is
|
|
329
367
|
// enforcement, not convention — `enqueueBrainWrite` holds the batch lease before
|
|
330
368
|
// it reaches here, so a held grant exists in every mode except `off` (exempt).
|
|
331
|
-
assertWriterLeaseHeld(BRAIN_LEASE_SCOPE, BRAIN_LEASE_LANE, resolveDualScopeDbPath(BRAIN_LEASE_SCOPE, op.projectRoot));
|
|
369
|
+
assertWriterLeaseHeld(BRAIN_LEASE_SCOPE, BRAIN_LEASE_LANE, execution?.writeFence?.dbPath ?? resolveDualScopeDbPath(BRAIN_LEASE_SCOPE, op.projectRoot));
|
|
332
370
|
const { handleWriteOp } = await import('./brain-writer-handlers.js');
|
|
333
|
-
|
|
371
|
+
execution?.assertActive();
|
|
372
|
+
return handleWriteOp(op, execution);
|
|
334
373
|
}
|
|
335
374
|
// ============================================================================
|
|
336
375
|
// Public API
|
|
@@ -373,7 +412,7 @@ export class BrainWriterShutDownError extends Error {
|
|
|
373
412
|
codeName = 'E_BRAIN_WRITER_SHUTDOWN';
|
|
374
413
|
constructor(kind) {
|
|
375
414
|
super(`E_BRAIN_WRITER_SHUTDOWN: brain writer is shut down; refusing to spawn a worker ` +
|
|
376
|
-
`realm for a late '${kind}' write.
|
|
415
|
+
`realm for a late '${kind}' write. Scoped writes are refused.`);
|
|
377
416
|
this.name = 'BrainWriterShutDownError';
|
|
378
417
|
}
|
|
379
418
|
}
|
|
@@ -432,24 +471,51 @@ function getManager(kind = 'observe') {
|
|
|
432
471
|
* ```
|
|
433
472
|
*
|
|
434
473
|
* @param op - The write op (discriminated by `kind`).
|
|
474
|
+
* @param execution - Optional original lifetime and validated document job authority.
|
|
475
|
+
* @throws Error when scoped admission, ownership, shutdown or worker execution fails.
|
|
476
|
+
* @remarks Scoped operations preserve their original budget and never retry an
|
|
477
|
+
* uncertain worker outcome inline. A received committed result survives later cancellation.
|
|
435
478
|
* @returns Worker result for the op.
|
|
436
479
|
*/
|
|
437
|
-
export async function enqueueBrainWrite(op) {
|
|
480
|
+
export async function enqueueBrainWrite(op, execution) {
|
|
481
|
+
execution?.assertActive();
|
|
482
|
+
if (execution) {
|
|
483
|
+
if (!execution.writeFence ||
|
|
484
|
+
execution.identity.operation !== 'docs.projection' ||
|
|
485
|
+
op.kind !== 'observe' ||
|
|
486
|
+
!op.params._skipGate ||
|
|
487
|
+
op.projectRoot !== execution.identity.projectRoot) {
|
|
488
|
+
throw new Error('Scoped brain writer requires a fenced, validated document observation in its captured project');
|
|
489
|
+
}
|
|
490
|
+
if (isBrainWriterShuttingDown())
|
|
491
|
+
throw new BrainWriterShutDownError(op.kind);
|
|
492
|
+
op = structuredClone(op);
|
|
493
|
+
}
|
|
494
|
+
const transfer = execution
|
|
495
|
+
? transferOperationContext(execution, {
|
|
496
|
+
bytes: Buffer.byteLength(JSON.stringify(op), 'utf8'),
|
|
497
|
+
items: 1,
|
|
498
|
+
})
|
|
499
|
+
: undefined;
|
|
500
|
+
let releaseBatch;
|
|
438
501
|
// Seam 2 (AC4): hold the `brain` lease for the duration of this write. The lease
|
|
439
502
|
// is batch-granular (acquire-once / drain-N / release) via the process-local
|
|
440
503
|
// refcount — concurrent callers share one grant, freed when the batch quiesces.
|
|
441
504
|
// The lease-less path is blocked at the write primitive by `assertWriterLeaseHeld`.
|
|
442
|
-
const dbPath = resolveDualScopeDbPath(BRAIN_LEASE_SCOPE, op.projectRoot);
|
|
443
|
-
const releaseBatch = await enterBrainBatchLease(dbPath);
|
|
505
|
+
const dbPath = execution?.writeFence?.dbPath ?? resolveDualScopeDbPath(BRAIN_LEASE_SCOPE, op.projectRoot);
|
|
444
506
|
try {
|
|
507
|
+
releaseBatch = await enterBrainBatchLease(dbPath, execution);
|
|
508
|
+
execution?.assertActive();
|
|
445
509
|
// Bypass mode — log audit warn and run inline.
|
|
446
510
|
if (bypassEnabled()) {
|
|
447
|
-
return await runInline(op);
|
|
511
|
+
return await runInline(op, execution);
|
|
448
512
|
}
|
|
449
513
|
try {
|
|
450
|
-
return await getManager(op.kind).enqueue(op);
|
|
514
|
+
return await getManager(op.kind).enqueue(op, execution, transfer?.transfer);
|
|
451
515
|
}
|
|
452
516
|
catch (err) {
|
|
517
|
+
if (execution)
|
|
518
|
+
throw err; // Never replay an uncertain committed worker write inline.
|
|
453
519
|
// Worker was unavailable (tests, esbuild bundle, etc.). Fall back to
|
|
454
520
|
// inline mode — still serialized via the inline mutex. The write is NOT
|
|
455
521
|
// lost in either branch.
|
|
@@ -463,11 +529,12 @@ export async function enqueueBrainWrite(op) {
|
|
|
463
529
|
else {
|
|
464
530
|
getLogger('brain-writer').debug({ err: msg }, 'Brain writer-thread unavailable — falling back to inline serialized executor');
|
|
465
531
|
}
|
|
466
|
-
return await runInline(op);
|
|
532
|
+
return await runInline(op, execution);
|
|
467
533
|
}
|
|
468
534
|
}
|
|
469
535
|
finally {
|
|
470
|
-
|
|
536
|
+
transfer?.release();
|
|
537
|
+
await releaseBatch?.();
|
|
471
538
|
}
|
|
472
539
|
}
|
|
473
540
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brain-writer-thread.js","sourceRoot":"","sources":["../../src/memory/brain-writer-thread.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"brain-writer-thread.js","sourceRoot":"","sources":["../../src/memory/brain-writer-thread.ts"],"names":[],"mappings":"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"}
|