@remnic/core 9.64.4 → 9.65.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/access-admin-ops-surface.d.ts +12 -11
- package/dist/access-admin-ops-surface.js +36 -35
- package/dist/access-authorization-probe.d.ts +12 -11
- package/dist/access-authorization-probe.js +37 -36
- package/dist/access-boundary.d.ts +12 -11
- package/dist/access-boundary.js +36 -35
- package/dist/access-cli.js +91 -88
- package/dist/access-cli.js.map +1 -1
- package/dist/access-coding-context-resolution.d.ts +2 -1
- package/dist/access-extraction-force-flush.d.ts +12 -11
- package/dist/access-extraction-force-flush.js +36 -35
- package/dist/access-health-types.d.ts +2 -1
- package/dist/access-http-lcm-compaction.d.ts +12 -11
- package/dist/access-http-lifecycle-flush.d.ts +12 -11
- package/dist/access-http-offline-stream.d.ts +12 -11
- package/dist/access-http-query.d.ts +3 -2
- package/dist/access-http-query.js +38 -37
- package/dist/access-http.d.ts +13 -12
- package/dist/access-http.js +49 -48
- package/dist/access-identity-continuity-surface.d.ts +10 -9
- package/dist/access-identity-continuity-surface.js +36 -35
- package/dist/access-lcm-surface.d.ts +12 -11
- package/dist/access-lcm-surface.js +36 -35
- package/dist/access-mcp.d.ts +12 -11
- package/dist/access-mcp.js +42 -41
- package/dist/access-memory-search-fanout.d.ts +3 -2
- package/dist/{access-namespace-preflight-CYeI1R2_.d.ts → access-namespace-preflight-BKUnKsBv.d.ts} +1 -1
- package/dist/access-namespace-preflight.d.ts +4 -3
- package/dist/access-namespace-preflight.js +36 -35
- package/dist/access-observe-write-surface.d.ts +12 -11
- package/dist/access-observe-write-surface.js +36 -35
- package/dist/access-offline-manifest.d.ts +10 -9
- package/dist/access-operations-batch.js +38 -37
- package/dist/access-operations.d.ts +12 -11
- package/dist/access-operations.js +41 -40
- package/dist/access-recall-concurrency.d.ts +12 -11
- package/dist/access-recall-concurrency.js +36 -35
- package/dist/access-recall-response.d.ts +12 -11
- package/dist/access-recall-response.js +36 -35
- package/dist/access-recall-surface.d.ts +12 -11
- package/dist/access-recall-surface.js +36 -35
- package/dist/{access-service-BKtdXnyk.d.ts → access-service-B1Lbb-nQ.d.ts} +13 -13
- package/dist/access-service-helpers.d.ts +12 -11
- package/dist/access-service.d.ts +12 -11
- package/dist/access-service.js +36 -35
- package/dist/access-surface-catalog.d.ts +12 -11
- package/dist/access-surface-catalog.js +38 -37
- package/dist/access-surface-catalog.js.map +1 -1
- package/dist/access-wearables-meetings-surface.d.ts +4 -3
- package/dist/action-confidence.d.ts +2 -1
- package/dist/active-memory-bridge.d.ts +2 -1
- package/dist/active-recall.d.ts +2 -1
- package/dist/active-recall.js +4 -2
- package/dist/active-recall.js.map +1 -1
- package/dist/ambient-provenance.d.ts +2 -1
- package/dist/artifact-search.d.ts +2 -1
- package/dist/behavior-learner.d.ts +2 -1
- package/dist/behavior-signals.d.ts +2 -1
- package/dist/bootstrap.d.ts +10 -9
- package/dist/briefing-window.d.ts +3 -2
- package/dist/briefing.d.ts +3 -2
- package/dist/briefing.js +15 -14
- package/dist/buffer-surprise-report.d.ts +2 -1
- package/dist/buffer-turn-helpers.d.ts +2 -1
- package/dist/buffer.d.ts +3 -2
- package/dist/buffer.js +5 -5
- package/dist/bulk-import/index.d.ts +4 -3
- package/dist/calibration.d.ts +2 -1
- package/dist/capabilities.d.ts +2 -1
- package/dist/{catalog-CLAqQO2L.d.ts → catalog-DjVhJoRM.d.ts} +1 -1
- package/dist/causal-behavior.d.ts +2 -1
- package/dist/causal-behavior.js +2 -2
- package/dist/causal-chain.js +2 -2
- package/dist/causal-consolidation.d.ts +2 -1
- package/dist/causal-consolidation.js +18 -17
- package/dist/causal-consolidation.js.map +1 -1
- package/dist/causal-retrieval.js +2 -2
- package/dist/causal-trajectory-graph.d.ts +2 -1
- package/dist/causal-trajectory-graph.js +2 -2
- package/dist/causal-trajectory.js +1 -1
- package/dist/{chunk-5HERQ5FX.js → chunk-256FBCVX.js} +5 -5
- package/dist/{chunk-GVRLED7R.js → chunk-2572MRP2.js} +2 -2
- package/dist/{chunk-TY35YQ6E.js → chunk-3MADV4YC.js} +2 -2
- package/dist/{chunk-XACYILRA.js → chunk-3PXVYJMC.js} +31 -31
- package/dist/{chunk-DC4FJY2G.js → chunk-3RHFGGI5.js} +4 -4
- package/dist/{chunk-LOETWOEB.js → chunk-3TMYV3LP.js} +2 -2
- package/dist/chunk-3WU7XOFN.js +102 -0
- package/dist/chunk-3WU7XOFN.js.map +1 -0
- package/dist/{chunk-XH4IQVTN.js → chunk-4W6INNXO.js} +2 -2
- package/dist/{chunk-SB6YBB2V.js → chunk-53ENM6F6.js} +2 -2
- package/dist/{chunk-7V3AZWWZ.js → chunk-5UYSCYR7.js} +9 -7
- package/dist/{chunk-7V3AZWWZ.js.map → chunk-5UYSCYR7.js.map} +1 -1
- package/dist/{chunk-Z6CJLYXT.js → chunk-63FHSH7E.js} +3 -3
- package/dist/{chunk-DG6MJD7W.js → chunk-6JJT5AKI.js} +2 -2
- package/dist/{chunk-7BVO64UC.js → chunk-6L27N6YI.js} +2 -2
- package/dist/chunk-7PHI6GUI.js +95 -0
- package/dist/chunk-7PHI6GUI.js.map +1 -0
- package/dist/{chunk-YXGU3MDQ.js → chunk-7PWWGYGO.js} +2 -2
- package/dist/{chunk-CKZHKFY3.js → chunk-7QFBLYFP.js} +3 -3
- package/dist/{chunk-RWLRKMZK.js → chunk-AGKIG3YA.js} +2 -2
- package/dist/{chunk-A2IBK3TG.js → chunk-ALCJRQ72.js} +2 -2
- package/dist/{chunk-44DSGZFF.js → chunk-BC4QD3FM.js} +2 -2
- package/dist/{chunk-YMOPYG3K.js → chunk-BIJAWZYW.js} +6 -6
- package/dist/{chunk-KRPE7ANR.js → chunk-CCTVAVTT.js} +2 -2
- package/dist/{chunk-VYEPACWY.js → chunk-CEH2AFXG.js} +7 -7
- package/dist/{chunk-XBRGJJK7.js → chunk-CEQF6L5K.js} +3 -3
- package/dist/{chunk-PVIXAMWM.js → chunk-CFRBTATE.js} +2 -2
- package/dist/{chunk-UIYYS2YI.js → chunk-CTQRPANJ.js} +2 -2
- package/dist/{chunk-XZUCNVGE.js → chunk-CUS6S7PN.js} +10 -10
- package/dist/{chunk-KWIGDKM2.js → chunk-D2YNNDML.js} +2 -2
- package/dist/{chunk-MJRVF7SF.js → chunk-DBXZZIDU.js} +87 -56
- package/dist/chunk-DBXZZIDU.js.map +1 -0
- package/dist/{chunk-2QI2JBLQ.js → chunk-DEFI2QBT.js} +16 -10
- package/dist/chunk-DEFI2QBT.js.map +1 -0
- package/dist/{chunk-JCSUNXYJ.js → chunk-ESCQ6LY7.js} +3 -3
- package/dist/{chunk-652S5A5D.js → chunk-EUYWQ7TS.js} +2 -2
- package/dist/{chunk-ML3U4KPR.js → chunk-GIC6BASP.js} +2 -2
- package/dist/{chunk-ZSYE2QVJ.js → chunk-GXWDWOWP.js} +2 -2
- package/dist/{chunk-55SJFHVD.js → chunk-HJQZQUPC.js} +11 -11
- package/dist/{chunk-6LTCUN3T.js → chunk-HQSBYI5X.js} +2 -2
- package/dist/{chunk-H5CGAD7L.js → chunk-HQSPXTQO.js} +1 -1
- package/dist/{chunk-EJDLQRUO.js → chunk-HUNSEO5U.js} +2 -2
- package/dist/{chunk-ON2P3SHG.js → chunk-IAY7YBXS.js} +2 -2
- package/dist/{chunk-MB6GLPRY.js → chunk-IVKIODHO.js} +4 -4
- package/dist/{chunk-CUIAHZPZ.js → chunk-IXRC7EQG.js} +2 -2
- package/dist/{chunk-VRYEXPRX.js → chunk-JFJ3MHGV.js} +1 -1
- package/dist/{chunk-VRYEXPRX.js.map → chunk-JFJ3MHGV.js.map} +1 -1
- package/dist/{chunk-LZKCMK3U.js → chunk-JTSVMJHV.js} +2 -2
- package/dist/{chunk-URS5GSM7.js → chunk-JXN77SGO.js} +1 -1
- package/dist/chunk-JXN77SGO.js.map +1 -0
- package/dist/{chunk-WBM5NR4E.js → chunk-KPBLJCCV.js} +2 -2
- package/dist/{chunk-VLES5S4K.js → chunk-LWVO2QZV.js} +36 -36
- package/dist/{chunk-NO7B6DRB.js → chunk-LYIZXQYY.js} +2 -2
- package/dist/{chunk-7RAJ3GXO.js → chunk-M6L7HI7R.js} +2 -156
- package/dist/chunk-M6L7HI7R.js.map +1 -0
- package/dist/{chunk-VUP47UJI.js → chunk-MIBKEW7A.js} +3 -3
- package/dist/{chunk-OQIRBGUU.js → chunk-N37X5RU7.js} +2 -2
- package/dist/{chunk-C6AKYOFO.js → chunk-N6TRHP72.js} +2 -2
- package/dist/{chunk-VANZKHTN.js → chunk-NNBZS3DY.js} +2 -2
- package/dist/{chunk-2PSX5BJU.js → chunk-NZPFCP5A.js} +2 -2
- package/dist/{chunk-LTBKKSCX.js → chunk-OLBZ2WGG.js} +2 -2
- package/dist/{chunk-PD66CVSD.js → chunk-OUKBMQ2O.js} +2 -2
- package/dist/{chunk-GPFZFCRN.js → chunk-PP7R754B.js} +1 -1
- package/dist/{chunk-TKI2WOL5.js → chunk-R3AAOKR2.js} +2 -2
- package/dist/{chunk-RNORDDD6.js → chunk-S2VBSTTA.js} +2 -2
- package/dist/{chunk-3A46U7XG.js → chunk-SYJ6EKKE.js} +2 -2
- package/dist/{chunk-YFQTDE7N.js → chunk-VJ6ECBIP.js} +2 -2
- package/dist/{chunk-IFK3PVM7.js → chunk-VPGRXEAB.js} +2 -2
- package/dist/{chunk-246HFJVG.js → chunk-VZVP2W4O.js} +2 -2
- package/dist/{chunk-SHQFYZTD.js → chunk-W6TSGWYS.js} +2 -2
- package/dist/{chunk-DA2O3F5V.js → chunk-WTOE7CW4.js} +13 -13
- package/dist/{chunk-IJXECCUV.js → chunk-X5SDZMO7.js} +2 -2
- package/dist/chunk-XAB6STPO.js +160 -0
- package/dist/chunk-XAB6STPO.js.map +1 -0
- package/dist/{chunk-DHKV6E4A.js → chunk-Y23B2QXP.js} +2 -2
- package/dist/{chunk-PE76XIDM.js → chunk-YEQEGSJA.js} +3 -3
- package/dist/{chunk-UMDZXW5J.js → chunk-YQ3CBLL4.js} +5 -85
- package/dist/chunk-YQ3CBLL4.js.map +1 -0
- package/dist/{chunk-VYISFWVX.js → chunk-YQNNHLCG.js} +2 -2
- package/dist/{chunk-3LOQN3TO.js → chunk-Z54TXZ2F.js} +3 -3
- package/dist/{cli-CLvBewKf.d.ts → cli-Pulnz-qm.d.ts} +5 -5
- package/dist/cli.d.ts +14 -13
- package/dist/cli.js +70 -67
- package/dist/coding/pre-action-gate.d.ts +2 -1
- package/dist/coding/pre-action-gate.js +2 -2
- package/dist/compounding/engine.d.ts +3 -2
- package/dist/compounding/engine.js +15 -14
- package/dist/compounding/preference-consolidator.d.ts +2 -1
- package/dist/compression-optimizer.d.ts +2 -1
- package/dist/config.d.ts +2 -1
- package/dist/config.js +4 -2
- package/dist/connectors/codex-materialize-runner.d.ts +2 -1
- package/dist/connectors/codex-materialize-runner.js +15 -14
- package/dist/connectors/codex-materialize.d.ts +2 -1
- package/dist/connectors/index.d.ts +2 -1
- package/dist/connectors/index.js +15 -14
- package/dist/consolidation-provenance-check.d.ts +3 -2
- package/dist/consolidation-undo.d.ts +3 -2
- package/dist/contradiction/index.d.ts +3 -2
- package/dist/converge-config.d.ts +2 -1
- package/dist/convergence-refresh.d.ts +3 -2
- package/dist/convergence-refresh.js +17 -16
- package/dist/conversation-index/backend.d.ts +2 -1
- package/dist/conversation-index/chunker.d.ts +2 -1
- package/dist/conversation-index/faiss-adapter.d.ts +2 -1
- package/dist/conversation-index/indexer.d.ts +2 -1
- package/dist/conversation-index/search.d.ts +2 -1
- package/dist/corpus-watermark.d.ts +2 -1
- package/dist/corpus-watermark.js +17 -16
- package/dist/cross-lingual-recall.d.ts +70 -0
- package/dist/cross-lingual-recall.js +14 -0
- package/dist/day-summary.d.ts +2 -1
- package/dist/delinearize.d.ts +2 -1
- package/dist/dependency-propagation-config.d.ts +2 -1
- package/dist/{dependency-propagation-delivery-DMqIw9Zh.d.ts → dependency-propagation-delivery-Co17gxYb.d.ts} +1 -1
- package/dist/direct-answer-wiring.d.ts +2 -1
- package/dist/direct-answer.d.ts +2 -1
- package/dist/embedding-fallback.d.ts +2 -1
- package/dist/enrichment/index.d.ts +2 -1
- package/dist/entity-origin-fields.d.ts +2 -1
- package/dist/entity-retrieval.d.ts +3 -2
- package/dist/entity-retrieval.js +15 -14
- package/dist/entity-schema.d.ts +2 -1
- package/dist/episodic-context.d.ts +2 -1
- package/dist/explicit-capture.d.ts +10 -9
- package/dist/external-wiki-access.d.ts +12 -11
- package/dist/external-wiki-access.js +37 -36
- package/dist/external-wiki-collection-registration.d.ts +2 -1
- package/dist/external-wiki-collection.d.ts +2 -1
- package/dist/external-wiki-mcp-tools.d.ts +12 -11
- package/dist/extraction-error-classification.d.ts +2 -1
- package/dist/extraction-faithfulness.d.ts +2 -1
- package/dist/extraction-judge-telemetry.d.ts +2 -1
- package/dist/extraction-judge-training.d.ts +2 -1
- package/dist/extraction-judge.d.ts +2 -1
- package/dist/extraction-liveness.d.ts +2 -1
- package/dist/extraction-normalization.d.ts +2 -1
- package/dist/extraction-prompt.d.ts +2 -1
- package/dist/extraction-source-grounding-rules.d.ts +2 -1
- package/dist/extraction-source-grounding.d.ts +2 -1
- package/dist/extraction.d.ts +2 -1
- package/dist/extraction.js +20 -19
- package/dist/fallback-llm.d.ts +2 -1
- package/dist/graph-dashboard-diff.d.ts +2 -1
- package/dist/graph-dashboard-key.d.ts +2 -1
- package/dist/graph-dashboard-parser.d.ts +2 -1
- package/dist/{graph-edge-decay-A4SDFMMS.js → graph-edge-decay-FXGELBFA.js} +4 -4
- package/dist/graph-edge-decay-FXGELBFA.js.map +1 -0
- package/dist/graph-edge-reinforcement.d.ts +2 -1
- package/dist/graph-path-reconstruction.d.ts +2 -1
- package/dist/graph-path-scoring.d.ts +2 -1
- package/dist/graph-snapshot.d.ts +2 -1
- package/dist/graph-snapshot.js +3 -3
- package/dist/graph.d.ts +2 -1
- package/dist/graph.js +3 -3
- package/dist/harmonic-retrieval.js +1 -1
- package/dist/importance.d.ts +2 -1
- package/dist/importers/index.d.ts +2 -1
- package/dist/in-flight-reads.d.ts +2 -1
- package/dist/index.d.ts +24 -23
- package/dist/index.js +130 -126
- package/dist/intent.d.ts +2 -1
- package/dist/lcm/engine.d.ts +2 -1
- package/dist/lcm/engine.js +2 -2
- package/dist/lcm/index.d.ts +2 -1
- package/dist/lcm/index.js +5 -5
- package/dist/lcm/tools.d.ts +2 -1
- package/dist/lifecycle.d.ts +2 -1
- package/dist/live-connectors-runner.d.ts +2 -1
- package/dist/local-llm.d.ts +2 -1
- package/dist/local-llm.js +2 -2
- package/dist/local-model-endpoint.d.ts +2 -1
- package/dist/location/index.d.ts +295 -0
- package/dist/location/index.js +798 -0
- package/dist/location/index.js.map +1 -0
- package/dist/maintenance/memory-governance.d.ts +2 -1
- package/dist/maintenance/memory-governance.js +15 -14
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +3 -2
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +15 -14
- package/dist/maintenance/rebuild-memory-projection.d.ts +3 -2
- package/dist/maintenance/rebuild-memory-projection.js +16 -15
- package/dist/{maintenance-DITiehFX.d.ts → maintenance-DiSLtVN7.d.ts} +3 -3
- package/dist/mcp-memory-inspector-app.d.ts +12 -11
- package/dist/memory-action-policy.d.ts +2 -1
- package/dist/memory-cache.d.ts +2 -1
- package/dist/memory-lifecycle-ledger-utils.d.ts +2 -1
- package/dist/memory-projection-store.d.ts +2 -1
- package/dist/memory-provenance.d.ts +2 -1
- package/dist/memory-snapshot.d.ts +2 -1
- package/dist/memory-worth-outcomes.d.ts +3 -2
- package/dist/models-json.d.ts +2 -1
- package/dist/namespaces/migrate.d.ts +4 -3
- package/dist/namespaces/migrate.js +16 -15
- package/dist/namespaces/principal.d.ts +2 -1
- package/dist/namespaces/search.d.ts +2 -1
- package/dist/namespaces/search.js +10 -10
- package/dist/namespaces/storage.d.ts +4 -3
- package/dist/namespaces/storage.js +15 -14
- package/dist/native-knowledge.d.ts +2 -1
- package/dist/offline-sync-impression-drain.d.ts +2 -1
- package/dist/operator-doctor-corpus.d.ts +2 -1
- package/dist/operator-doctor-corpus.js +18 -17
- package/dist/operator-doctor-replica.d.ts +2 -1
- package/dist/operator-toolkit.d.ts +4 -3
- package/dist/operator-toolkit.js +29 -26
- package/dist/orchestration/compression-guideline-coordinator.d.ts +3 -2
- package/dist/orchestration/maintenance.d.ts +5 -4
- package/dist/orchestration/maintenance.js +23 -21
- package/dist/{orchestrator-6fPa2l9x.d.ts → orchestrator-DzCaxNS4.d.ts} +8 -8
- package/dist/orchestrator.d.ts +10 -9
- package/dist/orchestrator.js +92 -89
- package/dist/patterns-cli.d.ts +2 -1
- package/dist/{pipeline-DHpYtfM3.d.ts → pipeline-HJ8DKbFl.d.ts} +1 -1
- package/dist/policy-runtime.d.ts +2 -1
- package/dist/proactive-contention.d.ts +2 -1
- package/dist/provenance.d.ts +2 -1
- package/dist/{public-http-BT36aBb-.d.ts → public-http-DwXauTX3.d.ts} +1 -1
- package/dist/{qmd-BaX31tM0.d.ts → qmd-BzxluoLt.d.ts} +1 -1
- package/dist/qmd-preflight.d.ts +3 -2
- package/dist/qmd-recall-cache.d.ts +2 -1
- package/dist/qmd.d.ts +3 -2
- package/dist/qmd.js +5 -5
- package/dist/recall-concurrency-config.d.ts +2 -1
- package/dist/recall-disclosure-escalation.d.ts +2 -1
- package/dist/recall-explain-renderer.d.ts +2 -1
- package/dist/recall-explain-renderer.js +3 -3
- package/dist/recall-memory-map.d.ts +2 -1
- package/dist/recall-planner-llm.d.ts +2 -1
- package/dist/recall-state.d.ts +2 -1
- package/dist/recall-tag-filter.d.ts +2 -1
- package/dist/recall-timings.d.ts +2 -1
- package/dist/recall-xray-cli.d.ts +2 -1
- package/dist/recall-xray-cli.js +4 -4
- package/dist/recall-xray-renderer.d.ts +2 -1
- package/dist/recall-xray-renderer.js +3 -3
- package/dist/recall-xray.d.ts +2 -1
- package/dist/recall-xray.js +2 -2
- package/dist/reconcile/cursor.d.ts +2 -1
- package/dist/reconcile/manifest.d.ts +2 -1
- package/dist/reconcile/plan.d.ts +2 -1
- package/dist/replay/normalizers/chatgpt.d.ts +2 -1
- package/dist/replay/normalizers/claude.d.ts +2 -1
- package/dist/replay/normalizers/openclaw.d.ts +2 -1
- package/dist/replay/normalizers/shared.d.ts +2 -1
- package/dist/replay/runner.d.ts +2 -1
- package/dist/replay/types.d.ts +2 -1
- package/dist/replica-divergence.d.ts +2 -1
- package/dist/replica-peers-config.d.ts +2 -1
- package/dist/resolve-auth-token.d.ts +2 -1
- package/dist/resume-bundles.js +5 -3
- package/dist/retrieval-agents.d.ts +3 -2
- package/dist/retrieval-tiers.d.ts +2 -1
- package/dist/routing/engine.d.ts +2 -1
- package/dist/routing/store.d.ts +2 -1
- package/dist/salvage-envelope.d.ts +2 -1
- package/dist/schemas.d.ts +30 -30
- package/dist/{scope-profiles-1hYWJ9bM.d.ts → scope-profiles-CEMZz0t5.d.ts} +1 -1
- package/dist/search/embed-helper.d.ts +2 -1
- package/dist/search/factory.d.ts +2 -1
- package/dist/search/factory.js +9 -9
- package/dist/search/index.d.ts +2 -1
- package/dist/search/index.js +13 -13
- package/dist/search/lancedb-backend.d.ts +2 -1
- package/dist/search/lancedb-backend.js +2 -2
- package/dist/search/meilisearch-backend.d.ts +2 -1
- package/dist/search/meilisearch-backend.js +2 -2
- package/dist/search/noop-backend.d.ts +2 -1
- package/dist/search/orama-backend.d.ts +2 -1
- package/dist/search/orama-backend.js +2 -2
- package/dist/search/port.d.ts +3 -2
- package/dist/search/port.js +1 -1
- package/dist/search/remote-backend.d.ts +2 -1
- package/dist/search/remote-backend.js +2 -2
- package/dist/{semantic-consolidation-Chmddvcg.d.ts → semantic-consolidation-D9dYj6vu.d.ts} +1 -1
- package/dist/semantic-consolidation.d.ts +3 -2
- package/dist/semantic-consolidation.js +16 -15
- package/dist/semantic-rule-promotion.js +15 -14
- package/dist/semantic-rule-verifier.d.ts +2 -1
- package/dist/semantic-rule-verifier.js +15 -14
- package/dist/{service-DMs_dCCg.d.ts → service-_qgST_0y.d.ts} +2 -2
- package/dist/session-observer-bands.d.ts +2 -1
- package/dist/session-observer-state.d.ts +2 -1
- package/dist/shared-context/manager.d.ts +2 -1
- package/dist/signal.d.ts +2 -1
- package/dist/source-agent-qualifier.d.ts +2 -1
- package/dist/source-agent-qualifier.js +17 -16
- package/dist/{storage-CzorrpcN.d.ts → storage-B9lbNTYE.d.ts} +1 -1
- package/dist/storage.d.ts +3 -2
- package/dist/storage.js +14 -13
- package/dist/summarizer.d.ts +2 -1
- package/dist/summarizer.js +3 -3
- package/dist/summary-snapshot.d.ts +2 -1
- package/dist/support-passport/index.d.ts +15 -14
- package/dist/support-passport/index.js +39 -38
- package/dist/temporal-supersession.d.ts +3 -2
- package/dist/temporal-timeline-recall.d.ts +2 -1
- package/dist/temporal-validity.d.ts +2 -1
- package/dist/threading.d.ts +2 -1
- package/dist/tier-migration.d.ts +3 -2
- package/dist/tier-routing.d.ts +2 -1
- package/dist/topics.d.ts +2 -1
- package/dist/transcript.d.ts +2 -1
- package/dist/transfer/types.d.ts +12 -12
- package/dist/trust-score-stage.d.ts +2 -1
- package/dist/trust-score.d.ts +2 -1
- package/dist/{types-BP5MC8UU.d.ts → types-BrEzuxPA.d.ts} +3 -23
- package/dist/types-CM86alG1.d.ts +89 -0
- package/dist/types.d.ts +2 -1
- package/dist/types.js +1 -1
- package/dist/utility-runtime.d.ts +2 -1
- package/dist/verified-recall.js +15 -14
- package/dist/who-knows-cli.d.ts +12 -11
- package/dist/who-knows-cli.js +16 -15
- package/dist/who-knows.d.ts +12 -11
- package/dist/who-knows.js +15 -14
- package/dist/write-envelope.d.ts +2 -1
- package/package.json +12 -2
- package/src/cross-lingual-recall.test.ts +47 -0
- package/src/cross-lingual-recall.ts +186 -0
- package/src/location/adapter-isolation.test.ts +44 -0
- package/src/location/index.ts +16 -0
- package/src/orchestration/recall-internal-deps.ts +2 -0
- package/src/orchestration/recall-internal.ts +35 -33
- package/src/orchestration/recall-search-pipeline.ts +16 -0
- package/src/search/port.ts +2 -1
- package/src/storage.ts +5 -1
- package/src/types.ts +2 -0
- package/dist/chunk-2QI2JBLQ.js.map +0 -1
- package/dist/chunk-7RAJ3GXO.js.map +0 -1
- package/dist/chunk-MJRVF7SF.js.map +0 -1
- package/dist/chunk-UMDZXW5J.js.map +0 -1
- package/dist/chunk-URS5GSM7.js.map +0 -1
- /package/dist/{chunk-5HERQ5FX.js.map → chunk-256FBCVX.js.map} +0 -0
- /package/dist/{chunk-GVRLED7R.js.map → chunk-2572MRP2.js.map} +0 -0
- /package/dist/{chunk-TY35YQ6E.js.map → chunk-3MADV4YC.js.map} +0 -0
- /package/dist/{chunk-XACYILRA.js.map → chunk-3PXVYJMC.js.map} +0 -0
- /package/dist/{chunk-DC4FJY2G.js.map → chunk-3RHFGGI5.js.map} +0 -0
- /package/dist/{chunk-LOETWOEB.js.map → chunk-3TMYV3LP.js.map} +0 -0
- /package/dist/{chunk-XH4IQVTN.js.map → chunk-4W6INNXO.js.map} +0 -0
- /package/dist/{chunk-SB6YBB2V.js.map → chunk-53ENM6F6.js.map} +0 -0
- /package/dist/{chunk-Z6CJLYXT.js.map → chunk-63FHSH7E.js.map} +0 -0
- /package/dist/{chunk-DG6MJD7W.js.map → chunk-6JJT5AKI.js.map} +0 -0
- /package/dist/{chunk-7BVO64UC.js.map → chunk-6L27N6YI.js.map} +0 -0
- /package/dist/{chunk-YXGU3MDQ.js.map → chunk-7PWWGYGO.js.map} +0 -0
- /package/dist/{chunk-CKZHKFY3.js.map → chunk-7QFBLYFP.js.map} +0 -0
- /package/dist/{chunk-RWLRKMZK.js.map → chunk-AGKIG3YA.js.map} +0 -0
- /package/dist/{chunk-A2IBK3TG.js.map → chunk-ALCJRQ72.js.map} +0 -0
- /package/dist/{chunk-44DSGZFF.js.map → chunk-BC4QD3FM.js.map} +0 -0
- /package/dist/{chunk-YMOPYG3K.js.map → chunk-BIJAWZYW.js.map} +0 -0
- /package/dist/{chunk-KRPE7ANR.js.map → chunk-CCTVAVTT.js.map} +0 -0
- /package/dist/{chunk-VYEPACWY.js.map → chunk-CEH2AFXG.js.map} +0 -0
- /package/dist/{chunk-XBRGJJK7.js.map → chunk-CEQF6L5K.js.map} +0 -0
- /package/dist/{chunk-PVIXAMWM.js.map → chunk-CFRBTATE.js.map} +0 -0
- /package/dist/{chunk-UIYYS2YI.js.map → chunk-CTQRPANJ.js.map} +0 -0
- /package/dist/{chunk-XZUCNVGE.js.map → chunk-CUS6S7PN.js.map} +0 -0
- /package/dist/{chunk-KWIGDKM2.js.map → chunk-D2YNNDML.js.map} +0 -0
- /package/dist/{chunk-JCSUNXYJ.js.map → chunk-ESCQ6LY7.js.map} +0 -0
- /package/dist/{chunk-652S5A5D.js.map → chunk-EUYWQ7TS.js.map} +0 -0
- /package/dist/{chunk-ML3U4KPR.js.map → chunk-GIC6BASP.js.map} +0 -0
- /package/dist/{chunk-ZSYE2QVJ.js.map → chunk-GXWDWOWP.js.map} +0 -0
- /package/dist/{chunk-55SJFHVD.js.map → chunk-HJQZQUPC.js.map} +0 -0
- /package/dist/{chunk-6LTCUN3T.js.map → chunk-HQSBYI5X.js.map} +0 -0
- /package/dist/{chunk-H5CGAD7L.js.map → chunk-HQSPXTQO.js.map} +0 -0
- /package/dist/{chunk-EJDLQRUO.js.map → chunk-HUNSEO5U.js.map} +0 -0
- /package/dist/{chunk-ON2P3SHG.js.map → chunk-IAY7YBXS.js.map} +0 -0
- /package/dist/{chunk-MB6GLPRY.js.map → chunk-IVKIODHO.js.map} +0 -0
- /package/dist/{chunk-CUIAHZPZ.js.map → chunk-IXRC7EQG.js.map} +0 -0
- /package/dist/{chunk-LZKCMK3U.js.map → chunk-JTSVMJHV.js.map} +0 -0
- /package/dist/{chunk-WBM5NR4E.js.map → chunk-KPBLJCCV.js.map} +0 -0
- /package/dist/{chunk-VLES5S4K.js.map → chunk-LWVO2QZV.js.map} +0 -0
- /package/dist/{chunk-NO7B6DRB.js.map → chunk-LYIZXQYY.js.map} +0 -0
- /package/dist/{chunk-VUP47UJI.js.map → chunk-MIBKEW7A.js.map} +0 -0
- /package/dist/{chunk-OQIRBGUU.js.map → chunk-N37X5RU7.js.map} +0 -0
- /package/dist/{chunk-C6AKYOFO.js.map → chunk-N6TRHP72.js.map} +0 -0
- /package/dist/{chunk-VANZKHTN.js.map → chunk-NNBZS3DY.js.map} +0 -0
- /package/dist/{chunk-2PSX5BJU.js.map → chunk-NZPFCP5A.js.map} +0 -0
- /package/dist/{chunk-LTBKKSCX.js.map → chunk-OLBZ2WGG.js.map} +0 -0
- /package/dist/{chunk-PD66CVSD.js.map → chunk-OUKBMQ2O.js.map} +0 -0
- /package/dist/{chunk-GPFZFCRN.js.map → chunk-PP7R754B.js.map} +0 -0
- /package/dist/{chunk-TKI2WOL5.js.map → chunk-R3AAOKR2.js.map} +0 -0
- /package/dist/{chunk-RNORDDD6.js.map → chunk-S2VBSTTA.js.map} +0 -0
- /package/dist/{chunk-3A46U7XG.js.map → chunk-SYJ6EKKE.js.map} +0 -0
- /package/dist/{chunk-YFQTDE7N.js.map → chunk-VJ6ECBIP.js.map} +0 -0
- /package/dist/{chunk-IFK3PVM7.js.map → chunk-VPGRXEAB.js.map} +0 -0
- /package/dist/{chunk-246HFJVG.js.map → chunk-VZVP2W4O.js.map} +0 -0
- /package/dist/{chunk-SHQFYZTD.js.map → chunk-W6TSGWYS.js.map} +0 -0
- /package/dist/{chunk-DA2O3F5V.js.map → chunk-WTOE7CW4.js.map} +0 -0
- /package/dist/{chunk-IJXECCUV.js.map → chunk-X5SDZMO7.js.map} +0 -0
- /package/dist/{chunk-DHKV6E4A.js.map → chunk-Y23B2QXP.js.map} +0 -0
- /package/dist/{chunk-PE76XIDM.js.map → chunk-YEQEGSJA.js.map} +0 -0
- /package/dist/{chunk-VYISFWVX.js.map → chunk-YQNNHLCG.js.map} +0 -0
- /package/dist/{chunk-3LOQN3TO.js.map → chunk-Z54TXZ2F.js.map} +0 -0
- /package/dist/{graph-edge-decay-A4SDFMMS.js.map → cross-lingual-recall.js.map} +0 -0
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
} from "./chunk-OD4FM2U7.js";
|
|
8
8
|
import {
|
|
9
9
|
parseQmdExplain
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-CEH2AFXG.js";
|
|
11
11
|
import {
|
|
12
12
|
classifyOrigin
|
|
13
13
|
} from "./chunk-6Q3ZTEF6.js";
|
|
@@ -1708,4 +1708,4 @@ export {
|
|
|
1708
1708
|
ExtractionDeadlineError,
|
|
1709
1709
|
ExtractionRunCoordinator
|
|
1710
1710
|
};
|
|
1711
|
-
//# sourceMappingURL=chunk-
|
|
1711
|
+
//# sourceMappingURL=chunk-S2VBSTTA.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
StorageManager
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-DEFI2QBT.js";
|
|
4
4
|
import {
|
|
5
5
|
bumpMemoryCorpusVersionForDir
|
|
6
6
|
} from "./chunk-XCB6QDL6.js";
|
|
@@ -765,4 +765,4 @@ export {
|
|
|
765
765
|
listMemoryGovernanceRuns,
|
|
766
766
|
readMemoryGovernanceRunArtifact
|
|
767
767
|
};
|
|
768
|
-
//# sourceMappingURL=chunk-
|
|
768
|
+
//# sourceMappingURL=chunk-SYJ6EKKE.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
rebuildMemoryProjection
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-ESCQ6LY7.js";
|
|
4
4
|
|
|
5
5
|
// src/convergence-refresh.ts
|
|
6
6
|
async function refreshConvergedNamespaces(namespaces, namespaceSearchRouter, getStorage, searchEnabled) {
|
|
@@ -32,4 +32,4 @@ async function refreshConvergedNamespaces(namespaces, namespaceSearchRouter, get
|
|
|
32
32
|
export {
|
|
33
33
|
refreshConvergedNamespaces
|
|
34
34
|
};
|
|
35
|
-
//# sourceMappingURL=chunk-
|
|
35
|
+
//# sourceMappingURL=chunk-VJ6ECBIP.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isRecallDisclosure
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-JFJ3MHGV.js";
|
|
4
4
|
import {
|
|
5
5
|
estimateTokenCount
|
|
6
6
|
} from "./chunk-TOTT6S2V.js";
|
|
@@ -304,4 +304,4 @@ export {
|
|
|
304
304
|
RecallXrayBuilder,
|
|
305
305
|
summarizeDisclosureTokens
|
|
306
306
|
};
|
|
307
|
-
//# sourceMappingURL=chunk-
|
|
307
|
+
//# sourceMappingURL=chunk-VPGRXEAB.js.map
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
} from "./chunk-5JMAGU26.js";
|
|
6
6
|
import {
|
|
7
7
|
runPostConsolidationMaterialize
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-6L27N6YI.js";
|
|
9
9
|
import {
|
|
10
10
|
isSemanticConsolidationLlmOperator
|
|
11
11
|
} from "./chunk-G7D6GZ5J.js";
|
|
@@ -220,4 +220,4 @@ export {
|
|
|
220
220
|
buildExtensionsBlockForConsolidation,
|
|
221
221
|
materializeAfterSemanticConsolidation
|
|
222
222
|
};
|
|
223
|
-
//# sourceMappingURL=chunk-
|
|
223
|
+
//# sourceMappingURL=chunk-VZVP2W4O.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-SOBJ6NEY.js";
|
|
4
4
|
import {
|
|
5
5
|
summarizeDisclosureTokens
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-VPGRXEAB.js";
|
|
7
7
|
import {
|
|
8
8
|
summarizeRetrievedMemoryProvenance
|
|
9
9
|
} from "./chunk-I4WBNM3M.js";
|
|
@@ -606,4 +606,4 @@ export {
|
|
|
606
606
|
renderRecallExplain,
|
|
607
607
|
parseRecallExplainFormat
|
|
608
608
|
};
|
|
609
|
-
//# sourceMappingURL=chunk-
|
|
609
|
+
//# sourceMappingURL=chunk-W6TSGWYS.js.map
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
import {
|
|
2
2
|
WearablesInputError
|
|
3
3
|
} from "./chunk-V7IZKJI3.js";
|
|
4
|
-
import {
|
|
5
|
-
WriteRateLimiter
|
|
6
|
-
} from "./chunk-TB6CBZ5V.js";
|
|
7
4
|
import {
|
|
8
5
|
AdapterRegistry
|
|
9
6
|
} from "./chunk-JBPKEARU.js";
|
|
7
|
+
import {
|
|
8
|
+
WriteRateLimiter
|
|
9
|
+
} from "./chunk-TB6CBZ5V.js";
|
|
10
10
|
import {
|
|
11
11
|
serializeInlineScriptValue
|
|
12
12
|
} from "./chunk-3HSRWJTC.js";
|
|
13
13
|
import {
|
|
14
14
|
handleSupportPassportOwnerHttp
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-HUNSEO5U.js";
|
|
16
16
|
import {
|
|
17
17
|
buildSupportPassportPublicRequestHandler
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-6JJT5AKI.js";
|
|
19
19
|
import {
|
|
20
20
|
nonEmptyQueryParam,
|
|
21
21
|
optionalNamespaceKindQueryParam,
|
|
22
22
|
optionalQueryString,
|
|
23
23
|
positiveIntQueryParam
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-Y23B2QXP.js";
|
|
25
25
|
import {
|
|
26
26
|
EngramMcpServer,
|
|
27
27
|
MCP_SUPPORTED_PROTOCOL_VERSIONS,
|
|
@@ -31,10 +31,10 @@ import {
|
|
|
31
31
|
processChatMessage,
|
|
32
32
|
sessionBelongsToPrincipal,
|
|
33
33
|
subscribeChatTranscript
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-Z54TXZ2F.js";
|
|
35
35
|
import {
|
|
36
36
|
RelayMissionStoreError
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-63FHSH7E.js";
|
|
38
38
|
import {
|
|
39
39
|
executeResolution,
|
|
40
40
|
isValidResolutionVerb
|
|
@@ -61,15 +61,15 @@ import {
|
|
|
61
61
|
authorizationProbeNamespaces,
|
|
62
62
|
authorizationProbeRequiresPrincipalNamespace,
|
|
63
63
|
probeOperationAuthorization
|
|
64
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-BC4QD3FM.js";
|
|
65
65
|
import {
|
|
66
66
|
CorrectionContractError,
|
|
67
67
|
getOperation,
|
|
68
68
|
resolveQueryNamespaceWritablePreflight
|
|
69
|
-
} from "./chunk-
|
|
69
|
+
} from "./chunk-3PXVYJMC.js";
|
|
70
70
|
import {
|
|
71
71
|
handleWhoKnowsHttpQuery
|
|
72
|
-
} from "./chunk-
|
|
72
|
+
} from "./chunk-R3AAOKR2.js";
|
|
73
73
|
import {
|
|
74
74
|
isTrustZoneName
|
|
75
75
|
} from "./chunk-5QZR2RA3.js";
|
|
@@ -78,7 +78,7 @@ import {
|
|
|
78
78
|
} from "./chunk-DEUNUKTD.js";
|
|
79
79
|
import {
|
|
80
80
|
isRecallDisclosure
|
|
81
|
-
} from "./chunk-
|
|
81
|
+
} from "./chunk-JFJ3MHGV.js";
|
|
82
82
|
import {
|
|
83
83
|
OFFLINE_SYNC_APPLY_MAX_BODY_BYTES,
|
|
84
84
|
OFFLINE_SYNC_FILE_CONTENT_MAX_CHUNK_BYTES,
|
|
@@ -3388,4 +3388,4 @@ export {
|
|
|
3388
3388
|
resolveDefaultAdminConsolePublicDir,
|
|
3389
3389
|
EngramAccessHttpServer
|
|
3390
3390
|
};
|
|
3391
|
-
//# sourceMappingURL=chunk-
|
|
3391
|
+
//# sourceMappingURL=chunk-WTOE7CW4.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createSearchBackend
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-HJQZQUPC.js";
|
|
4
4
|
import {
|
|
5
5
|
namespaceIdentityToken,
|
|
6
6
|
normalizeNamespaceIdentity
|
|
@@ -470,4 +470,4 @@ export {
|
|
|
470
470
|
NamespaceSearchRouter,
|
|
471
471
|
normalizeQmdResultPath
|
|
472
472
|
};
|
|
473
|
-
//# sourceMappingURL=chunk-
|
|
473
|
+
//# sourceMappingURL=chunk-X5SDZMO7.js.map
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import {
|
|
2
|
+
assertValidTimezone
|
|
3
|
+
} from "./chunk-M6L7HI7R.js";
|
|
4
|
+
import {
|
|
5
|
+
coerceBooleanLike,
|
|
6
|
+
coerceNumber
|
|
7
|
+
} from "./chunk-PQVCH2AE.js";
|
|
8
|
+
|
|
9
|
+
// src/activity/config.ts
|
|
10
|
+
var EXTRACTION_MODES = ["off", "smart"];
|
|
11
|
+
var IMPORTANCE_LEVELS = ["critical", "high", "normal", "low", "trivial"];
|
|
12
|
+
var LOOPBACK_HOSTS = { localhost: true, "127.0.0.1": true, "::1": true };
|
|
13
|
+
function defaultActivityConfig() {
|
|
14
|
+
return {
|
|
15
|
+
enabled: false,
|
|
16
|
+
timezone: "UTC",
|
|
17
|
+
syncDays: 1,
|
|
18
|
+
autoSyncIntervalMinutes: 15,
|
|
19
|
+
sources: [],
|
|
20
|
+
extractionMode: "off",
|
|
21
|
+
sourceTrust: 0.6,
|
|
22
|
+
autoApproveTrust: 0.8,
|
|
23
|
+
reviewTrust: 0.5,
|
|
24
|
+
minConfidence: 0.7,
|
|
25
|
+
minImportance: "normal",
|
|
26
|
+
maxMemoriesPerDay: 0
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
function asRecord(value, name) {
|
|
30
|
+
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
31
|
+
throw new TypeError(`${name} must be an object`);
|
|
32
|
+
}
|
|
33
|
+
return value;
|
|
34
|
+
}
|
|
35
|
+
function optionalString(value, name) {
|
|
36
|
+
if (value === void 0) return void 0;
|
|
37
|
+
if (typeof value !== "string" || value.length === 0) throw new TypeError(`${name} must be a non-empty string`);
|
|
38
|
+
return value;
|
|
39
|
+
}
|
|
40
|
+
function parseUnitInterval(value, key, fallback) {
|
|
41
|
+
if (value === void 0) return fallback;
|
|
42
|
+
const parsed = coerceNumber(value);
|
|
43
|
+
if (parsed === void 0 || !Number.isFinite(parsed) || parsed < 0 || parsed > 1) {
|
|
44
|
+
throw new RangeError(`activity.${key} must be a number in [0, 1]`);
|
|
45
|
+
}
|
|
46
|
+
return parsed;
|
|
47
|
+
}
|
|
48
|
+
function validateActivityBaseUrl(baseUrl) {
|
|
49
|
+
let parsed;
|
|
50
|
+
try {
|
|
51
|
+
parsed = new URL(baseUrl);
|
|
52
|
+
} catch {
|
|
53
|
+
throw new RangeError(`activity source baseUrl must be a valid URL: ${baseUrl}`);
|
|
54
|
+
}
|
|
55
|
+
if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
|
|
56
|
+
throw new RangeError("activity source baseUrl must use HTTP or HTTPS");
|
|
57
|
+
}
|
|
58
|
+
const host = parsed.hostname.replace(/^\[|\]$/g, "");
|
|
59
|
+
if (LOOPBACK_HOSTS[host] !== true && !/^127\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(host)) {
|
|
60
|
+
throw new RangeError(`activity source baseUrl must target a loopback host (got ${parsed.hostname})`);
|
|
61
|
+
}
|
|
62
|
+
return parsed;
|
|
63
|
+
}
|
|
64
|
+
function parseSource(value) {
|
|
65
|
+
const raw = asRecord(value, "activity source");
|
|
66
|
+
const machineLabel = optionalString(raw.machineLabel, "activity source machineLabel");
|
|
67
|
+
const baseUrl = optionalString(raw.baseUrl, "activity source baseUrl");
|
|
68
|
+
if (machineLabel === void 0 || baseUrl === void 0) {
|
|
69
|
+
throw new TypeError("activity source requires machineLabel and baseUrl");
|
|
70
|
+
}
|
|
71
|
+
if (machineLabel.trim().length === 0) {
|
|
72
|
+
throw new RangeError("activity source machineLabel must not be blank");
|
|
73
|
+
}
|
|
74
|
+
validateActivityBaseUrl(baseUrl);
|
|
75
|
+
const token = optionalString(raw.token, "activity source token");
|
|
76
|
+
return { machineLabel, baseUrl, ...token === void 0 ? {} : { token } };
|
|
77
|
+
}
|
|
78
|
+
function parseActivityConfig(raw) {
|
|
79
|
+
const defaults = defaultActivityConfig();
|
|
80
|
+
if (raw === void 0 || raw === null) {
|
|
81
|
+
return { ...defaults };
|
|
82
|
+
}
|
|
83
|
+
const config = asRecord(raw, "activity");
|
|
84
|
+
const enabledValue = coerceBooleanLike(config.enabled, "activity.enabled");
|
|
85
|
+
if (config.enabled !== void 0 && enabledValue === void 0) {
|
|
86
|
+
throw new TypeError("activity.enabled must be a boolean");
|
|
87
|
+
}
|
|
88
|
+
const timezone = optionalString(config.timezone, "activity.timezone") ?? "UTC";
|
|
89
|
+
assertValidTimezone(timezone);
|
|
90
|
+
const syncDaysValue = coerceNumber(config.syncDays, "activity.syncDays");
|
|
91
|
+
if (config.syncDays !== void 0 && syncDaysValue === void 0) {
|
|
92
|
+
throw new TypeError("activity.syncDays must be a finite number");
|
|
93
|
+
}
|
|
94
|
+
const syncDays = syncDaysValue ?? 1;
|
|
95
|
+
if (!Number.isInteger(syncDays) || syncDays < 1 || syncDays > 90) {
|
|
96
|
+
throw new RangeError("activity.syncDays must be an integer from 1 to 90");
|
|
97
|
+
}
|
|
98
|
+
const intervalValue = coerceNumber(config.autoSyncIntervalMinutes, "activity.autoSyncIntervalMinutes");
|
|
99
|
+
if (config.autoSyncIntervalMinutes !== void 0 && intervalValue === void 0) {
|
|
100
|
+
throw new TypeError("activity.autoSyncIntervalMinutes must be a finite number");
|
|
101
|
+
}
|
|
102
|
+
const autoSyncIntervalMinutes = intervalValue ?? 15;
|
|
103
|
+
if (!Number.isInteger(autoSyncIntervalMinutes) || autoSyncIntervalMinutes < 1 || autoSyncIntervalMinutes > 1440) {
|
|
104
|
+
throw new RangeError("activity.autoSyncIntervalMinutes must be an integer from 1 to 1440");
|
|
105
|
+
}
|
|
106
|
+
if (config.sources !== void 0 && !Array.isArray(config.sources)) {
|
|
107
|
+
throw new TypeError("activity.sources must be an array");
|
|
108
|
+
}
|
|
109
|
+
const sources = (config.sources ?? []).map(parseSource);
|
|
110
|
+
const labels = /* @__PURE__ */ new Set();
|
|
111
|
+
for (const source of sources) {
|
|
112
|
+
if (labels.has(source.machineLabel)) {
|
|
113
|
+
throw new RangeError(`activity source machineLabel must be unique: ${source.machineLabel}`);
|
|
114
|
+
}
|
|
115
|
+
labels.add(source.machineLabel);
|
|
116
|
+
}
|
|
117
|
+
const enabled = enabledValue ?? false;
|
|
118
|
+
if (enabled && sources.length === 0) throw new RangeError("activity.enabled requires at least one source");
|
|
119
|
+
const extractionMode = config.extractionMode === void 0 ? defaults.extractionMode : config.extractionMode;
|
|
120
|
+
if (typeof extractionMode !== "string" || !EXTRACTION_MODES.includes(extractionMode)) {
|
|
121
|
+
throw new RangeError(`activity.extractionMode must be one of: ${EXTRACTION_MODES.join(", ")}`);
|
|
122
|
+
}
|
|
123
|
+
const minImportance = config.minImportance === void 0 ? defaults.minImportance : config.minImportance;
|
|
124
|
+
if (typeof minImportance !== "string" || !IMPORTANCE_LEVELS.includes(minImportance)) {
|
|
125
|
+
throw new RangeError(`activity.minImportance must be one of: ${IMPORTANCE_LEVELS.join(", ")}`);
|
|
126
|
+
}
|
|
127
|
+
const rawMaxMemoriesPerDay = config.maxMemoriesPerDay === void 0 ? defaults.maxMemoriesPerDay : config.maxMemoriesPerDay;
|
|
128
|
+
const maxMemoriesPerDay = coerceNumber(rawMaxMemoriesPerDay);
|
|
129
|
+
if (maxMemoriesPerDay === void 0 || !Number.isInteger(maxMemoriesPerDay) || maxMemoriesPerDay < 0) {
|
|
130
|
+
throw new RangeError("activity.maxMemoriesPerDay must be a non-negative integer");
|
|
131
|
+
}
|
|
132
|
+
const autoApproveTrust = parseUnitInterval(config.autoApproveTrust, "autoApproveTrust", defaults.autoApproveTrust);
|
|
133
|
+
const reviewTrust = parseUnitInterval(config.reviewTrust, "reviewTrust", defaults.reviewTrust);
|
|
134
|
+
if (reviewTrust >= autoApproveTrust) {
|
|
135
|
+
throw new RangeError(
|
|
136
|
+
`activity.reviewTrust (${reviewTrust}) must be below autoApproveTrust (${autoApproveTrust})`
|
|
137
|
+
);
|
|
138
|
+
}
|
|
139
|
+
return {
|
|
140
|
+
enabled,
|
|
141
|
+
timezone,
|
|
142
|
+
syncDays,
|
|
143
|
+
autoSyncIntervalMinutes,
|
|
144
|
+
sources,
|
|
145
|
+
extractionMode,
|
|
146
|
+
sourceTrust: parseUnitInterval(config.sourceTrust, "sourceTrust", defaults.sourceTrust),
|
|
147
|
+
autoApproveTrust,
|
|
148
|
+
reviewTrust,
|
|
149
|
+
minConfidence: parseUnitInterval(config.minConfidence, "minConfidence", defaults.minConfidence),
|
|
150
|
+
minImportance,
|
|
151
|
+
maxMemoriesPerDay
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export {
|
|
156
|
+
defaultActivityConfig,
|
|
157
|
+
validateActivityBaseUrl,
|
|
158
|
+
parseActivityConfig
|
|
159
|
+
};
|
|
160
|
+
//# sourceMappingURL=chunk-XAB6STPO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/activity/config.ts"],"sourcesContent":["import { coerceBooleanLike, coerceNumber } from \"../connectors/coerce.js\";\nimport { assertValidTimezone } from \"./digest.js\";\nimport type { ImportanceLevel } from \"../types.js\";\nimport type { ActivityConfig, ActivityExtractionMode, ActivitySourceConfig } from \"./types.js\";\n\nconst EXTRACTION_MODES: readonly ActivityExtractionMode[] = [\"off\", \"smart\"];\nconst IMPORTANCE_LEVELS: readonly ImportanceLevel[] = [\"critical\", \"high\", \"normal\", \"low\", \"trivial\"];\nconst LOOPBACK_HOSTS: Record<string, true> = { localhost: true, \"127.0.0.1\": true, \"::1\": true };\n\n/** The inert default: disabled, search-only, no sources, no extraction. */\nexport function defaultActivityConfig(): ActivityConfig {\n return {\n enabled: false,\n timezone: \"UTC\",\n syncDays: 1,\n autoSyncIntervalMinutes: 15,\n sources: [],\n extractionMode: \"off\",\n sourceTrust: 0.6,\n autoApproveTrust: 0.8,\n reviewTrust: 0.5,\n minConfidence: 0.7,\n minImportance: \"normal\",\n maxMemoriesPerDay: 0,\n };\n}\n\nfunction asRecord(value: unknown, name: string): Record<string, unknown> {\n if (typeof value !== \"object\" || value === null || Array.isArray(value)) {\n throw new TypeError(`${name} must be an object`);\n }\n return value as Record<string, unknown>;\n}\n\nfunction optionalString(value: unknown, name: string): string | undefined {\n if (value === undefined) return undefined;\n if (typeof value !== \"string\" || value.length === 0) throw new TypeError(`${name} must be a non-empty string`);\n return value;\n}\n\nfunction parseUnitInterval(value: unknown, key: string, fallback: number): number {\n if (value === undefined) return fallback;\n const parsed = coerceNumber(value);\n if (parsed === undefined || !Number.isFinite(parsed) || parsed < 0 || parsed > 1) {\n throw new RangeError(`activity.${key} must be a number in [0, 1]`);\n }\n return parsed;\n}\n\n/**\n * Parse, protocol-check, and confine an activity source base URL to a local\n * loopback host. Shared with ActivityHttpSourceClient so config-load and client\n * construction reject the exact same shapes with the same prefixed message. The\n * bearer token travels in an Authorization header, so a non-loopback baseUrl\n * would exfiltrate it; the subsystem contract is local capture daemons only.\n */\nexport function validateActivityBaseUrl(baseUrl: string): URL {\n let parsed: URL;\n try {\n parsed = new URL(baseUrl);\n } catch {\n throw new RangeError(`activity source baseUrl must be a valid URL: ${baseUrl}`);\n }\n if (parsed.protocol !== \"http:\" && parsed.protocol !== \"https:\") {\n throw new RangeError(\"activity source baseUrl must use HTTP or HTTPS\");\n }\n // URL keeps IPv6 hosts bracketed (e.g. \"[::1]\"); normalize before the lookup.\n const host = parsed.hostname.replace(/^\\[|\\]$/g, \"\");\n if (LOOPBACK_HOSTS[host] !== true && !/^127\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}$/.test(host)) {\n throw new RangeError(`activity source baseUrl must target a loopback host (got ${parsed.hostname})`);\n }\n return parsed;\n}\n\nfunction parseSource(value: unknown): ActivitySourceConfig {\n const raw = asRecord(value, \"activity source\");\n const machineLabel = optionalString(raw.machineLabel, \"activity source machineLabel\");\n const baseUrl = optionalString(raw.baseUrl, \"activity source baseUrl\");\n if (machineLabel === undefined || baseUrl === undefined) {\n throw new TypeError(\"activity source requires machineLabel and baseUrl\");\n }\n // Reject whitespace-only labels here so config-load fails loudly rather than\n // parsing clean and then failing on the first sync (the client and pipeline\n // both reject a blank label via trim()).\n if (machineLabel.trim().length === 0) {\n throw new RangeError(\"activity source machineLabel must not be blank\");\n }\n validateActivityBaseUrl(baseUrl);\n const token = optionalString(raw.token, \"activity source token\");\n return { machineLabel, baseUrl, ...(token === undefined ? {} : { token }) };\n}\n\n/**\n * Parse the unified `activity.*` block. `enabled` gates source ingestion (and\n * requires at least one source); `extractionMode` independently gates durable\n * trust-gated memory extraction (default `off`, i.e. search-only).\n */\nexport function parseActivityConfig(raw: unknown): ActivityConfig {\n const defaults = defaultActivityConfig();\n if (raw === undefined || raw === null) {\n return { ...defaults };\n }\n const config = asRecord(raw, \"activity\");\n const enabledValue = coerceBooleanLike(config.enabled, \"activity.enabled\");\n if (config.enabled !== undefined && enabledValue === undefined) {\n throw new TypeError(\"activity.enabled must be a boolean\");\n }\n const timezone = optionalString(config.timezone, \"activity.timezone\") ?? \"UTC\";\n // Validate the IANA zone at parse so a typo fails before any daemon is\n // contacted; otherwise activityDayWindow() throws mid-sync after snapshot\n // pages may already be persisted, and every retry replays the same window.\n assertValidTimezone(timezone);\n const syncDaysValue = coerceNumber(config.syncDays, \"activity.syncDays\");\n if (config.syncDays !== undefined && syncDaysValue === undefined) {\n throw new TypeError(\"activity.syncDays must be a finite number\");\n }\n const syncDays = syncDaysValue ?? 1;\n if (!Number.isInteger(syncDays) || syncDays < 1 || syncDays > 90) {\n throw new RangeError(\"activity.syncDays must be an integer from 1 to 90\");\n }\n const intervalValue = coerceNumber(config.autoSyncIntervalMinutes, \"activity.autoSyncIntervalMinutes\");\n if (config.autoSyncIntervalMinutes !== undefined && intervalValue === undefined) {\n throw new TypeError(\"activity.autoSyncIntervalMinutes must be a finite number\");\n }\n const autoSyncIntervalMinutes = intervalValue ?? 15;\n if (!Number.isInteger(autoSyncIntervalMinutes) || autoSyncIntervalMinutes < 1 || autoSyncIntervalMinutes > 1440) {\n throw new RangeError(\"activity.autoSyncIntervalMinutes must be an integer from 1 to 1440\");\n }\n if (config.sources !== undefined && !Array.isArray(config.sources)) {\n throw new TypeError(\"activity.sources must be an array\");\n }\n const sources = (config.sources ?? []).map(parseSource);\n // Cursors and row dedup are keyed on machineLabel alone; two sources sharing\n // a label would share a cursor and dedup namespace, silently skipping or\n // conflating snapshots. Reject the collision at parse.\n const labels = new Set<string>();\n for (const source of sources) {\n if (labels.has(source.machineLabel)) {\n throw new RangeError(`activity source machineLabel must be unique: ${source.machineLabel}`);\n }\n labels.add(source.machineLabel);\n }\n const enabled = enabledValue ?? false;\n if (enabled && sources.length === 0) throw new RangeError(\"activity.enabled requires at least one source\");\n\n // Extraction gate (independent of `enabled` ingestion). Default `off`.\n // Default only for a missing key; an explicit null/non-string is a malformed\n // enum and must fail rather than silently disabling extraction.\n const extractionMode = config.extractionMode === undefined ? defaults.extractionMode : config.extractionMode;\n if (typeof extractionMode !== \"string\" || !EXTRACTION_MODES.includes(extractionMode as ActivityExtractionMode)) {\n throw new RangeError(`activity.extractionMode must be one of: ${EXTRACTION_MODES.join(\", \")}`);\n }\n const minImportance = config.minImportance === undefined ? defaults.minImportance : config.minImportance;\n if (typeof minImportance !== \"string\" || !IMPORTANCE_LEVELS.includes(minImportance as ImportanceLevel)) {\n throw new RangeError(`activity.minImportance must be one of: ${IMPORTANCE_LEVELS.join(\", \")}`);\n }\n // Default only for a missing key; an explicit null/unparseable value must fail\n // rather than silently uncapping (parity with the enum/unit-interval fields).\n const rawMaxMemoriesPerDay =\n config.maxMemoriesPerDay === undefined ? defaults.maxMemoriesPerDay : config.maxMemoriesPerDay;\n const maxMemoriesPerDay = coerceNumber(rawMaxMemoriesPerDay);\n if (maxMemoriesPerDay === undefined || !Number.isInteger(maxMemoriesPerDay) || maxMemoriesPerDay < 0) {\n throw new RangeError(\"activity.maxMemoriesPerDay must be a non-negative integer\");\n }\n const autoApproveTrust = parseUnitInterval(config.autoApproveTrust, \"autoApproveTrust\", defaults.autoApproveTrust);\n const reviewTrust = parseUnitInterval(config.reviewTrust, \"reviewTrust\", defaults.reviewTrust);\n if (reviewTrust >= autoApproveTrust) {\n throw new RangeError(\n `activity.reviewTrust (${reviewTrust}) must be below autoApproveTrust (${autoApproveTrust})`,\n );\n }\n return {\n enabled,\n timezone,\n syncDays,\n autoSyncIntervalMinutes,\n sources,\n extractionMode: extractionMode as ActivityExtractionMode,\n sourceTrust: parseUnitInterval(config.sourceTrust, \"sourceTrust\", defaults.sourceTrust),\n autoApproveTrust,\n reviewTrust,\n minConfidence: parseUnitInterval(config.minConfidence, \"minConfidence\", defaults.minConfidence),\n minImportance: minImportance as ImportanceLevel,\n maxMemoriesPerDay,\n };\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isNamespaceKind
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-IAY7YBXS.js";
|
|
4
4
|
import {
|
|
5
5
|
EngramAccessInputError
|
|
6
6
|
} from "./chunk-2Z24E5W2.js";
|
|
@@ -40,4 +40,4 @@ export {
|
|
|
40
40
|
positiveIntQueryParam,
|
|
41
41
|
optionalNamespaceKindQueryParam
|
|
42
42
|
};
|
|
43
|
-
//# sourceMappingURL=chunk-
|
|
43
|
+
//# sourceMappingURL=chunk-Y23B2QXP.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
hasMemoryData
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-IAY7YBXS.js";
|
|
4
4
|
import {
|
|
5
5
|
resolveNamespaceStorageRoot
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-2572MRP2.js";
|
|
7
7
|
import {
|
|
8
8
|
getConfiguredNamespaces
|
|
9
9
|
} from "./chunk-Q57GOHLF.js";
|
|
@@ -724,4 +724,4 @@ export {
|
|
|
724
724
|
runNamespaceMaintenancePlan,
|
|
725
725
|
runNamespaceMaintenanceBatchPlan
|
|
726
726
|
};
|
|
727
|
-
//# sourceMappingURL=chunk-
|
|
727
|
+
//# sourceMappingURL=chunk-YEQEGSJA.js.map
|
|
@@ -6,9 +6,11 @@ import {
|
|
|
6
6
|
parseSupportPassportConfig
|
|
7
7
|
} from "./chunk-62OKGIJA.js";
|
|
8
8
|
import {
|
|
9
|
-
assertValidTimezone,
|
|
10
9
|
parseActivityConfig
|
|
11
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-XAB6STPO.js";
|
|
11
|
+
import {
|
|
12
|
+
parseLocationConfig
|
|
13
|
+
} from "./chunk-7PHI6GUI.js";
|
|
12
14
|
import {
|
|
13
15
|
cloneDefaultSessionObserverBands
|
|
14
16
|
} from "./chunk-Z5LAYHGJ.js";
|
|
@@ -857,88 +859,6 @@ function parseCaptureCompanionConfigs(cfg) {
|
|
|
857
859
|
};
|
|
858
860
|
}
|
|
859
861
|
|
|
860
|
-
// src/location/config.ts
|
|
861
|
-
var PROVIDER_ID_PATTERN = /^[a-z0-9][a-z0-9-]*$/;
|
|
862
|
-
function defaultLocationConfig() {
|
|
863
|
-
return {
|
|
864
|
-
enabled: false,
|
|
865
|
-
timezone: "UTC",
|
|
866
|
-
syncDays: 1,
|
|
867
|
-
retainCoordinates: false,
|
|
868
|
-
sources: []
|
|
869
|
-
};
|
|
870
|
-
}
|
|
871
|
-
function asRecord(value, name) {
|
|
872
|
-
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
873
|
-
throw new TypeError(`${name} must be an object`);
|
|
874
|
-
}
|
|
875
|
-
return value;
|
|
876
|
-
}
|
|
877
|
-
function optionalNonEmptyString(value, name) {
|
|
878
|
-
if (value === void 0) return void 0;
|
|
879
|
-
if (typeof value !== "string" || value.length === 0) throw new TypeError(`${name} must be a non-empty string`);
|
|
880
|
-
return value;
|
|
881
|
-
}
|
|
882
|
-
function parseLocationSource(value) {
|
|
883
|
-
const raw = asRecord(value, "location source");
|
|
884
|
-
const id = optionalNonEmptyString(raw.id, "location source id");
|
|
885
|
-
if (id === void 0) {
|
|
886
|
-
throw new TypeError("location source requires id");
|
|
887
|
-
}
|
|
888
|
-
if (!PROVIDER_ID_PATTERN.test(id)) {
|
|
889
|
-
throw new RangeError(
|
|
890
|
-
`location source id must be a lowercase kebab string (a-z, 0-9, hyphens): got "${id}"`
|
|
891
|
-
);
|
|
892
|
-
}
|
|
893
|
-
const enabledValue = coerceBooleanLike(raw.enabled, "location source enabled");
|
|
894
|
-
if (raw.enabled !== void 0 && enabledValue === void 0) {
|
|
895
|
-
throw new TypeError(`location source '${id}' enabled must be a boolean`);
|
|
896
|
-
}
|
|
897
|
-
return { id, enabled: enabledValue ?? true };
|
|
898
|
-
}
|
|
899
|
-
function parseLocationConfig(raw) {
|
|
900
|
-
const defaults = defaultLocationConfig();
|
|
901
|
-
if (raw === void 0 || raw === null) {
|
|
902
|
-
return { ...defaults };
|
|
903
|
-
}
|
|
904
|
-
const config = asRecord(raw, "location");
|
|
905
|
-
const enabledValue = coerceBooleanLike(config.enabled, "location.enabled");
|
|
906
|
-
if (config.enabled !== void 0 && enabledValue === void 0) {
|
|
907
|
-
throw new TypeError("location.enabled must be a boolean");
|
|
908
|
-
}
|
|
909
|
-
const enabled = enabledValue ?? false;
|
|
910
|
-
const timezone = optionalNonEmptyString(config.timezone, "location.timezone") ?? "UTC";
|
|
911
|
-
assertValidTimezone(timezone);
|
|
912
|
-
const syncDaysValue = coerceNumber(config.syncDays, "location.syncDays");
|
|
913
|
-
if (config.syncDays !== void 0 && syncDaysValue === void 0) {
|
|
914
|
-
throw new TypeError("location.syncDays must be a finite number");
|
|
915
|
-
}
|
|
916
|
-
const syncDays = syncDaysValue ?? 1;
|
|
917
|
-
if (!Number.isInteger(syncDays) || syncDays < 1 || syncDays > 90) {
|
|
918
|
-
throw new RangeError("location.syncDays must be an integer from 1 to 90");
|
|
919
|
-
}
|
|
920
|
-
const retainCoordinatesValue = coerceBooleanLike(config.retainCoordinates, "location.retainCoordinates");
|
|
921
|
-
if (config.retainCoordinates !== void 0 && retainCoordinatesValue === void 0) {
|
|
922
|
-
throw new TypeError("location.retainCoordinates must be a boolean");
|
|
923
|
-
}
|
|
924
|
-
const retainCoordinates = retainCoordinatesValue ?? false;
|
|
925
|
-
if (config.sources !== void 0 && !Array.isArray(config.sources)) {
|
|
926
|
-
throw new TypeError("location.sources must be an array");
|
|
927
|
-
}
|
|
928
|
-
const sources = (config.sources ?? []).map(parseLocationSource);
|
|
929
|
-
const ids = /* @__PURE__ */ new Set();
|
|
930
|
-
for (const source of sources) {
|
|
931
|
-
if (ids.has(source.id)) {
|
|
932
|
-
throw new RangeError(`location source id must be unique: ${source.id}`);
|
|
933
|
-
}
|
|
934
|
-
ids.add(source.id);
|
|
935
|
-
}
|
|
936
|
-
if (enabled && sources.length === 0) {
|
|
937
|
-
throw new RangeError("location.enabled requires at least one source");
|
|
938
|
-
}
|
|
939
|
-
return { enabled, timezone, syncDays, retainCoordinates, sources };
|
|
940
|
-
}
|
|
941
|
-
|
|
942
862
|
// src/okf/config.ts
|
|
943
863
|
var DEFAULT_OKF_CONFIG = Object.freeze({
|
|
944
864
|
conformanceEnabled: true,
|
|
@@ -4016,4 +3936,4 @@ export {
|
|
|
4016
3936
|
VALID_MEMORY_CATEGORIES,
|
|
4017
3937
|
parseConfig
|
|
4018
3938
|
};
|
|
4019
|
-
//# sourceMappingURL=chunk-
|
|
3939
|
+
//# sourceMappingURL=chunk-YQ3CBLL4.js.map
|