@massa-ai/core 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/controllers/context-controller.d.ts +52 -0
- package/dist/controllers/context-controller.d.ts.map +1 -0
- package/dist/controllers/context-controller.js +377 -0
- package/dist/controllers/context-controller.js.map +1 -0
- package/dist/controllers/executor-controller.d.ts +42 -0
- package/dist/controllers/executor-controller.d.ts.map +1 -0
- package/dist/controllers/executor-controller.js +229 -0
- package/dist/controllers/executor-controller.js.map +1 -0
- package/dist/controllers/graph-controller.d.ts +106 -0
- package/dist/controllers/graph-controller.d.ts.map +1 -0
- package/dist/controllers/graph-controller.js +142 -0
- package/dist/controllers/graph-controller.js.map +1 -0
- package/dist/controllers/index.d.ts +17 -0
- package/dist/controllers/index.d.ts.map +1 -0
- package/dist/controllers/index.js +12 -0
- package/dist/controllers/index.js.map +1 -0
- package/dist/controllers/memory-controller.d.ts +78 -0
- package/dist/controllers/memory-controller.d.ts.map +1 -0
- package/dist/controllers/memory-controller.js +232 -0
- package/dist/controllers/memory-controller.js.map +1 -0
- package/dist/controllers/search-controller.d.ts +113 -0
- package/dist/controllers/search-controller.d.ts.map +1 -0
- package/dist/controllers/search-controller.js +314 -0
- package/dist/controllers/search-controller.js.map +1 -0
- package/dist/data/audit/operation-log-contract.d.ts +68 -0
- package/dist/data/audit/operation-log-contract.d.ts.map +1 -0
- package/dist/data/audit/operation-log-contract.js +16 -0
- package/dist/data/audit/operation-log-contract.js.map +1 -0
- package/dist/data/audit/operation-log-factory.d.ts +4 -0
- package/dist/data/audit/operation-log-factory.d.ts.map +1 -0
- package/dist/data/audit/operation-log-factory.js +8 -0
- package/dist/data/audit/operation-log-factory.js.map +1 -0
- package/dist/data/audit/operation-log-pg.d.ts +34 -0
- package/dist/data/audit/operation-log-pg.d.ts.map +1 -0
- package/dist/data/audit/operation-log-pg.js +125 -0
- package/dist/data/audit/operation-log-pg.js.map +1 -0
- package/dist/data/db-connection.d.ts +10 -0
- package/dist/data/db-connection.d.ts.map +1 -0
- package/dist/data/db-connection.js +33 -0
- package/dist/data/db-connection.js.map +1 -0
- package/dist/data/graph-generation/graph-generation-contract.d.ts +94 -0
- package/dist/data/graph-generation/graph-generation-contract.d.ts.map +1 -0
- package/dist/data/graph-generation/graph-generation-contract.js +2 -0
- package/dist/data/graph-generation/graph-generation-contract.js.map +1 -0
- package/dist/data/graph-generation/graph-generation-repository-factory.d.ts +3 -0
- package/dist/data/graph-generation/graph-generation-repository-factory.d.ts.map +1 -0
- package/dist/data/graph-generation/graph-generation-repository-factory.js +7 -0
- package/dist/data/graph-generation/graph-generation-repository-factory.js.map +1 -0
- package/dist/data/graph-generation/graph-generation-repository-pg.d.ts +12 -0
- package/dist/data/graph-generation/graph-generation-repository-pg.d.ts.map +1 -0
- package/dist/data/graph-generation/graph-generation-repository-pg.js +335 -0
- package/dist/data/graph-generation/graph-generation-repository-pg.js.map +1 -0
- package/dist/data/graph-generation/index.d.ts +4 -0
- package/dist/data/graph-generation/index.d.ts.map +1 -0
- package/dist/data/graph-generation/index.js +3 -0
- package/dist/data/graph-generation/index.js.map +1 -0
- package/dist/data/handoff/handoff-contract.d.ts +32 -0
- package/dist/data/handoff/handoff-contract.d.ts.map +1 -0
- package/dist/data/handoff/handoff-contract.js +12 -0
- package/dist/data/handoff/handoff-contract.js.map +1 -0
- package/dist/data/handoff/handoff-repository-pg.d.ts +22 -0
- package/dist/data/handoff/handoff-repository-pg.d.ts.map +1 -0
- package/dist/data/handoff/handoff-repository-pg.js +177 -0
- package/dist/data/handoff/handoff-repository-pg.js.map +1 -0
- package/dist/data/handoff/handoff-repository.d.ts +7 -0
- package/dist/data/handoff/handoff-repository.d.ts.map +1 -0
- package/dist/data/handoff/handoff-repository.js +9 -0
- package/dist/data/handoff/handoff-repository.js.map +1 -0
- package/dist/data/keyword/keyword-search-factory.d.ts +9 -0
- package/dist/data/keyword/keyword-search-factory.d.ts.map +1 -0
- package/dist/data/keyword/keyword-search-factory.js +23 -0
- package/dist/data/keyword/keyword-search-factory.js.map +1 -0
- package/dist/data/keyword/keyword-search-pg.d.ts +52 -0
- package/dist/data/keyword/keyword-search-pg.d.ts.map +1 -0
- package/dist/data/keyword/keyword-search-pg.js +423 -0
- package/dist/data/keyword/keyword-search-pg.js.map +1 -0
- package/dist/data/managed-runs/managed-run-contract.d.ts +193 -0
- package/dist/data/managed-runs/managed-run-contract.d.ts.map +1 -0
- package/dist/data/managed-runs/managed-run-contract.js +41 -0
- package/dist/data/managed-runs/managed-run-contract.js.map +1 -0
- package/dist/data/managed-runs/managed-run-repository-pg.d.ts +48 -0
- package/dist/data/managed-runs/managed-run-repository-pg.d.ts.map +1 -0
- package/dist/data/managed-runs/managed-run-repository-pg.js +316 -0
- package/dist/data/managed-runs/managed-run-repository-pg.js.map +1 -0
- package/dist/data/memory/index.d.ts +6 -0
- package/dist/data/memory/index.d.ts.map +1 -0
- package/dist/data/memory/index.js +5 -0
- package/dist/data/memory/index.js.map +1 -0
- package/dist/data/memory/memory-repository-contract.d.ts +54 -0
- package/dist/data/memory/memory-repository-contract.d.ts.map +1 -0
- package/dist/data/memory/memory-repository-contract.js +2 -0
- package/dist/data/memory/memory-repository-contract.js.map +1 -0
- package/dist/data/memory/memory-repository-factory.d.ts +4 -0
- package/dist/data/memory/memory-repository-factory.d.ts.map +1 -0
- package/dist/data/memory/memory-repository-factory.js +8 -0
- package/dist/data/memory/memory-repository-factory.js.map +1 -0
- package/dist/data/memory/memory-repository-pg.d.ts +111 -0
- package/dist/data/memory/memory-repository-pg.d.ts.map +1 -0
- package/dist/data/memory/memory-repository-pg.js +448 -0
- package/dist/data/memory/memory-repository-pg.js.map +1 -0
- package/dist/data/memory/memory-repository.d.ts +3 -0
- package/dist/data/memory/memory-repository.d.ts.map +1 -0
- package/dist/data/memory/memory-repository.js +2 -0
- package/dist/data/memory/memory-repository.js.map +1 -0
- package/dist/data/memory/observation-contract.d.ts +47 -0
- package/dist/data/memory/observation-contract.d.ts.map +1 -0
- package/dist/data/memory/observation-contract.js +13 -0
- package/dist/data/memory/observation-contract.js.map +1 -0
- package/dist/data/memory/observation-repository-pg.d.ts +64 -0
- package/dist/data/memory/observation-repository-pg.d.ts.map +1 -0
- package/dist/data/memory/observation-repository-pg.js +244 -0
- package/dist/data/memory/observation-repository-pg.js.map +1 -0
- package/dist/data/memory/observation-repository.d.ts +6 -0
- package/dist/data/memory/observation-repository.d.ts.map +1 -0
- package/dist/data/memory/observation-repository.js +8 -0
- package/dist/data/memory/observation-repository.js.map +1 -0
- package/dist/data/proposal/proposal-contract.d.ts +47 -0
- package/dist/data/proposal/proposal-contract.d.ts.map +1 -0
- package/dist/data/proposal/proposal-contract.js +32 -0
- package/dist/data/proposal/proposal-contract.js.map +1 -0
- package/dist/data/proposal/proposal-repository-pg.d.ts +20 -0
- package/dist/data/proposal/proposal-repository-pg.d.ts.map +1 -0
- package/dist/data/proposal/proposal-repository-pg.js +199 -0
- package/dist/data/proposal/proposal-repository-pg.js.map +1 -0
- package/dist/data/proposal/proposal-repository.d.ts +7 -0
- package/dist/data/proposal/proposal-repository.d.ts.map +1 -0
- package/dist/data/proposal/proposal-repository.js +9 -0
- package/dist/data/proposal/proposal-repository.js.map +1 -0
- package/dist/data/symbol/symbol-repo-generation.d.ts +61 -0
- package/dist/data/symbol/symbol-repo-generation.d.ts.map +1 -0
- package/dist/data/symbol/symbol-repo-generation.js +380 -0
- package/dist/data/symbol/symbol-repo-generation.js.map +1 -0
- package/dist/data/symbol/symbol-repo-graph.d.ts +65 -0
- package/dist/data/symbol/symbol-repo-graph.d.ts.map +1 -0
- package/dist/data/symbol/symbol-repo-graph.js +457 -0
- package/dist/data/symbol/symbol-repo-graph.js.map +1 -0
- package/dist/data/symbol/symbol-repo-identity.d.ts +21 -0
- package/dist/data/symbol/symbol-repo-identity.d.ts.map +1 -0
- package/dist/data/symbol/symbol-repo-identity.js +96 -0
- package/dist/data/symbol/symbol-repo-identity.js.map +1 -0
- package/dist/data/symbol/symbol-repo-mappers.d.ts +87 -0
- package/dist/data/symbol/symbol-repo-mappers.d.ts.map +1 -0
- package/dist/data/symbol/symbol-repo-mappers.js +91 -0
- package/dist/data/symbol/symbol-repo-mappers.js.map +1 -0
- package/dist/data/symbol/symbol-repo-queries.d.ts +54 -0
- package/dist/data/symbol/symbol-repo-queries.d.ts.map +1 -0
- package/dist/data/symbol/symbol-repo-queries.js +331 -0
- package/dist/data/symbol/symbol-repo-queries.js.map +1 -0
- package/dist/data/symbol/symbol-repo-types.d.ts +243 -0
- package/dist/data/symbol/symbol-repo-types.d.ts.map +1 -0
- package/dist/data/symbol/symbol-repo-types.js +8 -0
- package/dist/data/symbol/symbol-repo-types.js.map +1 -0
- package/dist/data/symbol/symbol-repo-workspace.d.ts +20 -0
- package/dist/data/symbol/symbol-repo-workspace.d.ts.map +1 -0
- package/dist/data/symbol/symbol-repo-workspace.js +148 -0
- package/dist/data/symbol/symbol-repo-workspace.js.map +1 -0
- package/dist/data/symbol/symbol-repository-factory.d.ts +10 -0
- package/dist/data/symbol/symbol-repository-factory.d.ts.map +1 -0
- package/dist/data/symbol/symbol-repository-factory.js +16 -0
- package/dist/data/symbol/symbol-repository-factory.js.map +1 -0
- package/dist/data/symbol/symbol-repository-pg.d.ts +84 -0
- package/dist/data/symbol/symbol-repository-pg.d.ts.map +1 -0
- package/dist/data/symbol/symbol-repository-pg.js +81 -0
- package/dist/data/symbol/symbol-repository-pg.js.map +1 -0
- package/dist/data/vector/base-vector-store.d.ts +137 -0
- package/dist/data/vector/base-vector-store.d.ts.map +1 -0
- package/dist/data/vector/base-vector-store.js +166 -0
- package/dist/data/vector/base-vector-store.js.map +1 -0
- package/dist/data/vector/hybrid-search.d.ts +64 -0
- package/dist/data/vector/hybrid-search.d.ts.map +1 -0
- package/dist/data/vector/hybrid-search.js +238 -0
- package/dist/data/vector/hybrid-search.js.map +1 -0
- package/dist/data/vector/index.d.ts +9 -0
- package/dist/data/vector/index.d.ts.map +1 -0
- package/dist/data/vector/index.js +7 -0
- package/dist/data/vector/index.js.map +1 -0
- package/dist/data/vector/postgres-vector-store.d.ts +118 -0
- package/dist/data/vector/postgres-vector-store.d.ts.map +1 -0
- package/dist/data/vector/postgres-vector-store.js +703 -0
- package/dist/data/vector/postgres-vector-store.js.map +1 -0
- package/dist/data/vector/vector-store-factory.d.ts +9 -0
- package/dist/data/vector/vector-store-factory.d.ts.map +1 -0
- package/dist/data/vector/vector-store-factory.js +46 -0
- package/dist/data/vector/vector-store-factory.js.map +1 -0
- package/dist/generated/prisma/client.d.ts +1 -0
- package/dist/generated/prisma/client.js +5 -0
- package/dist/generated/prisma/default.d.ts +1 -0
- package/dist/generated/prisma/default.js +5 -0
- package/dist/generated/prisma/edge.d.ts +1 -0
- package/dist/generated/prisma/edge.js +601 -0
- package/dist/generated/prisma/index-browser.js +627 -0
- package/dist/generated/prisma/index.d.ts +52672 -0
- package/dist/generated/prisma/index.js +601 -0
- package/dist/generated/prisma/package.json +144 -0
- package/dist/generated/prisma/query_compiler_fast_bg.js +2 -0
- package/dist/generated/prisma/query_compiler_fast_bg.wasm +0 -0
- package/dist/generated/prisma/query_compiler_fast_bg.wasm-base64.js +2 -0
- package/dist/generated/prisma/runtime/client.d.ts +3386 -0
- package/dist/generated/prisma/runtime/client.js +86 -0
- package/dist/generated/prisma/runtime/index-browser.d.ts +90 -0
- package/dist/generated/prisma/runtime/index-browser.js +6 -0
- package/dist/generated/prisma/runtime/wasm-compiler-edge.js +76 -0
- package/dist/generated/prisma/schema.prisma +746 -0
- package/dist/generated/prisma/wasm-edge-light-loader.mjs +5 -0
- package/dist/generated/prisma/wasm-worker-loader.mjs +5 -0
- package/dist/index.d.ts +47 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +45 -0
- package/dist/index.js.map +1 -0
- package/dist/models/CacheEntry.d.ts +66 -0
- package/dist/models/CacheEntry.d.ts.map +1 -0
- package/dist/models/CacheEntry.js +148 -0
- package/dist/models/CacheEntry.js.map +1 -0
- package/dist/models/CompressedContent.d.ts +59 -0
- package/dist/models/CompressedContent.d.ts.map +1 -0
- package/dist/models/CompressedContent.js +169 -0
- package/dist/models/CompressedContent.js.map +1 -0
- package/dist/models/Memory.d.ts +9 -0
- package/dist/models/Memory.d.ts.map +1 -0
- package/dist/models/Memory.js +10 -0
- package/dist/models/Memory.js.map +1 -0
- package/dist/models/index.d.ts +6 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +6 -0
- package/dist/models/index.js.map +1 -0
- package/dist/scripts/beir-benchmark.d.ts +3 -0
- package/dist/scripts/beir-benchmark.d.ts.map +1 -0
- package/dist/scripts/beir-benchmark.js +275 -0
- package/dist/scripts/beir-benchmark.js.map +1 -0
- package/dist/scripts/create-sicad-beir-fixture.d.ts +3 -0
- package/dist/scripts/create-sicad-beir-fixture.d.ts.map +1 -0
- package/dist/scripts/create-sicad-beir-fixture.js +200 -0
- package/dist/scripts/create-sicad-beir-fixture.js.map +1 -0
- package/dist/scripts/symbol-benchmark.d.ts +24 -0
- package/dist/scripts/symbol-benchmark.d.ts.map +1 -0
- package/dist/scripts/symbol-benchmark.js +319 -0
- package/dist/scripts/symbol-benchmark.js.map +1 -0
- package/dist/services/bootstrap/bootstrap-service.d.ts +157 -0
- package/dist/services/bootstrap/bootstrap-service.d.ts.map +1 -0
- package/dist/services/bootstrap/bootstrap-service.js +588 -0
- package/dist/services/bootstrap/bootstrap-service.js.map +1 -0
- package/dist/services/cache/embedding-cache-contract.d.ts +18 -0
- package/dist/services/cache/embedding-cache-contract.d.ts.map +1 -0
- package/dist/services/cache/embedding-cache-contract.js +2 -0
- package/dist/services/cache/embedding-cache-contract.js.map +1 -0
- package/dist/services/cache/embedding-cache-factory.d.ts +4 -0
- package/dist/services/cache/embedding-cache-factory.d.ts.map +1 -0
- package/dist/services/cache/embedding-cache-factory.js +8 -0
- package/dist/services/cache/embedding-cache-factory.js.map +1 -0
- package/dist/services/cache/embedding-cache-pg.d.ts +78 -0
- package/dist/services/cache/embedding-cache-pg.d.ts.map +1 -0
- package/dist/services/cache/embedding-cache-pg.js +220 -0
- package/dist/services/cache/embedding-cache-pg.js.map +1 -0
- package/dist/services/cache/index.d.ts +5 -0
- package/dist/services/cache/index.d.ts.map +1 -0
- package/dist/services/cache/index.js +5 -0
- package/dist/services/cache/index.js.map +1 -0
- package/dist/services/cache/l1-memory-cache.d.ts +71 -0
- package/dist/services/cache/l1-memory-cache.d.ts.map +1 -0
- package/dist/services/cache/l1-memory-cache.js +191 -0
- package/dist/services/cache/l1-memory-cache.js.map +1 -0
- package/dist/services/checkpoint/auto-checkpointer.d.ts +69 -0
- package/dist/services/checkpoint/auto-checkpointer.d.ts.map +1 -0
- package/dist/services/checkpoint/auto-checkpointer.js +143 -0
- package/dist/services/checkpoint/auto-checkpointer.js.map +1 -0
- package/dist/services/checkpoint/checkpoint-manager.d.ts +9 -0
- package/dist/services/checkpoint/checkpoint-manager.d.ts.map +1 -0
- package/dist/services/checkpoint/checkpoint-manager.js +25 -0
- package/dist/services/checkpoint/checkpoint-manager.js.map +1 -0
- package/dist/services/checkpoint/checkpoint-store-pg.d.ts +107 -0
- package/dist/services/checkpoint/checkpoint-store-pg.d.ts.map +1 -0
- package/dist/services/checkpoint/checkpoint-store-pg.js +476 -0
- package/dist/services/checkpoint/checkpoint-store-pg.js.map +1 -0
- package/dist/services/checkpoint/checkpoint-store.d.ts +100 -0
- package/dist/services/checkpoint/checkpoint-store.d.ts.map +1 -0
- package/dist/services/checkpoint/checkpoint-store.js +24 -0
- package/dist/services/checkpoint/checkpoint-store.js.map +1 -0
- package/dist/services/checkpoint/index.d.ts +9 -0
- package/dist/services/checkpoint/index.d.ts.map +1 -0
- package/dist/services/checkpoint/index.js +8 -0
- package/dist/services/checkpoint/index.js.map +1 -0
- package/dist/services/compression/code-compressor.d.ts +76 -0
- package/dist/services/compression/code-compressor.d.ts.map +1 -0
- package/dist/services/compression/code-compressor.js +395 -0
- package/dist/services/compression/code-compressor.js.map +1 -0
- package/dist/services/compression/index.d.ts +5 -0
- package/dist/services/compression/index.d.ts.map +1 -0
- package/dist/services/compression/index.js +5 -0
- package/dist/services/compression/index.js.map +1 -0
- package/dist/services/context/session-file-cache.d.ts +87 -0
- package/dist/services/context/session-file-cache.d.ts.map +1 -0
- package/dist/services/context/session-file-cache.js +213 -0
- package/dist/services/context/session-file-cache.js.map +1 -0
- package/dist/services/embeddings/cached-provider.d.ts +98 -0
- package/dist/services/embeddings/cached-provider.d.ts.map +1 -0
- package/dist/services/embeddings/cached-provider.js +162 -0
- package/dist/services/embeddings/cached-provider.js.map +1 -0
- package/dist/services/embeddings/config.d.ts +89 -0
- package/dist/services/embeddings/config.d.ts.map +1 -0
- package/dist/services/embeddings/config.js +341 -0
- package/dist/services/embeddings/config.js.map +1 -0
- package/dist/services/embeddings/embedding-service.d.ts +71 -0
- package/dist/services/embeddings/embedding-service.d.ts.map +1 -0
- package/dist/services/embeddings/embedding-service.js +147 -0
- package/dist/services/embeddings/embedding-service.js.map +1 -0
- package/dist/services/embeddings/index.d.ts +105 -0
- package/dist/services/embeddings/index.d.ts.map +1 -0
- package/dist/services/embeddings/index.js +174 -0
- package/dist/services/embeddings/index.js.map +1 -0
- package/dist/services/embeddings/provider.d.ts +164 -0
- package/dist/services/embeddings/provider.d.ts.map +1 -0
- package/dist/services/embeddings/provider.js +547 -0
- package/dist/services/embeddings/provider.js.map +1 -0
- package/dist/services/embeddings/providers/local-transformers.d.ts +80 -0
- package/dist/services/embeddings/providers/local-transformers.d.ts.map +1 -0
- package/dist/services/embeddings/providers/local-transformers.js +222 -0
- package/dist/services/embeddings/providers/local-transformers.js.map +1 -0
- package/dist/services/embeddings/rate-limiter.d.ts +55 -0
- package/dist/services/embeddings/rate-limiter.d.ts.map +1 -0
- package/dist/services/embeddings/rate-limiter.js +138 -0
- package/dist/services/embeddings/rate-limiter.js.map +1 -0
- package/dist/services/etl/graph-generation-coordinator.d.ts +26 -0
- package/dist/services/etl/graph-generation-coordinator.d.ts.map +1 -0
- package/dist/services/etl/graph-generation-coordinator.js +63 -0
- package/dist/services/etl/graph-generation-coordinator.js.map +1 -0
- package/dist/services/etl/index.d.ts +11 -0
- package/dist/services/etl/index.d.ts.map +1 -0
- package/dist/services/etl/index.js +9 -0
- package/dist/services/etl/index.js.map +1 -0
- package/dist/services/etl/pipeline.d.ts +70 -0
- package/dist/services/etl/pipeline.d.ts.map +1 -0
- package/dist/services/etl/pipeline.js +553 -0
- package/dist/services/etl/pipeline.js.map +1 -0
- package/dist/services/etl/stage-context.d.ts +153 -0
- package/dist/services/etl/stage-context.d.ts.map +1 -0
- package/dist/services/etl/stage-context.js +11 -0
- package/dist/services/etl/stage-context.js.map +1 -0
- package/dist/services/etl/stages/discover.d.ts +40 -0
- package/dist/services/etl/stages/discover.d.ts.map +1 -0
- package/dist/services/etl/stages/discover.js +213 -0
- package/dist/services/etl/stages/discover.js.map +1 -0
- package/dist/services/etl/stages/load.d.ts +39 -0
- package/dist/services/etl/stages/load.d.ts.map +1 -0
- package/dist/services/etl/stages/load.js +361 -0
- package/dist/services/etl/stages/load.js.map +1 -0
- package/dist/services/etl/stages/parse.d.ts +58 -0
- package/dist/services/etl/stages/parse.d.ts.map +1 -0
- package/dist/services/etl/stages/parse.js +536 -0
- package/dist/services/etl/stages/parse.js.map +1 -0
- package/dist/services/etl/stages/resolve.d.ts +66 -0
- package/dist/services/etl/stages/resolve.d.ts.map +1 -0
- package/dist/services/etl/stages/resolve.js +503 -0
- package/dist/services/etl/stages/resolve.js.map +1 -0
- package/dist/services/events/event-bus.d.ts +166 -0
- package/dist/services/events/event-bus.d.ts.map +1 -0
- package/dist/services/events/event-bus.js +32 -0
- package/dist/services/events/event-bus.js.map +1 -0
- package/dist/services/events/index.d.ts +6 -0
- package/dist/services/events/index.d.ts.map +1 -0
- package/dist/services/events/index.js +5 -0
- package/dist/services/events/index.js.map +1 -0
- package/dist/services/executor/executor.d.ts +103 -0
- package/dist/services/executor/executor.d.ts.map +1 -0
- package/dist/services/executor/executor.js +518 -0
- package/dist/services/executor/executor.js.map +1 -0
- package/dist/services/executor/index.d.ts +20 -0
- package/dist/services/executor/index.d.ts.map +1 -0
- package/dist/services/executor/index.js +16 -0
- package/dist/services/executor/index.js.map +1 -0
- package/dist/services/executor/intent-search.d.ts +52 -0
- package/dist/services/executor/intent-search.d.ts.map +1 -0
- package/dist/services/executor/intent-search.js +195 -0
- package/dist/services/executor/intent-search.js.map +1 -0
- package/dist/services/executor/run-pool.d.ts +53 -0
- package/dist/services/executor/run-pool.d.ts.map +1 -0
- package/dist/services/executor/run-pool.js +71 -0
- package/dist/services/executor/run-pool.js.map +1 -0
- package/dist/services/executor/runtime.d.ts +82 -0
- package/dist/services/executor/runtime.d.ts.map +1 -0
- package/dist/services/executor/runtime.js +254 -0
- package/dist/services/executor/runtime.js.map +1 -0
- package/dist/services/executor/sandbox.d.ts +67 -0
- package/dist/services/executor/sandbox.d.ts.map +1 -0
- package/dist/services/executor/sandbox.js +186 -0
- package/dist/services/executor/sandbox.js.map +1 -0
- package/dist/services/graph/graph-queries.d.ts +110 -0
- package/dist/services/graph/graph-queries.d.ts.map +1 -0
- package/dist/services/graph/graph-queries.js +336 -0
- package/dist/services/graph/graph-queries.js.map +1 -0
- package/dist/services/graph/graph-store-factory.d.ts +12 -0
- package/dist/services/graph/graph-store-factory.d.ts.map +1 -0
- package/dist/services/graph/graph-store-factory.js +30 -0
- package/dist/services/graph/graph-store-factory.js.map +1 -0
- package/dist/services/graph/graph-store-pg.d.ts +127 -0
- package/dist/services/graph/graph-store-pg.d.ts.map +1 -0
- package/dist/services/graph/graph-store-pg.js +422 -0
- package/dist/services/graph/graph-store-pg.js.map +1 -0
- package/dist/services/graph/index.d.ts +7 -0
- package/dist/services/graph/index.d.ts.map +1 -0
- package/dist/services/graph/index.js +6 -0
- package/dist/services/graph/index.js.map +1 -0
- package/dist/services/graph/memory-graph.service.d.ts +97 -0
- package/dist/services/graph/memory-graph.service.d.ts.map +1 -0
- package/dist/services/graph/memory-graph.service.js +171 -0
- package/dist/services/graph/memory-graph.service.js.map +1 -0
- package/dist/services/graph/relation-extractor.d.ts +61 -0
- package/dist/services/graph/relation-extractor.d.ts.map +1 -0
- package/dist/services/graph/relation-extractor.js +306 -0
- package/dist/services/graph/relation-extractor.js.map +1 -0
- package/dist/services/graph/types.d.ts +127 -0
- package/dist/services/graph/types.d.ts.map +1 -0
- package/dist/services/graph/types.js +8 -0
- package/dist/services/graph/types.js.map +1 -0
- package/dist/services/handoff/handoff-auto-injector.d.ts +32 -0
- package/dist/services/handoff/handoff-auto-injector.d.ts.map +1 -0
- package/dist/services/handoff/handoff-auto-injector.js +72 -0
- package/dist/services/handoff/handoff-auto-injector.js.map +1 -0
- package/dist/services/handoff/handoff-service.d.ts +83 -0
- package/dist/services/handoff/handoff-service.d.ts.map +1 -0
- package/dist/services/handoff/handoff-service.js +238 -0
- package/dist/services/handoff/handoff-service.js.map +1 -0
- package/dist/services/health/local-health-checker.d.ts +49 -0
- package/dist/services/health/local-health-checker.d.ts.map +1 -0
- package/dist/services/health/local-health-checker.js +82 -0
- package/dist/services/health/local-health-checker.js.map +1 -0
- package/dist/services/hooks/attribution-resolver.d.ts +113 -0
- package/dist/services/hooks/attribution-resolver.d.ts.map +1 -0
- package/dist/services/hooks/attribution-resolver.js +227 -0
- package/dist/services/hooks/attribution-resolver.js.map +1 -0
- package/dist/services/hooks/co-retrieval-hook.d.ts +63 -0
- package/dist/services/hooks/co-retrieval-hook.d.ts.map +1 -0
- package/dist/services/hooks/co-retrieval-hook.js +145 -0
- package/dist/services/hooks/co-retrieval-hook.js.map +1 -0
- package/dist/services/hooks/compaction-snapshot-service.d.ts +81 -0
- package/dist/services/hooks/compaction-snapshot-service.d.ts.map +1 -0
- package/dist/services/hooks/compaction-snapshot-service.js +308 -0
- package/dist/services/hooks/compaction-snapshot-service.js.map +1 -0
- package/dist/services/hooks/hook-service.d.ts +100 -0
- package/dist/services/hooks/hook-service.d.ts.map +1 -0
- package/dist/services/hooks/hook-service.js +272 -0
- package/dist/services/hooks/hook-service.js.map +1 -0
- package/dist/services/hooks/observation-extractor.d.ts +30 -0
- package/dist/services/hooks/observation-extractor.d.ts.map +1 -0
- package/dist/services/hooks/observation-extractor.js +364 -0
- package/dist/services/hooks/observation-extractor.js.map +1 -0
- package/dist/services/hooks/search-session-hook.d.ts +34 -0
- package/dist/services/hooks/search-session-hook.d.ts.map +1 -0
- package/dist/services/hooks/search-session-hook.js +121 -0
- package/dist/services/hooks/search-session-hook.js.map +1 -0
- package/dist/services/hooks/session-pin-store.d.ts +32 -0
- package/dist/services/hooks/session-pin-store.d.ts.map +1 -0
- package/dist/services/hooks/session-pin-store.js +57 -0
- package/dist/services/hooks/session-pin-store.js.map +1 -0
- package/dist/services/hooks/writer-queue.d.ts +35 -0
- package/dist/services/hooks/writer-queue.d.ts.map +1 -0
- package/dist/services/hooks/writer-queue.js +58 -0
- package/dist/services/hooks/writer-queue.js.map +1 -0
- package/dist/services/index.d.ts +108 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +100 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/jobs/auto-improve-apply.d.ts +32 -0
- package/dist/services/jobs/auto-improve-apply.d.ts.map +1 -0
- package/dist/services/jobs/auto-improve-apply.js +135 -0
- package/dist/services/jobs/auto-improve-apply.js.map +1 -0
- package/dist/services/jobs/auto-improve-config.d.ts +25 -0
- package/dist/services/jobs/auto-improve-config.d.ts.map +1 -0
- package/dist/services/jobs/auto-improve-config.js +40 -0
- package/dist/services/jobs/auto-improve-config.js.map +1 -0
- package/dist/services/jobs/auto-improve-job.d.ts +89 -0
- package/dist/services/jobs/auto-improve-job.d.ts.map +1 -0
- package/dist/services/jobs/auto-improve-job.js +93 -0
- package/dist/services/jobs/auto-improve-job.js.map +1 -0
- package/dist/services/jobs/auto-improve-llm.d.ts +25 -0
- package/dist/services/jobs/auto-improve-llm.d.ts.map +1 -0
- package/dist/services/jobs/auto-improve-llm.js +88 -0
- package/dist/services/jobs/auto-improve-llm.js.map +1 -0
- package/dist/services/jobs/auto-improve-ops.d.ts +11 -0
- package/dist/services/jobs/auto-improve-ops.d.ts.map +1 -0
- package/dist/services/jobs/auto-improve-ops.js +170 -0
- package/dist/services/jobs/auto-improve-ops.js.map +1 -0
- package/dist/services/jobs/auto-improve-patterns.d.ts +18 -0
- package/dist/services/jobs/auto-improve-patterns.d.ts.map +1 -0
- package/dist/services/jobs/auto-improve-patterns.js +160 -0
- package/dist/services/jobs/auto-improve-patterns.js.map +1 -0
- package/dist/services/jobs/index-job-store-contract.d.ts +22 -0
- package/dist/services/jobs/index-job-store-contract.d.ts.map +1 -0
- package/dist/services/jobs/index-job-store-contract.js +11 -0
- package/dist/services/jobs/index-job-store-contract.js.map +1 -0
- package/dist/services/jobs/index-job-store-pg.d.ts +77 -0
- package/dist/services/jobs/index-job-store-pg.d.ts.map +1 -0
- package/dist/services/jobs/index-job-store-pg.js +403 -0
- package/dist/services/jobs/index-job-store-pg.js.map +1 -0
- package/dist/services/jobs/index-job-store.d.ts +5 -0
- package/dist/services/jobs/index-job-store.d.ts.map +1 -0
- package/dist/services/jobs/index-job-store.js +7 -0
- package/dist/services/jobs/index-job-store.js.map +1 -0
- package/dist/services/jobs/index-job-tracker.d.ts +140 -0
- package/dist/services/jobs/index-job-tracker.d.ts.map +1 -0
- package/dist/services/jobs/index-job-tracker.js +344 -0
- package/dist/services/jobs/index-job-tracker.js.map +1 -0
- package/dist/services/jobs/index.d.ts +6 -0
- package/dist/services/jobs/index.d.ts.map +1 -0
- package/dist/services/jobs/index.js +6 -0
- package/dist/services/jobs/index.js.map +1 -0
- package/dist/services/jobs/memory-consolidation-job.d.ts +70 -0
- package/dist/services/jobs/memory-consolidation-job.d.ts.map +1 -0
- package/dist/services/jobs/memory-consolidation-job.js +312 -0
- package/dist/services/jobs/memory-consolidation-job.js.map +1 -0
- package/dist/services/jobs/observation-consolidation-job.d.ts +63 -0
- package/dist/services/jobs/observation-consolidation-job.d.ts.map +1 -0
- package/dist/services/jobs/observation-consolidation-job.js +253 -0
- package/dist/services/jobs/observation-consolidation-job.js.map +1 -0
- package/dist/services/memory/consolidator.d.ts +92 -0
- package/dist/services/memory/consolidator.d.ts.map +1 -0
- package/dist/services/memory/consolidator.js +182 -0
- package/dist/services/memory/consolidator.js.map +1 -0
- package/dist/services/memory/decay.d.ts +56 -0
- package/dist/services/memory/decay.d.ts.map +1 -0
- package/dist/services/memory/decay.js +73 -0
- package/dist/services/memory/decay.js.map +1 -0
- package/dist/services/memory/index.d.ts +12 -0
- package/dist/services/memory/index.d.ts.map +1 -0
- package/dist/services/memory/index.js +9 -0
- package/dist/services/memory/index.js.map +1 -0
- package/dist/services/memory/llm-client.d.ts +111 -0
- package/dist/services/memory/llm-client.d.ts.map +1 -0
- package/dist/services/memory/llm-client.js +450 -0
- package/dist/services/memory/llm-client.js.map +1 -0
- package/dist/services/memory/memory-clustering.d.ts +65 -0
- package/dist/services/memory/memory-clustering.d.ts.map +1 -0
- package/dist/services/memory/memory-clustering.js +298 -0
- package/dist/services/memory/memory-clustering.js.map +1 -0
- package/dist/services/memory/memory-service.d.ts +72 -0
- package/dist/services/memory/memory-service.d.ts.map +1 -0
- package/dist/services/memory/memory-service.js +178 -0
- package/dist/services/memory/memory-service.js.map +1 -0
- package/dist/services/memory/redundancy-filter.d.ts +26 -0
- package/dist/services/memory/redundancy-filter.d.ts.map +1 -0
- package/dist/services/memory/redundancy-filter.js +93 -0
- package/dist/services/memory/redundancy-filter.js.map +1 -0
- package/dist/services/memory/salience-judge.d.ts +51 -0
- package/dist/services/memory/salience-judge.d.ts.map +1 -0
- package/dist/services/memory/salience-judge.js +115 -0
- package/dist/services/memory/salience-judge.js.map +1 -0
- package/dist/services/metrics/token-metrics.d.ts +114 -0
- package/dist/services/metrics/token-metrics.d.ts.map +1 -0
- package/dist/services/metrics/token-metrics.js +272 -0
- package/dist/services/metrics/token-metrics.js.map +1 -0
- package/dist/services/monitoring/metrics.d.ts +154 -0
- package/dist/services/monitoring/metrics.d.ts.map +1 -0
- package/dist/services/monitoring/metrics.js +382 -0
- package/dist/services/monitoring/metrics.js.map +1 -0
- package/dist/services/pricing/models-dev-client.d.ts +141 -0
- package/dist/services/pricing/models-dev-client.d.ts.map +1 -0
- package/dist/services/pricing/models-dev-client.js +523 -0
- package/dist/services/pricing/models-dev-client.js.map +1 -0
- package/dist/services/project-identity/alias-resolver.d.ts +76 -0
- package/dist/services/project-identity/alias-resolver.d.ts.map +1 -0
- package/dist/services/project-identity/alias-resolver.js +129 -0
- package/dist/services/project-identity/alias-resolver.js.map +1 -0
- package/dist/services/project-identity/apply.d.ts +89 -0
- package/dist/services/project-identity/apply.d.ts.map +1 -0
- package/dist/services/project-identity/apply.js +619 -0
- package/dist/services/project-identity/apply.js.map +1 -0
- package/dist/services/project-identity/contracts.d.ts +103 -0
- package/dist/services/project-identity/contracts.d.ts.map +1 -0
- package/dist/services/project-identity/contracts.js +63 -0
- package/dist/services/project-identity/contracts.js.map +1 -0
- package/dist/services/project-identity/discovery.d.ts +39 -0
- package/dist/services/project-identity/discovery.d.ts.map +1 -0
- package/dist/services/project-identity/discovery.js +139 -0
- package/dist/services/project-identity/discovery.js.map +1 -0
- package/dist/services/project-identity/errors.d.ts +11 -0
- package/dist/services/project-identity/errors.d.ts.map +1 -0
- package/dist/services/project-identity/errors.js +40 -0
- package/dist/services/project-identity/errors.js.map +1 -0
- package/dist/services/project-identity/hash.d.ts +16 -0
- package/dist/services/project-identity/hash.d.ts.map +1 -0
- package/dist/services/project-identity/hash.js +91 -0
- package/dist/services/project-identity/hash.js.map +1 -0
- package/dist/services/project-identity/identity-guard-installer.d.ts +60 -0
- package/dist/services/project-identity/identity-guard-installer.d.ts.map +1 -0
- package/dist/services/project-identity/identity-guard-installer.js +116 -0
- package/dist/services/project-identity/identity-guard-installer.js.map +1 -0
- package/dist/services/project-identity/index.d.ts +25 -0
- package/dist/services/project-identity/index.d.ts.map +1 -0
- package/dist/services/project-identity/index.js +14 -0
- package/dist/services/project-identity/index.js.map +1 -0
- package/dist/services/project-identity/invalidator-registry.d.ts +52 -0
- package/dist/services/project-identity/invalidator-registry.d.ts.map +1 -0
- package/dist/services/project-identity/invalidator-registry.js +73 -0
- package/dist/services/project-identity/invalidator-registry.js.map +1 -0
- package/dist/services/project-identity/pg-array-codec.d.ts +24 -0
- package/dist/services/project-identity/pg-array-codec.d.ts.map +1 -0
- package/dist/services/project-identity/pg-array-codec.js +85 -0
- package/dist/services/project-identity/pg-array-codec.js.map +1 -0
- package/dist/services/project-identity/planner.d.ts +39 -0
- package/dist/services/project-identity/planner.d.ts.map +1 -0
- package/dist/services/project-identity/planner.js +206 -0
- package/dist/services/project-identity/planner.js.map +1 -0
- package/dist/services/project-identity/production-wiring.d.ts +60 -0
- package/dist/services/project-identity/production-wiring.d.ts.map +1 -0
- package/dist/services/project-identity/production-wiring.js +106 -0
- package/dist/services/project-identity/production-wiring.js.map +1 -0
- package/dist/services/project-identity/registry.d.ts +24 -0
- package/dist/services/project-identity/registry.d.ts.map +1 -0
- package/dist/services/project-identity/registry.js +72 -0
- package/dist/services/project-identity/registry.js.map +1 -0
- package/dist/services/project-identity/service.d.ts +28 -0
- package/dist/services/project-identity/service.d.ts.map +1 -0
- package/dist/services/project-identity/service.js +79 -0
- package/dist/services/project-identity/service.js.map +1 -0
- package/dist/services/query/prisma-client.d.ts +10 -0
- package/dist/services/query/prisma-client.d.ts.map +1 -0
- package/dist/services/query/prisma-client.js +37 -0
- package/dist/services/query/prisma-client.js.map +1 -0
- package/dist/services/scheduler/index.d.ts +13 -0
- package/dist/services/scheduler/index.d.ts.map +1 -0
- package/dist/services/scheduler/index.js +9 -0
- package/dist/services/scheduler/index.js.map +1 -0
- package/dist/services/scheduler/scheduler-cron.d.ts +39 -0
- package/dist/services/scheduler/scheduler-cron.d.ts.map +1 -0
- package/dist/services/scheduler/scheduler-cron.js +159 -0
- package/dist/services/scheduler/scheduler-cron.js.map +1 -0
- package/dist/services/scheduler/scheduler-defaults.d.ts +55 -0
- package/dist/services/scheduler/scheduler-defaults.d.ts.map +1 -0
- package/dist/services/scheduler/scheduler-defaults.js +188 -0
- package/dist/services/scheduler/scheduler-defaults.js.map +1 -0
- package/dist/services/scheduler/scheduler-store-factory.d.ts +13 -0
- package/dist/services/scheduler/scheduler-store-factory.d.ts.map +1 -0
- package/dist/services/scheduler/scheduler-store-factory.js +23 -0
- package/dist/services/scheduler/scheduler-store-factory.js.map +1 -0
- package/dist/services/scheduler/scheduler-store-pg.d.ts +44 -0
- package/dist/services/scheduler/scheduler-store-pg.d.ts.map +1 -0
- package/dist/services/scheduler/scheduler-store-pg.js +252 -0
- package/dist/services/scheduler/scheduler-store-pg.js.map +1 -0
- package/dist/services/scheduler/scheduler-store.d.ts +10 -0
- package/dist/services/scheduler/scheduler-store.d.ts.map +1 -0
- package/dist/services/scheduler/scheduler-store.js +2 -0
- package/dist/services/scheduler/scheduler-store.js.map +1 -0
- package/dist/services/scheduler/scheduler-types.d.ts +75 -0
- package/dist/services/scheduler/scheduler-types.d.ts.map +1 -0
- package/dist/services/scheduler/scheduler-types.js +10 -0
- package/dist/services/scheduler/scheduler-types.js.map +1 -0
- package/dist/services/scheduler/scheduler.d.ts +149 -0
- package/dist/services/scheduler/scheduler.d.ts.map +1 -0
- package/dist/services/scheduler/scheduler.js +453 -0
- package/dist/services/scheduler/scheduler.js.map +1 -0
- package/dist/services/search/analytics-factory.d.ts +9 -0
- package/dist/services/search/analytics-factory.d.ts.map +1 -0
- package/dist/services/search/analytics-factory.js +24 -0
- package/dist/services/search/analytics-factory.js.map +1 -0
- package/dist/services/search/cache-factory.d.ts +9 -0
- package/dist/services/search/cache-factory.d.ts.map +1 -0
- package/dist/services/search/cache-factory.js +22 -0
- package/dist/services/search/cache-factory.js.map +1 -0
- package/dist/services/search/capture-policy-interfaces.d.ts +59 -0
- package/dist/services/search/capture-policy-interfaces.d.ts.map +1 -0
- package/dist/services/search/capture-policy-interfaces.js +15 -0
- package/dist/services/search/capture-policy-interfaces.js.map +1 -0
- package/dist/services/search/capture-policy.d.ts +54 -0
- package/dist/services/search/capture-policy.d.ts.map +1 -0
- package/dist/services/search/capture-policy.js +185 -0
- package/dist/services/search/capture-policy.js.map +1 -0
- package/dist/services/search/chunker/chunker-code.d.ts +24 -0
- package/dist/services/search/chunker/chunker-code.d.ts.map +1 -0
- package/dist/services/search/chunker/chunker-code.js +182 -0
- package/dist/services/search/chunker/chunker-code.js.map +1 -0
- package/dist/services/search/chunker/chunker-json-yaml.d.ts +9 -0
- package/dist/services/search/chunker/chunker-json-yaml.d.ts.map +1 -0
- package/dist/services/search/chunker/chunker-json-yaml.js +124 -0
- package/dist/services/search/chunker/chunker-json-yaml.js.map +1 -0
- package/dist/services/search/chunker/chunker-markdown.d.ts +9 -0
- package/dist/services/search/chunker/chunker-markdown.d.ts.map +1 -0
- package/dist/services/search/chunker/chunker-markdown.js +70 -0
- package/dist/services/search/chunker/chunker-markdown.js.map +1 -0
- package/dist/services/search/chunker/chunker-post.d.ts +12 -0
- package/dist/services/search/chunker/chunker-post.d.ts.map +1 -0
- package/dist/services/search/chunker/chunker-post.js +139 -0
- package/dist/services/search/chunker/chunker-post.js.map +1 -0
- package/dist/services/search/chunker/chunker-types.d.ts +43 -0
- package/dist/services/search/chunker/chunker-types.d.ts.map +1 -0
- package/dist/services/search/chunker/chunker-types.js +15 -0
- package/dist/services/search/chunker/chunker-types.js.map +1 -0
- package/dist/services/search/contextual-search-rlm.d.ts +243 -0
- package/dist/services/search/contextual-search-rlm.d.ts.map +1 -0
- package/dist/services/search/contextual-search-rlm.js +260 -0
- package/dist/services/search/contextual-search-rlm.js.map +1 -0
- package/dist/services/search/file-filter-cache.d.ts +55 -0
- package/dist/services/search/file-filter-cache.d.ts.map +1 -0
- package/dist/services/search/file-filter-cache.js +159 -0
- package/dist/services/search/file-filter-cache.js.map +1 -0
- package/dist/services/search/filter-validation.d.ts +61 -0
- package/dist/services/search/filter-validation.d.ts.map +1 -0
- package/dist/services/search/filter-validation.js +111 -0
- package/dist/services/search/filter-validation.js.map +1 -0
- package/dist/services/search/ignore-patterns.d.ts +39 -0
- package/dist/services/search/ignore-patterns.d.ts.map +1 -0
- package/dist/services/search/ignore-patterns.js +125 -0
- package/dist/services/search/ignore-patterns.js.map +1 -0
- package/dist/services/search/index-manager.d.ts +81 -0
- package/dist/services/search/index-manager.d.ts.map +1 -0
- package/dist/services/search/index-manager.js +315 -0
- package/dist/services/search/index-manager.js.map +1 -0
- package/dist/services/search/lexical-search.d.ts +83 -0
- package/dist/services/search/lexical-search.d.ts.map +1 -0
- package/dist/services/search/lexical-search.js +297 -0
- package/dist/services/search/lexical-search.js.map +1 -0
- package/dist/services/search/query-understanding.d.ts +115 -0
- package/dist/services/search/query-understanding.d.ts.map +1 -0
- package/dist/services/search/query-understanding.js +281 -0
- package/dist/services/search/query-understanding.js.map +1 -0
- package/dist/services/search/reranker.d.ts +59 -0
- package/dist/services/search/reranker.d.ts.map +1 -0
- package/dist/services/search/reranker.js +156 -0
- package/dist/services/search/reranker.js.map +1 -0
- package/dist/services/search/rlm-admin.d.ts +22 -0
- package/dist/services/search/rlm-admin.d.ts.map +1 -0
- package/dist/services/search/rlm-admin.js +92 -0
- package/dist/services/search/rlm-admin.js.map +1 -0
- package/dist/services/search/rlm-fusion.d.ts +23 -0
- package/dist/services/search/rlm-fusion.d.ts.map +1 -0
- package/dist/services/search/rlm-fusion.js +180 -0
- package/dist/services/search/rlm-fusion.js.map +1 -0
- package/dist/services/search/rlm-indexing.d.ts +71 -0
- package/dist/services/search/rlm-indexing.d.ts.map +1 -0
- package/dist/services/search/rlm-indexing.js +431 -0
- package/dist/services/search/rlm-indexing.js.map +1 -0
- package/dist/services/search/rlm-search.d.ts +28 -0
- package/dist/services/search/rlm-search.d.ts.map +1 -0
- package/dist/services/search/rlm-search.js +489 -0
- package/dist/services/search/rlm-search.js.map +1 -0
- package/dist/services/search/rlm-synapse.d.ts +44 -0
- package/dist/services/search/rlm-synapse.d.ts.map +1 -0
- package/dist/services/search/rlm-synapse.js +227 -0
- package/dist/services/search/rlm-synapse.js.map +1 -0
- package/dist/services/search/search-analytics-pg.d.ts +62 -0
- package/dist/services/search/search-analytics-pg.d.ts.map +1 -0
- package/dist/services/search/search-analytics-pg.js +242 -0
- package/dist/services/search/search-analytics-pg.js.map +1 -0
- package/dist/services/search/search-analytics.d.ts +3 -0
- package/dist/services/search/search-analytics.d.ts.map +1 -0
- package/dist/services/search/search-analytics.js +3 -0
- package/dist/services/search/search-analytics.js.map +1 -0
- package/dist/services/search/search-cache-pg.d.ts +49 -0
- package/dist/services/search/search-cache-pg.d.ts.map +1 -0
- package/dist/services/search/search-cache-pg.js +315 -0
- package/dist/services/search/search-cache-pg.js.map +1 -0
- package/dist/services/search/search-diagnostics.d.ts +39 -0
- package/dist/services/search/search-diagnostics.d.ts.map +1 -0
- package/dist/services/search/search-diagnostics.js +81 -0
- package/dist/services/search/search-diagnostics.js.map +1 -0
- package/dist/services/search/search-warmup.d.ts +29 -0
- package/dist/services/search/search-warmup.d.ts.map +1 -0
- package/dist/services/search/search-warmup.js +96 -0
- package/dist/services/search/search-warmup.js.map +1 -0
- package/dist/services/search/smart-chunker.d.ts +16 -0
- package/dist/services/search/smart-chunker.d.ts.map +1 -0
- package/dist/services/search/smart-chunker.js +67 -0
- package/dist/services/search/smart-chunker.js.map +1 -0
- package/dist/services/structural/diagnostics.d.ts +6 -0
- package/dist/services/structural/diagnostics.d.ts.map +1 -0
- package/dist/services/structural/diagnostics.js +22 -0
- package/dist/services/structural/diagnostics.js.map +1 -0
- package/dist/services/structural/fqn-codec.d.ts +105 -0
- package/dist/services/structural/fqn-codec.d.ts.map +1 -0
- package/dist/services/structural/fqn-codec.js +272 -0
- package/dist/services/structural/fqn-codec.js.map +1 -0
- package/dist/services/structural/grammar-integrity.d.ts +37 -0
- package/dist/services/structural/grammar-integrity.d.ts.map +1 -0
- package/dist/services/structural/grammar-integrity.js +196 -0
- package/dist/services/structural/grammar-integrity.js.map +1 -0
- package/dist/services/structural/grammar-loaders.d.ts +69 -0
- package/dist/services/structural/grammar-loaders.d.ts.map +1 -0
- package/dist/services/structural/grammar-loaders.js +229 -0
- package/dist/services/structural/grammar-loaders.js.map +1 -0
- package/dist/services/structural/language-manifest.d.ts +59 -0
- package/dist/services/structural/language-manifest.d.ts.map +1 -0
- package/dist/services/structural/language-manifest.js +413 -0
- package/dist/services/structural/language-manifest.js.map +1 -0
- package/dist/services/structural/native-lock-identities.d.ts +77 -0
- package/dist/services/structural/native-lock-identities.d.ts.map +1 -0
- package/dist/services/structural/native-lock-identities.js +192 -0
- package/dist/services/structural/native-lock-identities.js.map +1 -0
- package/dist/services/structural/native-node-helpers.d.ts +16 -0
- package/dist/services/structural/native-node-helpers.d.ts.map +1 -0
- package/dist/services/structural/native-node-helpers.js +145 -0
- package/dist/services/structural/native-node-helpers.js.map +1 -0
- package/dist/services/structural/parser-pool.d.ts +34 -0
- package/dist/services/structural/parser-pool.d.ts.map +1 -0
- package/dist/services/structural/parser-pool.js +148 -0
- package/dist/services/structural/parser-pool.js.map +1 -0
- package/dist/services/structural/parser-readiness.d.ts +30 -0
- package/dist/services/structural/parser-readiness.d.ts.map +1 -0
- package/dist/services/structural/parser-readiness.js +190 -0
- package/dist/services/structural/parser-readiness.js.map +1 -0
- package/dist/services/structural/query-pack-captures.d.ts +32 -0
- package/dist/services/structural/query-pack-captures.d.ts.map +1 -0
- package/dist/services/structural/query-pack-captures.js +173 -0
- package/dist/services/structural/query-pack-captures.js.map +1 -0
- package/dist/services/structural/query-pack-edges.d.ts +11 -0
- package/dist/services/structural/query-pack-edges.d.ts.map +1 -0
- package/dist/services/structural/query-pack-edges.js +521 -0
- package/dist/services/structural/query-pack-edges.js.map +1 -0
- package/dist/services/structural/query-pack-registry.d.ts +24 -0
- package/dist/services/structural/query-pack-registry.d.ts.map +1 -0
- package/dist/services/structural/query-pack-registry.js +42 -0
- package/dist/services/structural/query-pack-registry.js.map +1 -0
- package/dist/services/structural/query-pack.d.ts +10 -0
- package/dist/services/structural/query-pack.d.ts.map +1 -0
- package/dist/services/structural/query-pack.js +32 -0
- package/dist/services/structural/query-pack.js.map +1 -0
- package/dist/services/structural/query-packs/data-document.d.ts +7 -0
- package/dist/services/structural/query-packs/data-document.d.ts.map +1 -0
- package/dist/services/structural/query-packs/data-document.js +23 -0
- package/dist/services/structural/query-packs/data-document.js.map +1 -0
- package/dist/services/structural/query-packs/functional.d.ts +8 -0
- package/dist/services/structural/query-packs/functional.d.ts.map +1 -0
- package/dist/services/structural/query-packs/functional.js +58 -0
- package/dist/services/structural/query-packs/functional.js.map +1 -0
- package/dist/services/structural/query-packs/managed.d.ts +9 -0
- package/dist/services/structural/query-packs/managed.d.ts.map +1 -0
- package/dist/services/structural/query-packs/managed.js +114 -0
- package/dist/services/structural/query-packs/managed.js.map +1 -0
- package/dist/services/structural/query-packs/scripting.d.ts +7 -0
- package/dist/services/structural/query-packs/scripting.d.ts.map +1 -0
- package/dist/services/structural/query-packs/scripting.js +53 -0
- package/dist/services/structural/query-packs/scripting.js.map +1 -0
- package/dist/services/structural/query-packs/systems.d.ts +8 -0
- package/dist/services/structural/query-packs/systems.d.ts.map +1 -0
- package/dist/services/structural/query-packs/systems.js +74 -0
- package/dist/services/structural/query-packs/systems.js.map +1 -0
- package/dist/services/structural/query-packs/typescript.d.ts +4 -0
- package/dist/services/structural/query-packs/typescript.d.ts.map +1 -0
- package/dist/services/structural/query-packs/typescript.js +51 -0
- package/dist/services/structural/query-packs/typescript.js.map +1 -0
- package/dist/services/structural/resolver.d.ts +86 -0
- package/dist/services/structural/resolver.d.ts.map +1 -0
- package/dist/services/structural/resolver.js +189 -0
- package/dist/services/structural/resolver.js.map +1 -0
- package/dist/services/structural/resolvers/data-document.d.ts +4 -0
- package/dist/services/structural/resolvers/data-document.d.ts.map +1 -0
- package/dist/services/structural/resolvers/data-document.js +7 -0
- package/dist/services/structural/resolvers/data-document.js.map +1 -0
- package/dist/services/structural/resolvers/functional.d.ts +3 -0
- package/dist/services/structural/resolvers/functional.d.ts.map +1 -0
- package/dist/services/structural/resolvers/functional.js +30 -0
- package/dist/services/structural/resolvers/functional.js.map +1 -0
- package/dist/services/structural/resolvers/managed.d.ts +3 -0
- package/dist/services/structural/resolvers/managed.d.ts.map +1 -0
- package/dist/services/structural/resolvers/managed.js +44 -0
- package/dist/services/structural/resolvers/managed.js.map +1 -0
- package/dist/services/structural/resolvers/scripting.d.ts +4 -0
- package/dist/services/structural/resolvers/scripting.d.ts.map +1 -0
- package/dist/services/structural/resolvers/scripting.js +10 -0
- package/dist/services/structural/resolvers/scripting.js.map +1 -0
- package/dist/services/structural/resolvers/systems.d.ts +3 -0
- package/dist/services/structural/resolvers/systems.d.ts.map +1 -0
- package/dist/services/structural/resolvers/systems.js +33 -0
- package/dist/services/structural/resolvers/systems.js.map +1 -0
- package/dist/services/structural/resolvers/typescript.d.ts +6 -0
- package/dist/services/structural/resolvers/typescript.d.ts.map +1 -0
- package/dist/services/structural/resolvers/typescript.js +370 -0
- package/dist/services/structural/resolvers/typescript.js.map +1 -0
- package/dist/services/structural/schema-version.d.ts +42 -0
- package/dist/services/structural/schema-version.d.ts.map +1 -0
- package/dist/services/structural/schema-version.js +80 -0
- package/dist/services/structural/schema-version.js.map +1 -0
- package/dist/services/structural/source-span.d.ts +26 -0
- package/dist/services/structural/source-span.d.ts.map +1 -0
- package/dist/services/structural/source-span.js +117 -0
- package/dist/services/structural/source-span.js.map +1 -0
- package/dist/services/structural/structural-runtime.d.ts +55 -0
- package/dist/services/structural/structural-runtime.d.ts.map +1 -0
- package/dist/services/structural/structural-runtime.js +377 -0
- package/dist/services/structural/structural-runtime.js.map +1 -0
- package/dist/services/structural/symbol-signature.d.ts +25 -0
- package/dist/services/structural/symbol-signature.d.ts.map +1 -0
- package/dist/services/structural/symbol-signature.js +319 -0
- package/dist/services/structural/symbol-signature.js.map +1 -0
- package/dist/services/structural/types.d.ts +138 -0
- package/dist/services/structural/types.d.ts.map +1 -0
- package/dist/services/structural/types.js +27 -0
- package/dist/services/structural/types.js.map +1 -0
- package/dist/services/symbol/active-generation.d.ts +42 -0
- package/dist/services/symbol/active-generation.d.ts.map +1 -0
- package/dist/services/symbol/active-generation.js +56 -0
- package/dist/services/symbol/active-generation.js.map +1 -0
- package/dist/services/symbol/architecture.d.ts +238 -0
- package/dist/services/symbol/architecture.d.ts.map +1 -0
- package/dist/services/symbol/architecture.js +464 -0
- package/dist/services/symbol/architecture.js.map +1 -0
- package/dist/services/symbol/centrality.d.ts +24 -0
- package/dist/services/symbol/centrality.d.ts.map +1 -0
- package/dist/services/symbol/centrality.js +70 -0
- package/dist/services/symbol/centrality.js.map +1 -0
- package/dist/services/symbol/communities.d.ts +86 -0
- package/dist/services/symbol/communities.d.ts.map +1 -0
- package/dist/services/symbol/communities.js +551 -0
- package/dist/services/symbol/communities.js.map +1 -0
- package/dist/services/symbol/cycle-detection.d.ts +61 -0
- package/dist/services/symbol/cycle-detection.d.ts.map +1 -0
- package/dist/services/symbol/cycle-detection.js +182 -0
- package/dist/services/symbol/cycle-detection.js.map +1 -0
- package/dist/services/symbol/definition-lookup.d.ts +31 -0
- package/dist/services/symbol/definition-lookup.d.ts.map +1 -0
- package/dist/services/symbol/definition-lookup.js +53 -0
- package/dist/services/symbol/definition-lookup.js.map +1 -0
- package/dist/services/symbol/git-ref-validation.d.ts +26 -0
- package/dist/services/symbol/git-ref-validation.d.ts.map +1 -0
- package/dist/services/symbol/git-ref-validation.js +34 -0
- package/dist/services/symbol/git-ref-validation.js.map +1 -0
- package/dist/services/symbol/impact-analysis.d.ts +205 -0
- package/dist/services/symbol/impact-analysis.d.ts.map +1 -0
- package/dist/services/symbol/impact-analysis.js +617 -0
- package/dist/services/symbol/impact-analysis.js.map +1 -0
- package/dist/services/symbol/index.d.ts +20 -0
- package/dist/services/symbol/index.d.ts.map +1 -0
- package/dist/services/symbol/index.js +13 -0
- package/dist/services/symbol/index.js.map +1 -0
- package/dist/services/symbol/symbol-graph.service.d.ts +272 -0
- package/dist/services/symbol/symbol-graph.service.d.ts.map +1 -0
- package/dist/services/symbol/symbol-graph.service.js +580 -0
- package/dist/services/symbol/symbol-graph.service.js.map +1 -0
- package/dist/services/symbol/trace-path.d.ts +164 -0
- package/dist/services/symbol/trace-path.d.ts.map +1 -0
- package/dist/services/symbol/trace-path.js +448 -0
- package/dist/services/symbol/trace-path.js.map +1 -0
- package/dist/services/synapse/buffer/index.d.ts +2 -0
- package/dist/services/synapse/buffer/index.d.ts.map +1 -0
- package/dist/services/synapse/buffer/index.js +2 -0
- package/dist/services/synapse/buffer/index.js.map +1 -0
- package/dist/services/synapse/buffer/working-memory-buffer.d.ts +124 -0
- package/dist/services/synapse/buffer/working-memory-buffer.d.ts.map +1 -0
- package/dist/services/synapse/buffer/working-memory-buffer.js +251 -0
- package/dist/services/synapse/buffer/working-memory-buffer.js.map +1 -0
- package/dist/services/synapse/index.d.ts +27 -0
- package/dist/services/synapse/index.d.ts.map +1 -0
- package/dist/services/synapse/index.js +35 -0
- package/dist/services/synapse/index.js.map +1 -0
- package/dist/services/synapse/inhibition/chain-inhibition.d.ts +36 -0
- package/dist/services/synapse/inhibition/chain-inhibition.d.ts.map +1 -0
- package/dist/services/synapse/inhibition/chain-inhibition.js +133 -0
- package/dist/services/synapse/inhibition/chain-inhibition.js.map +1 -0
- package/dist/services/synapse/inhibition/confidence-gate.d.ts +49 -0
- package/dist/services/synapse/inhibition/confidence-gate.d.ts.map +1 -0
- package/dist/services/synapse/inhibition/confidence-gate.js +131 -0
- package/dist/services/synapse/inhibition/confidence-gate.js.map +1 -0
- package/dist/services/synapse/inhibition/diversity-penalty.d.ts +28 -0
- package/dist/services/synapse/inhibition/diversity-penalty.d.ts.map +1 -0
- package/dist/services/synapse/inhibition/diversity-penalty.js +75 -0
- package/dist/services/synapse/inhibition/diversity-penalty.js.map +1 -0
- package/dist/services/synapse/inhibition/index.d.ts +5 -0
- package/dist/services/synapse/inhibition/index.d.ts.map +1 -0
- package/dist/services/synapse/inhibition/index.js +5 -0
- package/dist/services/synapse/inhibition/index.js.map +1 -0
- package/dist/services/synapse/inhibition/temporal-inhibition.d.ts +21 -0
- package/dist/services/synapse/inhibition/temporal-inhibition.d.ts.map +1 -0
- package/dist/services/synapse/inhibition/temporal-inhibition.js +70 -0
- package/dist/services/synapse/inhibition/temporal-inhibition.js.map +1 -0
- package/dist/services/synapse/inhibition/type-inference.d.ts +14 -0
- package/dist/services/synapse/inhibition/type-inference.d.ts.map +1 -0
- package/dist/services/synapse/inhibition/type-inference.js +36 -0
- package/dist/services/synapse/inhibition/type-inference.js.map +1 -0
- package/dist/services/synapse/metacognition/index.d.ts +2 -0
- package/dist/services/synapse/metacognition/index.d.ts.map +1 -0
- package/dist/services/synapse/metacognition/index.js +2 -0
- package/dist/services/synapse/metacognition/index.js.map +1 -0
- package/dist/services/synapse/metacognition/score-spectrum.d.ts +29 -0
- package/dist/services/synapse/metacognition/score-spectrum.d.ts.map +1 -0
- package/dist/services/synapse/metacognition/score-spectrum.js +70 -0
- package/dist/services/synapse/metacognition/score-spectrum.js.map +1 -0
- package/dist/services/synapse/plasticity/compress.d.ts +64 -0
- package/dist/services/synapse/plasticity/compress.d.ts.map +1 -0
- package/dist/services/synapse/plasticity/compress.js +82 -0
- package/dist/services/synapse/plasticity/compress.js.map +1 -0
- package/dist/services/synapse/plasticity/embedding-evolution.d.ts +42 -0
- package/dist/services/synapse/plasticity/embedding-evolution.d.ts.map +1 -0
- package/dist/services/synapse/plasticity/embedding-evolution.js +81 -0
- package/dist/services/synapse/plasticity/embedding-evolution.js.map +1 -0
- package/dist/services/synapse/plasticity/index.d.ts +4 -0
- package/dist/services/synapse/plasticity/index.d.ts.map +1 -0
- package/dist/services/synapse/plasticity/index.js +4 -0
- package/dist/services/synapse/plasticity/index.js.map +1 -0
- package/dist/services/synapse/plasticity/strengthen.d.ts +45 -0
- package/dist/services/synapse/plasticity/strengthen.d.ts.map +1 -0
- package/dist/services/synapse/plasticity/strengthen.js +69 -0
- package/dist/services/synapse/plasticity/strengthen.js.map +1 -0
- package/dist/services/synapse/prefetch/index.d.ts +2 -0
- package/dist/services/synapse/prefetch/index.d.ts.map +1 -0
- package/dist/services/synapse/prefetch/index.js +2 -0
- package/dist/services/synapse/prefetch/index.js.map +1 -0
- package/dist/services/synapse/prefetch/prefetch.d.ts +75 -0
- package/dist/services/synapse/prefetch/prefetch.d.ts.map +1 -0
- package/dist/services/synapse/prefetch/prefetch.js +111 -0
- package/dist/services/synapse/prefetch/prefetch.js.map +1 -0
- package/dist/services/synapse/scoring/agent-affinity.d.ts +16 -0
- package/dist/services/synapse/scoring/agent-affinity.d.ts.map +1 -0
- package/dist/services/synapse/scoring/agent-affinity.js +40 -0
- package/dist/services/synapse/scoring/agent-affinity.js.map +1 -0
- package/dist/services/synapse/scoring/attention-score.d.ts +80 -0
- package/dist/services/synapse/scoring/attention-score.d.ts.map +1 -0
- package/dist/services/synapse/scoring/attention-score.js +177 -0
- package/dist/services/synapse/scoring/attention-score.js.map +1 -0
- package/dist/services/synapse/scoring/index.d.ts +4 -0
- package/dist/services/synapse/scoring/index.d.ts.map +1 -0
- package/dist/services/synapse/scoring/index.js +4 -0
- package/dist/services/synapse/scoring/index.js.map +1 -0
- package/dist/services/synapse/scoring/task-alignment.d.ts +20 -0
- package/dist/services/synapse/scoring/task-alignment.d.ts.map +1 -0
- package/dist/services/synapse/scoring/task-alignment.js +65 -0
- package/dist/services/synapse/scoring/task-alignment.js.map +1 -0
- package/dist/services/synapse/session/index.d.ts +2 -0
- package/dist/services/synapse/session/index.d.ts.map +1 -0
- package/dist/services/synapse/session/index.js +2 -0
- package/dist/services/synapse/session/index.js.map +1 -0
- package/dist/services/synapse/session/session-registry.d.ts +85 -0
- package/dist/services/synapse/session/session-registry.d.ts.map +1 -0
- package/dist/services/synapse/session/session-registry.js +241 -0
- package/dist/services/synapse/session/session-registry.js.map +1 -0
- package/dist/services/synapse/session/session-store-pg.d.ts +88 -0
- package/dist/services/synapse/session/session-store-pg.d.ts.map +1 -0
- package/dist/services/synapse/session/session-store-pg.js +334 -0
- package/dist/services/synapse/session/session-store-pg.js.map +1 -0
- package/dist/services/synapse/session/session-store.d.ts +23 -0
- package/dist/services/synapse/session/session-store.d.ts.map +1 -0
- package/dist/services/synapse/session/session-store.js +15 -0
- package/dist/services/synapse/session/session-store.js.map +1 -0
- package/dist/services/synapse/synapse-manager.d.ts +41 -0
- package/dist/services/synapse/synapse-manager.d.ts.map +1 -0
- package/dist/services/synapse/synapse-manager.js +167 -0
- package/dist/services/synapse/synapse-manager.js.map +1 -0
- package/dist/services/synapse/task-envelope.d.ts +99 -0
- package/dist/services/synapse/task-envelope.d.ts.map +1 -0
- package/dist/services/synapse/task-envelope.js +192 -0
- package/dist/services/synapse/task-envelope.js.map +1 -0
- package/dist/services/synapse/types.d.ts +79 -0
- package/dist/services/synapse/types.d.ts.map +1 -0
- package/dist/services/synapse/types.js +8 -0
- package/dist/services/synapse/types.js.map +1 -0
- package/dist/services/web/fetcher.d.ts +99 -0
- package/dist/services/web/fetcher.d.ts.map +1 -0
- package/dist/services/web/fetcher.js +267 -0
- package/dist/services/web/fetcher.js.map +1 -0
- package/dist/services/web/html-to-md.d.ts +38 -0
- package/dist/services/web/html-to-md.d.ts.map +1 -0
- package/dist/services/web/html-to-md.js +98 -0
- package/dist/services/web/html-to-md.js.map +1 -0
- package/dist/services/web/index.d.ts +15 -0
- package/dist/services/web/index.d.ts.map +1 -0
- package/dist/services/web/index.js +15 -0
- package/dist/services/web/index.js.map +1 -0
- package/dist/services/web/ssrf.d.ts +142 -0
- package/dist/services/web/ssrf.d.ts.map +1 -0
- package/dist/services/web/ssrf.js +334 -0
- package/dist/services/web/ssrf.js.map +1 -0
- package/dist/services/web/web-controller.d.ts +70 -0
- package/dist/services/web/web-controller.d.ts.map +1 -0
- package/dist/services/web/web-controller.js +140 -0
- package/dist/services/web/web-controller.js.map +1 -0
- package/dist/services/workspace/index.d.ts +6 -0
- package/dist/services/workspace/index.d.ts.map +1 -0
- package/dist/services/workspace/index.js +5 -0
- package/dist/services/workspace/index.js.map +1 -0
- package/dist/services/workspace/workspace-manager.d.ts +57 -0
- package/dist/services/workspace/workspace-manager.d.ts.map +1 -0
- package/dist/services/workspace/workspace-manager.js +144 -0
- package/dist/services/workspace/workspace-manager.js.map +1 -0
- package/dist/tools/batch_execute.d.ts +64 -0
- package/dist/tools/batch_execute.d.ts.map +1 -0
- package/dist/tools/batch_execute.js +55 -0
- package/dist/tools/batch_execute.js.map +1 -0
- package/dist/tools/compact_snapshot.d.ts +56 -0
- package/dist/tools/compact_snapshot.d.ts.map +1 -0
- package/dist/tools/compact_snapshot.js +139 -0
- package/dist/tools/compact_snapshot.js.map +1 -0
- package/dist/tools/compress_context.d.ts +41 -0
- package/dist/tools/compress_context.d.ts.map +1 -0
- package/dist/tools/compress_context.js +103 -0
- package/dist/tools/compress_context.js.map +1 -0
- package/dist/tools/create_checkpoint.d.ts +120 -0
- package/dist/tools/create_checkpoint.d.ts.map +1 -0
- package/dist/tools/create_checkpoint.js +184 -0
- package/dist/tools/create_checkpoint.js.map +1 -0
- package/dist/tools/delete_memory.d.ts +39 -0
- package/dist/tools/delete_memory.d.ts.map +1 -0
- package/dist/tools/delete_memory.js +51 -0
- package/dist/tools/delete_memory.js.map +1 -0
- package/dist/tools/enum-validation.d.ts +37 -0
- package/dist/tools/enum-validation.d.ts.map +1 -0
- package/dist/tools/enum-validation.js +46 -0
- package/dist/tools/enum-validation.js.map +1 -0
- package/dist/tools/execute.d.ts +57 -0
- package/dist/tools/execute.d.ts.map +1 -0
- package/dist/tools/execute.js +64 -0
- package/dist/tools/execute.js.map +1 -0
- package/dist/tools/execute_file.d.ts +52 -0
- package/dist/tools/execute_file.d.ts.map +1 -0
- package/dist/tools/execute_file.js +61 -0
- package/dist/tools/execute_file.js.map +1 -0
- package/dist/tools/fetch_and_index.d.ts +71 -0
- package/dist/tools/fetch_and_index.d.ts.map +1 -0
- package/dist/tools/fetch_and_index.js +74 -0
- package/dist/tools/fetch_and_index.js.map +1 -0
- package/dist/tools/get_analytics.d.ts +38 -0
- package/dist/tools/get_analytics.d.ts.map +1 -0
- package/dist/tools/get_analytics.js +114 -0
- package/dist/tools/get_analytics.js.map +1 -0
- package/dist/tools/get_architecture.d.ts +59 -0
- package/dist/tools/get_architecture.d.ts.map +1 -0
- package/dist/tools/get_architecture.js +104 -0
- package/dist/tools/get_architecture.js.map +1 -0
- package/dist/tools/get_index_status.d.ts +23 -0
- package/dist/tools/get_index_status.d.ts.map +1 -0
- package/dist/tools/get_index_status.js +61 -0
- package/dist/tools/get_index_status.js.map +1 -0
- package/dist/tools/get_optimized_context.d.ts +78 -0
- package/dist/tools/get_optimized_context.d.ts.map +1 -0
- package/dist/tools/get_optimized_context.js +110 -0
- package/dist/tools/get_optimized_context.js.map +1 -0
- package/dist/tools/get_references.d.ts +53 -0
- package/dist/tools/get_references.d.ts.map +1 -0
- package/dist/tools/get_references.js +114 -0
- package/dist/tools/get_references.js.map +1 -0
- package/dist/tools/go_to_definition.d.ts +31 -0
- package/dist/tools/go_to_definition.d.ts.map +1 -0
- package/dist/tools/go_to_definition.js +75 -0
- package/dist/tools/go_to_definition.js.map +1 -0
- package/dist/tools/impact_analysis.d.ts +89 -0
- package/dist/tools/impact_analysis.d.ts.map +1 -0
- package/dist/tools/impact_analysis.js +186 -0
- package/dist/tools/impact_analysis.js.map +1 -0
- package/dist/tools/index.d.ts +34 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +38 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/index_project.d.ts +77 -0
- package/dist/tools/index_project.d.ts.map +1 -0
- package/dist/tools/index_project.js +259 -0
- package/dist/tools/index_project.js.map +1 -0
- package/dist/tools/list_checkpoints.d.ts +59 -0
- package/dist/tools/list_checkpoints.d.ts.map +1 -0
- package/dist/tools/list_checkpoints.js +110 -0
- package/dist/tools/list_checkpoints.js.map +1 -0
- package/dist/tools/list_projects.d.ts +24 -0
- package/dist/tools/list_projects.d.ts.map +1 -0
- package/dist/tools/list_projects.js +58 -0
- package/dist/tools/list_projects.js.map +1 -0
- package/dist/tools/read_file.d.ts +150 -0
- package/dist/tools/read_file.d.ts.map +1 -0
- package/dist/tools/read_file.js +580 -0
- package/dist/tools/read_file.js.map +1 -0
- package/dist/tools/restore_checkpoint.d.ts +45 -0
- package/dist/tools/restore_checkpoint.d.ts.map +1 -0
- package/dist/tools/restore_checkpoint.js +113 -0
- package/dist/tools/restore_checkpoint.js.map +1 -0
- package/dist/tools/search_code.d.ts +35 -0
- package/dist/tools/search_code.d.ts.map +1 -0
- package/dist/tools/search_code.js +61 -0
- package/dist/tools/search_code.js.map +1 -0
- package/dist/tools/search_definitions.d.ts +54 -0
- package/dist/tools/search_definitions.d.ts.map +1 -0
- package/dist/tools/search_definitions.js +123 -0
- package/dist/tools/search_definitions.js.map +1 -0
- package/dist/tools/search_memories.d.ts +82 -0
- package/dist/tools/search_memories.d.ts.map +1 -0
- package/dist/tools/search_memories.js +115 -0
- package/dist/tools/search_memories.js.map +1 -0
- package/dist/tools/search_project.d.ts +90 -0
- package/dist/tools/search_project.d.ts.map +1 -0
- package/dist/tools/search_project.js +115 -0
- package/dist/tools/search_project.js.map +1 -0
- package/dist/tools/serialize-interfaces.d.ts +103 -0
- package/dist/tools/serialize-interfaces.d.ts.map +1 -0
- package/dist/tools/serialize-interfaces.js +15 -0
- package/dist/tools/serialize-interfaces.js.map +1 -0
- package/dist/tools/serialize.d.ts +101 -0
- package/dist/tools/serialize.d.ts.map +1 -0
- package/dist/tools/serialize.js +388 -0
- package/dist/tools/serialize.js.map +1 -0
- package/dist/tools/store_memory.d.ts +78 -0
- package/dist/tools/store_memory.d.ts.map +1 -0
- package/dist/tools/store_memory.js +87 -0
- package/dist/tools/store_memory.js.map +1 -0
- package/dist/tools/trace_path.d.ts +98 -0
- package/dist/tools/trace_path.d.ts.map +1 -0
- package/dist/tools/trace_path.js +181 -0
- package/dist/tools/trace_path.js.map +1 -0
- package/dist/tools/update_memory.d.ts +61 -0
- package/dist/tools/update_memory.d.ts.map +1 -0
- package/dist/tools/update_memory.js +74 -0
- package/dist/tools/update_memory.js.map +1 -0
- package/package.json +103 -0
- package/prisma/migrations/20260309210441_init/migration.sql +127 -0
- package/prisma/migrations/20260413122356_add_workspaces_symbol_graph/migration.sql +224 -0
- package/prisma/migrations/20260413200000_add_vector_4096_bq/migration.sql +33 -0
- package/prisma/migrations/20260419193214_hnsw_ef_construction_128/migration.sql +38 -0
- package/prisma/migrations/20260419214959_add_vector_1536/migration.sql +28 -0
- package/prisma/migrations/20260705060000_add_memories_pinned_softdelete/migration.sql +10 -0
- package/prisma/migrations/20260706105826_drop_symbol_refs_target_fqn_not_null/migration.sql +2 -0
- package/prisma/migrations/20260707100000_add_index_jobs_pg/migration.sql +28 -0
- package/prisma/migrations/20260709120000_add_scheduled_jobs_pg/migration.sql +22 -0
- package/prisma/migrations/20260710120000_add_synapse_sessions_pg/migration.sql +36 -0
- package/prisma/migrations/20260710123800_add_observations_pg/migration.sql +35 -0
- package/prisma/migrations/20260710140000_add_symbol_refs_meta_and_kind_index/migration.sql +8 -0
- package/prisma/migrations/20260710160000_add_task_checkpoints_pg/migration.sql +30 -0
- package/prisma/migrations/20260713090000_add_handoffs_proposals_pg/migration.sql +42 -0
- package/prisma/migrations/20260714170000_add_graph_generations/migration.sql +286 -0
- package/prisma/migrations/20260714220000_add_index_job_graph_generation/migration.sql +5 -0
- package/prisma/migrations/20260714233000_add_index_job_parser_diagnostics/migration.sql +6 -0
- package/prisma/migrations/20260718000000_add_operation_log/migration.sql +25 -0
- package/prisma/migrations/20260719120000_add_project_identity/migration.sql +268 -0
- package/prisma/migrations/20260720120000_add_observation_attribution/migration.sql +5 -0
- package/prisma/migrations/20260720210000_repair_hook_attribution/migration.sql +256 -0
- package/prisma/migrations/20260722120000_add_managed_runs/migration.sql +66 -0
- package/prisma/migrations/20260722130000_add_scheduler_last_success/migration.sql +24 -0
- package/prisma/migrations/migration_lock.toml +3 -0
- package/prisma/schema.prisma +745 -0
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { ProjectIdentityInvalidationReport } from "./invalidator-registry.js";
|
|
3
|
+
export declare const PROJECT_IDENTITY_PLAN_VERSION: 1;
|
|
4
|
+
export declare const PROJECT_IDENTITY_MAX_PROJECT_ID_LENGTH = 255;
|
|
5
|
+
export declare const ProjectIdentityModeSchema: z.ZodEnum<{
|
|
6
|
+
rename: "rename";
|
|
7
|
+
merge: "merge";
|
|
8
|
+
}>;
|
|
9
|
+
export type ProjectIdentityMode = z.infer<typeof ProjectIdentityModeSchema>;
|
|
10
|
+
export declare const ProjectIdentityPreviewRequestSchema: z.ZodObject<{
|
|
11
|
+
dryRun: z.ZodDefault<z.ZodLiteral<true>>;
|
|
12
|
+
mode: z.ZodEnum<{
|
|
13
|
+
rename: "rename";
|
|
14
|
+
merge: "merge";
|
|
15
|
+
}>;
|
|
16
|
+
sourceProjectId: z.ZodString;
|
|
17
|
+
targetProjectId: z.ZodString;
|
|
18
|
+
}, z.core.$strict>;
|
|
19
|
+
export declare const ProjectIdentityApplyRequestSchema: z.ZodObject<{
|
|
20
|
+
dryRun: z.ZodLiteral<false>;
|
|
21
|
+
operationId: z.ZodString;
|
|
22
|
+
expectedPlanHash: z.ZodString;
|
|
23
|
+
mode: z.ZodEnum<{
|
|
24
|
+
rename: "rename";
|
|
25
|
+
merge: "merge";
|
|
26
|
+
}>;
|
|
27
|
+
sourceProjectId: z.ZodString;
|
|
28
|
+
targetProjectId: z.ZodString;
|
|
29
|
+
}, z.core.$strict>;
|
|
30
|
+
export type ProjectIdentityPreviewRequest = z.infer<typeof ProjectIdentityPreviewRequestSchema>;
|
|
31
|
+
export type ProjectIdentityPreviewInput = z.input<typeof ProjectIdentityPreviewRequestSchema>;
|
|
32
|
+
export type ProjectIdentityApplyRequest = z.infer<typeof ProjectIdentityApplyRequestSchema>;
|
|
33
|
+
export type ProjectIdentityApplyInput = z.input<typeof ProjectIdentityApplyRequestSchema>;
|
|
34
|
+
export interface ProjectIdentityStoreCount {
|
|
35
|
+
storeId: string;
|
|
36
|
+
directCount: number;
|
|
37
|
+
adaptedCount: number;
|
|
38
|
+
}
|
|
39
|
+
export interface ProjectIdentityConflict {
|
|
40
|
+
storeId: string;
|
|
41
|
+
kind: "key_collision" | "semantic_conflict" | "malformed_payload";
|
|
42
|
+
count: number;
|
|
43
|
+
}
|
|
44
|
+
/** Hash input. Arrays must already be in deterministic store/kind order. */
|
|
45
|
+
export interface ProjectIdentityPlanMaterial {
|
|
46
|
+
planVersion: typeof PROJECT_IDENTITY_PLAN_VERSION;
|
|
47
|
+
mode: ProjectIdentityMode;
|
|
48
|
+
sourceProjectId: string;
|
|
49
|
+
targetProjectId: string;
|
|
50
|
+
sourceCanonicalRoot: string;
|
|
51
|
+
targetCanonicalRoot: string | null;
|
|
52
|
+
stores: readonly ProjectIdentityStoreCount[];
|
|
53
|
+
conflicts: readonly ProjectIdentityConflict[];
|
|
54
|
+
unknownStores: readonly string[];
|
|
55
|
+
/** Digest of relevant source and target row material; detects changes without exposing it. */
|
|
56
|
+
storageFingerprint?: string;
|
|
57
|
+
}
|
|
58
|
+
export interface ProjectIdentityPreview extends ProjectIdentityPlanMaterial {
|
|
59
|
+
dryRun: true;
|
|
60
|
+
planHash: string;
|
|
61
|
+
}
|
|
62
|
+
export interface ProjectIdentityApplyResult {
|
|
63
|
+
mode: ProjectIdentityMode;
|
|
64
|
+
dryRun: false;
|
|
65
|
+
operationId: string;
|
|
66
|
+
sourceProjectId: string;
|
|
67
|
+
targetProjectId: string;
|
|
68
|
+
sourceCanonicalRoot: string;
|
|
69
|
+
targetCanonicalRoot: string;
|
|
70
|
+
planHash: string;
|
|
71
|
+
stores: readonly ProjectIdentityStoreCount[];
|
|
72
|
+
committedAt: string;
|
|
73
|
+
/**
|
|
74
|
+
* Sanitized post-commit invalidation report. OPTIONAL so existing snapshot
|
|
75
|
+
* tests (which do not exercise the invalidator) stay byte-identical; the
|
|
76
|
+
* planner hash is computed over ProjectIdentityPlanMaterial, not the result,
|
|
77
|
+
* so plan hashes are unaffected by this field. When present, failures here
|
|
78
|
+
* MUST NEVER change the committed success status (spec req 8).
|
|
79
|
+
*/
|
|
80
|
+
invalidation?: ProjectIdentityInvalidationReport;
|
|
81
|
+
}
|
|
82
|
+
export interface ProjectIdentityService {
|
|
83
|
+
preview(request: ProjectIdentityPreviewInput): Promise<ProjectIdentityPreview>;
|
|
84
|
+
apply(request: ProjectIdentityApplyInput): Promise<ProjectIdentityApplyResult>;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Query client that also owns a transaction lifecycle. Apply receives one of
|
|
88
|
+
* these inside `withIdentityTransaction`; the body must COMMIT or ROLLBACK via
|
|
89
|
+
* the client. Kept as an interface so tests can substitute a transaction-aware
|
|
90
|
+
* fake without a real PostgreSQL connection.
|
|
91
|
+
*/
|
|
92
|
+
export interface ProjectIdentityTransactionClient {
|
|
93
|
+
query<Row = Record<string, unknown>>(text: string, values?: readonly unknown[]): Promise<{
|
|
94
|
+
rows: Row[];
|
|
95
|
+
}>;
|
|
96
|
+
/** SELECT setval('BEGIN') semantics — begin is implicit on the pooled client. */
|
|
97
|
+
beginTransaction(): Promise<void>;
|
|
98
|
+
commitTransaction(): Promise<void>;
|
|
99
|
+
rollbackTransaction(): Promise<void>;
|
|
100
|
+
}
|
|
101
|
+
export declare function parseProjectIdentityPreviewRequest(input: unknown): ProjectIdentityPreviewRequest;
|
|
102
|
+
export declare function parseProjectIdentityApplyRequest(input: unknown): ProjectIdentityApplyRequest;
|
|
103
|
+
//# sourceMappingURL=contracts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../src/services/project-identity/contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { ProjectIdentityError } from "./errors.js";
|
|
3
|
+
export const PROJECT_IDENTITY_PLAN_VERSION = 1;
|
|
4
|
+
export const PROJECT_IDENTITY_MAX_PROJECT_ID_LENGTH = 255;
|
|
5
|
+
const ProjectIdSchema = z.string()
|
|
6
|
+
.trim()
|
|
7
|
+
.min(1)
|
|
8
|
+
.max(PROJECT_IDENTITY_MAX_PROJECT_ID_LENGTH)
|
|
9
|
+
.refine((value) => !value.includes("\0"), "Project IDs cannot contain NUL bytes");
|
|
10
|
+
const OperationIdSchema = z.string()
|
|
11
|
+
.trim()
|
|
12
|
+
.min(1)
|
|
13
|
+
.max(255)
|
|
14
|
+
.regex(/^[A-Za-z0-9][A-Za-z0-9._:-]*$/);
|
|
15
|
+
const PlanHashSchema = z.string().regex(/^[a-f0-9]{64}$/);
|
|
16
|
+
export const ProjectIdentityModeSchema = z.enum(["rename", "merge"]);
|
|
17
|
+
const BaseRequestShape = {
|
|
18
|
+
mode: ProjectIdentityModeSchema,
|
|
19
|
+
sourceProjectId: ProjectIdSchema,
|
|
20
|
+
targetProjectId: ProjectIdSchema,
|
|
21
|
+
};
|
|
22
|
+
export const ProjectIdentityPreviewRequestSchema = z.object({
|
|
23
|
+
...BaseRequestShape,
|
|
24
|
+
dryRun: z.literal(true).default(true),
|
|
25
|
+
}).strict().superRefine((request, context) => {
|
|
26
|
+
if (request.sourceProjectId === request.targetProjectId) {
|
|
27
|
+
context.addIssue({
|
|
28
|
+
code: "custom",
|
|
29
|
+
path: ["targetProjectId"],
|
|
30
|
+
message: "Source and target project IDs must differ",
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
export const ProjectIdentityApplyRequestSchema = z.object({
|
|
35
|
+
...BaseRequestShape,
|
|
36
|
+
dryRun: z.literal(false),
|
|
37
|
+
operationId: OperationIdSchema,
|
|
38
|
+
expectedPlanHash: PlanHashSchema,
|
|
39
|
+
}).strict().superRefine((request, context) => {
|
|
40
|
+
if (request.sourceProjectId === request.targetProjectId) {
|
|
41
|
+
context.addIssue({
|
|
42
|
+
code: "custom",
|
|
43
|
+
path: ["targetProjectId"],
|
|
44
|
+
message: "Source and target project IDs must differ",
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
function parseRequest(schema, input) {
|
|
49
|
+
const parsed = schema.safeParse(input);
|
|
50
|
+
if (!parsed.success) {
|
|
51
|
+
throw new ProjectIdentityError("INVALID_PROJECT_IDENTITY_REQUEST", {
|
|
52
|
+
cause: parsed.error,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
return parsed.data;
|
|
56
|
+
}
|
|
57
|
+
export function parseProjectIdentityPreviewRequest(input) {
|
|
58
|
+
return parseRequest(ProjectIdentityPreviewRequestSchema, input);
|
|
59
|
+
}
|
|
60
|
+
export function parseProjectIdentityApplyRequest(input) {
|
|
61
|
+
return parseRequest(ProjectIdentityApplyRequestSchema, input);
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=contracts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../src/services/project-identity/contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { PROJECT_IDENTITY_REGISTRY_VERSION, type IdentityColumn, type PayloadStorePolicy } from "./registry.js";
|
|
2
|
+
export interface ProjectIdentityQueryResult<Row = Record<string, unknown>> {
|
|
3
|
+
rows: Row[];
|
|
4
|
+
}
|
|
5
|
+
export interface ProjectIdentityQueryClient {
|
|
6
|
+
query<Row = Record<string, unknown>>(text: string, values?: readonly unknown[]): Promise<ProjectIdentityQueryResult<Row>>;
|
|
7
|
+
}
|
|
8
|
+
export interface DiscoveredDirectStore {
|
|
9
|
+
storeId: string;
|
|
10
|
+
identityColumn: IdentityColumn;
|
|
11
|
+
mutable: boolean;
|
|
12
|
+
primaryKey: readonly string[];
|
|
13
|
+
/**
|
|
14
|
+
* Safe (non-heavy) columns to fingerprint and compare as row material.
|
|
15
|
+
* Excludes the identity column and heavy types (bytea/vector) so previews
|
|
16
|
+
* never ship embeddings or large binary payloads to the planner.
|
|
17
|
+
*/
|
|
18
|
+
materialColumns: readonly string[];
|
|
19
|
+
}
|
|
20
|
+
export interface DiscoveredPayloadStore extends PayloadStorePolicy {
|
|
21
|
+
/** True when the table carries its own project_id column, so payload scans
|
|
22
|
+
* can be scoped to the source/target rows instead of the whole table. */
|
|
23
|
+
readonly hasProjectIdentityColumn: boolean;
|
|
24
|
+
}
|
|
25
|
+
export interface ProjectIdentityInventory {
|
|
26
|
+
registryVersion: typeof PROJECT_IDENTITY_REGISTRY_VERSION;
|
|
27
|
+
directStores: readonly DiscoveredDirectStore[];
|
|
28
|
+
payloadStores: readonly DiscoveredPayloadStore[];
|
|
29
|
+
unknownStores: readonly string[];
|
|
30
|
+
}
|
|
31
|
+
export declare function quoteDiscoveredIdentifier(identifier: string): string;
|
|
32
|
+
export declare function discoverProjectIdentityStorage(client: ProjectIdentityQueryClient, schema?: string): Promise<ProjectIdentityInventory>;
|
|
33
|
+
export declare function inspectIdentityPayload(raw: unknown, encoding: PayloadStorePolicy["encoding"], projectId: string): {
|
|
34
|
+
count: number;
|
|
35
|
+
malformed: boolean;
|
|
36
|
+
canonical: string;
|
|
37
|
+
};
|
|
38
|
+
export declare function fingerprintProjectIdentityRows(rows: readonly unknown[]): string;
|
|
39
|
+
//# sourceMappingURL=discovery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../src/services/project-identity/discovery.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,iCAAiC,EAIjC,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACxB,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,0BAA0B,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACvE,IAAI,EAAE,GAAG,EAAE,CAAC;CACb;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,GAC1B,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAC;CAC7C;AAaD,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,cAAc,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B;;;;OAIG;IACH,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,sBAAuB,SAAQ,kBAAkB;IAChE;8EAC0E;IAC1E,QAAQ,CAAC,wBAAwB,EAAE,OAAO,CAAC;CAC5C;AAED,MAAM,WAAW,wBAAwB;IACvC,eAAe,EAAE,OAAO,iCAAiC,CAAC;IAC1D,YAAY,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAC/C,aAAa,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACjD,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;CAClC;AAOD,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAGpE;AAoBD,wBAAsB,8BAA8B,CAClD,MAAM,EAAE,0BAA0B,EAClC,MAAM,SAAW,GAChB,OAAO,CAAC,wBAAwB,CAAC,CAgEnC;AAiBD,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,EACxC,SAAS,EAAE,MAAM,GAChB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAyB1D;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,SAAS,OAAO,EAAE,GAAG,MAAM,CAO/E"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { canonicalProjectIdentityJson } from "./hash.js";
|
|
3
|
+
import { parsePgArrayLiteral } from "./pg-array-codec.js";
|
|
4
|
+
import { PROJECT_IDENTITY_REGISTRY_VERSION, directStorePolicy, isKnownRegistryTable, payloadStorePolicies, } from "./registry.js";
|
|
5
|
+
const IDENTITY_COLUMNS = new Set(["project_id", "workspace_id"]);
|
|
6
|
+
const SAFE_IDENTIFIER = /^[a-z_][a-z0-9_]*$/;
|
|
7
|
+
/** information_schema.data_type values that hold large/derived payloads we never ship to the planner. */
|
|
8
|
+
const HEAVY_DATA_TYPES = new Set(["bytea", "USER-DEFINED"]);
|
|
9
|
+
export function quoteDiscoveredIdentifier(identifier) {
|
|
10
|
+
if (!SAFE_IDENTIFIER.test(identifier))
|
|
11
|
+
throw new TypeError("Unsafe discovered SQL identifier");
|
|
12
|
+
return `"${identifier}"`;
|
|
13
|
+
}
|
|
14
|
+
function compareText(left, right) {
|
|
15
|
+
return left < right ? -1 : left > right ? 1 : 0;
|
|
16
|
+
}
|
|
17
|
+
/** Columns safe to load as row material: excludes the identity column and heavy binary/vector types. */
|
|
18
|
+
function materialColumnsFor(columns, identityColumn) {
|
|
19
|
+
const result = [];
|
|
20
|
+
for (const [column, dataType] of columns) {
|
|
21
|
+
if (column === identityColumn)
|
|
22
|
+
continue;
|
|
23
|
+
if (HEAVY_DATA_TYPES.has(dataType))
|
|
24
|
+
continue;
|
|
25
|
+
result.push(column);
|
|
26
|
+
}
|
|
27
|
+
return result.sort(compareText);
|
|
28
|
+
}
|
|
29
|
+
export async function discoverProjectIdentityStorage(client, schema = "public") {
|
|
30
|
+
const columnsResult = await client.query(`SELECT table_name, column_name, data_type
|
|
31
|
+
FROM information_schema.columns
|
|
32
|
+
WHERE table_schema = $1
|
|
33
|
+
ORDER BY table_name, ordinal_position`, [schema]);
|
|
34
|
+
const primaryKeysResult = await client.query(`SELECT tc.table_name, array_agg(kcu.column_name ORDER BY kcu.ordinal_position) AS columns
|
|
35
|
+
FROM information_schema.table_constraints tc
|
|
36
|
+
JOIN information_schema.key_column_usage kcu
|
|
37
|
+
ON kcu.constraint_schema = tc.constraint_schema
|
|
38
|
+
AND kcu.constraint_name = tc.constraint_name
|
|
39
|
+
AND kcu.table_name = tc.table_name
|
|
40
|
+
WHERE tc.table_schema = $1 AND tc.constraint_type = 'PRIMARY KEY'
|
|
41
|
+
GROUP BY tc.table_name
|
|
42
|
+
ORDER BY tc.table_name`, [schema]);
|
|
43
|
+
const columnsByTable = new Map();
|
|
44
|
+
for (const row of columnsResult.rows) {
|
|
45
|
+
if (!SAFE_IDENTIFIER.test(row.table_name) || !SAFE_IDENTIFIER.test(row.column_name))
|
|
46
|
+
continue;
|
|
47
|
+
const columns = columnsByTable.get(row.table_name) ?? new Map();
|
|
48
|
+
if (!columns.has(row.column_name))
|
|
49
|
+
columns.set(row.column_name, row.data_type);
|
|
50
|
+
columnsByTable.set(row.table_name, columns);
|
|
51
|
+
}
|
|
52
|
+
const primaryKeys = new Map(primaryKeysResult.rows.map((row) => [
|
|
53
|
+
row.table_name,
|
|
54
|
+
Array.isArray(row.columns) ? row.columns : String(row.columns).replace(/^\{|\}$/g, "").split(",").filter(Boolean),
|
|
55
|
+
]));
|
|
56
|
+
const directStores = [];
|
|
57
|
+
const payloadStores = [];
|
|
58
|
+
const unknown = new Set();
|
|
59
|
+
for (const [tableName, columns] of columnsByTable) {
|
|
60
|
+
for (const [column, dataType] of columns) {
|
|
61
|
+
if (!IDENTITY_COLUMNS.has(column))
|
|
62
|
+
continue;
|
|
63
|
+
const policy = directStorePolicy(tableName, column);
|
|
64
|
+
if (!policy)
|
|
65
|
+
unknown.add(`${tableName}.${column}`);
|
|
66
|
+
else
|
|
67
|
+
directStores.push({
|
|
68
|
+
...policy,
|
|
69
|
+
primaryKey: primaryKeys.get(tableName) ?? [],
|
|
70
|
+
materialColumns: materialColumnsFor(columns, column),
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
for (const policy of payloadStorePolicies(tableName)) {
|
|
74
|
+
if (columns.has(policy.column)) {
|
|
75
|
+
payloadStores.push({ ...policy, hasProjectIdentityColumn: columns.has("project_id") });
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
if (/project|workspace/.test(tableName) && !isKnownRegistryTable(tableName)) {
|
|
79
|
+
unknown.add(tableName);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return {
|
|
83
|
+
registryVersion: PROJECT_IDENTITY_REGISTRY_VERSION,
|
|
84
|
+
directStores: directStores.sort((a, b) => compareText(a.storeId, b.storeId)),
|
|
85
|
+
payloadStores: payloadStores.sort((a, b) => compareText(a.storeId, b.storeId) || compareText(a.column, b.column)),
|
|
86
|
+
unknownStores: [...unknown].sort(compareText),
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
const IDENTITY_KEYS = new Set(["projectId", "project_id", "workspaceId", "workspace_id"]);
|
|
90
|
+
function countIdentityReferences(value, projectId) {
|
|
91
|
+
if (Array.isArray(value)) {
|
|
92
|
+
return value.reduce((total, item) => total + countIdentityReferences(item, projectId), 0);
|
|
93
|
+
}
|
|
94
|
+
if (!value || typeof value !== "object")
|
|
95
|
+
return 0;
|
|
96
|
+
let count = 0;
|
|
97
|
+
for (const [key, item] of Object.entries(value)) {
|
|
98
|
+
if (IDENTITY_KEYS.has(key) && item === projectId)
|
|
99
|
+
count++;
|
|
100
|
+
count += countIdentityReferences(item, projectId);
|
|
101
|
+
}
|
|
102
|
+
return count;
|
|
103
|
+
}
|
|
104
|
+
export function inspectIdentityPayload(raw, encoding, projectId) {
|
|
105
|
+
try {
|
|
106
|
+
if (encoding === "text-array") {
|
|
107
|
+
// TEXT columns arrive as PG array literals (`{a,b}`); native text[]
|
|
108
|
+
// columns arrive as JS arrays. Both are valid (see pg-array-codec).
|
|
109
|
+
const parsed = parsePgArrayLiteral(raw);
|
|
110
|
+
if (parsed === undefined) {
|
|
111
|
+
return { count: 0, malformed: raw != null, canonical: "" };
|
|
112
|
+
}
|
|
113
|
+
const count = parsed.filter((item) => item === `handoff:${projectId}` || item === `project:${projectId}` || item === projectId).length;
|
|
114
|
+
return { count, malformed: false, canonical: canonicalProjectIdentityJson(parsed) };
|
|
115
|
+
}
|
|
116
|
+
const value = encoding === "json-text" && typeof raw === "string" ? JSON.parse(raw) : raw;
|
|
117
|
+
if (value == null)
|
|
118
|
+
return { count: 0, malformed: false, canonical: "null" };
|
|
119
|
+
if (typeof value !== "object")
|
|
120
|
+
return { count: 0, malformed: true, canonical: "" };
|
|
121
|
+
return {
|
|
122
|
+
count: countIdentityReferences(value, projectId),
|
|
123
|
+
malformed: false,
|
|
124
|
+
canonical: canonicalProjectIdentityJson(value),
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
catch {
|
|
128
|
+
return { count: 0, malformed: true, canonical: "" };
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
export function fingerprintProjectIdentityRows(rows) {
|
|
132
|
+
const hash = createHash("sha256");
|
|
133
|
+
hash.update(`project-identity-registry:v${PROJECT_IDENTITY_REGISTRY_VERSION}\n`);
|
|
134
|
+
for (const row of [...rows].map((item) => canonicalProjectIdentityJson(item)).sort(compareText)) {
|
|
135
|
+
hash.update(row).update("\n");
|
|
136
|
+
}
|
|
137
|
+
return hash.digest("hex");
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=discovery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../../src/services/project-identity/discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type ProjectIdentityErrorCode = "INVALID_PROJECT_IDENTITY_REQUEST" | "PROJECT_IDENTITY_BACKEND_UNAVAILABLE" | "PROJECT_IDENTITY_SOURCE_NOT_FOUND" | "PROJECT_IDENTITY_SOURCE_RETIRED" | "PROJECT_IDENTITY_TARGET_EXISTS" | "PROJECT_IDENTITY_TARGET_NOT_FOUND" | "PROJECT_IDENTITY_TARGET_RETIRED" | "PROJECT_IDENTITY_ROOT_MISMATCH" | "PROJECT_IDENTITY_CONFLICT" | "PROJECT_IDENTITY_UNKNOWN_STORAGE" | "PROJECT_IDENTITY_PLAN_CHANGED" | "PROJECT_IDENTITY_OPERATION_REUSED";
|
|
2
|
+
/** Sanitized public error shared by Core, HTTP, and MCP transports. */
|
|
3
|
+
export declare class ProjectIdentityError extends Error {
|
|
4
|
+
readonly code: ProjectIdentityErrorCode;
|
|
5
|
+
readonly statusCode: number;
|
|
6
|
+
constructor(code: ProjectIdentityErrorCode, options?: {
|
|
7
|
+
cause?: unknown;
|
|
8
|
+
statusCode?: number;
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/services/project-identity/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,wBAAwB,GAChC,kCAAkC,GAClC,sCAAsC,GACtC,mCAAmC,GACnC,iCAAiC,GACjC,gCAAgC,GAChC,mCAAmC,GACnC,iCAAiC,GACjC,gCAAgC,GAChC,2BAA2B,GAC3B,kCAAkC,GAClC,+BAA+B,GAC/B,mCAAmC,CAAC;AAgCxC,uEAAuE;AACvE,qBAAa,oBAAqB,SAAQ,KAAK;IAI3C,QAAQ,CAAC,IAAI,EAAE,wBAAwB;IAHzC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAGjB,IAAI,EAAE,wBAAwB,EACvC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;CASrD"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
const ERROR_MESSAGES = {
|
|
2
|
+
INVALID_PROJECT_IDENTITY_REQUEST: "The project identity request is invalid",
|
|
3
|
+
PROJECT_IDENTITY_BACKEND_UNAVAILABLE: "The project identity backend is unavailable",
|
|
4
|
+
PROJECT_IDENTITY_SOURCE_NOT_FOUND: "The source project does not exist",
|
|
5
|
+
PROJECT_IDENTITY_SOURCE_RETIRED: "The source project ID is retired",
|
|
6
|
+
PROJECT_IDENTITY_TARGET_EXISTS: "The target project already exists",
|
|
7
|
+
PROJECT_IDENTITY_TARGET_NOT_FOUND: "The target project does not exist",
|
|
8
|
+
PROJECT_IDENTITY_TARGET_RETIRED: "The target project ID is retired",
|
|
9
|
+
PROJECT_IDENTITY_ROOT_MISMATCH: "The projects do not have the same canonical root",
|
|
10
|
+
PROJECT_IDENTITY_CONFLICT: "The project identities contain conflicting records",
|
|
11
|
+
PROJECT_IDENTITY_UNKNOWN_STORAGE: "Unclassified project-scoped storage was found",
|
|
12
|
+
PROJECT_IDENTITY_PLAN_CHANGED: "The project identity preview has changed",
|
|
13
|
+
PROJECT_IDENTITY_OPERATION_REUSED: "The operation ID was already used for another request",
|
|
14
|
+
};
|
|
15
|
+
const ERROR_STATUS = {
|
|
16
|
+
INVALID_PROJECT_IDENTITY_REQUEST: 400,
|
|
17
|
+
PROJECT_IDENTITY_BACKEND_UNAVAILABLE: 503,
|
|
18
|
+
PROJECT_IDENTITY_SOURCE_NOT_FOUND: 404,
|
|
19
|
+
PROJECT_IDENTITY_SOURCE_RETIRED: 409,
|
|
20
|
+
PROJECT_IDENTITY_TARGET_EXISTS: 409,
|
|
21
|
+
PROJECT_IDENTITY_TARGET_NOT_FOUND: 404,
|
|
22
|
+
PROJECT_IDENTITY_TARGET_RETIRED: 409,
|
|
23
|
+
PROJECT_IDENTITY_ROOT_MISMATCH: 409,
|
|
24
|
+
PROJECT_IDENTITY_CONFLICT: 409,
|
|
25
|
+
PROJECT_IDENTITY_UNKNOWN_STORAGE: 409,
|
|
26
|
+
PROJECT_IDENTITY_PLAN_CHANGED: 409,
|
|
27
|
+
PROJECT_IDENTITY_OPERATION_REUSED: 409,
|
|
28
|
+
};
|
|
29
|
+
/** Sanitized public error shared by Core, HTTP, and MCP transports. */
|
|
30
|
+
export class ProjectIdentityError extends Error {
|
|
31
|
+
code;
|
|
32
|
+
statusCode;
|
|
33
|
+
constructor(code, options) {
|
|
34
|
+
super(ERROR_MESSAGES[code], options?.cause === undefined ? undefined : { cause: options.cause });
|
|
35
|
+
this.code = code;
|
|
36
|
+
this.name = "ProjectIdentityError";
|
|
37
|
+
this.statusCode = options?.statusCode ?? ERROR_STATUS[code];
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/services/project-identity/errors.ts"],"names":[],"mappings":"AAcA,MAAM,cAAc,GAA6C;IAC/D,gCAAgC,EAAE,yCAAyC;IAC3E,oCAAoC,EAAE,6CAA6C;IACnF,iCAAiC,EAAE,mCAAmC;IACtE,+BAA+B,EAAE,kCAAkC;IACnE,8BAA8B,EAAE,mCAAmC;IACnE,iCAAiC,EAAE,mCAAmC;IACtE,+BAA+B,EAAE,kCAAkC;IACnE,8BAA8B,EAAE,kDAAkD;IAClF,yBAAyB,EAAE,oDAAoD;IAC/E,gCAAgC,EAAE,+CAA+C;IACjF,6BAA6B,EAAE,0CAA0C;IACzE,iCAAiC,EAAE,uDAAuD;CAC3F,CAAC;AAEF,MAAM,YAAY,GAA6C;IAC7D,gCAAgC,EAAE,GAAG;IACrC,oCAAoC,EAAE,GAAG;IACzC,iCAAiC,EAAE,GAAG;IACtC,+BAA+B,EAAE,GAAG;IACpC,8BAA8B,EAAE,GAAG;IACnC,iCAAiC,EAAE,GAAG;IACtC,+BAA+B,EAAE,GAAG;IACpC,8BAA8B,EAAE,GAAG;IACnC,yBAAyB,EAAE,GAAG;IAC9B,gCAAgC,EAAE,GAAG;IACrC,6BAA6B,EAAE,GAAG;IAClC,iCAAiC,EAAE,GAAG;CACvC,CAAC;AAEF,uEAAuE;AACvE,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAIlC;IAHF,UAAU,CAAS;IAE5B,YACW,IAA8B,EACvC,OAAkD;QAElD,KAAK,CACH,cAAc,CAAC,IAAI,CAAC,EACpB,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CACpE,CAAC;QANO,SAAI,GAAJ,IAAI,CAA0B;QAOvC,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;CACF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ProjectIdentityMode, ProjectIdentityPlanMaterial } from "./contracts.js";
|
|
2
|
+
/**
|
|
3
|
+
* Stable digest of an APPLY request's identity material. Used by the operation
|
|
4
|
+
* table to detect operationId reuse with different request material. Excludes
|
|
5
|
+
* every preview-derived field (expectedPlanHash) so a stale preview hash does
|
|
6
|
+
* not change the request identity.
|
|
7
|
+
*/
|
|
8
|
+
export declare function hashProjectIdentityRequest(material: {
|
|
9
|
+
mode: ProjectIdentityMode;
|
|
10
|
+
sourceProjectId: string;
|
|
11
|
+
targetProjectId: string;
|
|
12
|
+
operationId: string;
|
|
13
|
+
}): string;
|
|
14
|
+
export declare function canonicalProjectIdentityJson(value: unknown): string;
|
|
15
|
+
export declare function hashProjectIdentityPlan(plan: ProjectIdentityPlanMaterial): string;
|
|
16
|
+
//# sourceMappingURL=hash.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../../src/services/project-identity/hash.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAEvF;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE;IACnD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG,MAAM,CAUT;AAqDD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEnE;AAMD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,2BAA2B,GAAG,MAAM,CAiBjF"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
/**
|
|
3
|
+
* Stable digest of an APPLY request's identity material. Used by the operation
|
|
4
|
+
* table to detect operationId reuse with different request material. Excludes
|
|
5
|
+
* every preview-derived field (expectedPlanHash) so a stale preview hash does
|
|
6
|
+
* not change the request identity.
|
|
7
|
+
*/
|
|
8
|
+
export function hashProjectIdentityRequest(material) {
|
|
9
|
+
return createHash("sha256")
|
|
10
|
+
.update("project-identity-request:v1\n", "utf8")
|
|
11
|
+
.update(canonicalProjectIdentityJson({
|
|
12
|
+
mode: material.mode,
|
|
13
|
+
source: material.sourceProjectId,
|
|
14
|
+
target: material.targetProjectId,
|
|
15
|
+
operationId: material.operationId,
|
|
16
|
+
}), "utf8")
|
|
17
|
+
.digest("hex");
|
|
18
|
+
}
|
|
19
|
+
function canonicalize(value, seen) {
|
|
20
|
+
if (value === null || typeof value === "string" || typeof value === "boolean") {
|
|
21
|
+
return value;
|
|
22
|
+
}
|
|
23
|
+
if (typeof value === "number") {
|
|
24
|
+
if (!Number.isFinite(value))
|
|
25
|
+
throw new TypeError("Canonical JSON requires finite numbers");
|
|
26
|
+
return Object.is(value, -0) ? 0 : value;
|
|
27
|
+
}
|
|
28
|
+
if (typeof value === "bigint") {
|
|
29
|
+
// pg int8 (with bigint parsers) — tagged so it can never collide with a
|
|
30
|
+
// text column holding the same digits.
|
|
31
|
+
return `bigint:${value.toString()}`;
|
|
32
|
+
}
|
|
33
|
+
if (value instanceof Date) {
|
|
34
|
+
// pg timestamp/timestamptz driver values. Tagged canonical instant.
|
|
35
|
+
return `date:${value.toISOString()}`;
|
|
36
|
+
}
|
|
37
|
+
if (Buffer.isBuffer(value) || value instanceof Uint8Array) {
|
|
38
|
+
// pg bytea driver values. Tagged base64.
|
|
39
|
+
return `bytes:${Buffer.from(value).toString("base64")}`;
|
|
40
|
+
}
|
|
41
|
+
if (Array.isArray(value)) {
|
|
42
|
+
if (seen.has(value))
|
|
43
|
+
throw new TypeError("Canonical JSON cannot contain cycles");
|
|
44
|
+
seen.add(value);
|
|
45
|
+
const result = value.map((item) => canonicalize(item, seen));
|
|
46
|
+
seen.delete(value);
|
|
47
|
+
return result;
|
|
48
|
+
}
|
|
49
|
+
if (typeof value === "object") {
|
|
50
|
+
if (seen.has(value))
|
|
51
|
+
throw new TypeError("Canonical JSON cannot contain cycles");
|
|
52
|
+
const prototype = Object.getPrototypeOf(value);
|
|
53
|
+
if (prototype !== Object.prototype && prototype !== null) {
|
|
54
|
+
throw new TypeError("Canonical JSON requires plain objects");
|
|
55
|
+
}
|
|
56
|
+
seen.add(value);
|
|
57
|
+
const result = {};
|
|
58
|
+
for (const key of Object.keys(value).sort()) {
|
|
59
|
+
const item = value[key];
|
|
60
|
+
if (item === undefined)
|
|
61
|
+
throw new TypeError("Canonical JSON cannot contain undefined");
|
|
62
|
+
result[key] = canonicalize(item, seen);
|
|
63
|
+
}
|
|
64
|
+
seen.delete(value);
|
|
65
|
+
return result;
|
|
66
|
+
}
|
|
67
|
+
throw new TypeError(`Canonical JSON does not support ${typeof value}`);
|
|
68
|
+
}
|
|
69
|
+
export function canonicalProjectIdentityJson(value) {
|
|
70
|
+
return JSON.stringify(canonicalize(value, new Set()));
|
|
71
|
+
}
|
|
72
|
+
function compareText(left, right) {
|
|
73
|
+
return left < right ? -1 : left > right ? 1 : 0;
|
|
74
|
+
}
|
|
75
|
+
export function hashProjectIdentityPlan(plan) {
|
|
76
|
+
const normalized = {
|
|
77
|
+
...plan,
|
|
78
|
+
stores: [...plan.stores].sort((left, right) => compareText(left.storeId, right.storeId) ||
|
|
79
|
+
left.directCount - right.directCount ||
|
|
80
|
+
left.adaptedCount - right.adaptedCount),
|
|
81
|
+
conflicts: [...plan.conflicts].sort((left, right) => compareText(left.storeId, right.storeId) ||
|
|
82
|
+
compareText(left.kind, right.kind) ||
|
|
83
|
+
left.count - right.count),
|
|
84
|
+
unknownStores: [...plan.unknownStores].sort(compareText),
|
|
85
|
+
};
|
|
86
|
+
return createHash("sha256")
|
|
87
|
+
.update(`project-identity-plan:v${plan.planVersion}\n`, "utf8")
|
|
88
|
+
.update(canonicalProjectIdentityJson(normalized), "utf8")
|
|
89
|
+
.digest("hex");
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=hash.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hash.js","sourceRoot":"","sources":["../../../src/services/project-identity/hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIzC;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CAAC,QAK1C;IACC,OAAO,UAAU,CAAC,QAAQ,CAAC;SACxB,MAAM,CAAC,+BAA+B,EAAE,MAAM,CAAC;SAC/C,MAAM,CAAC,4BAA4B,CAAC;QACnC,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,MAAM,EAAE,QAAQ,CAAC,eAAe;QAChC,MAAM,EAAE,QAAQ,CAAC,eAAe;QAChC,WAAW,EAAE,QAAQ,CAAC,WAAW;KAClC,CAAC,EAAE,MAAM,CAAC;SACV,MAAM,CAAC,KAAK,CAAC,CAAC;AACnB,CAAC;AAMD,SAAS,YAAY,CAAC,KAAc,EAAE,IAAiB;IACrD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,wCAAwC,CAAC,CAAC;QAC3F,OAAO,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1C,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,wEAAwE;QACxE,uCAAuC;QACvC,OAAO,UAAU,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;IACtC,CAAC;IACD,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC1B,oEAAoE;QACpE,OAAO,QAAQ,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;IACvC,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAC1D,yCAAyC;QACzC,OAAO,SAAS,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC1D,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACjF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChB,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACjF,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,SAAS,KAAK,MAAM,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACzD,MAAM,IAAI,SAAS,CAAC,uCAAuC,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChB,MAAM,MAAM,GAAkC,EAAE,CAAC;QACjD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,GAAI,KAAiC,CAAC,GAAG,CAAC,CAAC;YACrD,IAAI,IAAI,KAAK,SAAS;gBAAE,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAC;YACvF,MAAM,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,IAAI,SAAS,CAAC,mCAAmC,OAAO,KAAK,EAAE,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,KAAc;IACzD,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,WAAW,CAAC,IAAY,EAAE,KAAa;IAC9C,OAAO,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,IAAiC;IACvE,MAAM,UAAU,GAAgC;QAC9C,GAAG,IAAI;QACP,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAC5C,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACxC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW;YACpC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;QACzC,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAClD,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACxC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;YAClC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC3B,aAAa,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;KACzD,CAAC;IACF,OAAO,UAAU,CAAC,QAAQ,CAAC;SACxB,MAAM,CAAC,0BAA0B,IAAI,CAAC,WAAW,IAAI,EAAE,MAAM,CAAC;SAC9D,MAAM,CAAC,4BAA4B,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;SACxD,MAAM,CAAC,KAAK,CAAC,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal query surface the installer needs. Production wires this to a pg
|
|
3
|
+
* `PoolClient` (`pool.connect()`); in-process tests substitute a fake.
|
|
4
|
+
*/
|
|
5
|
+
export interface IdentityGuardInstallerClient {
|
|
6
|
+
query<Row = Record<string, unknown>>(text: string, values?: readonly unknown[]): Promise<{
|
|
7
|
+
rows: Row[];
|
|
8
|
+
}>;
|
|
9
|
+
}
|
|
10
|
+
export interface ProjectIdentityGuardInstallReport {
|
|
11
|
+
/** Tables on which the guard trigger was (re)installed. */
|
|
12
|
+
readonly installed: readonly string[];
|
|
13
|
+
/** Inventoryed tables deliberately left unguarded (project_identity_operations
|
|
14
|
+
* has no project_id column; it is the operation authority itself). */
|
|
15
|
+
readonly skipped: readonly string[];
|
|
16
|
+
/** Runtime vector_documents* tables discovered via pg_tables and guarded. */
|
|
17
|
+
readonly runtimeTablesGuarded: readonly string[];
|
|
18
|
+
/** Per-table failures with SANITIZED codes (PG SQLSTATE only — no message, no row data). */
|
|
19
|
+
readonly failures: readonly {
|
|
20
|
+
table: string;
|
|
21
|
+
code: string;
|
|
22
|
+
}[];
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Install (or replace — the SQL fn is DROP IF EXISTS + CREATE) the project
|
|
26
|
+
* identity guard trigger on a single table.column. Idempotent and safe to call
|
|
27
|
+
* from runtime table-initialization sites (keyword/search/vector init).
|
|
28
|
+
*
|
|
29
|
+
* Returns the sanitized code on failure, or undefined on success. NEVER throws.
|
|
30
|
+
*/
|
|
31
|
+
export declare function installGuardOnTable(client: IdentityGuardInstallerClient, schema: string, table: string, column: string): Promise<string | undefined>;
|
|
32
|
+
/**
|
|
33
|
+
* Iterate the static direct-store registry plus runtime vector_documents* tables
|
|
34
|
+
* and install the project identity guard on every mutable identity column.
|
|
35
|
+
*
|
|
36
|
+
* The SQL function `project_identity_install_guard(target_table REGCLASS,
|
|
37
|
+
* column_name TEXT)` (T1) is idempotent: it DROPs any existing trigger and
|
|
38
|
+
* CREATEs a fresh BEFORE INSERT OR UPDATE OF column OR DELETE row-level trigger
|
|
39
|
+
* that resolves aliases on INSERT/UPDATE and takes a shared advisory lock on
|
|
40
|
+
* DELETE. So every guarded-table write is already safe — async writers need no
|
|
41
|
+
* draining.
|
|
42
|
+
*
|
|
43
|
+
* Failure isolation (spec req 8): a single install failure is recorded in
|
|
44
|
+
* `failures` with a SANITIZED code and NEVER aborts the loop or throws. Failure
|
|
45
|
+
* codes are PG SQLSTATE strings only (e.g. "42703"); error.message, row data,
|
|
46
|
+
* and SQL are never captured.
|
|
47
|
+
*/
|
|
48
|
+
export declare function installProjectIdentityGuards(client: IdentityGuardInstallerClient, schema?: string): Promise<ProjectIdentityGuardInstallReport>;
|
|
49
|
+
/**
|
|
50
|
+
* Production startup path: acquire the shared pg pool, install guards on the
|
|
51
|
+
* static catalog plus runtime vector tables, then release the client. Keeps
|
|
52
|
+
* the data layer inside core — transport apps call this instead of touching
|
|
53
|
+
* `pg` pools themselves.
|
|
54
|
+
*
|
|
55
|
+
* Throws ONLY on pool acquisition/connect failure (the caller warn-logs with
|
|
56
|
+
* a sanitized shape and continues startup). Per-table install failures are
|
|
57
|
+
* already captured inside the report with sanitized SQLSTATE codes.
|
|
58
|
+
*/
|
|
59
|
+
export declare function installProjectIdentityGuardsFromPool(schema?: string): Promise<ProjectIdentityGuardInstallReport>;
|
|
60
|
+
//# sourceMappingURL=identity-guard-installer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-guard-installer.d.ts","sourceRoot":"","sources":["../../../src/services/project-identity/identity-guard-installer.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,GAC1B,OAAO,CAAC;QAAE,IAAI,EAAE,GAAG,EAAE,CAAA;KAAE,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,iCAAiC;IAChD,2DAA2D;IAC3D,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC;2EACuE;IACvE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,6EAA6E;IAC7E,QAAQ,CAAC,oBAAoB,EAAE,SAAS,MAAM,EAAE,CAAC;IACjD,4FAA4F;IAC5F,QAAQ,CAAC,QAAQ,EAAE,SAAS;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC/D;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,4BAA4B,EACpC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAU7B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,4BAA4B,EACpC,MAAM,SAAW,GAChB,OAAO,CAAC,iCAAiC,CAAC,CAkD5C;AAED;;;;;;;;;GASG;AACH,wBAAsB,oCAAoC,CACxD,MAAM,SAAW,GAChB,OAAO,CAAC,iCAAiC,CAAC,CAQ5C"}
|