@cleocode/core 2026.9.19 → 2026.9.21
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/adapters/discovery.d.ts.map +1 -1
- package/dist/adapters/discovery.js +3 -10
- package/dist/adapters/discovery.js.map +1 -1
- package/dist/adrs/link-pipeline.js +2 -2
- package/dist/adrs/link-pipeline.js.map +1 -1
- package/dist/adrs/parse.js +3 -3
- package/dist/adrs/parse.js.map +1 -1
- package/dist/agents/invoke-meta-agent.d.ts.map +1 -1
- package/dist/agents/invoke-meta-agent.js +8 -4
- package/dist/agents/invoke-meta-agent.js.map +1 -1
- package/dist/bootstrap.d.ts +5 -1
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +41 -21
- package/dist/bootstrap.js.map +1 -1
- package/dist/cloud/crypto.d.ts +47 -0
- package/dist/cloud/crypto.d.ts.map +1 -0
- package/dist/cloud/crypto.js +223 -0
- package/dist/cloud/crypto.js.map +1 -0
- package/dist/cloud/http.d.ts +52 -0
- package/dist/cloud/http.d.ts.map +1 -0
- package/dist/cloud/http.js +98 -0
- package/dist/cloud/http.js.map +1 -0
- package/dist/cloud/index.d.ts +19 -0
- package/dist/cloud/index.d.ts.map +1 -0
- package/dist/cloud/index.js +19 -0
- package/dist/cloud/index.js.map +1 -0
- package/dist/cloud/journal.d.ts +169 -0
- package/dist/cloud/journal.d.ts.map +1 -0
- package/dist/cloud/journal.js +428 -0
- package/dist/cloud/journal.js.map +1 -0
- package/dist/cloud/keys.d.ts +213 -0
- package/dist/cloud/keys.d.ts.map +1 -0
- package/dist/cloud/keys.js +362 -0
- package/dist/cloud/keys.js.map +1 -0
- package/dist/cloud/manifest-check.d.ts +36 -0
- package/dist/cloud/manifest-check.d.ts.map +1 -0
- package/dist/cloud/manifest-check.js +70 -0
- package/dist/cloud/manifest-check.js.map +1 -0
- package/dist/cloud/projects.d.ts +13 -0
- package/dist/cloud/projects.d.ts.map +1 -0
- package/dist/cloud/projects.js +11 -0
- package/dist/cloud/projects.js.map +1 -0
- package/dist/cloud/signing.d.ts +105 -0
- package/dist/cloud/signing.d.ts.map +1 -0
- package/dist/cloud/signing.js +117 -0
- package/dist/cloud/signing.js.map +1 -0
- package/dist/cloud/streams.d.ts +6 -0
- package/dist/cloud/streams.d.ts.map +1 -0
- package/dist/cloud/streams.js +5 -0
- package/dist/cloud/streams.js.map +1 -0
- package/dist/decide/audit.d.ts +131 -0
- package/dist/decide/audit.d.ts.map +1 -0
- package/dist/decide/audit.js +98 -0
- package/dist/decide/audit.js.map +1 -0
- package/dist/decide/budget.d.ts +91 -0
- package/dist/decide/budget.d.ts.map +1 -0
- package/dist/decide/budget.js +194 -0
- package/dist/decide/budget.js.map +1 -0
- package/dist/decide/cache.d.ts +49 -0
- package/dist/decide/cache.d.ts.map +1 -0
- package/dist/decide/cache.js +87 -0
- package/dist/decide/cache.js.map +1 -0
- package/dist/decide/client.d.ts +103 -0
- package/dist/decide/client.d.ts.map +1 -0
- package/dist/decide/client.js +262 -0
- package/dist/decide/client.js.map +1 -0
- package/dist/decide/credentials.d.ts +159 -0
- package/dist/decide/credentials.d.ts.map +1 -0
- package/dist/decide/credentials.js +383 -0
- package/dist/decide/credentials.js.map +1 -0
- package/dist/decide/index.d.ts +18 -0
- package/dist/decide/index.d.ts.map +1 -0
- package/dist/decide/index.js +18 -0
- package/dist/decide/index.js.map +1 -0
- package/dist/decide/jev-wire.d.ts +155 -0
- package/dist/decide/jev-wire.d.ts.map +1 -0
- package/dist/decide/jev-wire.js +420 -0
- package/dist/decide/jev-wire.js.map +1 -0
- package/dist/decide/operations.d.ts +152 -0
- package/dist/decide/operations.d.ts.map +1 -0
- package/dist/decide/operations.js +199 -0
- package/dist/decide/operations.js.map +1 -0
- package/dist/decide/provider.d.ts +90 -0
- package/dist/decide/provider.d.ts.map +1 -0
- package/dist/decide/provider.js +43 -0
- package/dist/decide/provider.js.map +1 -0
- package/dist/decide/site.d.ts +148 -0
- package/dist/decide/site.d.ts.map +1 -0
- package/dist/decide/site.js +181 -0
- package/dist/decide/site.js.map +1 -0
- package/dist/decide/transport.d.ts +67 -0
- package/dist/decide/transport.d.ts.map +1 -0
- package/dist/decide/transport.js +350 -0
- package/dist/decide/transport.js.map +1 -0
- package/dist/docs/export-document.js +5908 -2436
- package/dist/docs/export-document.js.map +3 -3
- package/dist/docs/index.d.ts +2 -2
- package/dist/docs/index.d.ts.map +1 -1
- package/dist/docs/index.js +1 -1
- package/dist/docs/index.js.map +1 -1
- package/dist/docs/projection.d.ts.map +1 -1
- package/dist/docs/projection.js +2 -3
- package/dist/docs/projection.js.map +1 -1
- package/dist/docs/publish-pr.d.ts +69 -1
- package/dist/docs/publish-pr.d.ts.map +1 -1
- package/dist/docs/publish-pr.js +112 -10
- package/dist/docs/publish-pr.js.map +1 -1
- package/dist/doctor/db-substrate.d.ts +13 -8
- package/dist/doctor/db-substrate.d.ts.map +1 -1
- package/dist/doctor/db-substrate.js +39 -26
- package/dist/doctor/db-substrate.js.map +1 -1
- package/dist/doctor/index.d.ts +2 -0
- package/dist/doctor/index.d.ts.map +1 -1
- package/dist/doctor/index.js +1 -0
- package/dist/doctor/index.js.map +1 -1
- package/dist/doctor/knowledge.d.ts.map +1 -1
- package/dist/doctor/knowledge.js +5 -15
- package/dist/doctor/knowledge.js.map +1 -1
- package/dist/doctor/nexus-schema-residency.d.ts +1 -1
- package/dist/doctor/nexus-schema-residency.d.ts.map +1 -1
- package/dist/doctor/nexus-schema-residency.js +3 -0
- package/dist/doctor/nexus-schema-residency.js.map +1 -1
- package/dist/doctor/project-identity.d.ts +44 -1
- package/dist/doctor/project-identity.d.ts.map +1 -1
- package/dist/doctor/project-identity.js +237 -10
- package/dist/doctor/project-identity.js.map +1 -1
- package/dist/doctor/projects.d.ts +170 -0
- package/dist/doctor/projects.d.ts.map +1 -0
- package/dist/doctor/projects.js +1075 -0
- package/dist/doctor/projects.js.map +1 -0
- package/dist/doctor/twin-collapse.d.ts +97 -0
- package/dist/doctor/twin-collapse.d.ts.map +1 -0
- package/dist/doctor/twin-collapse.js +168 -0
- package/dist/doctor/twin-collapse.js.map +1 -0
- package/dist/doctor/worktree-orphans.d.ts.map +1 -1
- package/dist/doctor/worktree-orphans.js +13 -29
- package/dist/doctor/worktree-orphans.js.map +1 -1
- package/dist/doctor/worktree-stores.d.ts +128 -0
- package/dist/doctor/worktree-stores.d.ts.map +1 -0
- package/dist/doctor/worktree-stores.js +374 -0
- package/dist/doctor/worktree-stores.js.map +1 -0
- package/dist/engine/engine-ops.d.ts.map +1 -1
- package/dist/engine/engine-ops.js +59 -23
- package/dist/engine/engine-ops.js.map +1 -1
- package/dist/error-catalog.d.ts.map +1 -1
- package/dist/error-catalog.js +21 -0
- package/dist/error-catalog.js.map +1 -1
- package/dist/error-registry.d.ts.map +1 -1
- package/dist/error-registry.js +40 -0
- package/dist/error-registry.js.map +1 -1
- package/dist/gc/cleanup.d.ts.map +1 -1
- package/dist/gc/cleanup.js +32 -19
- package/dist/gc/cleanup.js.map +1 -1
- package/dist/git/bounded-git.d.ts +170 -0
- package/dist/git/bounded-git.d.ts.map +1 -0
- package/dist/git/bounded-git.js +371 -0
- package/dist/git/bounded-git.js.map +1 -0
- package/dist/git/work-tree.d.ts +20 -0
- package/dist/git/work-tree.d.ts.map +1 -1
- package/dist/git/work-tree.js +20 -2
- package/dist/git/work-tree.js.map +1 -1
- package/dist/hooks/handlers/session-hooks.d.ts +11 -26
- package/dist/hooks/handlers/session-hooks.d.ts.map +1 -1
- package/dist/hooks/handlers/session-hooks.js +18 -47
- package/dist/hooks/handlers/session-hooks.js.map +1 -1
- package/dist/hooks/payload-schemas.d.ts +2 -2
- package/dist/index.d.ts +6 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/init/engine-ops.d.ts.map +1 -1
- package/dist/init/engine-ops.js +23 -1
- package/dist/init/engine-ops.js.map +1 -1
- package/dist/init.d.ts +158 -1
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +535 -44
- package/dist/init.js.map +1 -1
- package/dist/injection.d.ts +55 -0
- package/dist/injection.d.ts.map +1 -1
- package/dist/injection.js +102 -6
- package/dist/injection.js.map +1 -1
- package/dist/internal.d.ts +9 -5
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +8 -4
- package/dist/internal.js.map +1 -1
- package/dist/issue/diagnostics.d.ts.map +1 -1
- package/dist/issue/diagnostics.js +2 -1
- package/dist/issue/diagnostics.js.map +1 -1
- package/dist/lib/concurrency.d.ts +25 -0
- package/dist/lib/concurrency.d.ts.map +1 -0
- package/dist/lib/concurrency.js +43 -0
- package/dist/lib/concurrency.js.map +1 -0
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +1 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lifecycle/engine-ops.d.ts.map +1 -1
- package/dist/lifecycle/engine-ops.js +4 -2
- package/dist/lifecycle/engine-ops.js.map +1 -1
- package/dist/lifecycle/stage-guidance.d.ts +5 -0
- package/dist/lifecycle/stage-guidance.d.ts.map +1 -1
- package/dist/lifecycle/stage-guidance.js +14 -4
- package/dist/lifecycle/stage-guidance.js.map +1 -1
- package/dist/llm/catalog-cache.d.ts +3 -2
- package/dist/llm/catalog-cache.d.ts.map +1 -1
- package/dist/llm/catalog-cache.js +5 -5
- package/dist/llm/catalog-cache.js.map +1 -1
- package/dist/llm/credentials.d.ts +4 -4
- package/dist/llm/credentials.js +6 -6
- package/dist/llm/credentials.js.map +1 -1
- package/dist/llm/plugin-facade.js +4312 -1798
- package/dist/llm/plugin-facade.js.map +3 -3
- package/dist/llm/stable-device-id.d.ts.map +1 -1
- package/dist/llm/stable-device-id.js +3 -5
- package/dist/llm/stable-device-id.js.map +1 -1
- package/dist/memory/attention.d.ts.map +1 -1
- package/dist/memory/attention.js +30 -30
- package/dist/memory/attention.js.map +1 -1
- package/dist/memory/decision-contradiction.d.ts +152 -0
- package/dist/memory/decision-contradiction.d.ts.map +1 -0
- package/dist/memory/decision-contradiction.js +273 -0
- package/dist/memory/decision-contradiction.js.map +1 -0
- package/dist/memory/decisions.d.ts +42 -11
- package/dist/memory/decisions.d.ts.map +1 -1
- package/dist/memory/decisions.js +153 -56
- package/dist/memory/decisions.js.map +1 -1
- package/dist/memory/dialectic-evaluator.d.ts +7 -0
- package/dist/memory/dialectic-evaluator.d.ts.map +1 -1
- package/dist/memory/dialectic-evaluator.js +23 -8
- package/dist/memory/dialectic-evaluator.js.map +1 -1
- package/dist/memory/dispatch-trace-format.d.ts +39 -0
- package/dist/memory/dispatch-trace-format.d.ts.map +1 -0
- package/dist/memory/dispatch-trace-format.js +54 -0
- package/dist/memory/dispatch-trace-format.js.map +1 -0
- package/dist/memory/dispatch-trace.d.ts.map +1 -1
- package/dist/memory/dispatch-trace.js +1 -27
- package/dist/memory/dispatch-trace.js.map +1 -1
- 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 +1 -0
- package/dist/memory/engine-compat.js.map +1 -1
- package/dist/memory/import-from-provider.js +3 -3
- package/dist/memory/import-from-provider.js.map +1 -1
- package/dist/memory/learnings.d.ts +2 -2
- package/dist/memory/observation-type-decision.d.ts +96 -0
- package/dist/memory/observation-type-decision.d.ts.map +1 -0
- package/dist/memory/observation-type-decision.js +218 -0
- package/dist/memory/observation-type-decision.js.map +1 -0
- package/dist/memory/redaction.js +2 -0
- package/dist/memory/redaction.js.map +1 -1
- package/dist/memory/retrieval/build-retrieval-bundle.d.ts +9 -2
- package/dist/memory/retrieval/build-retrieval-bundle.d.ts.map +1 -1
- package/dist/memory/retrieval/build-retrieval-bundle.js +42 -11
- package/dist/memory/retrieval/build-retrieval-bundle.js.map +1 -1
- package/dist/memory/retrieval/get-current-session-id.d.ts +5 -0
- package/dist/memory/retrieval/get-current-session-id.d.ts.map +1 -1
- package/dist/memory/retrieval/get-current-session-id.js +7 -2
- package/dist/memory/retrieval/get-current-session-id.js.map +1 -1
- package/dist/memory/retrieval/observe.d.ts.map +1 -1
- package/dist/memory/retrieval/observe.js +30 -29
- package/dist/memory/retrieval/observe.js.map +1 -1
- package/dist/nexus/analyze-orchestrator.d.ts.map +1 -1
- package/dist/nexus/analyze-orchestrator.js +42 -29
- package/dist/nexus/analyze-orchestrator.js.map +1 -1
- package/dist/nexus/assessment-projection.d.ts +76 -0
- package/dist/nexus/assessment-projection.d.ts.map +1 -0
- package/dist/nexus/assessment-projection.js +143 -0
- package/dist/nexus/assessment-projection.js.map +1 -0
- package/dist/nexus/assessment-store.d.ts +14 -2
- package/dist/nexus/assessment-store.d.ts.map +1 -1
- package/dist/nexus/assessment-store.js +21 -3
- package/dist/nexus/assessment-store.js.map +1 -1
- package/dist/nexus/checkout-nonce.d.ts +48 -0
- package/dist/nexus/checkout-nonce.d.ts.map +1 -0
- package/dist/nexus/checkout-nonce.js +84 -0
- package/dist/nexus/checkout-nonce.js.map +1 -0
- package/dist/nexus/devices.d.ts +93 -0
- package/dist/nexus/devices.d.ts.map +1 -0
- package/dist/nexus/devices.js +141 -0
- package/dist/nexus/devices.js.map +1 -0
- package/dist/nexus/freshness.d.ts.map +1 -1
- package/dist/nexus/freshness.js +25 -6
- package/dist/nexus/freshness.js.map +1 -1
- package/dist/nexus/git-state.d.ts +225 -0
- package/dist/nexus/git-state.d.ts.map +1 -0
- package/dist/nexus/git-state.js +677 -0
- package/dist/nexus/git-state.js.map +1 -0
- package/dist/nexus/graph-manifest.d.ts +20 -4
- package/dist/nexus/graph-manifest.d.ts.map +1 -1
- package/dist/nexus/graph-manifest.js +40 -5
- package/dist/nexus/graph-manifest.js.map +1 -1
- package/dist/nexus/identity.d.ts +68 -23
- package/dist/nexus/identity.d.ts.map +1 -1
- package/dist/nexus/identity.js +99 -22
- package/dist/nexus/identity.js.map +1 -1
- package/dist/nexus/index.d.ts +5 -2
- package/dist/nexus/index.d.ts.map +1 -1
- package/dist/nexus/index.js +10 -4
- package/dist/nexus/index.js.map +1 -1
- package/dist/nexus/knowledge.d.ts +5 -0
- package/dist/nexus/knowledge.d.ts.map +1 -1
- package/dist/nexus/knowledge.js +26 -2
- package/dist/nexus/knowledge.js.map +1 -1
- package/dist/nexus/legacy-alias.d.ts +60 -0
- package/dist/nexus/legacy-alias.d.ts.map +1 -0
- package/dist/nexus/legacy-alias.js +68 -0
- package/dist/nexus/legacy-alias.js.map +1 -0
- package/dist/nexus/migrate-json-to-sqlite.js +2 -2
- package/dist/nexus/migrate-json-to-sqlite.js.map +1 -1
- package/dist/nexus/ops.d.ts +1 -0
- package/dist/nexus/ops.d.ts.map +1 -1
- package/dist/nexus/path-map.d.ts +264 -20
- package/dist/nexus/path-map.d.ts.map +1 -1
- package/dist/nexus/path-map.js +580 -44
- package/dist/nexus/path-map.js.map +1 -1
- package/dist/nexus/projects-clean.d.ts +9 -1
- package/dist/nexus/projects-clean.d.ts.map +1 -1
- package/dist/nexus/projects-clean.js +126 -14
- package/dist/nexus/projects-clean.js.map +1 -1
- package/dist/nexus/projects-scan.d.ts +56 -1
- package/dist/nexus/projects-scan.d.ts.map +1 -1
- package/dist/nexus/projects-scan.js +144 -3
- package/dist/nexus/projects-scan.js.map +1 -1
- package/dist/nexus/registry-hygiene.d.ts +18 -2
- package/dist/nexus/registry-hygiene.d.ts.map +1 -1
- package/dist/nexus/registry-hygiene.js +37 -11
- package/dist/nexus/registry-hygiene.js.map +1 -1
- package/dist/nexus/registry-roots.d.ts +47 -0
- package/dist/nexus/registry-roots.d.ts.map +1 -0
- package/dist/nexus/registry-roots.js +79 -0
- package/dist/nexus/registry-roots.js.map +1 -0
- package/dist/nexus/registry.d.ts +50 -9
- package/dist/nexus/registry.d.ts.map +1 -1
- package/dist/nexus/registry.js +311 -156
- package/dist/nexus/registry.js.map +1 -1
- package/dist/nexus/stored-roots.d.ts +106 -0
- package/dist/nexus/stored-roots.d.ts.map +1 -0
- package/dist/nexus/stored-roots.js +180 -0
- package/dist/nexus/stored-roots.js.map +1 -0
- package/dist/nexus/transfer.d.ts.map +1 -1
- package/dist/nexus/transfer.js +3 -0
- package/dist/nexus/transfer.js.map +1 -1
- package/dist/nexus/user-profile-hygiene.d.ts +168 -0
- package/dist/nexus/user-profile-hygiene.d.ts.map +1 -0
- package/dist/nexus/user-profile-hygiene.js +305 -0
- package/dist/nexus/user-profile-hygiene.js.map +1 -0
- package/dist/nexus/user-profile.d.ts +53 -2
- package/dist/nexus/user-profile.d.ts.map +1 -1
- package/dist/nexus/user-profile.js +106 -4
- package/dist/nexus/user-profile.js.map +1 -1
- package/dist/orchestrate/pivot.d.ts.map +1 -1
- package/dist/orchestrate/pivot.js +5 -1
- package/dist/orchestrate/pivot.js.map +1 -1
- package/dist/orchestrate/spawn-ops.d.ts +12 -0
- package/dist/orchestrate/spawn-ops.d.ts.map +1 -1
- package/dist/orchestrate/spawn-ops.js +152 -57
- package/dist/orchestrate/spawn-ops.js.map +1 -1
- package/dist/orchestration/classify-readiness.d.ts +37 -1
- package/dist/orchestration/classify-readiness.d.ts.map +1 -1
- package/dist/orchestration/classify-readiness.js +48 -19
- package/dist/orchestration/classify-readiness.js.map +1 -1
- package/dist/orchestration/index.d.ts +3 -2
- package/dist/orchestration/index.d.ts.map +1 -1
- package/dist/orchestration/index.js +2 -1
- package/dist/orchestration/index.js.map +1 -1
- package/dist/orchestration/owner-decision-readiness.d.ts +88 -0
- package/dist/orchestration/owner-decision-readiness.d.ts.map +1 -0
- package/dist/orchestration/owner-decision-readiness.js +152 -0
- package/dist/orchestration/owner-decision-readiness.js.map +1 -0
- package/dist/orchestration/psyche-memory-budget.d.ts +105 -0
- package/dist/orchestration/psyche-memory-budget.d.ts.map +1 -0
- package/dist/orchestration/psyche-memory-budget.js +383 -0
- package/dist/orchestration/psyche-memory-budget.js.map +1 -0
- package/dist/orchestration/spawn-prompt.d.ts +12 -1
- package/dist/orchestration/spawn-prompt.d.ts.map +1 -1
- package/dist/orchestration/spawn-prompt.js +141 -179
- package/dist/orchestration/spawn-prompt.js.map +1 -1
- package/dist/orchestration/spawn.d.ts +7 -0
- package/dist/orchestration/spawn.d.ts.map +1 -1
- package/dist/orchestration/spawn.js +1 -0
- package/dist/orchestration/spawn.js.map +1 -1
- package/dist/paths.d.ts +24 -8
- package/dist/paths.d.ts.map +1 -1
- package/dist/paths.js +135 -71
- package/dist/paths.js.map +1 -1
- package/dist/platform.d.ts +6 -1
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +8 -19
- package/dist/platform.js.map +1 -1
- package/dist/project-info.d.ts +18 -0
- package/dist/project-info.d.ts.map +1 -1
- package/dist/project-info.js +29 -1
- package/dist/project-info.js.map +1 -1
- package/dist/project-lifecycle.d.ts +91 -32
- package/dist/project-lifecycle.d.ts.map +1 -1
- package/dist/project-lifecycle.js +639 -75
- package/dist/project-lifecycle.js.map +1 -1
- package/dist/project-scope.d.ts +86 -4
- package/dist/project-scope.d.ts.map +1 -1
- package/dist/project-scope.js +226 -13
- package/dist/project-scope.js.map +1 -1
- package/dist/project-tombstone.d.ts +111 -0
- package/dist/project-tombstone.d.ts.map +1 -0
- package/dist/project-tombstone.js +220 -0
- package/dist/project-tombstone.js.map +1 -0
- package/dist/release/artifacts.d.ts.map +1 -1
- package/dist/release/artifacts.js +14 -9
- package/dist/release/artifacts.js.map +1 -1
- package/dist/release/ci-evidence.d.ts +223 -0
- package/dist/release/ci-evidence.d.ts.map +1 -0
- package/dist/release/ci-evidence.js +652 -0
- package/dist/release/ci-evidence.js.map +1 -0
- package/dist/release/engine-ops.d.ts.map +1 -1
- package/dist/release/engine-ops.js +3 -3
- package/dist/release/engine-ops.js.map +1 -1
- package/dist/release/plan.d.ts.map +1 -1
- package/dist/release/plan.js +7 -6
- package/dist/release/plan.js.map +1 -1
- package/dist/release/pr-evidence.d.ts +38 -0
- package/dist/release/pr-evidence.d.ts.map +1 -1
- package/dist/release/pr-evidence.js +67 -11
- package/dist/release/pr-evidence.js.map +1 -1
- package/dist/release/reconcile.d.ts.map +1 -1
- package/dist/release/reconcile.js +3 -2
- package/dist/release/reconcile.js.map +1 -1
- package/dist/release/release-manifest.d.ts +2 -1
- package/dist/release/release-manifest.d.ts.map +1 -1
- package/dist/release/release-manifest.js +6 -5
- package/dist/release/release-manifest.js.map +1 -1
- package/dist/render/nexus/graph/index.d.ts +4 -0
- package/dist/render/nexus/graph/index.d.ts.map +1 -1
- package/dist/render/nexus/graph/index.js +57 -0
- package/dist/render/nexus/graph/index.js.map +1 -1
- package/dist/resources/spawn-wrapper.d.ts +8 -1
- package/dist/resources/spawn-wrapper.d.ts.map +1 -1
- package/dist/resources/spawn-wrapper.js +42 -5
- package/dist/resources/spawn-wrapper.js.map +1 -1
- package/dist/routing/build-command-groups.d.ts.map +1 -1
- package/dist/routing/build-command-groups.js +1 -0
- package/dist/routing/build-command-groups.js.map +1 -1
- package/dist/sagas/index.d.ts +1 -1
- package/dist/sagas/index.d.ts.map +1 -1
- package/dist/sagas/index.js +1 -1
- package/dist/sagas/index.js.map +1 -1
- package/dist/sagas/reconcile.d.ts +24 -4
- package/dist/sagas/reconcile.d.ts.map +1 -1
- package/dist/sagas/reconcile.js +226 -100
- package/dist/sagas/reconcile.js.map +1 -1
- package/dist/scaffold/ensure-config.d.ts.map +1 -1
- package/dist/scaffold/ensure-config.js +31 -1
- package/dist/scaffold/ensure-config.js.map +1 -1
- package/dist/scaffold/project-identity.d.ts +2 -8
- package/dist/scaffold/project-identity.d.ts.map +1 -1
- package/dist/scaffold/project-identity.js +5 -21
- package/dist/scaffold/project-identity.js.map +1 -1
- package/dist/security/input-sanitization.d.ts +9 -1
- package/dist/security/input-sanitization.d.ts.map +1 -1
- package/dist/security/input-sanitization.js +12 -2
- package/dist/security/input-sanitization.js.map +1 -1
- package/dist/selfimprove/fix-gen.js +4321 -1807
- package/dist/selfimprove/fix-gen.js.map +3 -3
- package/dist/sentient/propose-tick.d.ts.map +1 -1
- package/dist/sentient/propose-tick.js +4 -2
- package/dist/sentient/propose-tick.js.map +1 -1
- package/dist/sequence/index.d.ts.map +1 -1
- package/dist/sequence/index.js +6 -23
- package/dist/sequence/index.js.map +1 -1
- package/dist/session/engine-ops.d.ts +9 -0
- package/dist/session/engine-ops.d.ts.map +1 -1
- package/dist/session/engine-ops.js +110 -18
- package/dist/session/engine-ops.js.map +1 -1
- package/dist/sessions/assumptions.d.ts.map +1 -1
- package/dist/sessions/assumptions.js +7 -4
- package/dist/sessions/assumptions.js.map +1 -1
- package/dist/sessions/briefing.d.ts +6 -0
- package/dist/sessions/briefing.d.ts.map +1 -1
- package/dist/sessions/briefing.js +12 -1
- package/dist/sessions/briefing.js.map +1 -1
- package/dist/sessions/decisions.d.ts +38 -3
- package/dist/sessions/decisions.d.ts.map +1 -1
- package/dist/sessions/decisions.js +235 -21
- package/dist/sessions/decisions.js.map +1 -1
- package/dist/sessions/drift-watchdog.d.ts.map +1 -1
- package/dist/sessions/drift-watchdog.js +4 -2
- package/dist/sessions/drift-watchdog.js.map +1 -1
- package/dist/sessions/index.d.ts.map +1 -1
- package/dist/sessions/index.js +33 -4
- package/dist/sessions/index.js.map +1 -1
- package/dist/sessions/session-end-snapshot-entry.d.ts +26 -0
- package/dist/sessions/session-end-snapshot-entry.d.ts.map +1 -0
- package/dist/sessions/session-end-snapshot-entry.js +59 -0
- package/dist/sessions/session-end-snapshot-entry.js.map +1 -0
- package/dist/sessions/session-end-snapshot.d.ts +114 -0
- package/dist/sessions/session-end-snapshot.d.ts.map +1 -0
- package/dist/sessions/session-end-snapshot.js +446 -0
- package/dist/sessions/session-end-snapshot.js.map +1 -0
- package/dist/sessions/session-manifest-mirror.d.ts.map +1 -1
- package/dist/sessions/session-manifest-mirror.js +10 -17
- package/dist/sessions/session-manifest-mirror.js.map +1 -1
- package/dist/sessions/session-switch.d.ts.map +1 -1
- package/dist/sessions/session-switch.js +5 -3
- package/dist/sessions/session-switch.js.map +1 -1
- package/dist/sessions/snapshot.d.ts.map +1 -1
- package/dist/sessions/snapshot.js +5 -4
- package/dist/sessions/snapshot.js.map +1 -1
- package/dist/sessions/terminal-identity.d.ts +169 -0
- package/dist/sessions/terminal-identity.d.ts.map +1 -0
- package/dist/sessions/terminal-identity.js +273 -0
- package/dist/sessions/terminal-identity.js.map +1 -0
- package/dist/setup/sections/verification.d.ts +1 -1
- package/dist/setup/sections/verification.d.ts.map +1 -1
- package/dist/setup/sections/verification.js +11 -15
- package/dist/setup/sections/verification.js.map +1 -1
- package/dist/skills/discovery.d.ts +8 -2
- package/dist/skills/discovery.d.ts.map +1 -1
- package/dist/skills/discovery.js +15 -3
- package/dist/skills/discovery.js.map +1 -1
- package/dist/skills/dispatch.d.ts +5 -2
- package/dist/skills/dispatch.d.ts.map +1 -1
- package/dist/skills/dispatch.js +5 -2
- package/dist/skills/dispatch.js.map +1 -1
- package/dist/skills/doctor.d.ts.map +1 -1
- package/dist/skills/doctor.js +5 -1
- package/dist/skills/doctor.js.map +1 -1
- package/dist/skills/federated-search.js +2 -2
- package/dist/skills/federated-search.js.map +1 -1
- package/dist/skills/index.d.ts +3 -3
- 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/install.d.ts +15 -2
- package/dist/skills/install.d.ts.map +1 -1
- package/dist/skills/install.js +21 -5
- package/dist/skills/install.js.map +1 -1
- package/dist/skills/migration.d.ts +5 -5
- package/dist/skills/migration.d.ts.map +1 -1
- package/dist/skills/migration.js +7 -9
- package/dist/skills/migration.js.map +1 -1
- package/dist/skills/orchestrator/startup.d.ts.map +1 -1
- package/dist/skills/orchestrator/startup.js +4 -2
- package/dist/skills/orchestrator/startup.js.map +1 -1
- package/dist/skills/skill-paths.d.ts +30 -3
- package/dist/skills/skill-paths.d.ts.map +1 -1
- package/dist/skills/skill-paths.js +28 -9
- package/dist/skills/skill-paths.js.map +1 -1
- package/dist/skills/skill-root.d.ts +60 -11
- package/dist/skills/skill-root.d.ts.map +1 -1
- package/dist/skills/skill-root.js +100 -14
- package/dist/skills/skill-root.js.map +1 -1
- package/dist/skills/skills-guard.js +5 -5
- package/dist/skills/skills-guard.js.map +1 -1
- package/dist/skills/types.d.ts +23 -0
- package/dist/skills/types.d.ts.map +1 -1
- package/dist/skills/types.js.map +1 -1
- package/dist/spawn/agent-identity.d.ts +51 -2
- package/dist/spawn/agent-identity.d.ts.map +1 -1
- package/dist/spawn/agent-identity.js +89 -26
- package/dist/spawn/agent-identity.js.map +1 -1
- package/dist/spawn/branch-lock.d.ts.map +1 -1
- package/dist/spawn/branch-lock.js +56 -79
- package/dist/spawn/branch-lock.js.map +1 -1
- package/dist/spawn/index.d.ts +2 -2
- package/dist/spawn/index.d.ts.map +1 -1
- package/dist/spawn/index.js +1 -1
- package/dist/spawn/index.js.map +1 -1
- package/dist/spawn/worktree-lock-holder.d.ts +37 -0
- package/dist/spawn/worktree-lock-holder.d.ts.map +1 -0
- package/dist/spawn/worktree-lock-holder.js +41 -0
- package/dist/spawn/worktree-lock-holder.js.map +1 -0
- package/dist/sticky/convert.d.ts.map +1 -1
- package/dist/sticky/convert.js +16 -4
- package/dist/sticky/convert.js.map +1 -1
- package/dist/store/attachment-store.d.ts +14 -0
- package/dist/store/attachment-store.d.ts.map +1 -1
- package/dist/store/attachment-store.js +11 -1
- package/dist/store/attachment-store.js.map +1 -1
- package/dist/store/backup-inspect.d.ts +7 -3
- package/dist/store/backup-inspect.d.ts.map +1 -1
- package/dist/store/backup-inspect.js +18 -7
- package/dist/store/backup-inspect.js.map +1 -1
- package/dist/store/backup-sidecar.d.ts +60 -0
- package/dist/store/backup-sidecar.d.ts.map +1 -0
- package/dist/store/backup-sidecar.js +96 -0
- package/dist/store/backup-sidecar.js.map +1 -0
- package/dist/store/data-accessor.d.ts +1 -1
- package/dist/store/data-accessor.d.ts.map +1 -1
- package/dist/store/data-accessor.js +6 -6
- package/dist/store/data-accessor.js.map +1 -1
- package/dist/store/data-safety-central.d.ts +13 -4
- package/dist/store/data-safety-central.d.ts.map +1 -1
- package/dist/store/data-safety-central.js +31 -4
- package/dist/store/data-safety-central.js.map +1 -1
- package/dist/store/dual-scope-db.d.ts.map +1 -1
- package/dist/store/dual-scope-db.js +10 -0
- package/dist/store/dual-scope-db.js.map +1 -1
- package/dist/store/exodus/__fixtures__/representative-fixture.d.ts.map +1 -1
- package/dist/store/exodus/__fixtures__/representative-fixture.js +4 -0
- package/dist/store/exodus/__fixtures__/representative-fixture.js.map +1 -1
- package/dist/store/exodus/migrate.js +1 -1
- package/dist/store/exodus/migrate.js.map +1 -1
- package/dist/store/exodus/reconcile.js +1 -1
- package/dist/store/exodus/reconcile.js.map +1 -1
- package/dist/store/exodus/runtime-targets.d.ts +4 -3
- package/dist/store/exodus/runtime-targets.d.ts.map +1 -1
- package/dist/store/exodus/runtime-targets.js +4 -3
- package/dist/store/exodus/runtime-targets.js.map +1 -1
- package/dist/store/import-logging.d.ts.map +1 -1
- package/dist/store/import-logging.js +5 -4
- package/dist/store/import-logging.js.map +1 -1
- package/dist/store/legacy-tasks-lineage.d.ts.map +1 -1
- package/dist/store/legacy-tasks-lineage.js +2 -7
- package/dist/store/legacy-tasks-lineage.js.map +1 -1
- package/dist/store/lock.d.ts +1 -0
- package/dist/store/lock.d.ts.map +1 -1
- package/dist/store/lock.js +1 -0
- package/dist/store/lock.js.map +1 -1
- package/dist/store/memory-accessor.d.ts +8 -3
- package/dist/store/memory-accessor.d.ts.map +1 -1
- package/dist/store/memory-accessor.js +29 -13
- package/dist/store/memory-accessor.js.map +1 -1
- package/dist/store/memory-sqlite.d.ts.map +1 -1
- package/dist/store/memory-sqlite.js +5 -0
- package/dist/store/memory-sqlite.js.map +1 -1
- package/dist/store/open-cleo-db.d.ts.map +1 -1
- package/dist/store/open-cleo-db.js +11 -6
- package/dist/store/open-cleo-db.js.map +1 -1
- package/dist/store/portable-bundle-relocate.d.ts +13 -8
- package/dist/store/portable-bundle-relocate.d.ts.map +1 -1
- package/dist/store/portable-bundle-relocate.js +75 -31
- package/dist/store/portable-bundle-relocate.js.map +1 -1
- package/dist/store/portable-bundle-scan.d.ts.map +1 -1
- package/dist/store/portable-bundle-scan.js +2 -1
- package/dist/store/portable-bundle-scan.js.map +1 -1
- package/dist/store/portable-bundle.d.ts.map +1 -1
- package/dist/store/portable-bundle.js +7 -3
- package/dist/store/portable-bundle.js.map +1 -1
- package/dist/store/pre-repair-snapshot.d.ts +77 -0
- package/dist/store/pre-repair-snapshot.d.ts.map +1 -0
- package/dist/store/pre-repair-snapshot.js +122 -0
- package/dist/store/pre-repair-snapshot.js.map +1 -0
- package/dist/store/regenerators.d.ts +2 -1
- package/dist/store/regenerators.d.ts.map +1 -1
- package/dist/store/regenerators.js +17 -3
- package/dist/store/regenerators.js.map +1 -1
- package/dist/store/relocated-store-guard.d.ts +71 -0
- package/dist/store/relocated-store-guard.d.ts.map +1 -0
- package/dist/store/relocated-store-guard.js +138 -0
- package/dist/store/relocated-store-guard.js.map +1 -0
- package/dist/store/safety-data-accessor.d.ts +2 -2
- package/dist/store/safety-data-accessor.d.ts.map +1 -1
- package/dist/store/safety-data-accessor.js +2 -2
- package/dist/store/safety-data-accessor.js.map +1 -1
- package/dist/store/schema/attachments.d.ts +2 -2
- package/dist/store/schema/audit.d.ts +5 -5
- package/dist/store/schema/background-jobs.d.ts +1 -1
- package/dist/store/schema/cleo-global/models-catalog.d.ts +1 -1
- package/dist/store/schema/cleo-global/nexus.d.ts +686 -0
- package/dist/store/schema/cleo-global/nexus.d.ts.map +1 -1
- package/dist/store/schema/cleo-global/nexus.js +175 -7
- package/dist/store/schema/cleo-global/nexus.js.map +1 -1
- package/dist/store/schema/cleo-global/skills.d.ts +2 -2
- package/dist/store/schema/cleo-project/audit.d.ts +5 -5
- package/dist/store/schema/cleo-project/docs.d.ts +3 -3
- package/dist/store/schema/cleo-project/lifecycle.d.ts +3 -3
- package/dist/store/schema/cleo-project/provenance-commits.d.ts +2 -2
- package/dist/store/schema/cleo-project/provenance-rest.d.ts +3 -3
- package/dist/store/schema/cleo-project/tasks-core-batch2.d.ts +1 -1
- package/dist/store/schema/cleo-project/tasks-core.d.ts +6 -6
- package/dist/store/schema/cleo-shared/brain.d.ts +26 -26
- package/dist/store/schema/lifecycle.d.ts +3 -3
- package/dist/store/schema/manifest.d.ts +1 -1
- package/dist/store/schema/memory-schema.d.ts +26 -26
- package/dist/store/schema/nexus-schema.d.ts +696 -2
- package/dist/store/schema/nexus-schema.d.ts.map +1 -1
- package/dist/store/schema/nexus-schema.js +175 -19
- package/dist/store/schema/nexus-schema.js.map +1 -1
- package/dist/store/schema/provenance/releases.d.ts +1 -1
- package/dist/store/schema/skills-schema.d.ts +2 -2
- package/dist/store/schema/tasks.d.ts +5 -5
- package/dist/store/session-binding-schema.d.ts +132 -0
- package/dist/store/session-binding-schema.d.ts.map +1 -0
- package/dist/store/session-binding-schema.js +53 -0
- package/dist/store/session-binding-schema.js.map +1 -0
- package/dist/store/session-store.d.ts +262 -4
- package/dist/store/session-store.d.ts.map +1 -1
- package/dist/store/session-store.js +486 -26
- package/dist/store/session-store.js.map +1 -1
- package/dist/store/snapshot-gate.d.ts +239 -0
- package/dist/store/snapshot-gate.d.ts.map +1 -0
- package/dist/store/snapshot-gate.js +398 -0
- package/dist/store/snapshot-gate.js.map +1 -0
- package/dist/store/split-brain-import.js +2 -2
- package/dist/store/split-brain-import.js.map +1 -1
- package/dist/store/sqlite-backup.d.ts +55 -13
- package/dist/store/sqlite-backup.d.ts.map +1 -1
- package/dist/store/sqlite-backup.js +414 -106
- package/dist/store/sqlite-backup.js.map +1 -1
- package/dist/store/sqlite-data-accessor.d.ts +15 -0
- package/dist/store/sqlite-data-accessor.d.ts.map +1 -1
- package/dist/store/sqlite-data-accessor.js +63 -4
- package/dist/store/sqlite-data-accessor.js.map +1 -1
- package/dist/store/sqlite.d.ts +1 -1
- package/dist/store/sqlite.d.ts.map +1 -1
- package/dist/store/sqlite.js +53 -5
- package/dist/store/sqlite.js.map +1 -1
- package/dist/store/store-write-guard.d.ts +28 -0
- package/dist/store/store-write-guard.d.ts.map +1 -0
- package/dist/store/store-write-guard.js +50 -0
- package/dist/store/store-write-guard.js.map +1 -0
- package/dist/store/table-classification.d.ts +143 -0
- package/dist/store/table-classification.d.ts.map +1 -0
- package/dist/store/table-classification.js +1866 -0
- package/dist/store/table-classification.js.map +1 -0
- package/dist/store/task-version.d.ts +72 -0
- package/dist/store/task-version.d.ts.map +1 -0
- package/dist/store/task-version.js +93 -0
- package/dist/store/task-version.js.map +1 -0
- package/dist/store/tasks-schema.d.ts +1 -0
- package/dist/store/tasks-schema.d.ts.map +1 -1
- package/dist/store/tasks-schema.js +13 -0
- package/dist/store/tasks-schema.js.map +1 -1
- package/dist/store/tasks-sqlite.d.ts +10 -3
- package/dist/store/tasks-sqlite.d.ts.map +1 -1
- package/dist/store/tasks-sqlite.js +12 -3
- package/dist/store/tasks-sqlite.js.map +1 -1
- package/dist/store/twin-collapse.d.ts +275 -0
- package/dist/store/twin-collapse.d.ts.map +1 -0
- package/dist/store/twin-collapse.js +805 -0
- package/dist/store/twin-collapse.js.map +1 -0
- package/dist/store/umbrella-data-accessor.d.ts +2 -2
- package/dist/store/umbrella-data-accessor.d.ts.map +1 -1
- package/dist/store/umbrella-data-accessor.js +2 -2
- package/dist/store/umbrella-data-accessor.js.map +1 -1
- package/dist/store/validation-schemas.d.ts +63 -63
- package/dist/store/worktree-isolation-guard.d.ts +46 -24
- package/dist/store/worktree-isolation-guard.d.ts.map +1 -1
- package/dist/store/worktree-isolation-guard.js +69 -50
- package/dist/store/worktree-isolation-guard.js.map +1 -1
- package/dist/system/backup.d.ts.map +1 -1
- package/dist/system/backup.js +3 -67
- package/dist/system/backup.js.map +1 -1
- package/dist/system/cleo-link.d.ts +163 -0
- package/dist/system/cleo-link.d.ts.map +1 -0
- package/dist/system/cleo-link.js +246 -0
- package/dist/system/cleo-link.js.map +1 -0
- package/dist/system/dependencies.d.ts.map +1 -1
- package/dist/system/dependencies.js +26 -41
- package/dist/system/dependencies.js.map +1 -1
- package/dist/system/global-delivery.d.ts +205 -0
- package/dist/system/global-delivery.d.ts.map +1 -0
- package/dist/system/global-delivery.js +320 -0
- package/dist/system/global-delivery.js.map +1 -0
- package/dist/system/health.d.ts.map +1 -1
- package/dist/system/health.js +29 -6
- package/dist/system/health.js.map +1 -1
- package/dist/system/project-health.d.ts.map +1 -1
- package/dist/system/project-health.js +1 -20
- package/dist/system/project-health.js.map +1 -1
- package/dist/system/runtime.d.ts.map +1 -1
- package/dist/system/runtime.js +2 -12
- package/dist/system/runtime.js.map +1 -1
- package/dist/system/safestop.d.ts.map +1 -1
- package/dist/system/safestop.js +5 -2
- package/dist/system/safestop.js.map +1 -1
- package/dist/system/skill-fixtures.d.ts +200 -0
- package/dist/system/skill-fixtures.d.ts.map +1 -0
- package/dist/system/skill-fixtures.js +331 -0
- package/dist/system/skill-fixtures.js.map +1 -0
- package/dist/tasks/add.d.ts.map +1 -1
- package/dist/tasks/add.js +4 -2
- package/dist/tasks/add.js.map +1 -1
- package/dist/tasks/affected-packages.d.ts +173 -0
- package/dist/tasks/affected-packages.d.ts.map +1 -0
- package/dist/tasks/affected-packages.js +389 -0
- package/dist/tasks/affected-packages.js.map +1 -0
- package/dist/tasks/change-set.d.ts +151 -0
- package/dist/tasks/change-set.d.ts.map +1 -0
- package/dist/tasks/change-set.js +634 -0
- package/dist/tasks/change-set.js.map +1 -0
- package/dist/tasks/complete.d.ts.map +1 -1
- package/dist/tasks/complete.js +10 -5
- package/dist/tasks/complete.js.map +1 -1
- package/dist/tasks/done-plan.d.ts +103 -0
- package/dist/tasks/done-plan.d.ts.map +1 -0
- package/dist/tasks/done-plan.js +541 -0
- package/dist/tasks/done-plan.js.map +1 -0
- package/dist/tasks/done-record.d.ts +127 -0
- package/dist/tasks/done-record.d.ts.map +1 -0
- package/dist/tasks/done-record.js +373 -0
- package/dist/tasks/done-record.js.map +1 -0
- package/dist/tasks/duplicate-detector.d.ts +68 -11
- package/dist/tasks/duplicate-detector.d.ts.map +1 -1
- package/dist/tasks/duplicate-detector.js +314 -58
- package/dist/tasks/duplicate-detector.js.map +1 -1
- package/dist/tasks/evidence-paths.d.ts +78 -0
- package/dist/tasks/evidence-paths.d.ts.map +1 -0
- package/dist/tasks/evidence-paths.js +150 -0
- package/dist/tasks/evidence-paths.js.map +1 -0
- package/dist/tasks/evidence.d.ts +55 -0
- package/dist/tasks/evidence.d.ts.map +1 -1
- package/dist/tasks/evidence.js +223 -26
- package/dist/tasks/evidence.js.map +1 -1
- package/dist/tasks/gate-preview.d.ts +5 -0
- package/dist/tasks/gate-preview.d.ts.map +1 -1
- package/dist/tasks/gate-preview.js +25 -21
- package/dist/tasks/gate-preview.js.map +1 -1
- package/dist/tasks/gate-result-cache.d.ts +205 -0
- package/dist/tasks/gate-result-cache.d.ts.map +1 -0
- package/dist/tasks/gate-result-cache.js +285 -0
- package/dist/tasks/gate-result-cache.js.map +1 -0
- package/dist/tasks/gate-runner.d.ts +126 -3
- package/dist/tasks/gate-runner.d.ts.map +1 -1
- package/dist/tasks/gate-runner.js +483 -28
- package/dist/tasks/gate-runner.js.map +1 -1
- package/dist/tasks/session-scope.d.ts +3 -1
- package/dist/tasks/session-scope.d.ts.map +1 -1
- package/dist/tasks/session-scope.js +18 -3
- package/dist/tasks/session-scope.js.map +1 -1
- package/dist/tasks/tool-resolver.d.ts +23 -6
- package/dist/tasks/tool-resolver.d.ts.map +1 -1
- package/dist/tasks/tool-resolver.js +146 -8
- package/dist/tasks/tool-resolver.js.map +1 -1
- package/dist/tasks/tool-vacuity.d.ts +71 -0
- package/dist/tasks/tool-vacuity.d.ts.map +1 -0
- package/dist/tasks/tool-vacuity.js +334 -0
- package/dist/tasks/tool-vacuity.js.map +1 -0
- package/dist/tasks/update.d.ts +8 -0
- package/dist/tasks/update.d.ts.map +1 -1
- package/dist/tasks/update.js +159 -78
- package/dist/tasks/update.js.map +1 -1
- package/dist/upgrade.d.ts.map +1 -1
- package/dist/upgrade.js +18 -2
- package/dist/upgrade.js.map +1 -1
- package/dist/validation/doctor/checks.d.ts +20 -2
- package/dist/validation/doctor/checks.d.ts.map +1 -1
- package/dist/validation/doctor/checks.js +64 -4
- package/dist/validation/doctor/checks.js.map +1 -1
- package/dist/validation/doctor/index.d.ts +1 -1
- package/dist/validation/doctor/index.d.ts.map +1 -1
- package/dist/validation/doctor/index.js +1 -1
- package/dist/validation/doctor/index.js.map +1 -1
- package/dist/validation/doctor/utils.d.ts.map +1 -1
- package/dist/validation/doctor/utils.js +7 -2
- package/dist/validation/doctor/utils.js.map +1 -1
- package/dist/validation/engine-ops.d.ts +15 -0
- package/dist/validation/engine-ops.d.ts.map +1 -1
- package/dist/validation/engine-ops.js +249 -98
- package/dist/validation/engine-ops.js.map +1 -1
- package/migrations/drizzle-cleo-global/20260927000000_t12469-project-locations/migration.sql +121 -0
- package/migrations/drizzle-cleo-global/20260927010000_t12543-user-profile-project-scope/migration.sql +23 -0
- package/migrations/drizzle-cleo-global/20260928010000_t12470-location-candidates/migration.sql +72 -0
- package/migrations/drizzle-cleo-global/20260928020000_t12510-nexus-devices/migration.sql +34 -0
- package/migrations/drizzle-cleo-global/20260928030000_t12511-project-git-state/migration.sql +62 -0
- package/migrations/drizzle-cleo-project/20260927000000_t12499-session-terminal-bindings/migration.sql +34 -0
- package/migrations/drizzle-cleo-project/20260928000000_t12500-binding-provider-flag/migration.sql +15 -0
- package/package.json +23 -13
- package/schemas/config.schema.json +54 -0
- package/schemas/project-context.schema.json +51 -3
- package/schemas/project-info.schema.json +28 -1
- package/templates/CLEO-INJECTION.md +40 -332
- package/templates/CLEO-REFERENCE.md +303 -0
- package/templates/workflows/README.md +36 -14
- package/templates/workflows/release-prepare.yml.tmpl +7 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duplicate-detector.d.ts","sourceRoot":"","sources":["../../src/tasks/duplicate-detector.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"duplicate-detector.d.ts","sourceRoot":"","sources":["../../src/tasks/duplicate-detector.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,10 +20,20 @@
|
|
|
20
20
|
* score < 0.40 → insert
|
|
21
21
|
* score in [0.40, 0.85) → escalate to Tier 3 (LLM, paid)
|
|
22
22
|
*
|
|
23
|
-
* Tier 3 —
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
23
|
+
* Tier 3 — one batched System One decision (T12492), then the optional
|
|
24
|
+
* generative LLM tier:
|
|
25
|
+
* - System One: ONE `decide()` request carrying up to {@link MAX_CANDIDATES}
|
|
26
|
+
* noul questions ("is the new task the same work as candidate cN?"),
|
|
27
|
+
* bounded by {@link DUPLICATE_DECISION_BUDGET_MS} end to end. Mode comes
|
|
28
|
+
* from `decide.sites.duplicateDetection` (`off | shadow | on`): `shadow`
|
|
29
|
+
* (the default once a provider is configured) records the heuristic and
|
|
30
|
+
* decision answers side by side in `.cleo/audit/decisions.jsonl` and acts
|
|
31
|
+
* on the heuristic; `on` acts on the decision when one arrives. No
|
|
32
|
+
* provider configured → `off`, and no network call is made at all.
|
|
33
|
+
* - Generative LLM (T1681, max 1 call): OPT-IN via
|
|
34
|
+
* `decide.generativeFallback.duplicateDetection: true`. Off by default,
|
|
35
|
+
* so `cleo add` no longer pays its 15 s timeout.
|
|
36
|
+
* Fallback on every failure: the Tier-1-only decision (never block on error).
|
|
27
37
|
*
|
|
28
38
|
* Thresholds (original T1633 behavior preserved for the Tier-1 clear-match path):
|
|
29
39
|
* Tier-1 score >= 0.85 → warning emitted to stderr (non-blocking)
|
|
@@ -34,6 +44,7 @@
|
|
|
34
44
|
* @task T1681
|
|
35
45
|
*/
|
|
36
46
|
import { z } from 'zod';
|
|
47
|
+
import { redactThenClip, resolveDecisionSiteSettings, } from '../decide/site.js';
|
|
37
48
|
// ============================================================================
|
|
38
49
|
// Thresholds
|
|
39
50
|
// ============================================================================
|
|
@@ -60,8 +71,34 @@ const JACCARD_ESCALATE_LOW = 0.4;
|
|
|
60
71
|
const MAX_ACTIVE_TASKS_SCAN = 500;
|
|
61
72
|
/** Maximum number of candidates to surface in the warning/rejection message. */
|
|
62
73
|
export const MAX_CANDIDATES = 3;
|
|
63
|
-
/** LLM call timeout in milliseconds. */
|
|
74
|
+
/** LLM call timeout in milliseconds (opt-in generative tier only). */
|
|
64
75
|
const LLM_TIMEOUT_MS = 15_000;
|
|
76
|
+
/**
|
|
77
|
+
* End-to-end budget for the System One duplicate decision, in milliseconds:
|
|
78
|
+
* module load, settings, redaction, the shared request budget and the HTTP
|
|
79
|
+
* round trip (connection setup included) all fit inside it.
|
|
80
|
+
*
|
|
81
|
+
* @task T12492
|
|
82
|
+
*/
|
|
83
|
+
export const DUPLICATE_DECISION_BUDGET_MS = 300;
|
|
84
|
+
/**
|
|
85
|
+
* Minimum confidence EVERY decision answer needs before `on` mode acts on the
|
|
86
|
+
* decision. Below it the decision is audited but the heuristic acts.
|
|
87
|
+
*/
|
|
88
|
+
export const DUPLICATE_DECISION_MIN_CONFIDENCE = 0.6;
|
|
89
|
+
/** Call-site id for the duplicate decision; keys the audit line. */
|
|
90
|
+
export const DUPLICATE_DECISION_SITE = 'tasks.duplicate-detection';
|
|
91
|
+
/** Config key selecting the System One mode for duplicate detection. */
|
|
92
|
+
export const DUPLICATE_DECISION_MODE_KEY = 'decide.sites.duplicateDetection';
|
|
93
|
+
/** Config key opting in to the generative LLM tier (T1681). Default `false`. */
|
|
94
|
+
export const DUPLICATE_LLM_TIER_KEY = 'decide.generativeFallback.duplicateDetection';
|
|
95
|
+
/**
|
|
96
|
+
* Per-field character caps for the decision state. Four tasks (the new one
|
|
97
|
+
* plus three candidates) stay near 3 KB of text — inside the ~1024 tokens the
|
|
98
|
+
* decision model reads.
|
|
99
|
+
*/
|
|
100
|
+
const DECISION_TITLE_MAX_CHARS = 160;
|
|
101
|
+
const DECISION_DESCRIPTION_MAX_CHARS = 440;
|
|
65
102
|
/**
|
|
66
103
|
* Maximum candidates that may be scored with local embeddings (T12117).
|
|
67
104
|
*
|
|
@@ -464,6 +501,181 @@ export async function callLlmDuplicateReasoning(incomingTitle, incomingDescripti
|
|
|
464
501
|
return null;
|
|
465
502
|
}
|
|
466
503
|
}
|
|
504
|
+
/** Whether every answer is confident enough for `on` mode to act on it. */
|
|
505
|
+
function isConfident(answers) {
|
|
506
|
+
return Object.values(answers).every((a) => a.confidence >= DUPLICATE_DECISION_MIN_CONFIDENCE);
|
|
507
|
+
}
|
|
508
|
+
/**
|
|
509
|
+
* Resolve the System One mode and the generative-tier opt-in.
|
|
510
|
+
*
|
|
511
|
+
* Unconfigured (no explicit provider/connection and nothing stored by
|
|
512
|
+
* `cleo decide config`) always resolves to `off`, whatever the config says,
|
|
513
|
+
* so an unconfigured `cleo add` never opens a socket.
|
|
514
|
+
*/
|
|
515
|
+
async function resolveDuplicateDecisionSettings(opts, cwd) {
|
|
516
|
+
return resolveDecisionSiteSettings({
|
|
517
|
+
modeKey: DUPLICATE_DECISION_MODE_KEY,
|
|
518
|
+
llmTierKey: DUPLICATE_LLM_TIER_KEY,
|
|
519
|
+
mode: opts.mode,
|
|
520
|
+
llmTier: opts.llmTier,
|
|
521
|
+
wiring: opts.decide,
|
|
522
|
+
projectRoot: cwd,
|
|
523
|
+
});
|
|
524
|
+
}
|
|
525
|
+
/** Question name for the candidate at `index` (0-based). */
|
|
526
|
+
function questionName(index) {
|
|
527
|
+
return `c${index + 1}`;
|
|
528
|
+
}
|
|
529
|
+
/**
|
|
530
|
+
* Build ONE decision request: the new task plus up to {@link MAX_CANDIDATES}
|
|
531
|
+
* candidates as structured state, and one noul question per candidate.
|
|
532
|
+
*/
|
|
533
|
+
function buildDuplicateDecisionRequest(title, description, candidates, redact) {
|
|
534
|
+
const clip = (text, max) => redactThenClip(text, max, redact);
|
|
535
|
+
const state = {
|
|
536
|
+
new: {
|
|
537
|
+
title: clip(title, DECISION_TITLE_MAX_CHARS),
|
|
538
|
+
description: clip(description, DECISION_DESCRIPTION_MAX_CHARS),
|
|
539
|
+
},
|
|
540
|
+
};
|
|
541
|
+
const questions = {};
|
|
542
|
+
candidates.forEach((c, i) => {
|
|
543
|
+
const name = questionName(i);
|
|
544
|
+
state[name] = {
|
|
545
|
+
id: c.task.id,
|
|
546
|
+
title: clip(c.task.title, DECISION_TITLE_MAX_CHARS),
|
|
547
|
+
description: clip(c.task.description ?? '', DECISION_DESCRIPTION_MAX_CHARS),
|
|
548
|
+
};
|
|
549
|
+
questions[name] = {
|
|
550
|
+
type: 'noul',
|
|
551
|
+
criteria: `The "new" task describes the same work deliverable as task "${name}" (a semantic duplicate, even if worded differently), not a different scope, deliverable or problem.`,
|
|
552
|
+
};
|
|
553
|
+
});
|
|
554
|
+
return { state, questions };
|
|
555
|
+
}
|
|
556
|
+
/**
|
|
557
|
+
* The heuristic's Tier-3 verdict for one candidate: `warn` when its Tier-1
|
|
558
|
+
* score reaches {@link DUPLICATE_WARN_THRESHOLD}, else `pass`. Tier-3
|
|
559
|
+
* candidates are below the reject threshold by construction, so warn/pass is
|
|
560
|
+
* the only verdict the heuristic can reach here — and the one agreement with
|
|
561
|
+
* the decision is measured against.
|
|
562
|
+
*/
|
|
563
|
+
function heuristicVerdictFor(c) {
|
|
564
|
+
return c.tier1Score >= DUPLICATE_WARN_THRESHOLD ? 'warn' : 'pass';
|
|
565
|
+
}
|
|
566
|
+
/**
|
|
567
|
+
* The heuristic's answer for one candidate, as a noul answer: `value` is its
|
|
568
|
+
* warn verdict and `probability` the RAW Tier-1 similarity (uncalibrated — a
|
|
569
|
+
* warn can sit at 0.85 and a pass at 0.6). Confidence is a flat 0.5: the
|
|
570
|
+
* heuristic carries no calibration of its own.
|
|
571
|
+
*/
|
|
572
|
+
function heuristicAnswer(c) {
|
|
573
|
+
return {
|
|
574
|
+
type: 'noul',
|
|
575
|
+
value: heuristicVerdictFor(c) === 'warn',
|
|
576
|
+
probability: Math.min(1, Math.max(0, c.tier1Score)),
|
|
577
|
+
confidence: 0.5,
|
|
578
|
+
};
|
|
579
|
+
}
|
|
580
|
+
/**
|
|
581
|
+
* Ask System One whether any candidate duplicates the new task.
|
|
582
|
+
*
|
|
583
|
+
* Never throws and never waits longer than {@link DUPLICATE_DECISION_BUDGET_MS}
|
|
584
|
+
* (`decide()` enforces the remaining budget as its deadline). The audit line
|
|
585
|
+
* carries the heuristic answers and verdict next to the decision answers.
|
|
586
|
+
*
|
|
587
|
+
* @returns The decision verdict, or `null` when the heuristic answered (fallback).
|
|
588
|
+
*/
|
|
589
|
+
async function askDuplicateDecision(title, description, candidates, heuristicVerdict, mode, opts, cwd) {
|
|
590
|
+
const started = performance.now();
|
|
591
|
+
const deadline = AbortSignal.timeout(DUPLICATE_DECISION_BUDGET_MS);
|
|
592
|
+
try {
|
|
593
|
+
const { decide } = await import('../decide/client.js');
|
|
594
|
+
const { auditAnswers, createJsonlDecisionAudit } = await import('../decide/audit.js');
|
|
595
|
+
const { redactContent } = await import('../memory/redaction.js');
|
|
596
|
+
const req = buildDuplicateDecisionRequest(title, description, candidates, (text) => redactContent(text).content);
|
|
597
|
+
const heuristicAnswers = {};
|
|
598
|
+
const subjects = {};
|
|
599
|
+
const heuristicVerdicts = {};
|
|
600
|
+
const heuristicScores = {};
|
|
601
|
+
candidates.forEach((c, i) => {
|
|
602
|
+
const name = questionName(i);
|
|
603
|
+
heuristicAnswers[name] = heuristicAnswer(c);
|
|
604
|
+
heuristicVerdicts[name] = heuristicVerdictFor(c);
|
|
605
|
+
heuristicScores[name] = c.tier1Score;
|
|
606
|
+
subjects[name] = c.task.id;
|
|
607
|
+
});
|
|
608
|
+
const heuristicAudit = auditAnswers({
|
|
609
|
+
answers: heuristicAnswers,
|
|
610
|
+
source: 'fallback',
|
|
611
|
+
latencyMs: 0,
|
|
612
|
+
});
|
|
613
|
+
const wiring = opts.decide ?? {};
|
|
614
|
+
let sink = wiring.audit;
|
|
615
|
+
if (sink === undefined) {
|
|
616
|
+
try {
|
|
617
|
+
const { getProjectRoot } = await import('../paths.js');
|
|
618
|
+
sink = createJsonlDecisionAudit(wiring.projectRoot ?? cwd ?? getProjectRoot());
|
|
619
|
+
}
|
|
620
|
+
catch {
|
|
621
|
+
sink = null;
|
|
622
|
+
}
|
|
623
|
+
}
|
|
624
|
+
const base = sink;
|
|
625
|
+
const audit = base
|
|
626
|
+
? {
|
|
627
|
+
write: (entry) => {
|
|
628
|
+
const answered = entry.source !== 'fallback';
|
|
629
|
+
base.write({
|
|
630
|
+
...entry,
|
|
631
|
+
shadow: {
|
|
632
|
+
mode,
|
|
633
|
+
acted: mode === 'on' && answered && isConfident(entry.answers)
|
|
634
|
+
? 'decision'
|
|
635
|
+
: 'heuristic',
|
|
636
|
+
heuristicVerdict,
|
|
637
|
+
heuristicAnswers: heuristicAudit,
|
|
638
|
+
agree: answered
|
|
639
|
+
? Object.entries(entry.answers).every(([name, a]) => a.value === heuristicAnswers[name]?.value)
|
|
640
|
+
: null,
|
|
641
|
+
heuristicVerdicts,
|
|
642
|
+
heuristicScores,
|
|
643
|
+
subjects,
|
|
644
|
+
},
|
|
645
|
+
});
|
|
646
|
+
},
|
|
647
|
+
}
|
|
648
|
+
: null;
|
|
649
|
+
// `decide()` starts its own deadline only after its setup (connection,
|
|
650
|
+
// redaction, validation). The abort signal pins the budget to THIS
|
|
651
|
+
// function's start, so that setup is inside it too.
|
|
652
|
+
const remaining = Math.max(0, DUPLICATE_DECISION_BUDGET_MS - (performance.now() - started));
|
|
653
|
+
const outcome = await decide(DUPLICATE_DECISION_SITE, req, () => heuristicAnswers, {
|
|
654
|
+
...wiring,
|
|
655
|
+
audit,
|
|
656
|
+
timeoutMs: Math.min(wiring.timeoutMs ?? remaining, remaining),
|
|
657
|
+
signal: wiring.signal ? AbortSignal.any([wiring.signal, deadline]) : deadline,
|
|
658
|
+
});
|
|
659
|
+
if (outcome.source === 'fallback')
|
|
660
|
+
return null;
|
|
661
|
+
const duplicates = [];
|
|
662
|
+
let maxProbability = 0;
|
|
663
|
+
candidates.forEach((c, i) => {
|
|
664
|
+
const answer = outcome.answers[questionName(i)];
|
|
665
|
+
if (answer?.type !== 'noul')
|
|
666
|
+
return;
|
|
667
|
+
maxProbability = Math.max(maxProbability, answer.probability);
|
|
668
|
+
if (answer.value) {
|
|
669
|
+
duplicates.push({ id: c.task.id, title: c.task.title, score: answer.probability });
|
|
670
|
+
}
|
|
671
|
+
});
|
|
672
|
+
duplicates.sort((a, b) => b.score - a.score);
|
|
673
|
+
return { duplicates, maxProbability, confident: isConfident(outcome.answers) };
|
|
674
|
+
}
|
|
675
|
+
catch {
|
|
676
|
+
return null;
|
|
677
|
+
}
|
|
678
|
+
}
|
|
467
679
|
// ============================================================================
|
|
468
680
|
// Main Check
|
|
469
681
|
// ============================================================================
|
|
@@ -487,20 +699,24 @@ export async function callLlmDuplicateReasoning(incomingTitle, incomingDescripti
|
|
|
487
699
|
* - score < JACCARD_ESCALATE_LOW (0.40): clear different → skip LLM.
|
|
488
700
|
* - score in [0.40, 0.85): ambiguous → escalate to LLM (cost cap: 1 call per invocation).
|
|
489
701
|
*
|
|
490
|
-
* Tier 3 —
|
|
491
|
-
*
|
|
492
|
-
*
|
|
702
|
+
* Tier 3 — System One, then the opt-in generative LLM (T12492):
|
|
703
|
+
* One `decide()` request with up to 3 candidates as noul questions, bounded by
|
|
704
|
+
* DUPLICATE_DECISION_BUDGET_MS. `shadow` audits it and acts on the heuristic; `on`
|
|
705
|
+
* acts on it. Then, only when `decide.generativeFallback.duplicateDetection` is true,
|
|
706
|
+
* the T1681 LLM call (max 1). On any failure: the Tier-1 decision (never block).
|
|
493
707
|
*
|
|
494
708
|
* @param title - Title of the task being added.
|
|
495
709
|
* @param description - Description of the task being added (empty string if not provided).
|
|
496
710
|
* @param accessor - DataAccessor instance to load active tasks from.
|
|
497
711
|
* @param labels - Labels of the task being added (empty array if not provided).
|
|
498
712
|
* @param cwd - Project root for LLM credential resolution (Tier 3).
|
|
713
|
+
* @param options - System One mode, generative-tier opt-in and `decide()` wiring (T12492).
|
|
499
714
|
* @returns Duplicate check result with tier provenance.
|
|
500
715
|
* @task T1633
|
|
501
716
|
* @task T1681
|
|
717
|
+
* @task T12492
|
|
502
718
|
*/
|
|
503
|
-
export async function checkDuplicates(title, description, accessor, labels, cwd) {
|
|
719
|
+
export async function checkDuplicates(title, description, accessor, labels, cwd, options = {}) {
|
|
504
720
|
const incomingLabels = labels ?? [];
|
|
505
721
|
// Load non-terminal tasks: pending, active, and blocked are all "active work"
|
|
506
722
|
// that could duplicate the incoming task.
|
|
@@ -619,63 +835,93 @@ export async function checkDuplicates(title, description, accessor, labels, cwd)
|
|
|
619
835
|
tier: 'jaccard',
|
|
620
836
|
};
|
|
621
837
|
}
|
|
622
|
-
// ---- Tier 3:
|
|
623
|
-
//
|
|
624
|
-
//
|
|
838
|
+
// ---- Tier 3: System One decision, then the opt-in generative LLM ---------
|
|
839
|
+
// Riskiest candidates first. The heuristic verdict below is what the
|
|
840
|
+
// existing path does when no model answers: warn on a Tier-1 warn-zone
|
|
841
|
+
// score, otherwise insert. It is what `shadow` acts on.
|
|
625
842
|
if (tier2Ambiguous.length > 0) {
|
|
626
|
-
// Sort by jaccard score descending to pick the riskiest candidate
|
|
627
843
|
tier2Ambiguous.sort((a, b) => b.jaccardScore - a.jaccardScore);
|
|
844
|
+
const tier1Of = (id) => tier1Ambiguous.find((e) => e.task.id === id)?.tier1Score;
|
|
845
|
+
const decisionCandidates = tier2Ambiguous
|
|
846
|
+
.slice(0, MAX_CANDIDATES)
|
|
847
|
+
.map(({ task, jaccardScore }) => ({
|
|
848
|
+
task,
|
|
849
|
+
jaccardScore,
|
|
850
|
+
tier1Score: tier1Of(task.id) ?? jaccardScore,
|
|
851
|
+
}));
|
|
628
852
|
const topCandidate = tier2Ambiguous[0];
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
853
|
+
// Tier-1-only fallback for the top candidate. The Tier-1 score is in
|
|
854
|
+
// [0.5, 0.92), so it warns only when >= DUPLICATE_WARN_THRESHOLD.
|
|
855
|
+
const fallbackScore = tier1Of(topCandidate.task.id) ?? topCandidate.jaccardScore;
|
|
856
|
+
const heuristicResult = fallbackScore >= DUPLICATE_WARN_THRESHOLD
|
|
857
|
+
? {
|
|
858
|
+
maxScore: fallbackScore,
|
|
859
|
+
candidates: [
|
|
860
|
+
{ id: topCandidate.task.id, title: topCandidate.task.title, score: fallbackScore },
|
|
861
|
+
],
|
|
862
|
+
shouldReject: false,
|
|
863
|
+
shouldWarn: true,
|
|
864
|
+
tier: 'bm25',
|
|
865
|
+
}
|
|
866
|
+
: null;
|
|
867
|
+
const settings = await resolveDuplicateDecisionSettings(options, cwd);
|
|
868
|
+
if (settings.mode !== 'off') {
|
|
869
|
+
const verdict = await askDuplicateDecision(title, description, decisionCandidates, heuristicResult ? 'warn' : 'insert', settings.mode, options, cwd);
|
|
870
|
+
if (settings.mode === 'on' && verdict?.confident) {
|
|
871
|
+
if (verdict.duplicates.length > 0) {
|
|
872
|
+
return {
|
|
873
|
+
maxScore: verdict.duplicates[0]?.score ?? 0,
|
|
874
|
+
candidates: verdict.duplicates,
|
|
875
|
+
shouldReject: true,
|
|
876
|
+
shouldWarn: false,
|
|
877
|
+
tier: 'decision',
|
|
878
|
+
};
|
|
879
|
+
}
|
|
643
880
|
return {
|
|
644
|
-
maxScore:
|
|
645
|
-
candidates: [
|
|
646
|
-
shouldReject:
|
|
881
|
+
maxScore: topCandidate.jaccardScore,
|
|
882
|
+
candidates: [],
|
|
883
|
+
shouldReject: false,
|
|
647
884
|
shouldWarn: false,
|
|
648
|
-
tier: '
|
|
885
|
+
tier: 'decision',
|
|
649
886
|
};
|
|
650
887
|
}
|
|
651
|
-
// LLM says not duplicate — insert without rejection
|
|
652
|
-
return {
|
|
653
|
-
maxScore: topCandidate.jaccardScore,
|
|
654
|
-
candidates: [],
|
|
655
|
-
shouldReject: false,
|
|
656
|
-
shouldWarn: false,
|
|
657
|
-
tier: 'llm',
|
|
658
|
-
};
|
|
659
888
|
}
|
|
660
|
-
// LLM
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
const tier1Entry = tier1Ambiguous.find((e) => e.task.id === topCandidate.task.id);
|
|
664
|
-
const fallbackScore = tier1Entry?.tier1Score ?? topCandidate.jaccardScore;
|
|
665
|
-
if (fallbackScore >= DUPLICATE_WARN_THRESHOLD) {
|
|
666
|
-
const candidate = {
|
|
889
|
+
// Generative LLM tier (T1681) — opt-in, max 1 call per invocation.
|
|
890
|
+
if (settings.llmTier) {
|
|
891
|
+
const reasoning = await callLlmDuplicateReasoning(title, description, {
|
|
667
892
|
id: topCandidate.task.id,
|
|
668
893
|
title: topCandidate.task.title,
|
|
669
|
-
score:
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
894
|
+
score: topCandidate.jaccardScore,
|
|
895
|
+
description: topCandidate.task.description ?? '',
|
|
896
|
+
}, cwd);
|
|
897
|
+
if (reasoning !== null) {
|
|
898
|
+
if (reasoning.are_duplicate) {
|
|
899
|
+
const candidate = {
|
|
900
|
+
id: topCandidate.task.id,
|
|
901
|
+
title: topCandidate.task.title,
|
|
902
|
+
score: reasoning.confidence,
|
|
903
|
+
};
|
|
904
|
+
return {
|
|
905
|
+
maxScore: reasoning.confidence,
|
|
906
|
+
candidates: [candidate],
|
|
907
|
+
shouldReject: true,
|
|
908
|
+
shouldWarn: false,
|
|
909
|
+
tier: 'llm',
|
|
910
|
+
};
|
|
911
|
+
}
|
|
912
|
+
// LLM says not duplicate — insert without rejection
|
|
913
|
+
return {
|
|
914
|
+
maxScore: topCandidate.jaccardScore,
|
|
915
|
+
candidates: [],
|
|
916
|
+
shouldReject: false,
|
|
917
|
+
shouldWarn: false,
|
|
918
|
+
tier: 'llm',
|
|
919
|
+
};
|
|
920
|
+
}
|
|
678
921
|
}
|
|
922
|
+
// No model answer acted on — the Tier-1-only decision.
|
|
923
|
+
if (heuristicResult)
|
|
924
|
+
return heuristicResult;
|
|
679
925
|
}
|
|
680
926
|
// ---- Collect any Tier-1 warn-zone candidates (non-rejecting) --------------
|
|
681
927
|
const warnCandidates = clearMatchCandidates
|
|
@@ -697,11 +943,12 @@ export async function checkDuplicates(title, description, accessor, labels, cwd)
|
|
|
697
943
|
* Format a human-readable candidate list for warning/rejection messages.
|
|
698
944
|
*
|
|
699
945
|
* @param candidates - Array of duplicate candidates.
|
|
946
|
+
* @param label - What `score` measures; defaults to the lexical `similarity`.
|
|
700
947
|
* @returns Formatted multi-line string listing candidates.
|
|
701
948
|
*/
|
|
702
|
-
export function formatCandidateList(candidates) {
|
|
949
|
+
export function formatCandidateList(candidates, label = 'similarity') {
|
|
703
950
|
return candidates
|
|
704
|
-
.map((c) => ` • ${c.id}: "${c.title}" (
|
|
951
|
+
.map((c) => ` • ${c.id}: "${c.title}" (${label}: ${(c.score * 100).toFixed(0)}%)`)
|
|
705
952
|
.join('\n');
|
|
706
953
|
}
|
|
707
954
|
/**
|
|
@@ -718,10 +965,19 @@ export function buildWarnMessage(candidates) {
|
|
|
718
965
|
/**
|
|
719
966
|
* Build a rejection message for candidates above the reject threshold.
|
|
720
967
|
*
|
|
968
|
+
* A System One rejection (`tier: 'decision'`) is worded as what it is — the
|
|
969
|
+
* model's duplicate probability — never as a lexical similarity score.
|
|
970
|
+
*
|
|
721
971
|
* @param candidates - Candidates to include in the message.
|
|
972
|
+
* @param tier - The tier that decided (from {@link DuplicateCheckResult.tier}).
|
|
722
973
|
* @returns Rejection string (no newline at end).
|
|
723
974
|
*/
|
|
724
|
-
export function buildRejectMessage(candidates) {
|
|
975
|
+
export function buildRejectMessage(candidates, tier) {
|
|
976
|
+
if (tier === 'decision') {
|
|
977
|
+
return (`[BRAIN duplicate-check] Task creation REJECTED — System One judged these active tasks to be the same work:\n` +
|
|
978
|
+
formatCandidateList(candidates, 'System One duplicate probability') +
|
|
979
|
+
`\nRun with --force-duplicate to bypass (audited to .cleo/audit/duplicate-bypass.jsonl).`);
|
|
980
|
+
}
|
|
725
981
|
return (`[BRAIN duplicate-check] Task creation REJECTED — very similar active tasks found (score >= ${Math.round(DUPLICATE_REJECT_THRESHOLD * 100)}%):\n` +
|
|
726
982
|
formatCandidateList(candidates) +
|
|
727
983
|
`\nRun with --force-duplicate to bypass (audited to .cleo/audit/duplicate-bypass.jsonl).`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duplicate-detector.js","sourceRoot":"","sources":["../../src/tasks/duplicate-detector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"duplicate-detector.js","sourceRoot":"","sources":["../../src/tasks/duplicate-detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAEL,cAAc,EACd,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAG3B,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,0FAA0F;AAC1F,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,CAAC;AAE7C,2FAA2F;AAC3F,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAE/C;;;GAGG;AACH,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAE/B;;;GAGG;AACH,MAAM,wBAAwB,GAAG,IAAI,CAAC;AAEtC;;;GAGG;AACH,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAEjC,6FAA6F;AAC7F,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAElC,gFAAgF;AAChF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC;AAEhC,sEAAsE;AACtE,MAAM,cAAc,GAAG,MAAM,CAAC;AAE9B;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,CAAC;AAEhD;;;GAGG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,GAAG,CAAC;AAErD,oEAAoE;AACpE,MAAM,CAAC,MAAM,uBAAuB,GAAG,2BAA2B,CAAC;AAEnE,wEAAwE;AACxE,MAAM,CAAC,MAAM,2BAA2B,GAAG,iCAAiC,CAAC;AAE7E,gFAAgF;AAChF,MAAM,CAAC,MAAM,sBAAsB,GAAG,8CAA8C,CAAC;AAErF;;;;GAIG;AACH,MAAM,wBAAwB,GAAG,GAAG,CAAC;AACrC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAE3C;;;;;;;;;;;;;GAaG;AACH,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEjC;;;;;;GAMG;AACH,MAAM,sBAAsB,GAAG,KAAK,CAAC;AA+DrC,+EAA+E;AAC/E,wCAAwC;AACxC,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,qDAAqD;IACrD,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE;IAC1B,4BAA4B;IAC5B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC;;;OAGG;IACH,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,0BAA0B;IAC1B,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;CACxD,CAAC,CAAC;AAKH,+EAA+E;AAC/E,sEAAsE;AACtE,+EAA+E;AAE/E;;;;;;GAMG;AACH,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,IAAI;SACR,WAAW,EAAE;SACb,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC;SACzB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,IAAI,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,QAAQ,CAAC,IAAY;IAC5B,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACrD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,OAAO,CAAC,CAAc,EAAE,CAAc;IAC7C,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,YAAY,EAAE,CAAC;IAC/B,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7C,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,KAAK,CAAC;AAChD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,eAAe,CAAC,KAAa,EAAE,WAAmB;IACzD,wEAAwE;IACxE,OAAO,SAAS,CAAC,GAAG,KAAK,IAAI,KAAK,IAAI,WAAW,EAAE,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAAc,EACd,KAAa,EACb,MAAc,EACd,KAAa;IAEb,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAE7C,yBAAyB;IACzB,IAAI,KAAK,KAAK,KAAK;QAAE,OAAO,GAAG,CAAC;IAEhC,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3B,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE3B,OAAO,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AACzB,CAAC;AAED,+EAA+E;AAC/E,oEAAoE;AACpE,+EAA+E;AAE/E;;;;;;GAMG;AACH,SAAS,UAAU,CAAC,MAAgB;IAClC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,SAAS,CAAC,IAAI,CAAC;SACnB,KAAK,CAAC,KAAK,CAAC;SACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,iBAAiB,CAAC,KAAa,EAAE,WAAmB,EAAE,MAAgB;IAC7E,6EAA6E;IAC7E,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IACzC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvD,MAAM,SAAS,GAAG,CAAC,GAAG,WAAW,EAAE,GAAG,WAAW,EAAE,GAAG,UAAU,EAAE,GAAG,WAAW,CAAC,CAAC;IAClF,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,4BAA4B,CAC1C,MAAc,EACd,KAAa,EACb,OAAiB,EACjB,MAAc,EACd,KAAa,EACb,OAAiB;IAEjB,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACvD,OAAO,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED,+EAA+E;AAC/E,0DAA0D;AAC1D,+EAA+E;AAE/E;;;;;;;;GAQG;AACH,KAAK,UAAU,iBAAiB,CAAC,YAAoB;IACnD,IAAI,CAAC;QACH,MAAM,EAAE,oBAAoB,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;QACzF,IAAI,CAAC,oBAAoB,EAAE;YAAE,OAAO,IAAI,CAAC;QACzC,OAAO,CAAC,MAAM,SAAS,CAAC,YAAY,CAAC,CAAC,IAAI,IAAI,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,mBAAmB,CAChC,WAAyB,EACzB,aAAqB;IAErB,IAAI,CAAC;QACH,MAAM,EAAE,oBAAoB,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;QACzF,IAAI,CAAC,oBAAoB,EAAE;YAAE,OAAO,IAAI,CAAC;QAEzC,MAAM,IAAI,GAAG,WAAW,CAAC;QACzB,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAE/D,qEAAqE;QACrE,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACvC,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;YAC7B,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,oCAAoC;AACpC,+EAA+E;AAE/E;;GAEG;AACH,SAAS,0BAA0B;IACjC,OAAO;QACL,qGAAqG;QACrG,oDAAoD;QACpD,qIAAqI;QACrI,EAAE;QACF,QAAQ;QACR,sGAAsG;QACtG,+GAA+G;QAC/G,6FAA6F;QAC7F,0IAA0I;QAC1I,uDAAuD;KACxD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,wBAAwB,CAC/B,aAAqB,EACrB,mBAA2B,EAC3B,cAAsB,EACtB,oBAA4B,EAC5B,WAAmB;IAEnB,OAAO;QACL,iCAAiC;QACjC,YAAY,aAAa,EAAE;QAC3B,kBAAkB,mBAAmB,IAAI,2BAA2B,EAAE;QACtE,EAAE;QACF,sBAAsB,WAAW,IAAI;QACrC,YAAY,cAAc,EAAE;QAC5B,kBAAkB,oBAAoB,IAAI,kBAAkB,EAAE;QAC9D,EAAE;QACF,uEAAuE;KACxE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,aAAqB,EACrB,mBAA2B,EAC3B,SAAwD,EACxD,GAAY;IAEZ,IAAI,CAAC;QACH,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QACxE,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;QAEtE,yEAAyE;QACzE,0EAA0E;QAC1E,iEAAiE;QACjE,mEAAmE;QACnE,oDAAoD;QACpD,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,eAAe,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YAC7C,0CAA0C;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,YAAY,GAAG,0BAA0B,EAAE,CAAC;QAClD,MAAM,UAAU,GAAG,wBAAwB,CACzC,aAAa,EACb,mBAAmB,EACnB,SAAS,CAAC,KAAK,EACf,SAAS,CAAC,WAAW,IAAI,EAAE,EAC3B,SAAS,CAAC,EAAE,CACb,CAAC;QAEF,4EAA4E;QAC5E,sEAAsE;QACtE,qEAAqE;QACrE,2EAA2E;QAC3E,sCAAsC;QACtC,2EAA2E;QAC3E,2EAA2E;QAC3E,6BAA6B;QAC7B,MAAM,WAAW,GAAG;YAClB,SAAS,EAAE,GAAG,CAAC,QAAQ;YACvB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,MAAM,EAAE,CAAC,MAAM,GAAG,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK;YAClD,YAAY,EACV,GAAG,CAAC,UAAU,CAAC,QAAQ,KAAK,OAAO;gBACjC,CAAC,CAAC,MAAM,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,EAAE,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC;gBAC5E,CAAC,CAAC,SAAS;SAChB,CAAC;QAEF,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QAEtD,oDAAoD;QACpD,MAAM,WAAW,GAAG,WAAW,CAAC;YAC9B,WAAW;YACX,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,GAAG;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,KAAK;YAClB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;SACtD,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACnD,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAEzB,oCAAoC;QACpC,MAAM,eAAe,GACnB,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,SAAS,IAAI,MAAM;YAClE,CAAC,CAAE,MAA+B,CAAC,OAAO;YAC1C,CAAC,CAAC,IAAI,CAAC;QAEX,IAAI,CAAC,eAAe;YAAE,OAAO,IAAI,CAAC;QAElC,sBAAsB;QACtB,IAAI,MAAe,CAAC;QACpB,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE,CAAC;YACxC,IAAI,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,wCAAwC;gBACxC,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBACtD,IAAI,CAAC,SAAS;oBAAE,OAAO,IAAI,CAAC;gBAC5B,IAAI,CAAC;oBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;gBACpC,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE,CAAC;YAC/C,MAAM,GAAG,eAAe,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,UAAU,GAAG,wBAAwB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC9D,IAAI,CAAC,UAAU,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAErC,OAAO,UAAU,CAAC,IAAI,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,6DAA6D;QAC7D,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAgCD,2EAA2E;AAC3E,SAAS,WAAW,CAAC,OAAkE;IACrF,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,iCAAiC,CAAC,CAAC;AAChG,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,gCAAgC,CAC7C,IAA2B,EAC3B,GAAuB;IAEvB,OAAO,2BAA2B,CAAC;QACjC,OAAO,EAAE,2BAA2B;QACpC,UAAU,EAAE,sBAAsB;QAClC,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,WAAW,EAAE,GAAG;KACjB,CAAC,CAAC;AACL,CAAC;AAED,4DAA4D;AAC5D,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,SAAS,6BAA6B,CACpC,KAAa,EACb,WAAmB,EACnB,UAAwC,EACxC,MAA6B;IAE7B,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,GAAW,EAAU,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IACtF,MAAM,KAAK,GAAwE;QACjF,GAAG,EAAE;YACH,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,wBAAwB,CAAC;YAC5C,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,8BAA8B,CAAC;SAC/D;KACF,CAAC;IACF,MAAM,SAAS,GAAqC,EAAE,CAAC;IACvD,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC1B,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,GAAG;YACZ,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE;YACb,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,wBAAwB,CAAC;YACnD,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,EAAE,8BAA8B,CAAC;SAC5E,CAAC;QACF,SAAS,CAAC,IAAI,CAAC,GAAG;YAChB,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,+DAA+D,IAAI,sGAAsG;SACpL,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AAC9B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,mBAAmB,CAAC,CAAoB;IAC/C,OAAO,CAAC,CAAC,UAAU,IAAI,wBAAwB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;AACpE,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,CAAoB;IAC3C,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,MAAM;QACxC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;QACnD,UAAU,EAAE,GAAG;KAChB,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,oBAAoB,CACjC,KAAa,EACb,WAAmB,EACnB,UAAwC,EACxC,gBAAwB,EACxB,IAAqB,EACrB,IAA2B,EAC3B,GAAuB;IAEvB,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;IACnE,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACvD,MAAM,EAAE,YAAY,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAEtF,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;QACjE,MAAM,GAAG,GAAG,6BAA6B,CACvC,KAAK,EACL,WAAW,EACX,UAAU,EACV,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,CACtC,CAAC;QACF,MAAM,gBAAgB,GAAmC,EAAE,CAAC;QAC5D,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAC5C,MAAM,iBAAiB,GAA2B,EAAE,CAAC;QACrD,MAAM,eAAe,GAA2B,EAAE,CAAC;QACnD,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC7B,gBAAgB,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YAC5C,iBAAiB,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;YACjD,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,MAAM,cAAc,GAAG,YAAY,CAAC;YAClC,OAAO,EAAE,gBAAgB;YACzB,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,CAAC;SACb,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;QACjC,IAAI,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC;QACxB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;gBACvD,IAAI,GAAG,wBAAwB,CAAC,MAAM,CAAC,WAAW,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC,CAAC;YACjF,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,GAAG,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,KAAK,GAAG,IAAI;YAChB,CAAC,CAAC;gBACE,KAAK,EAAE,CAAC,KAAuC,EAAQ,EAAE;oBACvD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC;oBAC7C,IAAI,CAAC,KAAK,CAAC;wBACT,GAAG,KAAK;wBACR,MAAM,EAAE;4BACN,IAAI;4BACJ,KAAK,EACH,IAAI,KAAK,IAAI,IAAI,QAAQ,IAAI,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC;gCACrD,CAAC,CAAC,UAAU;gCACZ,CAAC,CAAC,WAAW;4BACjB,gBAAgB;4BAChB,gBAAgB,EAAE,cAAc;4BAChC,KAAK,EAAE,QAAQ;gCACb,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CACjC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,CACzD;gCACH,CAAC,CAAC,IAAI;4BACR,iBAAiB;4BACjB,eAAe;4BACf,QAAQ;yBACT;qBACF,CAAC,CAAC;gBACL,CAAC;aACF;YACH,CAAC,CAAC,IAAI,CAAC;QAET,uEAAuE;QACvE,mEAAmE;QACnE,oDAAoD;QACpD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,4BAA4B,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;QAC5F,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,uBAAuB,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,gBAAgB,EAAE;YACjF,GAAG,MAAM;YACT,KAAK;YACL,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,SAAS,EAAE,SAAS,CAAC;YAC7D,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ;SAC9E,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU;YAAE,OAAO,IAAI,CAAC;QAE/C,MAAM,UAAU,GAAyB,EAAE,CAAC;QAC5C,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,IAAI,MAAM,EAAE,IAAI,KAAK,MAAM;gBAAE,OAAO;YACpC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;YAC9D,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YACrF,CAAC;QACH,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAC7C,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;IACjF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAAa,EACb,WAAmB,EACnB,QAAsB,EACtB,MAAiB,EACjB,GAAY,EACZ,UAAiC,EAAE;IAEnC,MAAM,cAAc,GAAG,MAAM,IAAI,EAAE,CAAC;IAEpC,8EAA8E;IAC9E,0CAA0C;IAC1C,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC;QACvD,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC;QACxC,KAAK,EAAE,qBAAqB;KAC7B,CAAC,CAAC;IAEH,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC/F,CAAC;IAED,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACzD,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;QACzC,IAAI,CAAC;YACH,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;YAC9E,OAAO,oBAAoB,EAAE,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,+EAA+E;IAC/E,+EAA+E;IAC/E,2EAA2E;IAC3E,qEAAqE;IACrE,MAAM,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,MAAM,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEpF,8EAA8E;IAC9E,2EAA2E;IAC3E,8BAA8B;IAC9B,MAAM,cAAc,GAA8C,EAAE,CAAC;IAErE,8FAA8F;IAC9F,MAAM,oBAAoB,GAAyB,EAAE,CAAC;IAEtD,sEAAsE;IACtE,uEAAuE;IACvE,gEAAgE;IAChE,IAAI,YAAY,GAAG,qBAAqB,CAAC;IACzC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,sBAAsB,CAAC;IAE3D,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,4EAA4E;QAC5E,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;YACzB,8EAA8E;YAC9E,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,KAAK,WAAW;gBAAE,SAAS,CAAC,wCAAwC;QAClG,CAAC;QAED,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAE1E,IAAI,UAAkB,CAAC;QACvB,4EAA4E;QAC5E,wEAAwE;QACxE,0EAA0E;QAC1E,4EAA4E;QAC5E,2DAA2D;QAC3D,2BAA2B;QAC3B,IAAI,WAAW,IAAI,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,EAAE,CAAC;YACnE,YAAY,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;YACvE,UAAU;gBACR,QAAQ;oBACR,wBAAwB,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QACrF,CAAC;aAAM,CAAC;YACN,UAAU,GAAG,wBAAwB,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAChG,CAAC;QAED,IAAI,UAAU,IAAI,0BAA0B,EAAE,CAAC;YAC7C,0CAA0C;YAC1C,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QACnF,CAAC;aAAM,IAAI,UAAU,IAAI,kBAAkB,EAAE,CAAC;YAC5C,iCAAiC;YACjC,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YAC1C,8EAA8E;YAC9E,IAAI,UAAU,IAAI,wBAAwB,EAAE,CAAC;gBAC3C,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;QACD,0DAA0D;IAC5D,CAAC;IAED,kFAAkF;IAClF,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,0BAA0B,CAAC,EAAE,CAAC;QAC5E,MAAM,MAAM,GAAG,oBAAoB;aAChC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,0BAA0B,CAAC;aACpD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;aACjC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QAC5B,OAAO;YACL,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC;YAC/B,UAAU,EAAE,MAAM;YAClB,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,MAAM;SACb,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,oEAAoE;IACpE,+EAA+E;IAE/E,MAAM,cAAc,GAAgD,EAAE,CAAC;IACvE,MAAM,eAAe,GAAyB,EAAE,CAAC;IAEjD,KAAK,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,4BAA4B,CACzC,KAAK,EACL,WAAW,EACX,cAAc,EACd,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,WAAW,IAAI,EAAE,EACtB,IAAI,CAAC,MAAM,IAAI,EAAE,CAClB,CAAC;QAEF,IAAI,MAAM,IAAI,wBAAwB,EAAE,CAAC;YACvC,uBAAuB;YACvB,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1E,CAAC;aAAM,IAAI,MAAM,IAAI,oBAAoB,EAAE,CAAC;YAC1C,2CAA2C;YAC3C,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,wDAAwD;IAC1D,CAAC;IAED,mDAAmD;IACnD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QAC1F,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;QACvC,OAAO;YACL,QAAQ;YACR,UAAU,EAAE,MAAM;YAClB,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,SAAS;SAChB,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,qEAAqE;IACrE,uEAAuE;IACvE,wDAAwD;IAExD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,CAAC,EAAU,EAAsB,EAAE,CACjD,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC;QAC3D,MAAM,kBAAkB,GAAwB,cAAc;aAC3D,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC;aACxB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;YAChC,IAAI;YACJ,YAAY;YACZ,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY;SAC7C,CAAC,CAAC,CAAC;QACN,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAE,CAAC;QAExC,qEAAqE;QACrE,kEAAkE;QAClE,MAAM,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,CAAC,YAAY,CAAC;QACjF,MAAM,eAAe,GACnB,aAAa,IAAI,wBAAwB;YACvC,CAAC,CAAC;gBACE,QAAQ,EAAE,aAAa;gBACvB,UAAU,EAAE;oBACV,EAAE,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE;iBACnF;gBACD,YAAY,EAAE,KAAK;gBACnB,UAAU,EAAE,IAAI;gBAChB,IAAI,EAAE,MAAM;aACb;YACH,CAAC,CAAC,IAAI,CAAC;QAEX,MAAM,QAAQ,GAAG,MAAM,gCAAgC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAEtE,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAG,MAAM,oBAAoB,CACxC,KAAK,EACL,WAAW,EACX,kBAAkB,EAClB,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EACnC,QAAQ,CAAC,IAAI,EACb,OAAO,EACP,GAAG,CACJ,CAAC;YACF,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,EAAE,SAAS,EAAE,CAAC;gBACjD,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,OAAO;wBACL,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC;wBAC3C,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,YAAY,EAAE,IAAI;wBAClB,UAAU,EAAE,KAAK;wBACjB,IAAI,EAAE,UAAU;qBACjB,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,QAAQ,EAAE,YAAY,CAAC,YAAY;oBACnC,UAAU,EAAE,EAAE;oBACd,YAAY,EAAE,KAAK;oBACnB,UAAU,EAAE,KAAK;oBACjB,IAAI,EAAE,UAAU;iBACjB,CAAC;YACJ,CAAC;QACH,CAAC;QAED,mEAAmE;QACnE,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,MAAM,yBAAyB,CAC/C,KAAK,EACL,WAAW,EACX;gBACE,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE;gBACxB,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK;gBAC9B,KAAK,EAAE,YAAY,CAAC,YAAY;gBAChC,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE;aACjD,EACD,GAAG,CACJ,CAAC;YAEF,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,IAAI,SAAS,CAAC,aAAa,EAAE,CAAC;oBAC5B,MAAM,SAAS,GAAuB;wBACpC,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE;wBACxB,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK;wBAC9B,KAAK,EAAE,SAAS,CAAC,UAAU;qBAC5B,CAAC;oBACF,OAAO;wBACL,QAAQ,EAAE,SAAS,CAAC,UAAU;wBAC9B,UAAU,EAAE,CAAC,SAAS,CAAC;wBACvB,YAAY,EAAE,IAAI;wBAClB,UAAU,EAAE,KAAK;wBACjB,IAAI,EAAE,KAAK;qBACZ,CAAC;gBACJ,CAAC;gBACD,oDAAoD;gBACpD,OAAO;oBACL,QAAQ,EAAE,YAAY,CAAC,YAAY;oBACnC,UAAU,EAAE,EAAE;oBACd,YAAY,EAAE,KAAK;oBACnB,UAAU,EAAE,KAAK;oBACjB,IAAI,EAAE,KAAK;iBACZ,CAAC;YACJ,CAAC;QACH,CAAC;QAED,uDAAuD;QACvD,IAAI,eAAe;YAAE,OAAO,eAAe,CAAC;IAC9C,CAAC;IAED,8EAA8E;IAC9E,MAAM,cAAc,GAAG,oBAAoB;SACxC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,wBAAwB,IAAI,CAAC,CAAC,KAAK,GAAG,0BAA0B,CAAC;SAC1F,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;SACjC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IAE5B,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO;YACL,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC;YACvC,UAAU,EAAE,cAAc;YAC1B,YAAY,EAAE,KAAK;YACnB,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,MAAM;SACb,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC/F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,UAAgC,EAChC,KAAK,GAAG,YAAY;IAEpB,OAAO,UAAU;SACd,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;SAClF,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAgC;IAC/D,OAAO,CACL,gEAAgE,IAAI,CAAC,KAAK,CAAC,wBAAwB,GAAG,GAAG,CAAC,OAAO;QACjH,mBAAmB,CAAC,UAAU,CAAC;QAC/B,wFAAwF,CACzF,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAChC,UAAgC,EAChC,IAAmC;IAEnC,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,OAAO,CACL,8GAA8G;YAC9G,mBAAmB,CAAC,UAAU,EAAE,kCAAkC,CAAC;YACnE,yFAAyF,CAC1F,CAAC;IACJ,CAAC;IACD,OAAO,CACL,8FAA8F,IAAI,CAAC,KAAK,CAAC,0BAA0B,GAAG,GAAG,CAAC,OAAO;QACjJ,mBAAmB,CAAC,UAAU,CAAC;QAC/B,yFAAyF,CAC1F,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,QAAsB;IAC1D,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC;QAC1C,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC;QACxC,KAAK,EAAE,qBAAqB;KAC7B,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAEzC,4DAA4D;AAC5D,MAAM,CAAC,MAAM,0BAA0B,GAAG,gCAAgC,CAAC;AAE3E;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,MAAyB,OAAO,CAAC,GAAG;IAChF,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,0BAA0B,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IACvE,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,yBAAyB,CAAC;AAC3E,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,GAAG,IAAwC;IAE3C,IAAI,KAAiC,CAAC;IACtC,MAAM,QAAQ,GAAG,6BAA6B,EAAE,CAAC;IAEjD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAC5C,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;QAClD,sDAAsD;QACtD,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;QAExE,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,sCAAsC,QAAQ,sBAAsB;gBAClE,sEAAsE,CACzE,CAAC;YACF,OAAO;gBACL,QAAQ,EAAE,CAAC;gBACX,UAAU,EAAE,EAAE;gBACd,YAAY,EAAE,KAAK;gBACnB,UAAU,EAAE,KAAK;gBACjB,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,IAAI;aACf,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACzC,CAAC;YAAS,CAAC;QACT,IAAI,KAAK;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Portable paths for `files:` and `test-run:` evidence atoms (T12476).
|
|
3
|
+
*
|
|
4
|
+
* A project is identified by its `project_id` (ADR-094); its path is only a
|
|
5
|
+
* per-device hint. Evidence that stores an absolute path therefore breaks the
|
|
6
|
+
* moment the checkout moves (another device, another OS, a rename): the
|
|
7
|
+
* re-validation at `cleo complete` looks for `/mnt/projects/x/src/a.ts` and
|
|
8
|
+
* reports "File removed since verify" for a file that is present, unchanged,
|
|
9
|
+
* under the new root.
|
|
10
|
+
*
|
|
11
|
+
* Atoms therefore record, next to the path as supplied, the ABSOLUTE file
|
|
12
|
+
* that was hashed (`resolvedPath`). Re-validation reads that file whatever
|
|
13
|
+
* directory `cleo complete` runs from; a relative form would be re-resolved
|
|
14
|
+
* against the completing process's tree and could hash a different copy. A
|
|
15
|
+
* move is handled only at re-validation, when that absolute path is gone:
|
|
16
|
+
* {@link rebaseLegacyEvidencePath} maps it through a vanished, recorded
|
|
17
|
+
* checkout root of this project onto the live root.
|
|
18
|
+
*
|
|
19
|
+
* Rebasing never decides validity. It only chooses WHICH bytes to hash;
|
|
20
|
+
* the caller still compares them against the sha256 captured at verify time,
|
|
21
|
+
* so a rebased path pointing at different content fails exactly as a modified
|
|
22
|
+
* file does.
|
|
23
|
+
*
|
|
24
|
+
* @task T12476
|
|
25
|
+
* @epic T12468
|
|
26
|
+
* @adr ADR-094
|
|
27
|
+
*/
|
|
28
|
+
/**
|
|
29
|
+
* Map a legacy absolute evidence path onto the live project root.
|
|
30
|
+
*
|
|
31
|
+
* Rebasing happens ONLY through a recorded former checkout root of THIS
|
|
32
|
+
* project that no longer exists. There is no tail-matching heuristic: a file
|
|
33
|
+
* that moved or vanished inside a project that did NOT move is reported
|
|
34
|
+
* removed, never re-pointed at some other file that happens to share a name
|
|
35
|
+
* or a suffix.
|
|
36
|
+
*
|
|
37
|
+
* Returns `null` unless all of these hold:
|
|
38
|
+
*
|
|
39
|
+
* - the path is absolute, does not exist, and has no `.` / `..` segments;
|
|
40
|
+
* - a recorded root that is gone, and neither is nor nests with a live root,
|
|
41
|
+
* contains the path;
|
|
42
|
+
* - the same relative position exists under a live root, and its realpath
|
|
43
|
+
* stays inside that live root.
|
|
44
|
+
*
|
|
45
|
+
* The result is a candidate, not a verdict: the caller must still compare
|
|
46
|
+
* the bytes it reads against the recorded sha256.
|
|
47
|
+
*
|
|
48
|
+
* @param path - Path as stored in the atom.
|
|
49
|
+
* @param liveRoots - Live project roots (execution root first, store root second).
|
|
50
|
+
* @param recordedRoots - Checkout roots recorded for this project in the registry.
|
|
51
|
+
* @returns The absolute rebased path under a live root, or `null`.
|
|
52
|
+
* @example
|
|
53
|
+
* ```ts
|
|
54
|
+
* // Project moved from /mnt/projects/app to /home/me/app:
|
|
55
|
+
* rebaseLegacyEvidencePath('/mnt/projects/app/src/a.ts', ['/home/me/app'], ['/mnt/projects/app']);
|
|
56
|
+
* // → '/home/me/app/src/a.ts'
|
|
57
|
+
* ```
|
|
58
|
+
* @task T12476
|
|
59
|
+
*/
|
|
60
|
+
export declare function rebaseLegacyEvidencePath(path: string, liveRoots: readonly string[], recordedRoots: readonly string[]): string | null;
|
|
61
|
+
/**
|
|
62
|
+
* Former checkout roots recorded for the project at `storeRoot`.
|
|
63
|
+
*
|
|
64
|
+
* Read from the device-local path map (`nexus_project_paths`) by the
|
|
65
|
+
* project's portable id. Best-effort: a project without a valid
|
|
66
|
+
* `.cleo/project-id`, or a registry that cannot be opened, yields `[]`, and
|
|
67
|
+
* no rebase happens (there is no tail-matching fallback).
|
|
68
|
+
*
|
|
69
|
+
* @param storeRoot - The CLEO project root.
|
|
70
|
+
* @returns Absolute checkout roots of this project other than `storeRoot`.
|
|
71
|
+
* @example
|
|
72
|
+
* ```ts
|
|
73
|
+
* const oldRoots = await loadRecordedProjectRoots(projectRoot);
|
|
74
|
+
* ```
|
|
75
|
+
* @task T12476
|
|
76
|
+
*/
|
|
77
|
+
export declare function loadRecordedProjectRoots(storeRoot: string): Promise<string[]>;
|
|
78
|
+
//# sourceMappingURL=evidence-paths.d.ts.map
|