causantic 0.2.0 → 0.3.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 +53 -66
- package/config.schema.json +12 -87
- package/dist/cli/commands/archive.d.ts.map +1 -1
- package/dist/cli/commands/archive.js.map +1 -1
- package/dist/cli/commands/benchmark-collection.d.ts.map +1 -1
- package/dist/cli/commands/benchmark-collection.js.map +1 -1
- package/dist/cli/commands/encryption.d.ts.map +1 -1
- package/dist/cli/commands/encryption.js.map +1 -1
- package/dist/cli/commands/hook.d.ts.map +1 -1
- package/dist/cli/commands/hook.js +8 -2
- package/dist/cli/commands/hook.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +39 -32
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/maintenance.d.ts.map +1 -1
- package/dist/cli/commands/maintenance.js +10 -3
- package/dist/cli/commands/maintenance.js.map +1 -1
- package/dist/cli/commands/serve.d.ts.map +1 -1
- package/dist/cli/commands/serve.js +3 -3
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/cli/skill-templates.d.ts.map +1 -1
- package/dist/cli/skill-templates.js +223 -153
- package/dist/cli/skill-templates.js.map +1 -1
- package/dist/cli/uninstall.d.ts.map +1 -1
- package/dist/cli/uninstall.js +4 -1
- package/dist/cli/uninstall.js.map +1 -1
- package/dist/clusters/cluster-manager.d.ts +23 -0
- package/dist/clusters/cluster-manager.d.ts.map +1 -1
- package/dist/clusters/cluster-manager.js +69 -2
- package/dist/clusters/cluster-manager.js.map +1 -1
- package/dist/clusters/cluster-refresh.d.ts.map +1 -1
- package/dist/clusters/cluster-refresh.js +5 -1
- package/dist/clusters/cluster-refresh.js.map +1 -1
- package/dist/clusters/hdbscan/cluster-extraction.d.ts.map +1 -1
- package/dist/clusters/hdbscan/cluster-extraction.js +1 -2
- package/dist/clusters/hdbscan/cluster-extraction.js.map +1 -1
- package/dist/clusters/hdbscan/hierarchy.d.ts.map +1 -1
- package/dist/clusters/hdbscan/hierarchy.js +1 -3
- package/dist/clusters/hdbscan/hierarchy.js.map +1 -1
- package/dist/clusters/hdbscan/incremental.d.ts.map +1 -1
- package/dist/clusters/hdbscan/incremental.js.map +1 -1
- package/dist/clusters/hdbscan/probabilities.d.ts +1 -1
- package/dist/clusters/hdbscan/probabilities.d.ts.map +1 -1
- package/dist/clusters/hdbscan/probabilities.js +1 -1
- package/dist/clusters/hdbscan/probabilities.js.map +1 -1
- package/dist/clusters/hdbscan.d.ts.map +1 -1
- package/dist/clusters/hdbscan.js +3 -5
- package/dist/clusters/hdbscan.js.map +1 -1
- package/dist/config/loader.d.ts +10 -15
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +40 -71
- package/dist/config/loader.js.map +1 -1
- package/dist/config/memory-config.d.ts +2 -45
- package/dist/config/memory-config.d.ts.map +1 -1
- package/dist/config/memory-config.js +6 -109
- package/dist/config/memory-config.js.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/lexical-features.d.ts.map +1 -1
- package/dist/core/lexical-features.js +141 -20
- package/dist/core/lexical-features.js.map +1 -1
- package/dist/dashboard/client/assets/index-DdImwNQ0.css +1 -0
- package/dist/dashboard/client/assets/index-Ofx8zngH.js +166 -0
- package/dist/dashboard/client/index.html +2 -2
- package/dist/dashboard/routes/benchmark-collection.d.ts.map +1 -1
- package/dist/dashboard/routes/benchmark-collection.js +2 -6
- package/dist/dashboard/routes/benchmark-collection.js.map +1 -1
- package/dist/dashboard/routes/chain.d.ts +3 -0
- package/dist/dashboard/routes/chain.d.ts.map +1 -0
- package/dist/dashboard/routes/chain.js +74 -0
- package/dist/dashboard/routes/chain.js.map +1 -0
- package/dist/dashboard/routes/chunks.d.ts.map +1 -1
- package/dist/dashboard/routes/chunks.js +16 -1
- package/dist/dashboard/routes/chunks.js.map +1 -1
- package/dist/dashboard/routes/graph.d.ts.map +1 -1
- package/dist/dashboard/routes/graph.js.map +1 -1
- package/dist/dashboard/routes/search.d.ts.map +1 -1
- package/dist/dashboard/routes/search.js.map +1 -1
- package/dist/dashboard/routes/stats.d.ts.map +1 -1
- package/dist/dashboard/routes/stats.js +8 -6
- package/dist/dashboard/routes/stats.js.map +1 -1
- package/dist/dashboard/routes/timeline.d.ts +3 -0
- package/dist/dashboard/routes/timeline.d.ts.map +1 -0
- package/dist/dashboard/routes/timeline.js +90 -0
- package/dist/dashboard/routes/timeline.js.map +1 -0
- package/dist/dashboard/server.d.ts.map +1 -1
- package/dist/dashboard/server.js +4 -0
- package/dist/dashboard/server.js.map +1 -1
- package/dist/eval/annotation-schema.d.ts.map +1 -1
- package/dist/eval/annotation-schema.js +2 -5
- package/dist/eval/annotation-schema.js.map +1 -1
- package/dist/eval/benchmark-runner.d.ts.map +1 -1
- package/dist/eval/benchmark-runner.js +2 -2
- package/dist/eval/benchmark-runner.js.map +1 -1
- package/dist/eval/cluster-evaluator.d.ts.map +1 -1
- package/dist/eval/cluster-evaluator.js.map +1 -1
- package/dist/eval/collection-benchmark/chain-quality.d.ts +15 -0
- package/dist/eval/collection-benchmark/chain-quality.d.ts.map +1 -0
- package/dist/eval/collection-benchmark/chain-quality.js +60 -0
- package/dist/eval/collection-benchmark/chain-quality.js.map +1 -0
- package/dist/eval/collection-benchmark/health.d.ts.map +1 -1
- package/dist/eval/collection-benchmark/health.js +2 -2
- package/dist/eval/collection-benchmark/health.js.map +1 -1
- package/dist/eval/collection-benchmark/history.d.ts.map +1 -1
- package/dist/eval/collection-benchmark/history.js +14 -11
- package/dist/eval/collection-benchmark/history.js.map +1 -1
- package/dist/eval/collection-benchmark/latency.d.ts.map +1 -1
- package/dist/eval/collection-benchmark/latency.js +14 -11
- package/dist/eval/collection-benchmark/latency.js.map +1 -1
- package/dist/eval/collection-benchmark/reporter.d.ts.map +1 -1
- package/dist/eval/collection-benchmark/reporter.js +18 -28
- package/dist/eval/collection-benchmark/reporter.js.map +1 -1
- package/dist/eval/collection-benchmark/retrieval.d.ts.map +1 -1
- package/dist/eval/collection-benchmark/retrieval.js +14 -8
- package/dist/eval/collection-benchmark/retrieval.js.map +1 -1
- package/dist/eval/collection-benchmark/runner.d.ts +3 -3
- package/dist/eval/collection-benchmark/runner.d.ts.map +1 -1
- package/dist/eval/collection-benchmark/runner.js +46 -37
- package/dist/eval/collection-benchmark/runner.js.map +1 -1
- package/dist/eval/collection-benchmark/sampler.d.ts.map +1 -1
- package/dist/eval/collection-benchmark/sampler.js +14 -12
- package/dist/eval/collection-benchmark/sampler.js.map +1 -1
- package/dist/eval/collection-benchmark/tuning.d.ts.map +1 -1
- package/dist/eval/collection-benchmark/tuning.js +56 -71
- package/dist/eval/collection-benchmark/tuning.js.map +1 -1
- package/dist/eval/collection-benchmark/types.d.ts +12 -24
- package/dist/eval/collection-benchmark/types.d.ts.map +1 -1
- package/dist/eval/corpus-builder.d.ts.map +1 -1
- package/dist/eval/corpus-builder.js.map +1 -1
- package/dist/eval/experiments/boilerplate-filter.d.ts.map +1 -1
- package/dist/eval/experiments/boilerplate-filter.js.map +1 -1
- package/dist/eval/experiments/cluster-threshold/run-threshold-sweep.d.ts.map +1 -1
- package/dist/eval/experiments/cluster-threshold/run-threshold-sweep.js +3 -5
- package/dist/eval/experiments/cluster-threshold/run-threshold-sweep.js.map +1 -1
- package/dist/eval/experiments/code-focused-mode.d.ts.map +1 -1
- package/dist/eval/experiments/code-focused-mode.js +1 -1
- package/dist/eval/experiments/code-focused-mode.js.map +1 -1
- package/dist/eval/experiments/edge-decay/decay-curves.d.ts +25 -19
- package/dist/eval/experiments/edge-decay/decay-curves.d.ts.map +1 -1
- package/dist/eval/experiments/edge-decay/decay-curves.js +47 -40
- package/dist/eval/experiments/edge-decay/decay-curves.js.map +1 -1
- package/dist/eval/experiments/edge-decay/index.d.ts +6 -4
- package/dist/eval/experiments/edge-decay/index.d.ts.map +1 -1
- package/dist/eval/experiments/edge-decay/index.js +5 -3
- package/dist/eval/experiments/edge-decay/index.js.map +1 -1
- package/dist/eval/experiments/edge-decay/presets.d.ts +14 -4
- package/dist/eval/experiments/edge-decay/presets.d.ts.map +1 -1
- package/dist/eval/experiments/edge-decay/presets.js +73 -68
- package/dist/eval/experiments/edge-decay/presets.js.map +1 -1
- package/dist/eval/experiments/edge-decay/reference-extractor.d.ts +2 -1
- package/dist/eval/experiments/edge-decay/reference-extractor.d.ts.map +1 -1
- package/dist/eval/experiments/edge-decay/reference-extractor.js +26 -40
- package/dist/eval/experiments/edge-decay/reference-extractor.js.map +1 -1
- package/dist/eval/experiments/edge-decay/reference-types.d.ts +24 -17
- package/dist/eval/experiments/edge-decay/reference-types.d.ts.map +1 -1
- package/dist/eval/experiments/edge-decay/reference-types.js +3 -0
- package/dist/eval/experiments/edge-decay/reference-types.js.map +1 -1
- package/dist/eval/experiments/edge-decay/retrieval-ranking.d.ts +8 -8
- package/dist/eval/experiments/edge-decay/retrieval-ranking.d.ts.map +1 -1
- package/dist/eval/experiments/edge-decay/retrieval-ranking.js +77 -133
- package/dist/eval/experiments/edge-decay/retrieval-ranking.js.map +1 -1
- package/dist/eval/experiments/edge-decay/run-experiments.d.ts +7 -3
- package/dist/eval/experiments/edge-decay/run-experiments.d.ts.map +1 -1
- package/dist/eval/experiments/edge-decay/run-experiments.js +71 -52
- package/dist/eval/experiments/edge-decay/run-experiments.js.map +1 -1
- package/dist/eval/experiments/edge-decay/simulate.d.ts +1 -1
- package/dist/eval/experiments/edge-decay/simulate.d.ts.map +1 -1
- package/dist/eval/experiments/edge-decay/simulate.js +7 -19
- package/dist/eval/experiments/edge-decay/simulate.js.map +1 -1
- package/dist/eval/experiments/hdbscan-sweep.d.ts.map +1 -1
- package/dist/eval/experiments/hdbscan-sweep.js +2 -6
- package/dist/eval/experiments/hdbscan-sweep.js.map +1 -1
- package/dist/eval/experiments/single-model-run.d.ts.map +1 -1
- package/dist/eval/experiments/single-model-run.js +2 -2
- package/dist/eval/experiments/single-model-run.js.map +1 -1
- package/dist/eval/experiments/thinking-ablation.d.ts.map +1 -1
- package/dist/eval/experiments/thinking-ablation.js +1 -1
- package/dist/eval/experiments/thinking-ablation.js.map +1 -1
- package/dist/eval/experiments/topic-continuity/hybrid-classifier.d.ts.map +1 -1
- package/dist/eval/experiments/topic-continuity/hybrid-classifier.js +54 -6
- package/dist/eval/experiments/topic-continuity/hybrid-classifier.js.map +1 -1
- package/dist/eval/experiments/topic-continuity/labeler.d.ts.map +1 -1
- package/dist/eval/experiments/topic-continuity/labeler.js +1 -4
- package/dist/eval/experiments/topic-continuity/labeler.js.map +1 -1
- package/dist/eval/experiments/topic-continuity/run-experiment.d.ts.map +1 -1
- package/dist/eval/experiments/topic-continuity/run-experiment.js +5 -13
- package/dist/eval/experiments/topic-continuity/run-experiment.js.map +1 -1
- package/dist/eval/experiments/truncation.d.ts.map +1 -1
- package/dist/eval/experiments/truncation.js.map +1 -1
- package/dist/eval/experiments/types.d.ts.map +1 -1
- package/dist/eval/experiments/types.js.map +1 -1
- package/dist/eval/metrics.d.ts.map +1 -1
- package/dist/eval/metrics.js.map +1 -1
- package/dist/hooks/claudemd-generator.d.ts.map +1 -1
- package/dist/hooks/claudemd-generator.js +3 -4
- package/dist/hooks/claudemd-generator.js.map +1 -1
- package/dist/hooks/hook-utils.d.ts +16 -0
- package/dist/hooks/hook-utils.d.ts.map +1 -1
- package/dist/hooks/hook-utils.js +51 -2
- package/dist/hooks/hook-utils.js.map +1 -1
- package/dist/hooks/index.d.ts +4 -2
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +3 -1
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/pre-compact.d.ts.map +1 -1
- package/dist/hooks/pre-compact.js +6 -51
- package/dist/hooks/pre-compact.js.map +1 -1
- package/dist/hooks/session-end.d.ts +58 -0
- package/dist/hooks/session-end.d.ts.map +1 -0
- package/dist/hooks/session-end.js +82 -0
- package/dist/hooks/session-end.js.map +1 -0
- package/dist/hooks/session-start.d.ts.map +1 -1
- package/dist/hooks/session-start.js +3 -5
- package/dist/hooks/session-start.js.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/dist/ingest/batch-ingest.d.ts.map +1 -1
- package/dist/ingest/batch-ingest.js.map +1 -1
- package/dist/ingest/brief-debrief-detector.d.ts +6 -13
- package/dist/ingest/brief-debrief-detector.d.ts.map +1 -1
- package/dist/ingest/brief-debrief-detector.js +9 -16
- package/dist/ingest/brief-debrief-detector.js.map +1 -1
- package/dist/ingest/cross-session-linker.d.ts +2 -1
- package/dist/ingest/cross-session-linker.d.ts.map +1 -1
- package/dist/ingest/cross-session-linker.js +17 -7
- package/dist/ingest/cross-session-linker.js.map +1 -1
- package/dist/ingest/edge-creator.d.ts +14 -40
- package/dist/ingest/edge-creator.d.ts.map +1 -1
- package/dist/ingest/edge-creator.js +34 -132
- package/dist/ingest/edge-creator.js.map +1 -1
- package/dist/ingest/edge-detector.d.ts +27 -12
- package/dist/ingest/edge-detector.d.ts.map +1 -1
- package/dist/ingest/edge-detector.js +68 -200
- package/dist/ingest/edge-detector.js.map +1 -1
- package/dist/ingest/index.d.ts +3 -3
- package/dist/ingest/index.d.ts.map +1 -1
- package/dist/ingest/index.js +3 -3
- package/dist/ingest/index.js.map +1 -1
- package/dist/ingest/ingest-session.d.ts +1 -8
- package/dist/ingest/ingest-session.d.ts.map +1 -1
- package/dist/ingest/ingest-session.js +54 -107
- package/dist/ingest/ingest-session.js.map +1 -1
- package/dist/ingest/rebuild-edges.d.ts +17 -0
- package/dist/ingest/rebuild-edges.d.ts.map +1 -0
- package/dist/ingest/rebuild-edges.js +97 -0
- package/dist/ingest/rebuild-edges.js.map +1 -0
- package/dist/maintenance/scheduler.d.ts +2 -3
- package/dist/maintenance/scheduler.d.ts.map +1 -1
- package/dist/maintenance/scheduler.js +14 -23
- package/dist/maintenance/scheduler.js.map +1 -1
- package/dist/maintenance/tasks/cleanup-vectors.d.ts +3 -1
- package/dist/maintenance/tasks/cleanup-vectors.d.ts.map +1 -1
- package/dist/maintenance/tasks/cleanup-vectors.js +6 -4
- package/dist/maintenance/tasks/cleanup-vectors.js.map +1 -1
- package/dist/maintenance/tasks/index.d.ts +0 -1
- package/dist/maintenance/tasks/index.d.ts.map +1 -1
- package/dist/maintenance/tasks/index.js +0 -1
- package/dist/maintenance/tasks/index.js.map +1 -1
- package/dist/mcp/index.d.ts +1 -1
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +1 -1
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +9 -8
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools.d.ts +5 -5
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +42 -36
- package/dist/mcp/tools.js.map +1 -1
- package/dist/models/device-detector.d.ts.map +1 -1
- package/dist/models/device-detector.js +20 -10
- package/dist/models/device-detector.js.map +1 -1
- package/dist/models/embedder.d.ts.map +1 -1
- package/dist/models/embedder.js +5 -2
- package/dist/models/embedder.js.map +1 -1
- package/dist/models/model-registry.d.ts.map +1 -1
- package/dist/models/model-registry.js.map +1 -1
- package/dist/parser/chunker.d.ts +5 -40
- package/dist/parser/chunker.d.ts.map +1 -1
- package/dist/parser/chunker.js +5 -111
- package/dist/parser/chunker.js.map +1 -1
- package/dist/parser/session-reader.d.ts.map +1 -1
- package/dist/parser/session-reader.js +3 -6
- package/dist/parser/session-reader.js.map +1 -1
- package/dist/parser/turn-assembler.d.ts.map +1 -1
- package/dist/parser/turn-assembler.js +0 -1
- package/dist/parser/turn-assembler.js.map +1 -1
- package/dist/parser/types.d.ts.map +1 -1
- package/dist/report/reporter.d.ts.map +1 -1
- package/dist/report/reporter.js +1 -3
- package/dist/report/reporter.js.map +1 -1
- package/dist/retrieval/chain-assembler.d.ts +58 -0
- package/dist/retrieval/chain-assembler.d.ts.map +1 -0
- package/dist/retrieval/chain-assembler.js +126 -0
- package/dist/retrieval/chain-assembler.js.map +1 -0
- package/dist/retrieval/chain-walker.d.ts +57 -0
- package/dist/retrieval/chain-walker.d.ts.map +1 -0
- package/dist/retrieval/chain-walker.js +121 -0
- package/dist/retrieval/chain-walker.js.map +1 -0
- package/dist/retrieval/cluster-expander.d.ts.map +1 -1
- package/dist/retrieval/cluster-expander.js +3 -3
- package/dist/retrieval/cluster-expander.js.map +1 -1
- package/dist/retrieval/context-assembler.d.ts +13 -36
- package/dist/retrieval/context-assembler.d.ts.map +1 -1
- package/dist/retrieval/context-assembler.js +50 -287
- package/dist/retrieval/context-assembler.js.map +1 -1
- package/dist/retrieval/index.d.ts +8 -4
- package/dist/retrieval/index.d.ts.map +1 -1
- package/dist/retrieval/index.js +7 -3
- package/dist/retrieval/index.js.map +1 -1
- package/dist/retrieval/rrf.d.ts.map +1 -1
- package/dist/retrieval/rrf.js +4 -2
- package/dist/retrieval/rrf.js.map +1 -1
- package/dist/retrieval/search-assembler.d.ts +59 -0
- package/dist/retrieval/search-assembler.d.ts.map +1 -0
- package/dist/retrieval/search-assembler.js +209 -0
- package/dist/retrieval/search-assembler.js.map +1 -0
- package/dist/retrieval/session-reconstructor.d.ts.map +1 -1
- package/dist/retrieval/session-reconstructor.js +9 -7
- package/dist/retrieval/session-reconstructor.js.map +1 -1
- package/dist/storage/archive.d.ts +0 -2
- package/dist/storage/archive.d.ts.map +1 -1
- package/dist/storage/archive.js +18 -12
- package/dist/storage/archive.js.map +1 -1
- package/dist/storage/checkpoint-store.d.ts +0 -1
- package/dist/storage/checkpoint-store.d.ts.map +1 -1
- package/dist/storage/checkpoint-store.js +5 -7
- package/dist/storage/checkpoint-store.js.map +1 -1
- package/dist/storage/chunk-store.d.ts.map +1 -1
- package/dist/storage/chunk-store.js +15 -17
- package/dist/storage/chunk-store.js.map +1 -1
- package/dist/storage/cluster-store.d.ts.map +1 -1
- package/dist/storage/cluster-store.js.map +1 -1
- package/dist/storage/db.d.ts.map +1 -1
- package/dist/storage/db.js.map +1 -1
- package/dist/storage/edge-store.d.ts +17 -30
- package/dist/storage/edge-store.d.ts.map +1 -1
- package/dist/storage/edge-store.js +43 -123
- package/dist/storage/edge-store.js.map +1 -1
- package/dist/storage/embedding-cache.d.ts.map +1 -1
- package/dist/storage/embedding-cache.js +1 -3
- package/dist/storage/embedding-cache.js.map +1 -1
- package/dist/storage/encryption.d.ts.map +1 -1
- package/dist/storage/encryption.js +4 -15
- package/dist/storage/encryption.js.map +1 -1
- package/dist/storage/index.d.ts +1 -4
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +1 -5
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/keyword-store.d.ts.map +1 -1
- package/dist/storage/keyword-store.js +11 -7
- package/dist/storage/keyword-store.js.map +1 -1
- package/dist/storage/migrations.d.ts.map +1 -1
- package/dist/storage/migrations.js +56 -4
- package/dist/storage/migrations.js.map +1 -1
- package/dist/storage/schema.sql +8 -20
- package/dist/storage/types.d.ts +12 -26
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/storage/types.js +1 -2
- package/dist/storage/types.js.map +1 -1
- package/dist/storage/vector-store.d.ts +9 -15
- package/dist/storage/vector-store.d.ts.map +1 -1
- package/dist/storage/vector-store.js +64 -43
- package/dist/storage/vector-store.js.map +1 -1
- package/dist/utils/angular-distance.d.ts.map +1 -1
- package/dist/utils/angular-distance.js.map +1 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/secret-store.d.ts.map +1 -1
- package/dist/utils/secret-store.js +17 -13
- package/dist/utils/secret-store.js.map +1 -1
- package/dist/utils/secure-buffer.d.ts.map +1 -1
- package/dist/utils/secure-buffer.js.map +1 -1
- package/package.json +7 -6
- package/src/dashboard/client/package-lock.json +3 -3
- package/src/dashboard/client/package.json +3 -3
- package/dist/dashboard/client/assets/index-CMUKy4f9.css +0 -1
- package/dist/dashboard/client/assets/index-esv8TpCN.js +0 -168
- package/dist/eval/collection-benchmark/graph-value.d.ts +0 -16
- package/dist/eval/collection-benchmark/graph-value.d.ts.map +0 -1
- package/dist/eval/collection-benchmark/graph-value.js +0 -162
- package/dist/eval/collection-benchmark/graph-value.js.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/curve-shapes-experiment.d.ts +0 -10
- package/dist/eval/experiments/vector-decay-shapes/curve-shapes-experiment.d.ts.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/curve-shapes-experiment.js +0 -229
- package/dist/eval/experiments/vector-decay-shapes/curve-shapes-experiment.js.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/graph-range-experiment.d.ts +0 -12
- package/dist/eval/experiments/vector-decay-shapes/graph-range-experiment.d.ts.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/graph-range-experiment.js +0 -316
- package/dist/eval/experiments/vector-decay-shapes/graph-range-experiment.js.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/hop-decay.d.ts +0 -19
- package/dist/eval/experiments/vector-decay-shapes/hop-decay.d.ts.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/hop-decay.js +0 -127
- package/dist/eval/experiments/vector-decay-shapes/hop-decay.js.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/index.d.ts +0 -11
- package/dist/eval/experiments/vector-decay-shapes/index.d.ts.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/index.js +0 -11
- package/dist/eval/experiments/vector-decay-shapes/index.js.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/path-traversal-experiment.d.ts +0 -14
- package/dist/eval/experiments/vector-decay-shapes/path-traversal-experiment.d.ts.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/path-traversal-experiment.js +0 -274
- package/dist/eval/experiments/vector-decay-shapes/path-traversal-experiment.js.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/presets.d.ts +0 -36
- package/dist/eval/experiments/vector-decay-shapes/presets.d.ts.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/presets.js +0 -157
- package/dist/eval/experiments/vector-decay-shapes/presets.js.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/run-experiment.d.ts +0 -20
- package/dist/eval/experiments/vector-decay-shapes/run-experiment.d.ts.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/run-experiment.js +0 -504
- package/dist/eval/experiments/vector-decay-shapes/run-experiment.js.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/types.d.ts +0 -111
- package/dist/eval/experiments/vector-decay-shapes/types.d.ts.map +0 -1
- package/dist/eval/experiments/vector-decay-shapes/types.js +0 -15
- package/dist/eval/experiments/vector-decay-shapes/types.js.map +0 -1
- package/dist/eval/experiments/vector-decay-sweep/index.d.ts +0 -7
- package/dist/eval/experiments/vector-decay-sweep/index.d.ts.map +0 -1
- package/dist/eval/experiments/vector-decay-sweep/index.js +0 -7
- package/dist/eval/experiments/vector-decay-sweep/index.js.map +0 -1
- package/dist/eval/experiments/vector-decay-sweep/run-sweep.d.ts +0 -30
- package/dist/eval/experiments/vector-decay-sweep/run-sweep.d.ts.map +0 -1
- package/dist/eval/experiments/vector-decay-sweep/run-sweep.js +0 -378
- package/dist/eval/experiments/vector-decay-sweep/run-sweep.js.map +0 -1
- package/dist/eval/experiments/vector-decay-sweep/types.d.ts +0 -109
- package/dist/eval/experiments/vector-decay-sweep/types.d.ts.map +0 -1
- package/dist/eval/experiments/vector-decay-sweep/types.js +0 -16
- package/dist/eval/experiments/vector-decay-sweep/types.js.map +0 -1
- package/dist/maintenance/tasks/prune-graph.d.ts +0 -12
- package/dist/maintenance/tasks/prune-graph.d.ts.map +0 -1
- package/dist/maintenance/tasks/prune-graph.js +0 -23
- package/dist/maintenance/tasks/prune-graph.js.map +0 -1
- package/dist/retrieval/traverser.d.ts +0 -66
- package/dist/retrieval/traverser.d.ts.map +0 -1
- package/dist/retrieval/traverser.js +0 -160
- package/dist/retrieval/traverser.js.map +0 -1
- package/dist/storage/clock-store.d.ts +0 -80
- package/dist/storage/clock-store.d.ts.map +0 -1
- package/dist/storage/clock-store.js +0 -155
- package/dist/storage/clock-store.js.map +0 -1
- package/dist/storage/decay.d.ts +0 -125
- package/dist/storage/decay.d.ts.map +0 -1
- package/dist/storage/decay.js +0 -276
- package/dist/storage/decay.js.map +0 -1
- package/dist/storage/pruner.d.ts +0 -111
- package/dist/storage/pruner.d.ts.map +0 -1
- package/dist/storage/pruner.js +0 -280
- package/dist/storage/pruner.js.map +0 -1
- package/dist/temporal/clock-compactor.d.ts +0 -65
- package/dist/temporal/clock-compactor.d.ts.map +0 -1
- package/dist/temporal/clock-compactor.js +0 -157
- package/dist/temporal/clock-compactor.js.map +0 -1
- package/dist/temporal/index.d.ts +0 -6
- package/dist/temporal/index.d.ts.map +0 -1
- package/dist/temporal/index.js +0 -6
- package/dist/temporal/index.js.map +0 -1
- package/dist/temporal/vector-clock.d.ts +0 -143
- package/dist/temporal/vector-clock.d.ts.map +0 -1
- package/dist/temporal/vector-clock.js +0 -231
- package/dist/temporal/vector-clock.js.map +0 -1
- package/dist/utils/keychain.d.ts +0 -43
- package/dist/utils/keychain.d.ts.map +0 -1
- package/dist/utils/keychain.js +0 -82
- package/dist/utils/keychain.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Cross-session edge detection and creation.
|
|
3
|
-
* Detects continued sessions and creates
|
|
3
|
+
* Detects continued sessions and creates a single edge across session boundaries.
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
6
|
* Result of cross-session linking for a single session.
|
|
@@ -21,6 +21,7 @@ export interface CrossSessionLinkResult {
|
|
|
21
21
|
export declare function isContinuedSession(firstChunkContent: string): boolean;
|
|
22
22
|
/**
|
|
23
23
|
* Link a session to its previous session if it's a continuation.
|
|
24
|
+
* Creates a single edge: last chunk of previous session → first chunk of new session.
|
|
24
25
|
*
|
|
25
26
|
* @param sessionId - Session ID to check
|
|
26
27
|
* @param sessionSlug - Session slug (project identifier)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cross-session-linker.d.ts","sourceRoot":"","sources":["../../src/ingest/cross-session-linker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,cAAc,EAAE,OAAO,CAAC;CACzB;
|
|
1
|
+
{"version":3,"file":"cross-session-linker.d.ts","sourceRoot":"","sources":["../../src/ingest/cross-session-linker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,cAAc,EAAE,OAAO,CAAC;CACzB;AAWD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAGrE;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,sBAAsB,CAAC,CA0DjC;AAED;;;GAGG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,sBAAsB,EAAE,CAAC;CACnC,CAAC,CAsBD"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Cross-session edge detection and creation.
|
|
3
|
-
* Detects continued sessions and creates
|
|
3
|
+
* Detects continued sessions and creates a single edge across session boundaries.
|
|
4
4
|
*/
|
|
5
5
|
import { getChunksBySession, getSessionIds, getPreviousSession } from '../storage/chunk-store.js';
|
|
6
6
|
import { createCrossSessionEdges } from './edge-creator.js';
|
|
@@ -13,14 +13,24 @@ const CONTINUATION_PATTERNS = [
|
|
|
13
13
|
/^This is a continuation of/,
|
|
14
14
|
/^Resumed session/,
|
|
15
15
|
];
|
|
16
|
+
/**
|
|
17
|
+
* Strip leading role tags (e.g. "[User]\n", "[Assistant]\n") from chunk content.
|
|
18
|
+
* Chunks are rendered with role prefixes by the chunker, but continuation
|
|
19
|
+
* patterns expect raw text.
|
|
20
|
+
*/
|
|
21
|
+
function stripRolePrefix(content) {
|
|
22
|
+
return content.replace(/^\[(?:User|Assistant|Thinking)\]\n/, '');
|
|
23
|
+
}
|
|
16
24
|
/**
|
|
17
25
|
* Check if a session is a continuation of a previous session.
|
|
18
26
|
*/
|
|
19
27
|
export function isContinuedSession(firstChunkContent) {
|
|
20
|
-
|
|
28
|
+
const text = stripRolePrefix(firstChunkContent);
|
|
29
|
+
return CONTINUATION_PATTERNS.some((p) => p.test(text));
|
|
21
30
|
}
|
|
22
31
|
/**
|
|
23
32
|
* Link a session to its previous session if it's a continuation.
|
|
33
|
+
* Creates a single edge: last chunk of previous session → first chunk of new session.
|
|
24
34
|
*
|
|
25
35
|
* @param sessionId - Session ID to check
|
|
26
36
|
* @param sessionSlug - Session slug (project identifier)
|
|
@@ -56,10 +66,9 @@ export async function linkCrossSession(sessionId, sessionSlug) {
|
|
|
56
66
|
isContinuation: true, // Continuation detected but no previous session found
|
|
57
67
|
};
|
|
58
68
|
}
|
|
59
|
-
// Get
|
|
69
|
+
// Get chunks from previous session
|
|
60
70
|
const prevChunks = getChunksBySession(prevSessionInfo.sessionId);
|
|
61
|
-
|
|
62
|
-
if (finalChunks.length === 0) {
|
|
71
|
+
if (prevChunks.length === 0) {
|
|
63
72
|
return {
|
|
64
73
|
sessionId,
|
|
65
74
|
previousSessionId: prevSessionInfo.sessionId,
|
|
@@ -67,8 +76,9 @@ export async function linkCrossSession(sessionId, sessionSlug) {
|
|
|
67
76
|
isContinuation: true,
|
|
68
77
|
};
|
|
69
78
|
}
|
|
70
|
-
//
|
|
71
|
-
const
|
|
79
|
+
// Single edge: last chunk of previous session → first chunk of new session
|
|
80
|
+
const lastPrevChunk = prevChunks[prevChunks.length - 1];
|
|
81
|
+
const edgeCount = await createCrossSessionEdges(lastPrevChunk.id, firstChunk.id);
|
|
72
82
|
return {
|
|
73
83
|
sessionId,
|
|
74
84
|
previousSessionId: prevSessionInfo.sessionId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cross-session-linker.js","sourceRoot":"","sources":["../../src/ingest/cross-session-linker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAClG,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AACH,MAAM,qBAAqB,GAAG;IAC5B,+DAA+D;IAC/D,mCAAmC;IACnC,4BAA4B;IAC5B,kBAAkB;CACnB,CAAC;AAgBF;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,iBAAyB;IAC1D,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"cross-session-linker.js","sourceRoot":"","sources":["../../src/ingest/cross-session-linker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,62 +1,36 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Edge creation
|
|
3
|
-
* Creates
|
|
2
|
+
* Edge creation for sequential linked-list graph.
|
|
3
|
+
* Creates only forward edges (earlier → later). Direction is inferred at query time.
|
|
4
4
|
*/
|
|
5
|
-
import type { ReferenceType } from '../storage/types.js';
|
|
6
5
|
import type { TransitionResult } from './edge-detector.js';
|
|
7
|
-
import type { VectorClock } from '../temporal/vector-clock.js';
|
|
8
|
-
/**
|
|
9
|
-
* Initial weight by reference type.
|
|
10
|
-
* Higher weights for stronger evidence of continuation.
|
|
11
|
-
*/
|
|
12
|
-
export declare const TYPE_WEIGHTS: Record<ReferenceType, number>;
|
|
13
6
|
/**
|
|
14
7
|
* Result of edge creation.
|
|
15
8
|
*/
|
|
16
9
|
export interface EdgeCreationResult {
|
|
17
|
-
/** Number of backward edges created */
|
|
18
|
-
backwardCount: number;
|
|
19
10
|
/** Number of forward edges created */
|
|
20
11
|
forwardCount: number;
|
|
21
|
-
/** Total edges created */
|
|
12
|
+
/** Total edges created (same as forwardCount) */
|
|
22
13
|
totalCount: number;
|
|
23
14
|
}
|
|
24
15
|
/**
|
|
25
|
-
*
|
|
26
|
-
|
|
27
|
-
export interface EdgeCreationOptions {
|
|
28
|
-
/** Vector clock to stamp on edges (optional). */
|
|
29
|
-
vectorClock?: VectorClock;
|
|
30
|
-
/** Use boost mode to dedupe and boost repeated edges. Default: false. */
|
|
31
|
-
useBoostMode?: boolean;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Create edges from detected transitions.
|
|
35
|
-
* Creates both backward (for retrieval) and forward (for prediction) edges.
|
|
36
|
-
*
|
|
37
|
-
* @param transitions - Detected transitions between chunks
|
|
38
|
-
* @param chunkIds - Array of chunk IDs corresponding to transition indices
|
|
39
|
-
* @param options - Edge creation options
|
|
40
|
-
* @returns Edge creation result
|
|
16
|
+
* Create forward edges from detected transitions.
|
|
17
|
+
* Each transition produces a single forward edge (source → target).
|
|
41
18
|
*/
|
|
42
|
-
export declare function createEdgesFromTransitions(transitions: TransitionResult[], chunkIds: string[]
|
|
19
|
+
export declare function createEdgesFromTransitions(transitions: TransitionResult[], chunkIds: string[]): Promise<EdgeCreationResult>;
|
|
43
20
|
/**
|
|
44
|
-
* Create a single edge
|
|
21
|
+
* Create a single forward edge between two chunks.
|
|
45
22
|
*/
|
|
46
|
-
export declare function
|
|
23
|
+
export declare function createForwardEdge(sourceChunkId: string, targetChunkId: string, referenceType: 'within-chain' | 'cross-session' | 'brief' | 'debrief'): Promise<void>;
|
|
47
24
|
/**
|
|
48
|
-
* Create cross-session
|
|
49
|
-
* and first chunk of new (continued) session.
|
|
25
|
+
* Create a cross-session edge: last chunk of previous session → first chunk of new session.
|
|
50
26
|
*/
|
|
51
|
-
export declare function createCrossSessionEdges(
|
|
27
|
+
export declare function createCrossSessionEdges(previousLastChunkId: string, newFirstChunkId: string): Promise<number>;
|
|
52
28
|
/**
|
|
53
|
-
* Create brief
|
|
54
|
-
* These represent the point where a sub-agent is spawned.
|
|
29
|
+
* Create a brief edge: last parent chunk before spawn → first sub-agent chunk.
|
|
55
30
|
*/
|
|
56
|
-
export declare function
|
|
31
|
+
export declare function createBriefEdge(parentLastChunkId: string, subAgentFirstChunkId: string): Promise<void>;
|
|
57
32
|
/**
|
|
58
|
-
* Create debrief
|
|
59
|
-
* These represent the point where a sub-agent returns to the parent.
|
|
33
|
+
* Create a debrief edge: last sub-agent chunk → first parent chunk after return.
|
|
60
34
|
*/
|
|
61
|
-
export declare function
|
|
35
|
+
export declare function createDebriefEdge(subAgentLastChunkId: string, parentFirstChunkId: string): Promise<void>;
|
|
62
36
|
//# sourceMappingURL=edge-creator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edge-creator.d.ts","sourceRoot":"","sources":["../../src/ingest/edge-creator.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"edge-creator.d.ts","sourceRoot":"","sources":["../../src/ingest/edge-creator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sCAAsC;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,iDAAiD;IACjD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,gBAAgB,EAAE,EAC/B,QAAQ,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,kBAAkB,CAAC,CAwB7B;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,cAAc,GAAG,eAAe,GAAG,OAAO,GAAG,SAAS,GACpE,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,mBAAmB,EAAE,MAAM,EAC3B,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,CAYjB;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,iBAAiB,EAAE,MAAM,EACzB,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,mBAAmB,EAAE,MAAM,EAC3B,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC,IAAI,CAAC,CAUf"}
|
|
@@ -1,186 +1,88 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Edge creation
|
|
3
|
-
* Creates
|
|
2
|
+
* Edge creation for sequential linked-list graph.
|
|
3
|
+
* Creates only forward edges (earlier → later). Direction is inferred at query time.
|
|
4
4
|
*/
|
|
5
|
-
import { createEdges
|
|
5
|
+
import { createEdges } from '../storage/edge-store.js';
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
7
|
+
* Create forward edges from detected transitions.
|
|
8
|
+
* Each transition produces a single forward edge (source → target).
|
|
9
9
|
*/
|
|
10
|
-
export
|
|
11
|
-
'file-path': 1.0, // Strong: explicit file reference
|
|
12
|
-
'code-entity': 0.8, // Good: shared code identifiers
|
|
13
|
-
'explicit-backref': 0.9, // Strong: explicit "the error", "that function"
|
|
14
|
-
'error-fragment': 0.9, // Strong: discussing specific error
|
|
15
|
-
'tool-output': 0.8, // Good: referencing tool results
|
|
16
|
-
'adjacent': 0.5, // Weak: just consecutive, no clear link
|
|
17
|
-
'cross-session': 0.7, // Medium: session continuation
|
|
18
|
-
'brief': 0.9, // Strong: parent spawning sub-agent
|
|
19
|
-
'debrief': 0.9, // Strong: sub-agent returning to parent
|
|
20
|
-
};
|
|
21
|
-
/**
|
|
22
|
-
* Create edges from detected transitions.
|
|
23
|
-
* Creates both backward (for retrieval) and forward (for prediction) edges.
|
|
24
|
-
*
|
|
25
|
-
* @param transitions - Detected transitions between chunks
|
|
26
|
-
* @param chunkIds - Array of chunk IDs corresponding to transition indices
|
|
27
|
-
* @param options - Edge creation options
|
|
28
|
-
* @returns Edge creation result
|
|
29
|
-
*/
|
|
30
|
-
export async function createEdgesFromTransitions(transitions, chunkIds, options = {}) {
|
|
31
|
-
const { vectorClock, useBoostMode = false } = options;
|
|
10
|
+
export async function createEdgesFromTransitions(transitions, chunkIds) {
|
|
32
11
|
const edges = [];
|
|
33
12
|
for (const t of transitions) {
|
|
34
13
|
const sourceId = chunkIds[t.sourceIndex];
|
|
35
14
|
const targetId = chunkIds[t.targetIndex];
|
|
36
|
-
const weight = TYPE_WEIGHTS[t.type] * t.confidence;
|
|
37
|
-
// Backward edge: from target (later) to source (earlier)
|
|
38
|
-
// Used for retrieval: "what context led to this?"
|
|
39
|
-
edges.push({
|
|
40
|
-
sourceChunkId: targetId,
|
|
41
|
-
targetChunkId: sourceId,
|
|
42
|
-
edgeType: 'backward',
|
|
43
|
-
referenceType: t.type,
|
|
44
|
-
initialWeight: weight,
|
|
45
|
-
vectorClock,
|
|
46
|
-
});
|
|
47
|
-
// Forward edge: from source (earlier) to target (later)
|
|
48
|
-
// Used for prediction: "what comes after this?"
|
|
49
15
|
edges.push({
|
|
50
16
|
sourceChunkId: sourceId,
|
|
51
17
|
targetChunkId: targetId,
|
|
52
18
|
edgeType: 'forward',
|
|
53
19
|
referenceType: t.type,
|
|
54
|
-
initialWeight:
|
|
55
|
-
vectorClock,
|
|
20
|
+
initialWeight: 1.0,
|
|
56
21
|
});
|
|
57
22
|
}
|
|
58
23
|
if (edges.length > 0) {
|
|
59
|
-
|
|
60
|
-
createOrBoostEdges(edges);
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
createEdges(edges);
|
|
64
|
-
}
|
|
24
|
+
createEdges(edges);
|
|
65
25
|
}
|
|
66
26
|
return {
|
|
67
|
-
|
|
68
|
-
forwardCount: transitions.length,
|
|
27
|
+
forwardCount: edges.length,
|
|
69
28
|
totalCount: edges.length,
|
|
70
29
|
};
|
|
71
30
|
}
|
|
72
31
|
/**
|
|
73
|
-
* Create a single edge
|
|
32
|
+
* Create a single forward edge between two chunks.
|
|
74
33
|
*/
|
|
75
|
-
export async function
|
|
76
|
-
const weight = TYPE_WEIGHTS[referenceType] * confidence;
|
|
34
|
+
export async function createForwardEdge(sourceChunkId, targetChunkId, referenceType) {
|
|
77
35
|
createEdges([
|
|
78
|
-
{
|
|
79
|
-
sourceChunkId: targetChunkId,
|
|
80
|
-
targetChunkId: sourceChunkId,
|
|
81
|
-
edgeType: 'backward',
|
|
82
|
-
referenceType,
|
|
83
|
-
initialWeight: weight,
|
|
84
|
-
vectorClock,
|
|
85
|
-
},
|
|
86
36
|
{
|
|
87
37
|
sourceChunkId,
|
|
88
38
|
targetChunkId,
|
|
89
39
|
edgeType: 'forward',
|
|
90
40
|
referenceType,
|
|
91
|
-
initialWeight:
|
|
92
|
-
vectorClock,
|
|
41
|
+
initialWeight: 1.0,
|
|
93
42
|
},
|
|
94
43
|
]);
|
|
95
44
|
}
|
|
96
45
|
/**
|
|
97
|
-
* Create cross-session
|
|
98
|
-
* and first chunk of new (continued) session.
|
|
46
|
+
* Create a cross-session edge: last chunk of previous session → first chunk of new session.
|
|
99
47
|
*/
|
|
100
|
-
export async function createCrossSessionEdges(
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
// Backward: new session's first chunk can recall prev session context
|
|
105
|
-
edges.push({
|
|
106
|
-
sourceChunkId: newFirstChunkId,
|
|
107
|
-
targetChunkId: prevChunkId,
|
|
108
|
-
edgeType: 'backward',
|
|
109
|
-
referenceType: 'cross-session',
|
|
110
|
-
initialWeight: weight,
|
|
111
|
-
vectorClock,
|
|
112
|
-
});
|
|
113
|
-
// Forward: prev session's final chunks predict continuation
|
|
114
|
-
edges.push({
|
|
115
|
-
sourceChunkId: prevChunkId,
|
|
48
|
+
export async function createCrossSessionEdges(previousLastChunkId, newFirstChunkId) {
|
|
49
|
+
createEdges([
|
|
50
|
+
{
|
|
51
|
+
sourceChunkId: previousLastChunkId,
|
|
116
52
|
targetChunkId: newFirstChunkId,
|
|
117
53
|
edgeType: 'forward',
|
|
118
54
|
referenceType: 'cross-session',
|
|
119
|
-
initialWeight:
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
if (edges.length > 0) {
|
|
124
|
-
createEdges(edges);
|
|
125
|
-
}
|
|
126
|
-
return edges.length;
|
|
55
|
+
initialWeight: 1.0,
|
|
56
|
+
},
|
|
57
|
+
]);
|
|
58
|
+
return 1;
|
|
127
59
|
}
|
|
128
60
|
/**
|
|
129
|
-
* Create brief
|
|
130
|
-
* These represent the point where a sub-agent is spawned.
|
|
61
|
+
* Create a brief edge: last parent chunk before spawn → first sub-agent chunk.
|
|
131
62
|
*/
|
|
132
|
-
export async function
|
|
133
|
-
// Apply depth penalty: deeper nesting = weaker connection
|
|
134
|
-
const depthPenalty = Math.pow(0.9, spawnDepth);
|
|
135
|
-
const weight = TYPE_WEIGHTS['brief'] * depthPenalty;
|
|
63
|
+
export async function createBriefEdge(parentLastChunkId, subAgentFirstChunkId) {
|
|
136
64
|
createEdges([
|
|
137
65
|
{
|
|
138
|
-
sourceChunkId:
|
|
139
|
-
targetChunkId: parentChunkId,
|
|
140
|
-
edgeType: 'backward',
|
|
141
|
-
referenceType: 'brief',
|
|
142
|
-
initialWeight: weight,
|
|
143
|
-
vectorClock,
|
|
144
|
-
},
|
|
145
|
-
{
|
|
146
|
-
sourceChunkId: parentChunkId,
|
|
66
|
+
sourceChunkId: parentLastChunkId,
|
|
147
67
|
targetChunkId: subAgentFirstChunkId,
|
|
148
68
|
edgeType: 'forward',
|
|
149
69
|
referenceType: 'brief',
|
|
150
|
-
initialWeight:
|
|
151
|
-
vectorClock,
|
|
70
|
+
initialWeight: 1.0,
|
|
152
71
|
},
|
|
153
72
|
]);
|
|
154
73
|
}
|
|
155
74
|
/**
|
|
156
|
-
* Create debrief
|
|
157
|
-
* These represent the point where a sub-agent returns to the parent.
|
|
75
|
+
* Create a debrief edge: last sub-agent chunk → first parent chunk after return.
|
|
158
76
|
*/
|
|
159
|
-
export async function
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
for (const agentChunkId of subAgentFinalChunkIds) {
|
|
165
|
-
edges.push({
|
|
166
|
-
sourceChunkId: parentChunkId,
|
|
167
|
-
targetChunkId: agentChunkId,
|
|
168
|
-
edgeType: 'backward',
|
|
169
|
-
referenceType: 'debrief',
|
|
170
|
-
initialWeight: weight,
|
|
171
|
-
vectorClock,
|
|
172
|
-
});
|
|
173
|
-
edges.push({
|
|
174
|
-
sourceChunkId: agentChunkId,
|
|
175
|
-
targetChunkId: parentChunkId,
|
|
77
|
+
export async function createDebriefEdge(subAgentLastChunkId, parentFirstChunkId) {
|
|
78
|
+
createEdges([
|
|
79
|
+
{
|
|
80
|
+
sourceChunkId: subAgentLastChunkId,
|
|
81
|
+
targetChunkId: parentFirstChunkId,
|
|
176
82
|
edgeType: 'forward',
|
|
177
83
|
referenceType: 'debrief',
|
|
178
|
-
initialWeight:
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
}
|
|
182
|
-
if (edges.length > 0) {
|
|
183
|
-
createEdges(edges);
|
|
184
|
-
}
|
|
84
|
+
initialWeight: 1.0,
|
|
85
|
+
},
|
|
86
|
+
]);
|
|
185
87
|
}
|
|
186
88
|
//# sourceMappingURL=edge-creator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edge-creator.js","sourceRoot":"","sources":["../../src/ingest/edge-creator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"edge-creator.js","sourceRoot":"","sources":["../../src/ingest/edge-creator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAcvD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,WAA+B,EAC/B,QAAkB;IAElB,MAAM,KAAK,GAAgB,EAAE,CAAC;IAE9B,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAEzC,KAAK,CAAC,IAAI,CAAC;YACT,aAAa,EAAE,QAAQ;YACvB,aAAa,EAAE,QAAQ;YACvB,QAAQ,EAAE,SAAS;YACnB,aAAa,EAAE,CAAC,CAAC,IAAI;YACrB,aAAa,EAAE,GAAG;SACnB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,WAAW,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,OAAO;QACL,YAAY,EAAE,KAAK,CAAC,MAAM;QAC1B,UAAU,EAAE,KAAK,CAAC,MAAM;KACzB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,aAAqB,EACrB,aAAqB,EACrB,aAAqE;IAErE,WAAW,CAAC;QACV;YACE,aAAa;YACb,aAAa;YACb,QAAQ,EAAE,SAAS;YACnB,aAAa;YACb,aAAa,EAAE,GAAG;SACnB;KACF,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,mBAA2B,EAC3B,eAAuB;IAEvB,WAAW,CAAC;QACV;YACE,aAAa,EAAE,mBAAmB;YAClC,aAAa,EAAE,eAAe;YAC9B,QAAQ,EAAE,SAAS;YACnB,aAAa,EAAE,eAAe;YAC9B,aAAa,EAAE,GAAG;SACnB;KACF,CAAC,CAAC;IAEH,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,iBAAyB,EACzB,oBAA4B;IAE5B,WAAW,CAAC;QACV;YACE,aAAa,EAAE,iBAAiB;YAChC,aAAa,EAAE,oBAAoB;YACnC,QAAQ,EAAE,SAAS;YACnB,aAAa,EAAE,OAAO;YACtB,aAAa,EAAE,GAAG;SACnB;KACF,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,mBAA2B,EAC3B,kBAA0B;IAE1B,WAAW,CAAC;QACV;YACE,aAAa,EAAE,mBAAmB;YAClC,aAAa,EAAE,kBAAkB;YACjC,QAAQ,EAAE,SAAS;YACnB,aAAa,EAAE,SAAS;YACxB,aAAa,EAAE,GAAG;SACnB;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* Causal transition detection for edge creation.
|
|
3
|
+
*
|
|
4
|
+
* Creates sequential linked-list edges between consecutive chunks:
|
|
5
|
+
* - Inter-turn: last chunk of turn A → first chunk of turn B
|
|
6
|
+
* - Intra-turn: C1 → C2 → C3 when a turn splits into multiple chunks
|
|
7
|
+
*
|
|
8
|
+
* The causal graph is a linked list with branch points at sub-agent forks.
|
|
5
9
|
*/
|
|
6
10
|
import type { ReferenceType } from '../storage/types.js';
|
|
7
11
|
import type { Chunk } from '../parser/types.js';
|
|
@@ -13,25 +17,36 @@ export interface TransitionResult {
|
|
|
13
17
|
sourceIndex: number;
|
|
14
18
|
/** Index of target chunk in array */
|
|
15
19
|
targetIndex: number;
|
|
16
|
-
/**
|
|
20
|
+
/** Structural role of the edge */
|
|
17
21
|
type: ReferenceType;
|
|
18
|
-
/** Confidence score (0
|
|
22
|
+
/** Confidence score (always 1.0 for causal transitions) */
|
|
19
23
|
confidence: number;
|
|
20
24
|
/** Evidence for the detection */
|
|
21
25
|
evidence: string;
|
|
22
26
|
}
|
|
23
|
-
/**
|
|
24
|
-
* Detect transitions/edges between consecutive chunks.
|
|
25
|
-
* Returns transitions that should become edges (continuations).
|
|
26
|
-
* Skips transitions that appear to be topic shifts.
|
|
27
|
-
*/
|
|
28
|
-
export declare function detectTransitions(chunks: Chunk[], options?: DetectionOptions): TransitionResult[];
|
|
29
27
|
export interface DetectionOptions {
|
|
30
28
|
/** Time gap threshold in ms. Default: 30 minutes. */
|
|
31
29
|
timeGapThresholdMs?: number;
|
|
32
30
|
}
|
|
33
31
|
/**
|
|
34
|
-
*
|
|
32
|
+
* Detect causal transitions between chunks using sequential linking.
|
|
33
|
+
*
|
|
34
|
+
* Groups chunks by turn index, then:
|
|
35
|
+
* 1. Intra-turn: sequential edges within a turn (C1→C2→C3)
|
|
36
|
+
* 2. Inter-turn: edge from last chunk of turn A to first chunk of turn B
|
|
37
|
+
* (gated by topic shift detection)
|
|
38
|
+
*
|
|
39
|
+
* @param chunks - Array of chunks with metadata.turnIndices
|
|
40
|
+
* @param options - Detection options (time gap threshold)
|
|
41
|
+
* @returns Array of causal transitions
|
|
42
|
+
*/
|
|
43
|
+
export declare function detectCausalTransitions(chunks: Chunk[], options?: DetectionOptions): TransitionResult[];
|
|
44
|
+
/**
|
|
45
|
+
* Legacy alias — detectTransitions now delegates to detectCausalTransitions.
|
|
46
|
+
*/
|
|
47
|
+
export declare function detectTransitions(chunks: Chunk[], options?: DetectionOptions): TransitionResult[];
|
|
48
|
+
/**
|
|
49
|
+
* Get time gap between two chunks in milliseconds.
|
|
35
50
|
*/
|
|
36
51
|
export declare function getTimeGapMs(chunk1: Chunk, chunk2: Chunk): number;
|
|
37
52
|
//# sourceMappingURL=edge-detector.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edge-detector.d.ts","sourceRoot":"","sources":["../../src/ingest/edge-detector.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"edge-detector.d.ts","sourceRoot":"","sources":["../../src/ingest/edge-detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,kCAAkC;IAClC,IAAI,EAAE,aAAa,CAAC;IACpB,2DAA2D;IAC3D,UAAU,EAAE,MAAM,CAAC;IACnB,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAOD,MAAM,WAAW,gBAAgB;IAC/B,qDAAqD;IACrD,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,KAAK,EAAE,EACf,OAAO,GAAE,gBAAqB,GAC7B,gBAAgB,EAAE,CAuEpB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,KAAK,EAAE,EACf,OAAO,GAAE,gBAAqB,GAC7B,gBAAgB,EAAE,CAEpB;AAUD;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAG,MAAM,CAIjE"}
|