sdl-mcp 0.10.9 → 0.11.0
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/README.md +37 -31
- package/config/benchmark.ci.config.json +2 -2
- package/config/sdlmcp.config.example.json +30 -3
- package/config/sdlmcp.config.json +2 -0
- package/config/sdlmcp.config.schema.json +226 -7
- package/dist/.tsbuildinfo +1 -1
- package/dist/agent/context-engine.d.ts +6 -1
- package/dist/agent/context-engine.d.ts.map +1 -1
- package/dist/agent/context-engine.js +71 -9
- package/dist/agent/context-engine.js.map +1 -1
- package/dist/agent/executor.d.ts +13 -5
- package/dist/agent/executor.d.ts.map +1 -1
- package/dist/agent/executor.js +44 -18
- package/dist/agent/executor.js.map +1 -1
- package/dist/agent/wire-utils.d.ts +15 -0
- package/dist/agent/wire-utils.d.ts.map +1 -0
- package/dist/agent/wire-utils.js +31 -0
- package/dist/agent/wire-utils.js.map +1 -0
- package/dist/benchmark/packed-savings.d.ts +9 -0
- package/dist/benchmark/packed-savings.d.ts.map +1 -0
- package/dist/benchmark/packed-savings.js +74 -0
- package/dist/benchmark/packed-savings.js.map +1 -0
- package/dist/cli/commands/doctor.js +3 -1
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/index.d.ts +47 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +130 -83
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.d.ts +8 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +315 -8
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/serve.d.ts.map +1 -1
- package/dist/cli/commands/serve.js +90 -49
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/transport/http.d.ts +22 -0
- package/dist/cli/transport/http.d.ts.map +1 -1
- package/dist/cli/transport/http.js +291 -18
- package/dist/cli/transport/http.js.map +1 -1
- package/dist/code/enforce.d.ts +38 -0
- package/dist/code/enforce.d.ts.map +1 -0
- package/dist/code/enforce.js +141 -0
- package/dist/code/enforce.js.map +1 -0
- package/dist/code/index.d.ts +4 -2
- package/dist/code/index.d.ts.map +1 -1
- package/dist/code/index.js +2 -1
- package/dist/code/index.js.map +1 -1
- package/dist/code/skeleton.d.ts.map +1 -1
- package/dist/code/skeleton.js +41 -9
- package/dist/code/skeleton.js.map +1 -1
- package/dist/code/window-loader.d.ts +19 -0
- package/dist/code/window-loader.d.ts.map +1 -0
- package/dist/code/window-loader.js +80 -0
- package/dist/code/window-loader.js.map +1 -0
- package/dist/code-mode/action-catalog.d.ts +1 -1
- package/dist/code-mode/action-catalog.d.ts.map +1 -1
- package/dist/code-mode/action-catalog.js +196 -20
- package/dist/code-mode/action-catalog.js.map +1 -1
- package/dist/code-mode/etag-cache.d.ts.map +1 -1
- package/dist/code-mode/etag-cache.js +46 -7
- package/dist/code-mode/etag-cache.js.map +1 -1
- package/dist/code-mode/index.d.ts.map +1 -1
- package/dist/code-mode/index.js +48 -25
- package/dist/code-mode/index.js.map +1 -1
- package/dist/code-mode/ref-resolver.d.ts.map +1 -1
- package/dist/code-mode/ref-resolver.js +11 -2
- package/dist/code-mode/ref-resolver.js.map +1 -1
- package/dist/code-mode/workflow-executor.d.ts.map +1 -1
- package/dist/code-mode/workflow-executor.js +22 -2
- package/dist/code-mode/workflow-executor.js.map +1 -1
- package/dist/code-mode/workflow-parser.d.ts +9 -0
- package/dist/code-mode/workflow-parser.d.ts.map +1 -1
- package/dist/code-mode/workflow-parser.js +36 -5
- package/dist/code-mode/workflow-parser.js.map +1 -1
- package/dist/config/constants.d.ts +66 -3
- package/dist/config/constants.d.ts.map +1 -1
- package/dist/config/constants.js +66 -3
- package/dist/config/constants.js.map +1 -1
- package/dist/config/loadConfig.d.ts.map +1 -1
- package/dist/config/loadConfig.js +13 -2
- package/dist/config/loadConfig.js.map +1 -1
- package/dist/config/types.d.ts +125 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +200 -4
- package/dist/config/types.js.map +1 -1
- package/dist/db/extension-caps.d.ts +1 -0
- package/dist/db/extension-caps.d.ts.map +1 -1
- package/dist/db/extension-caps.js +2 -0
- package/dist/db/extension-caps.js.map +1 -1
- package/dist/db/initGraphDb.d.ts.map +1 -1
- package/dist/db/initGraphDb.js +3 -1
- package/dist/db/initGraphDb.js.map +1 -1
- package/dist/db/ladybug-algorithms.d.ts +9 -3
- package/dist/db/ladybug-algorithms.d.ts.map +1 -1
- package/dist/db/ladybug-algorithms.js +27 -11
- package/dist/db/ladybug-algorithms.js.map +1 -1
- package/dist/db/ladybug-clusters.d.ts +2 -3
- package/dist/db/ladybug-clusters.d.ts.map +1 -1
- package/dist/db/ladybug-clusters.js +29 -12
- package/dist/db/ladybug-clusters.js.map +1 -1
- package/dist/db/ladybug-core.d.ts +28 -1
- package/dist/db/ladybug-core.d.ts.map +1 -1
- package/dist/db/ladybug-core.js +179 -10
- package/dist/db/ladybug-core.js.map +1 -1
- package/dist/db/ladybug-edges.d.ts +9 -3
- package/dist/db/ladybug-edges.d.ts.map +1 -1
- package/dist/db/ladybug-edges.js +245 -28
- package/dist/db/ladybug-edges.js.map +1 -1
- package/dist/db/ladybug-embeddings.d.ts.map +1 -1
- package/dist/db/ladybug-embeddings.js +26 -2
- package/dist/db/ladybug-embeddings.js.map +1 -1
- package/dist/db/ladybug-file-summaries.d.ts +23 -0
- package/dist/db/ladybug-file-summaries.d.ts.map +1 -1
- package/dist/db/ladybug-file-summaries.js +154 -18
- package/dist/db/ladybug-file-summaries.js.map +1 -1
- package/dist/db/ladybug-metrics.d.ts +5 -7
- package/dist/db/ladybug-metrics.d.ts.map +1 -1
- package/dist/db/ladybug-metrics.js +43 -45
- package/dist/db/ladybug-metrics.js.map +1 -1
- package/dist/db/ladybug-processes.d.ts +2 -3
- package/dist/db/ladybug-processes.d.ts.map +1 -1
- package/dist/db/ladybug-processes.js +29 -14
- package/dist/db/ladybug-processes.js.map +1 -1
- package/dist/db/ladybug-repos.d.ts +22 -0
- package/dist/db/ladybug-repos.d.ts.map +1 -1
- package/dist/db/ladybug-repos.js +86 -7
- package/dist/db/ladybug-repos.js.map +1 -1
- package/dist/db/ladybug-schema.d.ts +7 -0
- package/dist/db/ladybug-schema.d.ts.map +1 -1
- package/dist/db/ladybug-schema.js +79 -39
- package/dist/db/ladybug-schema.js.map +1 -1
- package/dist/db/ladybug-scip.d.ts +21 -8
- package/dist/db/ladybug-scip.d.ts.map +1 -1
- package/dist/db/ladybug-scip.js +132 -36
- package/dist/db/ladybug-scip.js.map +1 -1
- package/dist/db/ladybug-symbol-embeddings.d.ts +32 -4
- package/dist/db/ladybug-symbol-embeddings.d.ts.map +1 -1
- package/dist/db/ladybug-symbol-embeddings.js +50 -22
- package/dist/db/ladybug-symbol-embeddings.js.map +1 -1
- package/dist/db/ladybug-symbols.d.ts +40 -1
- package/dist/db/ladybug-symbols.d.ts.map +1 -1
- package/dist/db/ladybug-symbols.js +411 -43
- package/dist/db/ladybug-symbols.js.map +1 -1
- package/dist/db/ladybug-usage.d.ts +4 -0
- package/dist/db/ladybug-usage.d.ts.map +1 -1
- package/dist/db/ladybug-usage.js +22 -2
- package/dist/db/ladybug-usage.js.map +1 -1
- package/dist/db/ladybug.d.ts +22 -3
- package/dist/db/ladybug.d.ts.map +1 -1
- package/dist/db/ladybug.js +169 -49
- package/dist/db/ladybug.js.map +1 -1
- package/dist/db/migration-runner.d.ts +8 -1
- package/dist/db/migration-runner.d.ts.map +1 -1
- package/dist/db/migration-runner.js +7 -1
- package/dist/db/migration-runner.js.map +1 -1
- package/dist/db/migrations/index.d.ts.map +1 -1
- package/dist/db/migrations/index.js +8 -0
- package/dist/db/migrations/index.js.map +1 -1
- package/dist/db/migrations/m005-add-memory-system.d.ts.map +1 -1
- package/dist/db/migrations/m005-add-memory-system.js +13 -11
- package/dist/db/migrations/m005-add-memory-system.js.map +1 -1
- package/dist/db/migrations/m006-add-usage-snapshot.d.ts.map +1 -1
- package/dist/db/migrations/m006-add-usage-snapshot.js +4 -8
- package/dist/db/migrations/m006-add-usage-snapshot.js.map +1 -1
- package/dist/db/migrations/m007-copy-embeddings-to-symbol.d.ts +7 -8
- package/dist/db/migrations/m007-copy-embeddings-to-symbol.d.ts.map +1 -1
- package/dist/db/migrations/m007-copy-embeddings-to-symbol.js +68 -71
- package/dist/db/migrations/m007-copy-embeddings-to-symbol.js.map +1 -1
- package/dist/db/migrations/m012-add-symbol-repo-id-for-algo-projections.d.ts.map +1 -1
- package/dist/db/migrations/m012-add-symbol-repo-id-for-algo-projections.js +1 -1
- package/dist/db/migrations/m012-add-symbol-repo-id-for-algo-projections.js.map +1 -1
- package/dist/db/migrations/m013-semantic-vector-array-storage.d.ts +3 -2
- package/dist/db/migrations/m013-semantic-vector-array-storage.d.ts.map +1 -1
- package/dist/db/migrations/m013-semantic-vector-array-storage.js +8 -6
- package/dist/db/migrations/m013-semantic-vector-array-storage.js.map +1 -1
- package/dist/db/migrations/m014-add-packed-stats.d.ts +18 -0
- package/dist/db/migrations/m014-add-packed-stats.d.ts.map +1 -0
- package/dist/db/migrations/m014-add-packed-stats.js +62 -0
- package/dist/db/migrations/m014-add-packed-stats.js.map +1 -0
- package/dist/db/migrations/m015-backfill-packed-stats.d.ts +22 -0
- package/dist/db/migrations/m015-backfill-packed-stats.d.ts.map +1 -0
- package/dist/db/migrations/m015-backfill-packed-stats.js +66 -0
- package/dist/db/migrations/m015-backfill-packed-stats.js.map +1 -0
- package/dist/db/migrations/m016-add-symbol-placeholder-status.d.ts +5 -0
- package/dist/db/migrations/m016-add-symbol-placeholder-status.d.ts.map +1 -0
- package/dist/db/migrations/m016-add-symbol-placeholder-status.js +66 -0
- package/dist/db/migrations/m016-add-symbol-placeholder-status.js.map +1 -0
- package/dist/db/migrations/m017-repair-dependency-placeholder-quality.d.ts +5 -0
- package/dist/db/migrations/m017-repair-dependency-placeholder-quality.d.ts.map +1 -0
- package/dist/db/migrations/m017-repair-dependency-placeholder-quality.js +12 -0
- package/dist/db/migrations/m017-repair-dependency-placeholder-quality.js.map +1 -0
- package/dist/db/symbol-placeholders.d.ts +16 -0
- package/dist/db/symbol-placeholders.d.ts.map +1 -0
- package/dist/db/symbol-placeholders.js +149 -0
- package/dist/db/symbol-placeholders.js.map +1 -0
- package/dist/db/write-session.d.ts +54 -0
- package/dist/db/write-session.d.ts.map +1 -0
- package/dist/db/write-session.js +195 -0
- package/dist/db/write-session.js.map +1 -0
- package/dist/domain/types.d.ts +1 -0
- package/dist/domain/types.d.ts.map +1 -1
- package/dist/gateway/compact-schema.d.ts.map +1 -1
- package/dist/gateway/compact-schema.js +3 -1
- package/dist/gateway/compact-schema.js.map +1 -1
- package/dist/gateway/schemas.d.ts +3 -1
- package/dist/gateway/schemas.d.ts.map +1 -1
- package/dist/gateway/schemas.js +26 -10
- package/dist/gateway/schemas.js.map +1 -1
- package/dist/graph/cache.d.ts.map +1 -1
- package/dist/graph/cache.js +17 -0
- package/dist/graph/cache.js.map +1 -1
- package/dist/graph/metrics.d.ts +8 -0
- package/dist/graph/metrics.d.ts.map +1 -1
- package/dist/graph/metrics.js +5 -2
- package/dist/graph/metrics.js.map +1 -1
- package/dist/graph/slice/beam-search-engine.d.ts +27 -51
- package/dist/graph/slice/beam-search-engine.d.ts.map +1 -1
- package/dist/graph/slice/beam-search-engine.js +110 -13
- package/dist/graph/slice/beam-search-engine.js.map +1 -1
- package/dist/graph/slice/types.d.ts +17 -0
- package/dist/graph/slice/types.d.ts.map +1 -1
- package/dist/graph/slice.d.ts.map +1 -1
- package/dist/graph/slice.js +77 -3
- package/dist/graph/slice.js.map +1 -1
- package/dist/graph/sliceCache.d.ts.map +1 -1
- package/dist/graph/sliceCache.js +19 -0
- package/dist/graph/sliceCache.js.map +1 -1
- package/dist/indexer/derived-refresh-queue.d.ts +18 -0
- package/dist/indexer/derived-refresh-queue.d.ts.map +1 -1
- package/dist/indexer/derived-refresh-queue.js +105 -1
- package/dist/indexer/derived-refresh-queue.js.map +1 -1
- package/dist/indexer/edge-builder/cleanup.d.ts.map +1 -1
- package/dist/indexer/edge-builder/cleanup.js +5 -7
- package/dist/indexer/edge-builder/cleanup.js.map +1 -1
- package/dist/indexer/edge-builder/import-resolution.d.ts +18 -5
- package/dist/indexer/edge-builder/import-resolution.d.ts.map +1 -1
- package/dist/indexer/edge-builder/import-resolution.js +85 -42
- package/dist/indexer/edge-builder/import-resolution.js.map +1 -1
- package/dist/indexer/edge-builder/pass2.d.ts +5 -0
- package/dist/indexer/edge-builder/pass2.d.ts.map +1 -1
- package/dist/indexer/edge-builder/pass2.js +74 -39
- package/dist/indexer/edge-builder/pass2.js.map +1 -1
- package/dist/indexer/edge-builder/telemetry.d.ts +7 -0
- package/dist/indexer/edge-builder/telemetry.d.ts.map +1 -1
- package/dist/indexer/edge-builder/telemetry.js +1 -0
- package/dist/indexer/edge-builder/telemetry.js.map +1 -1
- package/dist/indexer/edge-builder/unresolved-imports.d.ts +8 -0
- package/dist/indexer/edge-builder/unresolved-imports.d.ts.map +1 -1
- package/dist/indexer/edge-builder/unresolved-imports.js +142 -57
- package/dist/indexer/edge-builder/unresolved-imports.js.map +1 -1
- package/dist/indexer/embeddings-local.d.ts +42 -1
- package/dist/indexer/embeddings-local.d.ts.map +1 -1
- package/dist/indexer/embeddings-local.js +117 -5
- package/dist/indexer/embeddings-local.js.map +1 -1
- package/dist/indexer/embeddings.d.ts +13 -2
- package/dist/indexer/embeddings.d.ts.map +1 -1
- package/dist/indexer/embeddings.js +237 -43
- package/dist/indexer/embeddings.js.map +1 -1
- package/dist/indexer/file-summary-embeddings.d.ts +24 -0
- package/dist/indexer/file-summary-embeddings.d.ts.map +1 -0
- package/dist/indexer/file-summary-embeddings.js +171 -0
- package/dist/indexer/file-summary-embeddings.js.map +1 -0
- package/dist/indexer/fileWalker.d.ts.map +1 -1
- package/dist/indexer/fileWalker.js +20 -7
- package/dist/indexer/fileWalker.js.map +1 -1
- package/dist/indexer/finalize-derived-state.d.ts.map +1 -1
- package/dist/indexer/finalize-derived-state.js +2 -3
- package/dist/indexer/finalize-derived-state.js.map +1 -1
- package/dist/indexer/fingerprints.d.ts.map +1 -1
- package/dist/indexer/fingerprints.js +8 -1
- package/dist/indexer/fingerprints.js.map +1 -1
- package/dist/indexer/indexer-init.d.ts +37 -2
- package/dist/indexer/indexer-init.d.ts.map +1 -1
- package/dist/indexer/indexer-init.js +1 -1
- package/dist/indexer/indexer-init.js.map +1 -1
- package/dist/indexer/indexer-pass1.d.ts +11 -1
- package/dist/indexer/indexer-pass1.d.ts.map +1 -1
- package/dist/indexer/indexer-pass1.js +120 -16
- package/dist/indexer/indexer-pass1.js.map +1 -1
- package/dist/indexer/indexer-pass2.d.ts +47 -0
- package/dist/indexer/indexer-pass2.d.ts.map +1 -1
- package/dist/indexer/indexer-pass2.js +217 -17
- package/dist/indexer/indexer-pass2.js.map +1 -1
- package/dist/indexer/indexer.d.ts.map +1 -1
- package/dist/indexer/indexer.js +284 -120
- package/dist/indexer/indexer.js.map +1 -1
- package/dist/indexer/metrics-updater.d.ts +13 -0
- package/dist/indexer/metrics-updater.d.ts.map +1 -1
- package/dist/indexer/metrics-updater.js +211 -7
- package/dist/indexer/metrics-updater.js.map +1 -1
- package/dist/indexer/model-downloader.d.ts +4 -2
- package/dist/indexer/model-downloader.d.ts.map +1 -1
- package/dist/indexer/model-downloader.js +35 -17
- package/dist/indexer/model-downloader.js.map +1 -1
- package/dist/indexer/model-registry.d.ts +58 -11
- package/dist/indexer/model-registry.d.ts.map +1 -1
- package/dist/indexer/model-registry.js +119 -23
- package/dist/indexer/model-registry.js.map +1 -1
- package/dist/indexer/parser/batch-persist.d.ts +25 -0
- package/dist/indexer/parser/batch-persist.d.ts.map +1 -1
- package/dist/indexer/parser/batch-persist.js +81 -23
- package/dist/indexer/parser/batch-persist.js.map +1 -1
- package/dist/indexer/parser/build-rows.d.ts +3 -1
- package/dist/indexer/parser/build-rows.d.ts.map +1 -1
- package/dist/indexer/parser/build-rows.js +31 -6
- package/dist/indexer/parser/build-rows.js.map +1 -1
- package/dist/indexer/parser/early-exit.d.ts.map +1 -1
- package/dist/indexer/parser/early-exit.js +22 -12
- package/dist/indexer/parser/early-exit.js.map +1 -1
- package/dist/indexer/parser/helpers.js +1 -1
- package/dist/indexer/parser/helpers.js.map +1 -1
- package/dist/indexer/parser/parse-and-extract.d.ts.map +1 -1
- package/dist/indexer/parser/parse-and-extract.js +5 -1
- package/dist/indexer/parser/parse-and-extract.js.map +1 -1
- package/dist/indexer/parser/process-file.d.ts.map +1 -1
- package/dist/indexer/parser/process-file.js +18 -0
- package/dist/indexer/parser/process-file.js.map +1 -1
- package/dist/indexer/parser/rust-process-file.d.ts +2 -0
- package/dist/indexer/parser/rust-process-file.d.ts.map +1 -1
- package/dist/indexer/parser/rust-process-file.js +23 -0
- package/dist/indexer/parser/rust-process-file.js.map +1 -1
- package/dist/indexer/parser/types.d.ts +12 -0
- package/dist/indexer/parser/types.d.ts.map +1 -1
- package/dist/indexer/parser.js +2 -2
- package/dist/indexer/parser.js.map +1 -1
- package/dist/indexer/pass2/confidence.d.ts +4 -1
- package/dist/indexer/pass2/confidence.d.ts.map +1 -1
- package/dist/indexer/pass2/confidence.js +12 -3
- package/dist/indexer/pass2/confidence.js.map +1 -1
- package/dist/indexer/pass2/resolvers/c-pass2-resolver.d.ts.map +1 -1
- package/dist/indexer/pass2/resolvers/c-pass2-resolver.js +65 -51
- package/dist/indexer/pass2/resolvers/c-pass2-resolver.js.map +1 -1
- package/dist/indexer/pass2/resolvers/cpp-pass2-resolver.d.ts +1 -0
- package/dist/indexer/pass2/resolvers/cpp-pass2-resolver.d.ts.map +1 -1
- package/dist/indexer/pass2/resolvers/cpp-pass2-resolver.js +153 -147
- package/dist/indexer/pass2/resolvers/cpp-pass2-resolver.js.map +1 -1
- package/dist/indexer/pass2/resolvers/csharp-pass2-resolver.d.ts.map +1 -1
- package/dist/indexer/pass2/resolvers/csharp-pass2-resolver.js +72 -59
- package/dist/indexer/pass2/resolvers/csharp-pass2-resolver.js.map +1 -1
- package/dist/indexer/pass2/resolvers/go-pass2-resolver.d.ts.map +1 -1
- package/dist/indexer/pass2/resolvers/go-pass2-resolver.js +69 -57
- package/dist/indexer/pass2/resolvers/go-pass2-resolver.js.map +1 -1
- package/dist/indexer/pass2/resolvers/java-pass2-resolver.d.ts.map +1 -1
- package/dist/indexer/pass2/resolvers/java-pass2-resolver.js +72 -59
- package/dist/indexer/pass2/resolvers/java-pass2-resolver.js.map +1 -1
- package/dist/indexer/pass2/resolvers/kotlin-pass2-resolver.d.ts.map +1 -1
- package/dist/indexer/pass2/resolvers/kotlin-pass2-resolver.js +33 -20
- package/dist/indexer/pass2/resolvers/kotlin-pass2-resolver.js.map +1 -1
- package/dist/indexer/pass2/resolvers/php-pass2-resolver.d.ts.map +1 -1
- package/dist/indexer/pass2/resolvers/php-pass2-resolver.js +91 -84
- package/dist/indexer/pass2/resolvers/php-pass2-resolver.js.map +1 -1
- package/dist/indexer/pass2/resolvers/python-pass2-resolver.d.ts.map +1 -1
- package/dist/indexer/pass2/resolvers/python-pass2-resolver.js +95 -37
- package/dist/indexer/pass2/resolvers/python-pass2-resolver.js.map +1 -1
- package/dist/indexer/pass2/resolvers/rust-pass2-resolver.d.ts.map +1 -1
- package/dist/indexer/pass2/resolvers/rust-pass2-resolver.js +68 -57
- package/dist/indexer/pass2/resolvers/rust-pass2-resolver.js.map +1 -1
- package/dist/indexer/pass2/resolvers/shell-pass2-resolver.d.ts.map +1 -1
- package/dist/indexer/pass2/resolvers/shell-pass2-resolver.js +66 -60
- package/dist/indexer/pass2/resolvers/shell-pass2-resolver.js.map +1 -1
- package/dist/indexer/pass2/resolvers/ts-pass2-resolver.d.ts +4 -0
- package/dist/indexer/pass2/resolvers/ts-pass2-resolver.d.ts.map +1 -1
- package/dist/indexer/pass2/resolvers/ts-pass2-resolver.js +6 -1
- package/dist/indexer/pass2/resolvers/ts-pass2-resolver.js.map +1 -1
- package/dist/indexer/pass2/types.d.ts +132 -0
- package/dist/indexer/pass2/types.d.ts.map +1 -1
- package/dist/indexer/pass2/types.js +19 -1
- package/dist/indexer/pass2/types.js.map +1 -1
- package/dist/indexer/rustIndexer.d.ts +2 -2
- package/dist/indexer/rustIndexer.d.ts.map +1 -1
- package/dist/indexer/rustIndexer.js +4 -4
- package/dist/indexer/rustIndexer.js.map +1 -1
- package/dist/indexer/watcher.d.ts.map +1 -1
- package/dist/indexer/watcher.js +102 -18
- package/dist/indexer/watcher.js.map +1 -1
- package/dist/indexer/workerPool.d.ts +26 -2
- package/dist/indexer/workerPool.d.ts.map +1 -1
- package/dist/indexer/workerPool.js +107 -52
- package/dist/indexer/workerPool.js.map +1 -1
- package/dist/live-index/draft-parser.d.ts.map +1 -1
- package/dist/live-index/draft-parser.js +1 -0
- package/dist/live-index/draft-parser.js.map +1 -1
- package/dist/live-index/overlay-reader.d.ts +1 -0
- package/dist/live-index/overlay-reader.d.ts.map +1 -1
- package/dist/live-index/overlay-reader.js +5 -3
- package/dist/live-index/overlay-reader.js.map +1 -1
- package/dist/main.js +23 -37
- package/dist/main.js.map +1 -1
- package/dist/mcp/audit-buffer.d.ts +47 -0
- package/dist/mcp/audit-buffer.d.ts.map +1 -0
- package/dist/mcp/audit-buffer.js +82 -0
- package/dist/mcp/audit-buffer.js.map +1 -0
- package/dist/mcp/errors.d.ts +5 -0
- package/dist/mcp/errors.d.ts.map +1 -1
- package/dist/mcp/errors.js +13 -0
- package/dist/mcp/errors.js.map +1 -1
- package/dist/mcp/telemetry.d.ts +20 -0
- package/dist/mcp/telemetry.d.ts.map +1 -1
- package/dist/mcp/telemetry.js +94 -9
- package/dist/mcp/telemetry.js.map +1 -1
- package/dist/mcp/token-accumulator.d.ts +18 -0
- package/dist/mcp/token-accumulator.d.ts.map +1 -1
- package/dist/mcp/token-accumulator.js +46 -0
- package/dist/mcp/token-accumulator.js.map +1 -1
- package/dist/mcp/tools/agent-feedback.d.ts +1 -0
- package/dist/mcp/tools/agent-feedback.d.ts.map +1 -1
- package/dist/mcp/tools/agent-feedback.js +55 -0
- package/dist/mcp/tools/agent-feedback.js.map +1 -1
- package/dist/mcp/tools/buffer.d.ts.map +1 -1
- package/dist/mcp/tools/buffer.js +65 -20
- package/dist/mcp/tools/buffer.js.map +1 -1
- package/dist/mcp/tools/code.d.ts.map +1 -1
- package/dist/mcp/tools/code.js +110 -28
- package/dist/mcp/tools/code.js.map +1 -1
- package/dist/mcp/tools/context-wire-format.d.ts +22 -0
- package/dist/mcp/tools/context-wire-format.d.ts.map +1 -0
- package/dist/mcp/tools/context-wire-format.js +132 -0
- package/dist/mcp/tools/context-wire-format.js.map +1 -0
- package/dist/mcp/tools/context.d.ts +3 -0
- package/dist/mcp/tools/context.d.ts.map +1 -1
- package/dist/mcp/tools/context.js +78 -1
- package/dist/mcp/tools/context.js.map +1 -1
- package/dist/mcp/tools/delta.d.ts.map +1 -1
- package/dist/mcp/tools/delta.js +15 -1
- package/dist/mcp/tools/delta.js.map +1 -1
- package/dist/mcp/tools/file-read.d.ts +2 -0
- package/dist/mcp/tools/file-read.d.ts.map +1 -1
- package/dist/mcp/tools/file-read.js +38 -18
- package/dist/mcp/tools/file-read.js.map +1 -1
- package/dist/mcp/tools/file-write-internals.d.ts.map +1 -1
- package/dist/mcp/tools/file-write-internals.js +9 -2
- package/dist/mcp/tools/file-write-internals.js.map +1 -1
- package/dist/mcp/tools/policy.d.ts.map +1 -1
- package/dist/mcp/tools/policy.js +5 -1
- package/dist/mcp/tools/policy.js.map +1 -1
- package/dist/mcp/tools/prRisk.d.ts.map +1 -1
- package/dist/mcp/tools/prRisk.js +3 -4
- package/dist/mcp/tools/prRisk.js.map +1 -1
- package/dist/mcp/tools/repo.d.ts.map +1 -1
- package/dist/mcp/tools/repo.js +15 -32
- package/dist/mcp/tools/repo.js.map +1 -1
- package/dist/mcp/tools/runtime.d.ts.map +1 -1
- package/dist/mcp/tools/runtime.js +2 -3
- package/dist/mcp/tools/runtime.js.map +1 -1
- package/dist/mcp/tools/scip.d.ts.map +1 -1
- package/dist/mcp/tools/scip.js +2 -0
- package/dist/mcp/tools/scip.js.map +1 -1
- package/dist/mcp/tools/search-edit/index.d.ts.map +1 -1
- package/dist/mcp/tools/search-edit/index.js +55 -2
- package/dist/mcp/tools/search-edit/index.js.map +1 -1
- package/dist/mcp/tools/search-edit/planner.d.ts +6 -0
- package/dist/mcp/tools/search-edit/planner.d.ts.map +1 -1
- package/dist/mcp/tools/search-edit/planner.js +107 -21
- package/dist/mcp/tools/search-edit/planner.js.map +1 -1
- package/dist/mcp/tools/slice-wire-format.d.ts +7 -12
- package/dist/mcp/tools/slice-wire-format.d.ts.map +1 -1
- package/dist/mcp/tools/slice-wire-format.js +56 -343
- package/dist/mcp/tools/slice-wire-format.js.map +1 -1
- package/dist/mcp/tools/slice.d.ts +1 -1
- package/dist/mcp/tools/slice.d.ts.map +1 -1
- package/dist/mcp/tools/slice.js +81 -19
- package/dist/mcp/tools/slice.js.map +1 -1
- package/dist/mcp/tools/symbol-wire-format.d.ts +35 -0
- package/dist/mcp/tools/symbol-wire-format.d.ts.map +1 -0
- package/dist/mcp/tools/symbol-wire-format.js +70 -0
- package/dist/mcp/tools/symbol-wire-format.js.map +1 -0
- package/dist/mcp/tools/symbol.d.ts +2 -1
- package/dist/mcp/tools/symbol.d.ts.map +1 -1
- package/dist/mcp/tools/symbol.js +71 -8
- package/dist/mcp/tools/symbol.js.map +1 -1
- package/dist/mcp/tools/usage.d.ts.map +1 -1
- package/dist/mcp/tools/usage.js +13 -0
- package/dist/mcp/tools/usage.js.map +1 -1
- package/dist/mcp/tools.d.ts +357 -690
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +211 -122
- package/dist/mcp/tools.js.map +1 -1
- package/dist/mcp/wire/packed/decoder.d.ts +18 -0
- package/dist/mcp/wire/packed/decoder.d.ts.map +1 -0
- package/dist/mcp/wire/packed/decoder.js +54 -0
- package/dist/mcp/wire/packed/decoder.js.map +1 -0
- package/dist/mcp/wire/packed/encoders/context.d.ts +44 -0
- package/dist/mcp/wire/packed/encoders/context.d.ts.map +1 -0
- package/dist/mcp/wire/packed/encoders/context.js +99 -0
- package/dist/mcp/wire/packed/encoders/context.js.map +1 -0
- package/dist/mcp/wire/packed/encoders/registry.d.ts +13 -0
- package/dist/mcp/wire/packed/encoders/registry.d.ts.map +1 -0
- package/dist/mcp/wire/packed/encoders/registry.js +31 -0
- package/dist/mcp/wire/packed/encoders/registry.js.map +1 -0
- package/dist/mcp/wire/packed/encoders/slice.d.ts +10 -0
- package/dist/mcp/wire/packed/encoders/slice.d.ts.map +1 -0
- package/dist/mcp/wire/packed/encoders/slice.js +106 -0
- package/dist/mcp/wire/packed/encoders/slice.js.map +1 -0
- package/dist/mcp/wire/packed/encoders/symbol-search.d.ts +20 -0
- package/dist/mcp/wire/packed/encoders/symbol-search.d.ts.map +1 -0
- package/dist/mcp/wire/packed/encoders/symbol-search.js +41 -0
- package/dist/mcp/wire/packed/encoders/symbol-search.js.map +1 -0
- package/dist/mcp/wire/packed/format.d.ts +87 -0
- package/dist/mcp/wire/packed/format.d.ts.map +1 -0
- package/dist/mcp/wire/packed/format.js +371 -0
- package/dist/mcp/wire/packed/format.js.map +1 -0
- package/dist/mcp/wire/packed/gate.d.ts +71 -0
- package/dist/mcp/wire/packed/gate.d.ts.map +1 -0
- package/dist/mcp/wire/packed/gate.js +142 -0
- package/dist/mcp/wire/packed/gate.js.map +1 -0
- package/dist/mcp/wire/packed/index.d.ts +16 -0
- package/dist/mcp/wire/packed/index.d.ts.map +1 -0
- package/dist/mcp/wire/packed/index.js +14 -0
- package/dist/mcp/wire/packed/index.js.map +1 -0
- package/dist/mcp/wire/packed/schema.d.ts +32 -0
- package/dist/mcp/wire/packed/schema.d.ts.map +1 -0
- package/dist/mcp/wire/packed/schema.js +268 -0
- package/dist/mcp/wire/packed/schema.js.map +1 -0
- package/dist/mcp/wire/packed/types.d.ts +52 -0
- package/dist/mcp/wire/packed/types.d.ts.map +1 -0
- package/dist/mcp/wire/packed/types.js +15 -0
- package/dist/mcp/wire/packed/types.js.map +1 -0
- package/dist/observability/aggregator.d.ts +274 -0
- package/dist/observability/aggregator.d.ts.map +1 -0
- package/dist/observability/aggregator.js +991 -0
- package/dist/observability/aggregator.js.map +1 -0
- package/dist/observability/beam-explain-store.d.ts +74 -0
- package/dist/observability/beam-explain-store.d.ts.map +1 -0
- package/dist/observability/beam-explain-store.js +128 -0
- package/dist/observability/beam-explain-store.js.map +1 -0
- package/dist/observability/bottleneck-classifier.d.ts +45 -0
- package/dist/observability/bottleneck-classifier.d.ts.map +1 -0
- package/dist/observability/bottleneck-classifier.js +236 -0
- package/dist/observability/bottleneck-classifier.js.map +1 -0
- package/dist/observability/event-tap.d.ts +139 -0
- package/dist/observability/event-tap.d.ts.map +1 -0
- package/dist/observability/event-tap.js +43 -0
- package/dist/observability/event-tap.js.map +1 -0
- package/dist/observability/index.d.ts +23 -0
- package/dist/observability/index.d.ts.map +1 -0
- package/dist/observability/index.js +17 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/observability/probes.d.ts +4 -0
- package/dist/observability/probes.d.ts.map +1 -0
- package/dist/observability/probes.js +84 -0
- package/dist/observability/probes.js.map +1 -0
- package/dist/observability/ring-buffer.d.ts +48 -0
- package/dist/observability/ring-buffer.d.ts.map +1 -0
- package/dist/observability/ring-buffer.js +79 -0
- package/dist/observability/ring-buffer.js.map +1 -0
- package/dist/observability/service.d.ts +129 -0
- package/dist/observability/service.d.ts.map +1 -0
- package/dist/observability/service.js +546 -0
- package/dist/observability/service.js.map +1 -0
- package/dist/observability/types.d.ts +409 -0
- package/dist/observability/types.d.ts.map +1 -0
- package/dist/observability/types.js +20 -0
- package/dist/observability/types.js.map +1 -0
- package/dist/policy/code-access.d.ts +77 -0
- package/dist/policy/code-access.d.ts.map +1 -0
- package/dist/policy/code-access.js +168 -0
- package/dist/policy/code-access.js.map +1 -0
- package/dist/policy/engine.d.ts.map +1 -1
- package/dist/policy/engine.js +11 -12
- package/dist/policy/engine.js.map +1 -1
- package/dist/policy/index.d.ts +19 -3
- package/dist/policy/index.d.ts.map +1 -1
- package/dist/policy/index.js +17 -3
- package/dist/policy/index.js.map +1 -1
- package/dist/policy/runtime.d.ts +31 -0
- package/dist/policy/runtime.d.ts.map +1 -0
- package/dist/policy/runtime.js +53 -0
- package/dist/policy/runtime.js.map +1 -0
- package/dist/retrieval/index-lifecycle.d.ts +42 -0
- package/dist/retrieval/index-lifecycle.d.ts.map +1 -1
- package/dist/retrieval/index-lifecycle.js +71 -7
- package/dist/retrieval/index-lifecycle.js.map +1 -1
- package/dist/retrieval/orchestrator.d.ts.map +1 -1
- package/dist/retrieval/orchestrator.js +21 -0
- package/dist/retrieval/orchestrator.js.map +1 -1
- package/dist/scip/cleanup.d.ts +34 -0
- package/dist/scip/cleanup.d.ts.map +1 -0
- package/dist/scip/cleanup.js +64 -0
- package/dist/scip/cleanup.js.map +1 -0
- package/dist/scip/decoder-factory.d.ts.map +1 -1
- package/dist/scip/decoder-factory.js +9 -4
- package/dist/scip/decoder-factory.js.map +1 -1
- package/dist/scip/decoder-ts.d.ts +5 -0
- package/dist/scip/decoder-ts.d.ts.map +1 -1
- package/dist/scip/decoder-ts.js +33 -1
- package/dist/scip/decoder-ts.js.map +1 -1
- package/dist/scip/edge-builder.d.ts +1 -1
- package/dist/scip/edge-builder.d.ts.map +1 -1
- package/dist/scip/edge-builder.js +1 -1
- package/dist/scip/edge-builder.js.map +1 -1
- package/dist/scip/ingestion.d.ts +50 -0
- package/dist/scip/ingestion.d.ts.map +1 -1
- package/dist/scip/ingestion.js +176 -28
- package/dist/scip/ingestion.js.map +1 -1
- package/dist/scip/types.d.ts +26 -0
- package/dist/scip/types.d.ts.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +52 -8
- package/dist/server.js.map +1 -1
- package/dist/services/card-builder.d.ts.map +1 -1
- package/dist/services/card-builder.js +2 -4
- package/dist/services/card-builder.js.map +1 -1
- package/dist/services/health.d.ts.map +1 -1
- package/dist/services/health.js +3 -0
- package/dist/services/health.js.map +1 -1
- package/dist/startup/process-handlers.d.ts +12 -0
- package/dist/startup/process-handlers.d.ts.map +1 -0
- package/dist/startup/process-handlers.js +45 -0
- package/dist/startup/process-handlers.js.map +1 -0
- package/dist/sync/sync.d.ts.map +1 -1
- package/dist/sync/sync.js +14 -6
- package/dist/sync/sync.js.map +1 -1
- package/dist/ui/observability.d.ts +2 -0
- package/dist/ui/observability.d.ts.map +1 -0
- package/dist/ui/observability.js +796 -0
- package/dist/ui/observability.js.map +1 -0
- package/dist/util/concurrency.d.ts +24 -1
- package/dist/util/concurrency.d.ts.map +1 -1
- package/dist/util/concurrency.js +55 -1
- package/dist/util/concurrency.js.map +1 -1
- package/dist/util/cpu-presets.d.ts +15 -4
- package/dist/util/cpu-presets.d.ts.map +1 -1
- package/dist/util/cpu-presets.js +18 -2
- package/dist/util/cpu-presets.js.map +1 -1
- package/dist/util/pidfile.d.ts.map +1 -1
- package/dist/util/pidfile.js +17 -1
- package/dist/util/pidfile.js.map +1 -1
- package/dist/util/shutdown.d.ts +5 -4
- package/dist/util/shutdown.d.ts.map +1 -1
- package/dist/util/shutdown.js +7 -7
- package/dist/util/shutdown.js.map +1 -1
- package/dist/util/tokenize.d.ts +7 -0
- package/dist/util/tokenize.d.ts.map +1 -1
- package/dist/util/tokenize.js +11 -0
- package/dist/util/tokenize.js.map +1 -1
- package/package.json +8 -5
- package/templates/SDL.md +320 -0
- package/dist/code/gate.d.ts +0 -33
- package/dist/code/gate.d.ts.map +0 -1
- package/dist/code/gate.js +0 -267
- package/dist/code/gate.js.map +0 -1
package/README.md
CHANGED
|
@@ -531,6 +531,12 @@ Each gateway tool accepts an `action` discriminator field (e.g., `{ action: "sym
|
|
|
531
531
|
|
|
532
532
|
[Tool Gateway Deep Dive →](./docs/feature-deep-dives/tool-gateway.md)
|
|
533
533
|
|
|
534
|
+
---
|
|
535
|
+
|
|
536
|
+
### Observability Dashboard
|
|
537
|
+
|
|
538
|
+
Built-in read-only dashboard surfaces every metric needed to diagnose SDL-MCP behaviour without parsing stderr logs. Cyberpunk-corporate dark UI at `/ui/observability` on the HTTP transport, plus REST + SSE APIs (`/api/observability/snapshot`, `/timeseries`, `/beam-explain`, `/stream`) for programmatic access. Surfaces cache hit rates, hybrid-retrieval breakdowns (FTS / vector / PPR / RRF), beam-search decision traces, indexing pipeline metrics, write-pool and drain saturation, packed-wire savings, SCIP ingest health, deterministic bottleneck classification, and OS-level resource samples. See [Observability Dashboard Deep Dive](./docs/feature-deep-dives/observability-dashboard.md).
|
|
539
|
+
|
|
534
540
|
<br/>
|
|
535
541
|
|
|
536
542
|
---
|
|
@@ -539,12 +545,12 @@ Each gateway tool accepts an `action` discriminator field (e.g., `{ action: "sym
|
|
|
539
545
|
|
|
540
546
|
## Current Tool Surface at a Glance
|
|
541
547
|
|
|
542
|
-
| Mode
|
|
543
|
-
|
|
|
544
|
-
| Flat
|
|
545
|
-
| Gateway
|
|
546
|
-
| Gateway + legacy
|
|
547
|
-
| Code Mode exclusive | `4`
|
|
548
|
+
| Mode | Tool count | Composition |
|
|
549
|
+
| :------------------ | :--------- | :--------------------------------------------------------------- |
|
|
550
|
+
| Flat | `33` | `2` universal + `31` flat tools |
|
|
551
|
+
| Gateway | `6` | `2` universal + `4` gateway tools |
|
|
552
|
+
| Gateway + legacy | `37` | `2` universal + `4` gateway + `31` flat tools |
|
|
553
|
+
| Code Mode exclusive | `4` | `sdl.action.search`, `sdl.context`, `sdl.manual`, `sdl.workflow` |
|
|
548
554
|
|
|
549
555
|
The generated source of truth is [`docs/generated/tool-inventory.md`](./docs/generated/tool-inventory.md).
|
|
550
556
|
|
|
@@ -627,21 +633,21 @@ The generated source of truth is [`docs/generated/tool-inventory.md`](./docs/gen
|
|
|
627
633
|
|
|
628
634
|
## CLI Commands
|
|
629
635
|
|
|
630
|
-
| Command | Description
|
|
631
|
-
| :------------------ |
|
|
632
|
-
| `sdl-mcp init` | Bootstrap config, detect repo/languages, optionally auto-index
|
|
633
|
-
| `sdl-mcp doctor` | Validate runtime, config, DB, grammars, repo access
|
|
634
|
-
| `sdl-mcp index` | Index repositories (with optional `--watch` mode)
|
|
635
|
-
| `sdl-mcp serve` | Start MCP server (`--stdio` or `--http`)
|
|
636
|
-
| `sdl-mcp tool` | Access 30 direct action aliases ([docs](./docs/feature-deep-dives/cli-tool-access.md))
|
|
637
|
-
| `sdl-mcp info` | Runtime diagnostics — version, Node.js, platform, database, config
|
|
638
|
-
| `sdl-mcp summary` | Generate copy/paste context summaries from the CLI
|
|
639
|
-
| `sdl-mcp health` | Compute composite health score with badge/JSON output
|
|
640
|
-
| `sdl-mcp benchmark` | Run CI regression benchmarks
|
|
641
|
-
| `sdl-mcp export` | Export sync artifact
|
|
642
|
-
| `sdl-mcp import` | Import sync artifact
|
|
643
|
-
| `sdl-mcp pull` | Pull by version/commit with fallback
|
|
644
|
-
| `sdl-mcp version` | Show version and environment info
|
|
636
|
+
| Command | Description |
|
|
637
|
+
| :------------------ | :------------------------------------------------------------------------------------- |
|
|
638
|
+
| `sdl-mcp init` | Bootstrap config, detect repo/languages, optionally auto-index |
|
|
639
|
+
| `sdl-mcp doctor` | Validate runtime, config, DB, grammars, repo access |
|
|
640
|
+
| `sdl-mcp index` | Index repositories (with optional `--watch` mode) |
|
|
641
|
+
| `sdl-mcp serve` | Start MCP server (`--stdio` or `--http`) |
|
|
642
|
+
| `sdl-mcp tool` | Access 30 direct action aliases ([docs](./docs/feature-deep-dives/cli-tool-access.md)) |
|
|
643
|
+
| `sdl-mcp info` | Runtime diagnostics — version, Node.js, platform, database, config |
|
|
644
|
+
| `sdl-mcp summary` | Generate copy/paste context summaries from the CLI |
|
|
645
|
+
| `sdl-mcp health` | Compute composite health score with badge/JSON output |
|
|
646
|
+
| `sdl-mcp benchmark` | Run CI regression benchmarks |
|
|
647
|
+
| `sdl-mcp export` | Export sync artifact |
|
|
648
|
+
| `sdl-mcp import` | Import sync artifact |
|
|
649
|
+
| `sdl-mcp pull` | Pull by version/commit with fallback |
|
|
650
|
+
| `sdl-mcp version` | Show version and environment info |
|
|
645
651
|
|
|
646
652
|
[CLI Reference →](./docs/cli-reference.md) · [Configuration Reference →](./docs/configuration-reference.md)
|
|
647
653
|
|
|
@@ -731,16 +737,16 @@ flowchart TD
|
|
|
731
737
|
|
|
732
738
|
## Documentation
|
|
733
739
|
|
|
734
|
-
| Document | Description
|
|
735
|
-
| :---------------------------------------------------------------- |
|
|
736
|
-
| [Getting Started](./docs/getting-started.md) | Installation, 5-minute setup, MCP client config
|
|
737
|
-
| [MCP Tools Reference](./docs/mcp-tools-detailed.md) | Detailed docs for the current flat, gateway, and Code Mode surfaces
|
|
738
|
-
| [CLI Reference](./docs/cli-reference.md) | All CLI commands and options
|
|
739
|
-
| [Configuration Reference](./docs/configuration-reference.md) | Every config option with defaults and guidance
|
|
740
|
-
| [Agent Workflows](./docs/agent-workflows.md) | Workflow instructions for CLAUDE.md / AGENTS.md
|
|
741
|
-
| [Architecture](./docs/architecture.md) | Tech stack, data flow, component diagram
|
|
742
|
-
| [Iris Gate Ladder](./docs/feature-deep-dives/iris-gate-ladder.md) | Context escalation methodology
|
|
743
|
-
| [Troubleshooting](./docs/troubleshooting.md) | Common issues and fixes
|
|
740
|
+
| Document | Description |
|
|
741
|
+
| :---------------------------------------------------------------- | :------------------------------------------------------------------ |
|
|
742
|
+
| [Getting Started](./docs/getting-started.md) | Installation, 5-minute setup, MCP client config |
|
|
743
|
+
| [MCP Tools Reference](./docs/mcp-tools-detailed.md) | Detailed docs for the current flat, gateway, and Code Mode surfaces |
|
|
744
|
+
| [CLI Reference](./docs/cli-reference.md) | All CLI commands and options |
|
|
745
|
+
| [Configuration Reference](./docs/configuration-reference.md) | Every config option with defaults and guidance |
|
|
746
|
+
| [Agent Workflows](./docs/agent-workflows.md) | Workflow instructions for CLAUDE.md / AGENTS.md |
|
|
747
|
+
| [Architecture](./docs/architecture.md) | Tech stack, data flow, component diagram |
|
|
748
|
+
| [Iris Gate Ladder](./docs/feature-deep-dives/iris-gate-ladder.md) | Context escalation methodology |
|
|
749
|
+
| [Troubleshooting](./docs/troubleshooting.md) | Common issues and fixes |
|
|
744
750
|
|
|
745
751
|
### Feature Deep Dives
|
|
746
752
|
|
|
@@ -41,10 +41,10 @@
|
|
|
41
41
|
},
|
|
42
42
|
"performance": {
|
|
43
43
|
"sliceBuildTimeMs": {
|
|
44
|
-
"maxMs":
|
|
44
|
+
"maxMs": 500,
|
|
45
45
|
"trend": "lower-is-better",
|
|
46
46
|
"allowableIncreasePercent": 125,
|
|
47
|
-
"_comment": "Raised from
|
|
47
|
+
"_comment": "Raised from 350 ms: hosted Linux runners have produced valid zod-oss native-addon samples around 420 ms after edge-density increases, while this still guards against subsecond slice regressions."
|
|
48
48
|
},
|
|
49
49
|
"avgSkeletonTimeMs": {
|
|
50
50
|
"maxMs": 10,
|
|
@@ -126,6 +126,12 @@
|
|
|
126
126
|
"summaryMaxConcurrency": 5,
|
|
127
127
|
"summaryBatchSize": 20,
|
|
128
128
|
"embeddingConcurrency": 1,
|
|
129
|
+
"embeddingBatchSize": 32,
|
|
130
|
+
"fileSummaryEmbeddingBatchSize": 4,
|
|
131
|
+
"fileSummaryEmbeddingMaxChars": 4096,
|
|
132
|
+
"embeddingsSequential": false,
|
|
133
|
+
"modelVariant": "default",
|
|
134
|
+
"executionProviders": ["cpu"],
|
|
129
135
|
"retrieval": {
|
|
130
136
|
"mode": "hybrid",
|
|
131
137
|
"extensionsOptional": true,
|
|
@@ -159,7 +165,7 @@
|
|
|
159
165
|
"prefetch": {
|
|
160
166
|
"enabled": true,
|
|
161
167
|
"maxBudgetPercent": 20,
|
|
162
|
-
"warmTopN":
|
|
168
|
+
"warmTopN": 0
|
|
163
169
|
},
|
|
164
170
|
"tracing": {
|
|
165
171
|
"enabled": true,
|
|
@@ -168,6 +174,19 @@
|
|
|
168
174
|
"otlpEndpoint": null,
|
|
169
175
|
"sampleRate": 1
|
|
170
176
|
},
|
|
177
|
+
"observability": {
|
|
178
|
+
"enabled": true,
|
|
179
|
+
"sampleIntervalMs": 2000,
|
|
180
|
+
"retentionShortMinutes": 15,
|
|
181
|
+
"retentionLongHours": 24,
|
|
182
|
+
"pprMetricsEnabled": true,
|
|
183
|
+
"packedStatsEnabled": true,
|
|
184
|
+
"scipIngestMetrics": true,
|
|
185
|
+
"beamExplainCapacity": 128,
|
|
186
|
+
"beamExplainEntriesPerSlice": 512,
|
|
187
|
+
"sseHeartbeatMs": 15000,
|
|
188
|
+
"sseMaxStreamMs": 3600000
|
|
189
|
+
},
|
|
171
190
|
"parallelScorer": {
|
|
172
191
|
"enabled": true,
|
|
173
192
|
"poolSize": null,
|
|
@@ -199,7 +218,14 @@
|
|
|
199
218
|
},
|
|
200
219
|
"httpAuth": {
|
|
201
220
|
"enabled": false,
|
|
202
|
-
"token": null
|
|
221
|
+
"token": null,
|
|
222
|
+
"rateLimit": {
|
|
223
|
+
"bucketSize": 30,
|
|
224
|
+
"refillPerSec": 0.5
|
|
225
|
+
}
|
|
226
|
+
},
|
|
227
|
+
"http": {
|
|
228
|
+
"allowRemote": false
|
|
203
229
|
},
|
|
204
230
|
"codeMode": {
|
|
205
231
|
"enabled": true,
|
|
@@ -232,7 +258,8 @@
|
|
|
232
258
|
"binary": "scip-io",
|
|
233
259
|
"args": [],
|
|
234
260
|
"autoInstall": true,
|
|
235
|
-
"timeoutMs": 600000
|
|
261
|
+
"timeoutMs": 600000,
|
|
262
|
+
"cleanupAfterIngest": true
|
|
236
263
|
}
|
|
237
264
|
},
|
|
238
265
|
"memory": {
|
|
@@ -143,6 +143,8 @@
|
|
|
143
143
|
"enabled": true,
|
|
144
144
|
"alpha": 0.6,
|
|
145
145
|
"provider": "mock",
|
|
146
|
+
"executionProviders": ["cpu"],
|
|
147
|
+
"modelVariant": "default",
|
|
146
148
|
"model": "jina-embeddings-v2-base-code",
|
|
147
149
|
"additionalModels": ["nomic-embed-text-v1.5"],
|
|
148
150
|
"generateSummaries": false
|
|
@@ -597,11 +597,47 @@
|
|
|
597
597
|
},
|
|
598
598
|
"embeddingConcurrency": {
|
|
599
599
|
"type": "integer",
|
|
600
|
-
"description": "Number of embedding batches to process concurrently during refreshSymbolEmbeddings(). Defaults to 1 (sequential). Increasing this can improve throughput on multi-core machines but ONNX Runtime's internal thread pool is shared across concurrent calls; consider reducing intraOpNumThreads proportionally when raising above 1. Maximum
|
|
600
|
+
"description": "Number of embedding batches to process concurrently during refreshSymbolEmbeddings(). Defaults to 1 (sequential). Increasing this can improve throughput on multi-core machines but ONNX Runtime's internal thread pool is shared across concurrent calls; consider reducing intraOpNumThreads proportionally when raising above 1. Maximum 8.",
|
|
601
601
|
"minimum": 1,
|
|
602
|
-
"maximum":
|
|
602
|
+
"maximum": 8,
|
|
603
603
|
"default": 1
|
|
604
604
|
},
|
|
605
|
+
"embeddingBatchSize": {
|
|
606
|
+
"type": "integer",
|
|
607
|
+
"description": "ONNX inference batch width for symbol embedding refresh. Default 32 matches LocalEmbeddingProvider's tokenizer + session expectations. Larger batches (64-128) amortise tokenizer + session bind/unbind costs across more rows but raise peak memory roughly with the longest sequence in the batch. Length-bucketing before splitting keeps tokenizer pad waste bounded.",
|
|
608
|
+
"minimum": 1,
|
|
609
|
+
"maximum": 128,
|
|
610
|
+
"default": 32
|
|
611
|
+
},
|
|
612
|
+
"fileSummaryEmbeddingBatchSize": {
|
|
613
|
+
"type": "integer",
|
|
614
|
+
"description": "ONNX inference batch width for hybrid FileSummary embedding refresh. File-level payloads are larger than symbol payloads, so this defaults lower than embeddingBatchSize to bound DirectML/ONNX memory use.",
|
|
615
|
+
"minimum": 1,
|
|
616
|
+
"maximum": 16,
|
|
617
|
+
"default": 4
|
|
618
|
+
},
|
|
619
|
+
"fileSummaryEmbeddingMaxChars": {
|
|
620
|
+
"type": "integer",
|
|
621
|
+
"description": "Maximum characters sent to the embedding provider for each FileSummary. Stored summaries and FTS searchText remain complete; this only bounds vector-generation resources.",
|
|
622
|
+
"minimum": 512,
|
|
623
|
+
"maximum": 32768,
|
|
624
|
+
"default": 4096
|
|
625
|
+
},
|
|
626
|
+
"embeddingsSequential": {
|
|
627
|
+
"type": "boolean",
|
|
628
|
+
"description": "When two or more embedding models are configured, run them in series instead of via Promise.all. Default false launches concurrently — best when ORT runs sessions on independent thread pools. Set true on systems where ORT serializes sessions at the thread-pool layer (observed alternation pattern in CLI progress); each model holds the full thread budget end-to-end, weights stay hot in L3 cache, and model-handoff scheduling overhead disappears.",
|
|
629
|
+
"default": false
|
|
630
|
+
},
|
|
631
|
+
"modelVariant": {
|
|
632
|
+
"type": "string",
|
|
633
|
+
"description": "ONNX model file variant to load. Common values: 'default' / 'int8' (~140-160MB, balanced), 'fp16' (~270-320MB, ~30% faster than fp32 with <0.5% accuracy loss), 'fp32' (~550-650MB, reference quality). nomic-embed-text-v1.5 also publishes 'uint8', 'q4', 'q4f16', 'bnb4'. When the chosen variant is not published for a given model, the registry falls back to that model's default variant with a warning."
|
|
634
|
+
},
|
|
635
|
+
"executionProviders": {
|
|
636
|
+
"type": "array",
|
|
637
|
+
"items": { "type": "string" },
|
|
638
|
+
"description": "ONNX Runtime execution providers in priority order. ORT tries them left-to-right; first one that initialises wins. Bundled with default onnxruntime-node npm package: Windows x64 ['cpu', 'dml', 'webgpu'], macOS ['cpu', 'coreml'], Linux x64 ['cpu', 'cuda', 'tensorrt'] (CUDA EP requires NVIDIA GPU + CUDA 12 + cuDNN on the host), Linux arm64 ['cpu']. DirectML covers any DX12 GPU including AMD Radeon, NVIDIA GeForce, Intel Arc. ROCm (AMD on Linux), OpenVINO, QNN need a custom ORT build. Unsupported entries on a given platform are dropped with a warning; 'cpu' is auto-appended as final fallback so session creation never strands.",
|
|
639
|
+
"default": ["cpu"]
|
|
640
|
+
},
|
|
605
641
|
"ann": {
|
|
606
642
|
"type": "object",
|
|
607
643
|
"description": "Deprecated — removed in v0.10.1. Silently ignored. Use retrieval.vector instead.",
|
|
@@ -811,14 +847,94 @@
|
|
|
811
847
|
},
|
|
812
848
|
"warmTopN": {
|
|
813
849
|
"type": "integer",
|
|
814
|
-
"minimum":
|
|
815
|
-
"default":
|
|
850
|
+
"minimum": 0,
|
|
851
|
+
"default": 0,
|
|
852
|
+
"description": "Number of top-fan-in symbols to prefetch on serve start. Default 0 disables startup warming; raise only when you have evidence the warm set is consumed within the 5-minute stale window."
|
|
816
853
|
}
|
|
817
854
|
},
|
|
818
855
|
"default": {
|
|
819
856
|
"enabled": true,
|
|
820
857
|
"maxBudgetPercent": 20,
|
|
821
|
-
"warmTopN":
|
|
858
|
+
"warmTopN": 0
|
|
859
|
+
}
|
|
860
|
+
},
|
|
861
|
+
"observability": {
|
|
862
|
+
"type": "object",
|
|
863
|
+
"description": "Observability dashboard configuration (in-process metrics + SSE stream)",
|
|
864
|
+
"additionalProperties": false,
|
|
865
|
+
"properties": {
|
|
866
|
+
"enabled": {
|
|
867
|
+
"type": "boolean",
|
|
868
|
+
"default": true
|
|
869
|
+
},
|
|
870
|
+
"sampleIntervalMs": {
|
|
871
|
+
"type": "integer",
|
|
872
|
+
"minimum": 250,
|
|
873
|
+
"maximum": 60000,
|
|
874
|
+
"default": 2000
|
|
875
|
+
},
|
|
876
|
+
"retentionShortMinutes": {
|
|
877
|
+
"type": "integer",
|
|
878
|
+
"minimum": 1,
|
|
879
|
+
"maximum": 60,
|
|
880
|
+
"default": 15
|
|
881
|
+
},
|
|
882
|
+
"retentionLongHours": {
|
|
883
|
+
"type": "integer",
|
|
884
|
+
"minimum": 1,
|
|
885
|
+
"maximum": 168,
|
|
886
|
+
"default": 24
|
|
887
|
+
},
|
|
888
|
+
"pprMetricsEnabled": {
|
|
889
|
+
"type": "boolean",
|
|
890
|
+
"default": true
|
|
891
|
+
},
|
|
892
|
+
"packedStatsEnabled": {
|
|
893
|
+
"type": "boolean",
|
|
894
|
+
"default": true
|
|
895
|
+
},
|
|
896
|
+
"scipIngestMetrics": {
|
|
897
|
+
"type": "boolean",
|
|
898
|
+
"default": true
|
|
899
|
+
},
|
|
900
|
+
"beamExplainCapacity": {
|
|
901
|
+
"type": "integer",
|
|
902
|
+
"minimum": 8,
|
|
903
|
+
"maximum": 2048,
|
|
904
|
+
"default": 128
|
|
905
|
+
},
|
|
906
|
+
"beamExplainEntriesPerSlice": {
|
|
907
|
+
"type": "integer",
|
|
908
|
+
"minimum": 16,
|
|
909
|
+
"maximum": 8192,
|
|
910
|
+
"default": 512
|
|
911
|
+
},
|
|
912
|
+
"sseHeartbeatMs": {
|
|
913
|
+
"type": "integer",
|
|
914
|
+
"minimum": 1000,
|
|
915
|
+
"maximum": 60000,
|
|
916
|
+
"default": 15000
|
|
917
|
+
},
|
|
918
|
+
"sseMaxStreamMs": {
|
|
919
|
+
"type": "integer",
|
|
920
|
+
"minimum": 60000,
|
|
921
|
+
"maximum": 86400000,
|
|
922
|
+
"default": 3600000,
|
|
923
|
+
"description": "Maximum lifetime for a single observability SSE stream before the server closes it."
|
|
924
|
+
}
|
|
925
|
+
},
|
|
926
|
+
"default": {
|
|
927
|
+
"enabled": true,
|
|
928
|
+
"sampleIntervalMs": 2000,
|
|
929
|
+
"retentionShortMinutes": 15,
|
|
930
|
+
"retentionLongHours": 24,
|
|
931
|
+
"pprMetricsEnabled": true,
|
|
932
|
+
"packedStatsEnabled": true,
|
|
933
|
+
"scipIngestMetrics": true,
|
|
934
|
+
"beamExplainCapacity": 128,
|
|
935
|
+
"beamExplainEntriesPerSlice": 512,
|
|
936
|
+
"sseHeartbeatMs": 15000,
|
|
937
|
+
"sseMaxStreamMs": 3600000
|
|
822
938
|
}
|
|
823
939
|
},
|
|
824
940
|
"tracing": {
|
|
@@ -1069,11 +1185,52 @@
|
|
|
1069
1185
|
"description": "Static bearer token. When null a random token is generated at startup.",
|
|
1070
1186
|
"minLength": 1,
|
|
1071
1187
|
"default": null
|
|
1188
|
+
},
|
|
1189
|
+
"rateLimit": {
|
|
1190
|
+
"type": "object",
|
|
1191
|
+
"description": "Per-client token bucket for protected HTTP routes before bearer-token comparison",
|
|
1192
|
+
"properties": {
|
|
1193
|
+
"bucketSize": {
|
|
1194
|
+
"type": "integer",
|
|
1195
|
+
"minimum": 1,
|
|
1196
|
+
"maximum": 10000,
|
|
1197
|
+
"default": 30
|
|
1198
|
+
},
|
|
1199
|
+
"refillPerSec": {
|
|
1200
|
+
"type": "number",
|
|
1201
|
+
"exclusiveMinimum": 0,
|
|
1202
|
+
"maximum": 1000,
|
|
1203
|
+
"default": 0.5
|
|
1204
|
+
}
|
|
1205
|
+
},
|
|
1206
|
+
"default": {
|
|
1207
|
+
"bucketSize": 30,
|
|
1208
|
+
"refillPerSec": 0.5
|
|
1209
|
+
}
|
|
1072
1210
|
}
|
|
1073
1211
|
},
|
|
1074
1212
|
"default": {
|
|
1075
1213
|
"enabled": false,
|
|
1076
|
-
"token": null
|
|
1214
|
+
"token": null,
|
|
1215
|
+
"rateLimit": {
|
|
1216
|
+
"bucketSize": 30,
|
|
1217
|
+
"refillPerSec": 0.5
|
|
1218
|
+
}
|
|
1219
|
+
}
|
|
1220
|
+
},
|
|
1221
|
+
"http": {
|
|
1222
|
+
"type": "object",
|
|
1223
|
+
"description": "HTTP transport bind configuration.",
|
|
1224
|
+
"additionalProperties": false,
|
|
1225
|
+
"properties": {
|
|
1226
|
+
"allowRemote": {
|
|
1227
|
+
"type": "boolean",
|
|
1228
|
+
"description": "Allow binding the HTTP transport to a non-loopback host such as 0.0.0.0 or ::.",
|
|
1229
|
+
"default": false
|
|
1230
|
+
}
|
|
1231
|
+
},
|
|
1232
|
+
"default": {
|
|
1233
|
+
"allowRemote": false
|
|
1077
1234
|
}
|
|
1078
1235
|
},
|
|
1079
1236
|
"codeMode": {
|
|
@@ -1164,6 +1321,13 @@
|
|
|
1164
1321
|
"default": 0.95
|
|
1165
1322
|
},
|
|
1166
1323
|
"autoIngestOnRefresh": { "type": "boolean", "default": true },
|
|
1324
|
+
"ingestConcurrency": {
|
|
1325
|
+
"type": "integer",
|
|
1326
|
+
"description": "Number of SCIP indexes to ingest concurrently. Decode/parse overlaps; writes still serialise via writeLimiter. Default 1 (sequential).",
|
|
1327
|
+
"minimum": 1,
|
|
1328
|
+
"maximum": 8,
|
|
1329
|
+
"default": 1
|
|
1330
|
+
},
|
|
1167
1331
|
"generator": {
|
|
1168
1332
|
"type": "object",
|
|
1169
1333
|
"description": "Auto-generate index.scip via the scip-io CLI before each refresh. Has no effect unless scip.enabled is also true. When enabled and the binary is missing, sdl-mcp downloads it from GitHub releases into ~/.sdl-mcp/bin/ with mandatory SHA-256 verification against the release's SHA256SUMS.txt; installs are refused if the checksum file is absent.",
|
|
@@ -1181,6 +1345,11 @@
|
|
|
1181
1345
|
"minimum": 1000,
|
|
1182
1346
|
"maximum": 1800000,
|
|
1183
1347
|
"default": 600000
|
|
1348
|
+
},
|
|
1349
|
+
"cleanupAfterIngest": {
|
|
1350
|
+
"type": "boolean",
|
|
1351
|
+
"description": "Delete <repoRoot>/index.scip after the post-refresh ingest consumes it. The file is regenerated every refresh, so keeping it just clutters the working tree. Only the default output location is cleaned up — passing --output via args opts you out of cleanup automatically.",
|
|
1352
|
+
"default": true
|
|
1184
1353
|
}
|
|
1185
1354
|
},
|
|
1186
1355
|
"default": {
|
|
@@ -1188,7 +1357,8 @@
|
|
|
1188
1357
|
"binary": "scip-io",
|
|
1189
1358
|
"args": [],
|
|
1190
1359
|
"autoInstall": true,
|
|
1191
|
-
"timeoutMs": 600000
|
|
1360
|
+
"timeoutMs": 600000,
|
|
1361
|
+
"cleanupAfterIngest": true
|
|
1192
1362
|
}
|
|
1193
1363
|
}
|
|
1194
1364
|
}
|
|
@@ -1231,6 +1401,55 @@
|
|
|
1231
1401
|
}
|
|
1232
1402
|
},
|
|
1233
1403
|
"additionalProperties": false
|
|
1404
|
+
},
|
|
1405
|
+
"wire": {
|
|
1406
|
+
"type": "object",
|
|
1407
|
+
"description": "Wire-format configuration (packed, auto-gate)",
|
|
1408
|
+
"properties": {
|
|
1409
|
+
"packed": {
|
|
1410
|
+
"type": "object",
|
|
1411
|
+
"properties": {
|
|
1412
|
+
"enabled": {
|
|
1413
|
+
"type": "boolean",
|
|
1414
|
+
"description": "Master switch for packed wire format. Env var SDL_PACKED_ENABLED overrides.",
|
|
1415
|
+
"default": true
|
|
1416
|
+
},
|
|
1417
|
+
"threshold": {
|
|
1418
|
+
"type": "number",
|
|
1419
|
+
"description": "Minimum byte-savings ratio before packed payload is emitted (0.0-1.0). Env var SDL_PACKED_THRESHOLD overrides.",
|
|
1420
|
+
"default": 0.1,
|
|
1421
|
+
"minimum": 0,
|
|
1422
|
+
"maximum": 1
|
|
1423
|
+
},
|
|
1424
|
+
"tokenThreshold": {
|
|
1425
|
+
"type": "number",
|
|
1426
|
+
"description": "Minimum estimated-token-savings ratio before packed payload is emitted (0.0-1.0). Either threshold (bytes OR tokens) is sufficient. Env var SDL_PACKED_TOKEN_THRESHOLD overrides.",
|
|
1427
|
+
"default": 0.2,
|
|
1428
|
+
"minimum": 0,
|
|
1429
|
+
"maximum": 1
|
|
1430
|
+
},
|
|
1431
|
+
"defaultFormat": {
|
|
1432
|
+
"type": "string",
|
|
1433
|
+
"enum": ["packed", "auto", "compact"],
|
|
1434
|
+
"description": "Default wire format when client omits the field. Env var SDL_PACKED_DEFAULT_FORMAT overrides.",
|
|
1435
|
+
"default": "auto"
|
|
1436
|
+
},
|
|
1437
|
+
"encoders": {
|
|
1438
|
+
"type": "object",
|
|
1439
|
+
"description": "Per-encoder enable map keyed by encoderId (sl1, ss1, ctx1)",
|
|
1440
|
+
"additionalProperties": {
|
|
1441
|
+
"type": "object",
|
|
1442
|
+
"properties": {
|
|
1443
|
+
"enabled": { "type": "boolean", "default": true }
|
|
1444
|
+
},
|
|
1445
|
+
"additionalProperties": false
|
|
1446
|
+
}
|
|
1447
|
+
}
|
|
1448
|
+
},
|
|
1449
|
+
"additionalProperties": false
|
|
1450
|
+
}
|
|
1451
|
+
},
|
|
1452
|
+
"additionalProperties": false
|
|
1234
1453
|
}
|
|
1235
1454
|
}
|
|
1236
1455
|
}
|