@steno-ai/engine 0.1.17 → 0.1.19
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 +0 -0
- package/dist/adapters/cache.d.ts +0 -0
- package/dist/adapters/cache.d.ts.map +0 -0
- package/dist/adapters/cache.js +0 -0
- package/dist/adapters/cache.js.map +0 -0
- package/dist/adapters/embedding.d.ts +0 -0
- package/dist/adapters/embedding.d.ts.map +0 -0
- package/dist/adapters/embedding.js +0 -0
- package/dist/adapters/embedding.js.map +0 -0
- package/dist/adapters/gemini-embedding.d.ts +0 -0
- package/dist/adapters/gemini-embedding.d.ts.map +0 -0
- package/dist/adapters/gemini-embedding.js +0 -0
- package/dist/adapters/gemini-embedding.js.map +0 -0
- package/dist/adapters/index.d.ts +0 -0
- package/dist/adapters/index.d.ts.map +0 -0
- package/dist/adapters/index.js +0 -0
- package/dist/adapters/index.js.map +0 -0
- package/dist/adapters/llm.d.ts +0 -0
- package/dist/adapters/llm.d.ts.map +0 -0
- package/dist/adapters/llm.js +0 -0
- package/dist/adapters/llm.js.map +0 -0
- package/dist/adapters/perplexity-embedding.d.ts +0 -0
- package/dist/adapters/perplexity-embedding.d.ts.map +0 -0
- package/dist/adapters/perplexity-embedding.js +0 -0
- package/dist/adapters/perplexity-embedding.js.map +0 -0
- package/dist/adapters/storage.d.ts +0 -0
- package/dist/adapters/storage.d.ts.map +0 -0
- package/dist/adapters/storage.js +0 -0
- package/dist/adapters/storage.js.map +0 -0
- package/dist/auth/api-key.d.ts +0 -0
- package/dist/auth/api-key.d.ts.map +0 -0
- package/dist/auth/api-key.js +0 -0
- package/dist/auth/api-key.js.map +0 -0
- package/dist/auth/index.d.ts +0 -0
- package/dist/auth/index.d.ts.map +0 -0
- package/dist/auth/index.js +0 -0
- package/dist/auth/index.js.map +0 -0
- package/dist/config.d.ts +0 -0
- package/dist/config.d.ts.map +0 -0
- package/dist/config.js +0 -0
- package/dist/config.js.map +0 -0
- package/dist/extraction/codebase-extractor.d.ts +0 -0
- package/dist/extraction/codebase-extractor.d.ts.map +0 -0
- package/dist/extraction/codebase-extractor.js +0 -0
- package/dist/extraction/codebase-extractor.js.map +0 -0
- package/dist/extraction/codebase-prompts.d.ts +0 -0
- package/dist/extraction/codebase-prompts.d.ts.map +0 -0
- package/dist/extraction/codebase-prompts.js +0 -0
- package/dist/extraction/codebase-prompts.js.map +0 -0
- package/dist/extraction/contradiction.d.ts +0 -0
- package/dist/extraction/contradiction.d.ts.map +0 -0
- package/dist/extraction/contradiction.js +0 -0
- package/dist/extraction/contradiction.js.map +0 -0
- package/dist/extraction/cross-linker.d.ts +0 -0
- package/dist/extraction/cross-linker.d.ts.map +0 -0
- package/dist/extraction/cross-linker.js +0 -0
- package/dist/extraction/cross-linker.js.map +0 -0
- package/dist/extraction/dedup.d.ts +0 -0
- package/dist/extraction/dedup.d.ts.map +0 -0
- package/dist/extraction/dedup.js +0 -0
- package/dist/extraction/dedup.js.map +0 -0
- package/dist/extraction/entity-extractor.d.ts +0 -0
- package/dist/extraction/entity-extractor.d.ts.map +0 -0
- package/dist/extraction/entity-extractor.js +0 -0
- package/dist/extraction/entity-extractor.js.map +0 -0
- package/dist/extraction/hasher.d.ts +0 -0
- package/dist/extraction/hasher.d.ts.map +0 -0
- package/dist/extraction/hasher.js +0 -0
- package/dist/extraction/hasher.js.map +0 -0
- package/dist/extraction/heuristic.d.ts +0 -0
- package/dist/extraction/heuristic.d.ts.map +0 -0
- package/dist/extraction/heuristic.js +0 -0
- package/dist/extraction/heuristic.js.map +0 -0
- package/dist/extraction/index.d.ts +0 -0
- package/dist/extraction/index.d.ts.map +0 -0
- package/dist/extraction/index.js +0 -0
- package/dist/extraction/index.js.map +0 -0
- package/dist/extraction/llm-extractor.d.ts +0 -0
- package/dist/extraction/llm-extractor.d.ts.map +0 -0
- package/dist/extraction/llm-extractor.js +0 -0
- package/dist/extraction/llm-extractor.js.map +0 -0
- package/dist/extraction/pipeline.d.ts +0 -0
- package/dist/extraction/pipeline.d.ts.map +0 -0
- package/dist/extraction/pipeline.js +0 -0
- package/dist/extraction/pipeline.js.map +0 -0
- package/dist/extraction/prompts.d.ts +0 -0
- package/dist/extraction/prompts.d.ts.map +0 -0
- package/dist/extraction/prompts.js +0 -0
- package/dist/extraction/prompts.js.map +0 -0
- package/dist/extraction/sliding-window.d.ts +0 -0
- package/dist/extraction/sliding-window.d.ts.map +0 -0
- package/dist/extraction/sliding-window.js +0 -0
- package/dist/extraction/sliding-window.js.map +0 -0
- package/dist/extraction/structured-cross-linker.d.ts +6 -1
- package/dist/extraction/structured-cross-linker.d.ts.map +1 -1
- package/dist/extraction/structured-cross-linker.js +18 -7
- package/dist/extraction/structured-cross-linker.js.map +1 -1
- package/dist/extraction/structured-extractor.d.ts +0 -0
- package/dist/extraction/structured-extractor.d.ts.map +1 -1
- package/dist/extraction/structured-extractor.js +8 -0
- package/dist/extraction/structured-extractor.js.map +1 -1
- package/dist/extraction/types.d.ts +0 -0
- package/dist/extraction/types.d.ts.map +0 -0
- package/dist/extraction/types.js +0 -0
- package/dist/extraction/types.js.map +0 -0
- package/dist/feedback/index.d.ts +0 -0
- package/dist/feedback/index.d.ts.map +0 -0
- package/dist/feedback/index.js +0 -0
- package/dist/feedback/index.js.map +0 -0
- package/dist/feedback/tracker.d.ts +0 -0
- package/dist/feedback/tracker.d.ts.map +0 -0
- package/dist/feedback/tracker.js +0 -0
- package/dist/feedback/tracker.js.map +0 -0
- package/dist/identity/index.d.ts +0 -0
- package/dist/identity/index.d.ts.map +0 -0
- package/dist/identity/index.js +0 -0
- package/dist/identity/index.js.map +0 -0
- package/dist/identity/resolver.d.ts +0 -0
- package/dist/identity/resolver.d.ts.map +0 -0
- package/dist/identity/resolver.js +0 -0
- package/dist/identity/resolver.js.map +0 -0
- package/dist/index.d.ts +0 -0
- package/dist/index.d.ts.map +0 -0
- package/dist/index.js +0 -0
- package/dist/index.js.map +0 -0
- package/dist/models/api-key.d.ts +0 -0
- package/dist/models/api-key.d.ts.map +0 -0
- package/dist/models/api-key.js +0 -0
- package/dist/models/api-key.js.map +0 -0
- package/dist/models/edge.d.ts +0 -0
- package/dist/models/edge.d.ts.map +0 -0
- package/dist/models/edge.js +0 -0
- package/dist/models/edge.js.map +0 -0
- package/dist/models/entity.d.ts +0 -0
- package/dist/models/entity.d.ts.map +0 -0
- package/dist/models/entity.js +0 -0
- package/dist/models/entity.js.map +0 -0
- package/dist/models/extraction.d.ts +0 -0
- package/dist/models/extraction.d.ts.map +0 -0
- package/dist/models/extraction.js +0 -0
- package/dist/models/extraction.js.map +0 -0
- package/dist/models/fact-entity.d.ts +0 -0
- package/dist/models/fact-entity.d.ts.map +0 -0
- package/dist/models/fact-entity.js +0 -0
- package/dist/models/fact-entity.js.map +0 -0
- package/dist/models/fact.d.ts +0 -0
- package/dist/models/fact.d.ts.map +0 -0
- package/dist/models/fact.js +0 -0
- package/dist/models/fact.js.map +0 -0
- package/dist/models/index.d.ts +0 -0
- package/dist/models/index.d.ts.map +0 -0
- package/dist/models/index.js +0 -0
- package/dist/models/index.js.map +0 -0
- package/dist/models/memory-access.d.ts +0 -0
- package/dist/models/memory-access.d.ts.map +0 -0
- package/dist/models/memory-access.js +0 -0
- package/dist/models/memory-access.js.map +0 -0
- package/dist/models/session-message.d.ts +0 -0
- package/dist/models/session-message.d.ts.map +0 -0
- package/dist/models/session-message.js +0 -0
- package/dist/models/session-message.js.map +0 -0
- package/dist/models/session.d.ts +0 -0
- package/dist/models/session.d.ts.map +0 -0
- package/dist/models/session.js +0 -0
- package/dist/models/session.js.map +0 -0
- package/dist/models/tenant.d.ts +0 -0
- package/dist/models/tenant.d.ts.map +0 -0
- package/dist/models/tenant.js +0 -0
- package/dist/models/tenant.js.map +0 -0
- package/dist/models/trigger.d.ts +0 -0
- package/dist/models/trigger.d.ts.map +0 -0
- package/dist/models/trigger.js +0 -0
- package/dist/models/trigger.js.map +0 -0
- package/dist/models/usage-record.d.ts +0 -0
- package/dist/models/usage-record.d.ts.map +0 -0
- package/dist/models/usage-record.js +0 -0
- package/dist/models/usage-record.js.map +0 -0
- package/dist/models/webhook.d.ts +0 -0
- package/dist/models/webhook.d.ts.map +0 -0
- package/dist/models/webhook.js +0 -0
- package/dist/models/webhook.js.map +0 -0
- package/dist/profiles/index.d.ts +0 -0
- package/dist/profiles/index.d.ts.map +0 -0
- package/dist/profiles/index.js +0 -0
- package/dist/profiles/index.js.map +0 -0
- package/dist/profiles/profile.d.ts +0 -0
- package/dist/profiles/profile.d.ts.map +0 -0
- package/dist/profiles/profile.js +0 -0
- package/dist/profiles/profile.js.map +0 -0
- package/dist/retrieval/compound-search.d.ts +0 -0
- package/dist/retrieval/compound-search.d.ts.map +0 -0
- package/dist/retrieval/compound-search.js +0 -0
- package/dist/retrieval/compound-search.js.map +0 -0
- package/dist/retrieval/contradiction-surfacer.d.ts +0 -0
- package/dist/retrieval/contradiction-surfacer.d.ts.map +0 -0
- package/dist/retrieval/contradiction-surfacer.js +0 -0
- package/dist/retrieval/contradiction-surfacer.js.map +0 -0
- package/dist/retrieval/embedding-cache.d.ts +0 -0
- package/dist/retrieval/embedding-cache.d.ts.map +0 -0
- package/dist/retrieval/embedding-cache.js +0 -0
- package/dist/retrieval/embedding-cache.js.map +0 -0
- package/dist/retrieval/fusion.d.ts +0 -0
- package/dist/retrieval/fusion.d.ts.map +0 -0
- package/dist/retrieval/fusion.js +0 -0
- package/dist/retrieval/fusion.js.map +0 -0
- package/dist/retrieval/graph-traversal.d.ts +0 -0
- package/dist/retrieval/graph-traversal.d.ts.map +0 -0
- package/dist/retrieval/graph-traversal.js +0 -0
- package/dist/retrieval/graph-traversal.js.map +0 -0
- package/dist/retrieval/index.d.ts +0 -0
- package/dist/retrieval/index.d.ts.map +0 -0
- package/dist/retrieval/index.js +0 -0
- package/dist/retrieval/index.js.map +0 -0
- package/dist/retrieval/keyword-search.d.ts +0 -0
- package/dist/retrieval/keyword-search.d.ts.map +0 -0
- package/dist/retrieval/keyword-search.js +0 -0
- package/dist/retrieval/keyword-search.js.map +0 -0
- package/dist/retrieval/query-expansion.d.ts +0 -0
- package/dist/retrieval/query-expansion.d.ts.map +0 -0
- package/dist/retrieval/query-expansion.js +0 -0
- package/dist/retrieval/query-expansion.js.map +0 -0
- package/dist/retrieval/reranker.d.ts +0 -0
- package/dist/retrieval/reranker.d.ts.map +0 -0
- package/dist/retrieval/reranker.js +0 -0
- package/dist/retrieval/reranker.js.map +0 -0
- package/dist/retrieval/salience-scorer.d.ts +0 -0
- package/dist/retrieval/salience-scorer.d.ts.map +0 -0
- package/dist/retrieval/salience-scorer.js +0 -0
- package/dist/retrieval/salience-scorer.js.map +0 -0
- package/dist/retrieval/search.d.ts +0 -0
- package/dist/retrieval/search.d.ts.map +0 -0
- package/dist/retrieval/search.js +0 -0
- package/dist/retrieval/search.js.map +0 -0
- package/dist/retrieval/temporal-scorer.d.ts +0 -0
- package/dist/retrieval/temporal-scorer.d.ts.map +0 -0
- package/dist/retrieval/temporal-scorer.js +0 -0
- package/dist/retrieval/temporal-scorer.js.map +0 -0
- package/dist/retrieval/trigger-matcher.d.ts +0 -0
- package/dist/retrieval/trigger-matcher.d.ts.map +0 -0
- package/dist/retrieval/trigger-matcher.js +0 -0
- package/dist/retrieval/trigger-matcher.js.map +0 -0
- package/dist/retrieval/types.d.ts +0 -0
- package/dist/retrieval/types.d.ts.map +0 -0
- package/dist/retrieval/types.js +0 -0
- package/dist/retrieval/types.js.map +0 -0
- package/dist/retrieval/vector-search.d.ts +0 -0
- package/dist/retrieval/vector-search.d.ts.map +0 -0
- package/dist/retrieval/vector-search.js +0 -0
- package/dist/retrieval/vector-search.js.map +0 -0
- package/dist/salience/decay.d.ts +0 -0
- package/dist/salience/decay.d.ts.map +0 -0
- package/dist/salience/decay.js +0 -0
- package/dist/salience/decay.js.map +0 -0
- package/dist/salience/index.d.ts +0 -0
- package/dist/salience/index.d.ts.map +0 -0
- package/dist/salience/index.js +0 -0
- package/dist/salience/index.js.map +0 -0
- package/dist/scratchpad/index.d.ts +0 -0
- package/dist/scratchpad/index.d.ts.map +0 -0
- package/dist/scratchpad/index.js +0 -0
- package/dist/scratchpad/index.js.map +0 -0
- package/dist/scratchpad/scratchpad.d.ts +0 -0
- package/dist/scratchpad/scratchpad.d.ts.map +0 -0
- package/dist/scratchpad/scratchpad.js +0 -0
- package/dist/scratchpad/scratchpad.js.map +0 -0
- package/dist/sessions/index.d.ts +0 -0
- package/dist/sessions/index.d.ts.map +0 -0
- package/dist/sessions/index.js +0 -0
- package/dist/sessions/index.js.map +0 -0
- package/dist/sessions/manager.d.ts +0 -0
- package/dist/sessions/manager.d.ts.map +0 -0
- package/dist/sessions/manager.js +0 -0
- package/dist/sessions/manager.js.map +0 -0
- package/package.json +9 -9
- package/src/adapters/cache.ts +0 -0
- package/src/adapters/embedding.ts +0 -0
- package/src/adapters/gemini-embedding.ts +0 -0
- package/src/adapters/index.ts +0 -0
- package/src/adapters/llm.ts +0 -0
- package/src/adapters/perplexity-embedding.ts +0 -0
- package/src/adapters/storage.ts +0 -0
- package/src/auth/api-key.ts +0 -0
- package/src/auth/index.ts +0 -0
- package/src/config.ts +0 -0
- package/src/extraction/codebase-extractor.ts +0 -0
- package/src/extraction/codebase-prompts.ts +0 -0
- package/src/extraction/contradiction.ts +0 -0
- package/src/extraction/cross-linker.ts +0 -0
- package/src/extraction/dedup.ts +0 -0
- package/src/extraction/entity-extractor.ts +0 -0
- package/src/extraction/hasher.ts +0 -0
- package/src/extraction/heuristic.ts +0 -0
- package/src/extraction/index.ts +0 -0
- package/src/extraction/llm-extractor.ts +0 -0
- package/src/extraction/pipeline.ts +0 -0
- package/src/extraction/prompts.ts +0 -0
- package/src/extraction/sliding-window.ts +0 -0
- package/src/extraction/structured-cross-linker.ts +20 -7
- package/src/extraction/structured-extractor.ts +8 -0
- package/src/extraction/types.ts +0 -0
- package/src/feedback/index.ts +0 -0
- package/src/feedback/tracker.ts +0 -0
- package/src/identity/index.ts +0 -0
- package/src/identity/resolver.ts +0 -0
- package/src/index.ts +0 -0
- package/src/models/api-key.ts +0 -0
- package/src/models/edge.ts +0 -0
- package/src/models/entity.ts +0 -0
- package/src/models/extraction.ts +0 -0
- package/src/models/fact-entity.ts +0 -0
- package/src/models/fact.ts +0 -0
- package/src/models/index.ts +0 -0
- package/src/models/memory-access.ts +0 -0
- package/src/models/session-message.ts +0 -0
- package/src/models/session.ts +0 -0
- package/src/models/tenant.ts +0 -0
- package/src/models/trigger.ts +0 -0
- package/src/models/usage-record.ts +0 -0
- package/src/models/webhook.ts +0 -0
- package/src/profiles/index.ts +0 -0
- package/src/profiles/profile.ts +0 -0
- package/src/retrieval/compound-search.ts +0 -0
- package/src/retrieval/contradiction-surfacer.ts +0 -0
- package/src/retrieval/embedding-cache.ts +0 -0
- package/src/retrieval/fusion.ts +0 -0
- package/src/retrieval/graph-traversal.ts +0 -0
- package/src/retrieval/index.ts +0 -0
- package/src/retrieval/keyword-search.ts +0 -0
- package/src/retrieval/query-expansion.ts +0 -0
- package/src/retrieval/reranker.ts +0 -0
- package/src/retrieval/salience-scorer.ts +0 -0
- package/src/retrieval/search.ts +0 -0
- package/src/retrieval/temporal-scorer.ts +0 -0
- package/src/retrieval/trigger-matcher.ts +0 -0
- package/src/retrieval/types.ts +0 -0
- package/src/retrieval/vector-search.ts +0 -0
- package/src/salience/decay.ts +0 -0
- package/src/salience/index.ts +0 -0
- package/src/scratchpad/index.ts +0 -0
- package/src/scratchpad/scratchpad.ts +0 -0
- package/src/sessions/index.ts +0 -0
- package/src/sessions/manager.ts +0 -0
package/dist/models/index.js.map
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/models/session.d.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/models/session.js
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/models/tenant.d.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/models/tenant.js
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/models/trigger.d.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/models/trigger.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/models/webhook.d.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/models/webhook.js
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/profiles/index.d.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/profiles/index.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/profiles/profile.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/retrieval/fusion.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/retrieval/index.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/retrieval/search.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/retrieval/types.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/salience/decay.d.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/salience/decay.js
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/salience/index.d.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/salience/index.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/scratchpad/index.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/sessions/index.d.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/sessions/index.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/sessions/manager.js
CHANGED
|
File without changes
|
|
File without changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steno-ai/engine",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.19",
|
|
4
4
|
"description": "Core memory engine — extraction, retrieval, knowledge graph",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -22,6 +22,13 @@
|
|
|
22
22
|
"src",
|
|
23
23
|
"README.md"
|
|
24
24
|
],
|
|
25
|
+
"scripts": {
|
|
26
|
+
"test": "vitest run",
|
|
27
|
+
"test:watch": "vitest watch",
|
|
28
|
+
"typecheck": "tsc --noEmit",
|
|
29
|
+
"build": "tsc",
|
|
30
|
+
"clean": "rm -rf dist"
|
|
31
|
+
},
|
|
25
32
|
"dependencies": {
|
|
26
33
|
"bcryptjs": "^3.0.3",
|
|
27
34
|
"compromise": "^14.15.0",
|
|
@@ -31,12 +38,5 @@
|
|
|
31
38
|
"@types/bcryptjs": "^3.0.0",
|
|
32
39
|
"typescript": "^5.7",
|
|
33
40
|
"vitest": "^3"
|
|
34
|
-
},
|
|
35
|
-
"scripts": {
|
|
36
|
-
"test": "vitest run",
|
|
37
|
-
"test:watch": "vitest watch",
|
|
38
|
-
"typecheck": "tsc --noEmit",
|
|
39
|
-
"build": "tsc",
|
|
40
|
-
"clean": "rm -rf dist"
|
|
41
41
|
}
|
|
42
|
-
}
|
|
42
|
+
}
|
package/src/adapters/cache.ts
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/adapters/index.ts
CHANGED
|
File without changes
|
package/src/adapters/llm.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/src/adapters/storage.ts
CHANGED
|
File without changes
|
package/src/auth/api-key.ts
CHANGED
|
File without changes
|
package/src/auth/index.ts
CHANGED
|
File without changes
|
package/src/config.ts
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/extraction/dedup.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/src/extraction/hasher.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/src/extraction/index.ts
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -105,10 +105,13 @@ export async function findPendingCrossLinks(
|
|
|
105
105
|
tenantId: string,
|
|
106
106
|
scope: string,
|
|
107
107
|
scopeId: string,
|
|
108
|
-
options?: { minSimilarity?: number; maxCandidates?: number },
|
|
108
|
+
options?: { minSimilarity?: number; maxCandidates?: number; maxFacts?: number; maxDurationMs?: number },
|
|
109
109
|
): Promise<PendingCrossLink[]> {
|
|
110
110
|
const minSim = options?.minSimilarity ?? 0.6;
|
|
111
|
-
const maxCandidates = options?.maxCandidates ??
|
|
111
|
+
const maxCandidates = options?.maxCandidates ?? 20;
|
|
112
|
+
const maxFacts = options?.maxFacts ?? 10;
|
|
113
|
+
const maxDurationMs = options?.maxDurationMs ?? 20000;
|
|
114
|
+
const startTime = Date.now();
|
|
112
115
|
|
|
113
116
|
// Find structured facts by searching for the "structured" tag content
|
|
114
117
|
// We use keyword search since there's no listFacts method
|
|
@@ -117,7 +120,7 @@ export async function findPendingCrossLinks(
|
|
|
117
120
|
tenantId,
|
|
118
121
|
scope,
|
|
119
122
|
scopeId,
|
|
120
|
-
limit:
|
|
123
|
+
limit: maxFacts,
|
|
121
124
|
});
|
|
122
125
|
|
|
123
126
|
if (recentStructuredFacts.length === 0) return [];
|
|
@@ -126,6 +129,12 @@ export async function findPendingCrossLinks(
|
|
|
126
129
|
|
|
127
130
|
// For each structured fact, find semantically similar facts from different source types
|
|
128
131
|
for (const match of recentStructuredFacts) {
|
|
132
|
+
// Time guard — stop before we exceed the budget
|
|
133
|
+
if (Date.now() - startTime > maxDurationMs) {
|
|
134
|
+
console.error(`[steno-structured-xlink] Time budget exhausted after ${candidates.length} candidates`);
|
|
135
|
+
break;
|
|
136
|
+
}
|
|
137
|
+
|
|
129
138
|
const fact = match.fact;
|
|
130
139
|
if (!fact.tags?.includes('structured')) continue;
|
|
131
140
|
|
|
@@ -146,10 +155,8 @@ export async function findPendingCrossLinks(
|
|
|
146
155
|
if (match.fact.id === fact.id) continue;
|
|
147
156
|
if (match.fact.sourceType === fact.sourceType) continue;
|
|
148
157
|
|
|
149
|
-
// Skip if already linked (check if edge exists between their entities)
|
|
150
|
-
// This is a lightweight check — the full edge check happens in processPendingCrossLinks
|
|
151
158
|
candidates.push({
|
|
152
|
-
entityId: '',
|
|
159
|
+
entityId: '',
|
|
153
160
|
entityName: '',
|
|
154
161
|
factId: fact.id,
|
|
155
162
|
factContent: fact.content,
|
|
@@ -183,8 +190,14 @@ export async function processPendingCrossLinks(
|
|
|
183
190
|
tenantId: string,
|
|
184
191
|
scope: string,
|
|
185
192
|
scopeId: string,
|
|
193
|
+
options?: { maxDurationMs?: number; maxFacts?: number },
|
|
186
194
|
): Promise<{ processed: number; edgesCreated: number }> {
|
|
187
|
-
const
|
|
195
|
+
const maxDurationMs = options?.maxDurationMs ?? 20000;
|
|
196
|
+
const candidates = await findPendingCrossLinks(storage, embedding, tenantId, scope, scopeId, {
|
|
197
|
+
maxFacts: options?.maxFacts ?? 10,
|
|
198
|
+
maxDurationMs,
|
|
199
|
+
maxCandidates: 10,
|
|
200
|
+
});
|
|
188
201
|
|
|
189
202
|
if (candidates.length === 0) return { processed: 0, edgesCreated: 0 };
|
|
190
203
|
|
|
@@ -94,6 +94,8 @@ function formatTime(iso: string): string {
|
|
|
94
94
|
// ---------------------------------------------------------------------------
|
|
95
95
|
|
|
96
96
|
export function extractStructuredEvent(data: StructuredEvent): ExtractionResult {
|
|
97
|
+
if (!data?.title) return { facts: [], entities: [], edges: [], tier: 'heuristic', confidence: 1.0, tokensInput: 0, tokensOutput: 0, model: null };
|
|
98
|
+
|
|
97
99
|
const entities: ExtractedEntity[] = [];
|
|
98
100
|
const edges: ExtractedEdge[] = [];
|
|
99
101
|
|
|
@@ -202,6 +204,8 @@ export function extractStructuredEvent(data: StructuredEvent): ExtractionResult
|
|
|
202
204
|
}
|
|
203
205
|
|
|
204
206
|
export function extractStructuredTask(data: StructuredTask): ExtractionResult {
|
|
207
|
+
if (!data?.title) return { facts: [], entities: [], edges: [], tier: 'heuristic', confidence: 1.0, tokensInput: 0, tokensOutput: 0, model: null };
|
|
208
|
+
|
|
205
209
|
const entities: ExtractedEntity[] = [];
|
|
206
210
|
const edges: ExtractedEdge[] = [];
|
|
207
211
|
|
|
@@ -269,6 +273,8 @@ export function extractStructuredTask(data: StructuredTask): ExtractionResult {
|
|
|
269
273
|
}
|
|
270
274
|
|
|
271
275
|
export function extractStructuredEmail(data: StructuredEmail): ExtractionResult {
|
|
276
|
+
if (!data?.subject && !data?.from) return { facts: [], entities: [], edges: [], tier: 'heuristic', confidence: 1.0, tokensInput: 0, tokensOutput: 0, model: null };
|
|
277
|
+
|
|
272
278
|
const entities: ExtractedEntity[] = [];
|
|
273
279
|
const edges: ExtractedEdge[] = [];
|
|
274
280
|
|
|
@@ -340,6 +346,8 @@ export function extractStructuredEmail(data: StructuredEmail): ExtractionResult
|
|
|
340
346
|
}
|
|
341
347
|
|
|
342
348
|
export function extractStructuredVault(data: StructuredVault): ExtractionResult {
|
|
349
|
+
if (!data?.title) return { facts: [], entities: [], edges: [], tier: 'heuristic', confidence: 1.0, tokensInput: 0, tokensOutput: 0, model: null };
|
|
350
|
+
|
|
343
351
|
const entities: ExtractedEntity[] = [];
|
|
344
352
|
const edges: ExtractedEdge[] = [];
|
|
345
353
|
|
package/src/extraction/types.ts
CHANGED
|
File without changes
|
package/src/feedback/index.ts
CHANGED
|
File without changes
|
package/src/feedback/tracker.ts
CHANGED
|
File without changes
|
package/src/identity/index.ts
CHANGED
|
File without changes
|
package/src/identity/resolver.ts
CHANGED
|
File without changes
|
package/src/index.ts
CHANGED
|
File without changes
|
package/src/models/api-key.ts
CHANGED
|
File without changes
|
package/src/models/edge.ts
CHANGED
|
File without changes
|
package/src/models/entity.ts
CHANGED
|
File without changes
|
package/src/models/extraction.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/src/models/fact.ts
CHANGED
|
File without changes
|
package/src/models/index.ts
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/models/session.ts
CHANGED
|
File without changes
|
package/src/models/tenant.ts
CHANGED
|
File without changes
|
package/src/models/trigger.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/src/models/webhook.ts
CHANGED
|
File without changes
|
package/src/profiles/index.ts
CHANGED
|
File without changes
|
package/src/profiles/profile.ts
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/retrieval/fusion.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/src/retrieval/index.ts
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/retrieval/search.ts
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/retrieval/types.ts
CHANGED
|
File without changes
|
|
File without changes
|
package/src/salience/decay.ts
CHANGED
|
File without changes
|
package/src/salience/index.ts
CHANGED
|
File without changes
|
package/src/scratchpad/index.ts
CHANGED
|
File without changes
|