@remnic/core 9.45.3 → 9.45.5
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/abort-error.d.ts +2 -1
- package/dist/abort-error.js +3 -1
- package/dist/access-admin-ops-surface.d.ts +14 -10
- package/dist/access-admin-ops-surface.js +84 -75
- package/dist/access-audit.js +2 -2
- package/dist/access-authorization-probe.d.ts +14 -10
- package/dist/access-authorization-probe.js +85 -76
- package/dist/access-boundary.d.ts +15 -11
- package/dist/access-boundary.js +84 -75
- package/dist/access-citation-namespace.js +2 -2
- package/dist/access-cli.js +191 -177
- package/dist/access-cli.js.map +1 -1
- package/dist/access-coding-context-resolution.d.ts +16 -0
- package/dist/access-coding-context-resolution.js +13 -0
- package/dist/access-coding-context-resolution.js.map +1 -0
- package/dist/access-extraction-force-flush.d.ts +14 -10
- package/dist/access-extraction-force-flush.js +84 -75
- package/dist/access-health-types.d.ts +2 -1
- package/dist/access-http-lcm-compaction.d.ts +16 -12
- package/dist/access-http-lcm-compaction.js +3 -3
- package/dist/access-http-lifecycle-flush.d.ts +14 -10
- package/dist/access-http-lifecycle-flush.js +2 -2
- package/dist/access-http-offline-stream.d.ts +123 -0
- package/dist/access-http-offline-stream.js +10 -0
- package/dist/access-http-offline-stream.js.map +1 -0
- package/dist/access-http-query.js +84 -75
- package/dist/access-http.d.ts +15 -11
- package/dist/access-http.js +104 -90
- package/dist/access-identity-continuity-surface.d.ts +9 -8
- package/dist/access-identity-continuity-surface.js +84 -75
- package/dist/access-lcm-surface.d.ts +14 -10
- package/dist/access-lcm-surface.js +84 -75
- package/dist/access-mcp-output-schemas.js +1 -1
- package/dist/access-mcp.d.ts +14 -10
- package/dist/access-mcp.js +95 -82
- package/dist/access-memory-search-fanout.d.ts +3 -2
- package/dist/{access-namespace-preflight-5yZ4g6F8.d.ts → access-namespace-preflight-CWUDwB4M.d.ts} +1 -1
- package/dist/access-namespace-preflight.d.ts +4 -3
- package/dist/access-namespace-preflight.js +84 -75
- package/dist/access-observe-helpers.d.ts +1 -0
- package/dist/access-observe-helpers.js +1 -1
- package/dist/access-observe-write-surface.d.ts +16 -10
- package/dist/access-observe-write-surface.js +84 -75
- package/dist/access-offline-manifest.d.ts +104 -0
- package/dist/access-offline-manifest.js +45 -0
- package/dist/access-offline-manifest.js.map +1 -0
- package/dist/access-operations-batch.js +86 -77
- package/dist/access-operations.d.ts +18 -14
- package/dist/access-operations.js +91 -79
- package/dist/access-recall-concurrency.d.ts +16 -26
- package/dist/access-recall-concurrency.js +86 -76
- package/dist/access-recall-response.d.ts +18 -14
- package/dist/access-recall-response.js +84 -75
- package/dist/access-recall-surface.d.ts +29 -24
- package/dist/access-recall-surface.js +84 -75
- package/dist/access-schema.d.ts +84 -84
- package/dist/access-schema.js +3 -3
- package/dist/{access-service-CiJRsgAB.d.ts → access-service-CNN89xyn.d.ts} +25 -16
- package/dist/access-service-helpers.d.ts +14 -10
- package/dist/access-service.d.ts +14 -10
- package/dist/access-service.js +84 -75
- package/dist/access-surface-catalog.d.ts +14 -10
- package/dist/access-surface-catalog.js +4 -0
- 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 +10 -8
- package/dist/active-recall.js.map +1 -1
- package/dist/adapters/index.js +4 -4
- package/dist/adapters/registry.js +2 -2
- package/dist/{auto-sync-5OE5QOZB.js → auto-sync-UPTUVE4X.js} +6 -6
- package/dist/behavior-learner.d.ts +2 -1
- package/dist/behavior-learner.js +1 -1
- package/dist/behavior-signals.d.ts +2 -1
- package/dist/bootstrap.d.ts +9 -8
- package/dist/briefing.d.ts +3 -2
- package/dist/briefing.js +24 -22
- 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 +12 -11
- 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/{capsule-merge-IDWJPCWK.js → capsule-merge-Q6AR3XL7.js} +67 -54
- package/dist/capsule-merge-Q6AR3XL7.js.map +1 -0
- package/dist/{catalog-scBmy0sO.d.ts → catalog-bctMURhN.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 +28 -26
- 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.js +1 -1
- package/dist/{chunk-E5UK4VPE.js → chunk-2FSTB6BJ.js} +5 -5
- package/dist/{chunk-5ZE7QHTK.js → chunk-2X2T2UVE.js} +5 -5
- package/dist/{chunk-P4DRWEYC.js → chunk-3COYXTGM.js} +2 -2
- package/dist/{chunk-5IVLTFOV.js → chunk-44N6ESJ4.js} +2 -2
- package/dist/{chunk-DL7ZD3JH.js → chunk-4FBVAGV3.js} +14 -9
- package/dist/chunk-4FBVAGV3.js.map +1 -0
- package/dist/{chunk-WOCNN776.js → chunk-4POAMKV6.js} +100 -41
- package/dist/chunk-4POAMKV6.js.map +1 -0
- package/dist/{chunk-HO3QBJEY.js → chunk-5546W5SI.js} +2 -2
- package/dist/{chunk-AAIUERNB.js → chunk-5QJQHBLE.js} +6 -6
- package/dist/{chunk-6CZPDBJS.js → chunk-5U7ID3EZ.js} +3 -3
- package/dist/{chunk-RN7DY3FC.js → chunk-6ISC4AVB.js} +31 -12
- package/dist/chunk-6ISC4AVB.js.map +1 -0
- package/dist/chunk-773TRRGT.js +36 -0
- package/dist/chunk-773TRRGT.js.map +1 -0
- package/dist/chunk-7T4TOGMS.js +242 -0
- package/dist/chunk-7T4TOGMS.js.map +1 -0
- package/dist/{chunk-DLVPUX7U.js → chunk-7YKVM5H3.js} +8 -6
- package/dist/chunk-7YKVM5H3.js.map +1 -0
- package/dist/chunk-7YQ6ESEA.js +322 -0
- package/dist/chunk-7YQ6ESEA.js.map +1 -0
- package/dist/{chunk-DNWXFTLD.js → chunk-A4IJCD2Z.js} +2 -2
- package/dist/{chunk-3CE77VAP.js → chunk-A4JMGKCD.js} +87 -74
- package/dist/chunk-A4JMGKCD.js.map +1 -0
- package/dist/chunk-A5KNZSNA.js +26 -0
- package/dist/chunk-A5KNZSNA.js.map +1 -0
- package/dist/{chunk-PKNLM44P.js → chunk-AC5OWJLV.js} +9 -9
- package/dist/{chunk-LZ4LDKHZ.js → chunk-AMAUBUKY.js} +6 -6
- package/dist/{chunk-CUM2BBPN.js → chunk-AUMWZSE7.js} +19 -10
- package/dist/chunk-AUMWZSE7.js.map +1 -0
- package/dist/{chunk-BUE5E2HL.js → chunk-BGLY7EEM.js} +5 -314
- package/dist/chunk-BGLY7EEM.js.map +1 -0
- package/dist/chunk-BIPBQQFI.js +44 -0
- package/dist/chunk-BIPBQQFI.js.map +1 -0
- package/dist/{chunk-S5SLVSVY.js → chunk-BQIFZ2MP.js} +5 -5
- package/dist/chunk-BTTPKDIL.js +34 -0
- package/dist/{chunk-PVGDJXVK.js.map → chunk-BTTPKDIL.js.map} +1 -1
- package/dist/chunk-CK5KOVHW.js +69 -0
- package/dist/chunk-CK5KOVHW.js.map +1 -0
- package/dist/{chunk-Q6IP2ARR.js → chunk-CSOYVTRX.js} +2 -2
- package/dist/{chunk-XOQSEF7X.js → chunk-CVILPI77.js} +6 -6
- package/dist/{chunk-VWAXN2BN.js → chunk-CX4ZUMC6.js} +91 -83
- package/dist/chunk-CX4ZUMC6.js.map +1 -0
- package/dist/{chunk-NVRYW264.js → chunk-DAJPRXBR.js} +16 -13
- package/dist/chunk-DAJPRXBR.js.map +1 -0
- package/dist/{chunk-J7VGGECD.js → chunk-DZPFMQZ7.js} +1 -1
- package/dist/chunk-DZPFMQZ7.js.map +1 -0
- package/dist/{chunk-4LMA77JH.js → chunk-E5XQIWAL.js} +3 -3
- package/dist/{chunk-WUNIWKY4.js → chunk-ELIL2A37.js} +6 -6
- package/dist/{chunk-OQ5PRDDS.js → chunk-ERZ2R42X.js} +6 -6
- package/dist/{chunk-U7GW7NE7.js → chunk-FIK3CQNA.js} +10 -10
- package/dist/{chunk-D3J5SLQK.js → chunk-FR27HBBA.js} +81 -20
- package/dist/chunk-FR27HBBA.js.map +1 -0
- package/dist/{chunk-E6PNLPGJ.js → chunk-FUCYDRE5.js} +838 -480
- package/dist/chunk-FUCYDRE5.js.map +1 -0
- package/dist/{chunk-HZFHQ4AQ.js → chunk-G7A5HLUS.js} +23 -17
- package/dist/chunk-G7A5HLUS.js.map +1 -0
- package/dist/{chunk-33PLLLL7.js → chunk-GFCVUY6G.js} +6 -6
- package/dist/{chunk-HREE4JHI.js → chunk-GODSPTOT.js} +477 -278
- package/dist/chunk-GODSPTOT.js.map +1 -0
- package/dist/{chunk-S2NCTZGJ.js → chunk-GRUYA45P.js} +15 -15
- package/dist/chunk-GRUYA45P.js.map +1 -0
- package/dist/{chunk-VUPTKTDV.js → chunk-GUAL4PQH.js} +3 -3
- package/dist/{chunk-CINZGPSJ.js → chunk-GUMZC2BO.js} +2 -2
- package/dist/{chunk-H24WNPA2.js → chunk-GWFSVJ4P.js} +3 -3
- package/dist/{chunk-7XC2HX75.js → chunk-GYPQL6XN.js} +157 -16
- package/dist/chunk-GYPQL6XN.js.map +1 -0
- package/dist/{chunk-TSH56VPU.js → chunk-HAYSYUAB.js} +2 -2
- package/dist/{chunk-PDLBLTOK.js → chunk-HC3PBX23.js} +9 -9
- package/dist/{chunk-TDHTVMPG.js → chunk-HFPASSFV.js} +7 -2
- package/dist/chunk-HFPASSFV.js.map +1 -0
- package/dist/chunk-J2WC5LF4.js +395 -0
- package/dist/chunk-J2WC5LF4.js.map +1 -0
- package/dist/{chunk-KXB4VXHY.js → chunk-JIYDRBVZ.js} +2 -2
- package/dist/chunk-JV3C2MNQ.js +74 -0
- package/dist/chunk-JV3C2MNQ.js.map +1 -0
- package/dist/{chunk-HLPD7B7P.js → chunk-JZH4LWHB.js} +2 -2
- package/dist/{chunk-AV5ZEH4M.js → chunk-KVJRXN2E.js} +2 -2
- package/dist/{chunk-WFTIGIIS.js → chunk-L6CQ7WIW.js} +5 -5
- package/dist/{chunk-227UFSEQ.js → chunk-LEPOP46W.js} +4 -4
- package/dist/{chunk-EJUEXZHX.js → chunk-LLJMAULE.js} +2 -2
- package/dist/{chunk-N5Z4EVOR.js → chunk-LNEWDF2A.js} +36 -11
- package/dist/chunk-LNEWDF2A.js.map +1 -0
- package/dist/{chunk-QN25OCUF.js → chunk-LPYDOLSM.js} +5 -5
- package/dist/{chunk-AS7YMSL6.js → chunk-M23RF3LJ.js} +4 -4
- package/dist/{chunk-OAEQLRCY.js → chunk-MO4HSXHZ.js} +5 -5
- package/dist/{chunk-ECK75GDJ.js → chunk-N3LL5NEU.js} +43 -24
- package/dist/chunk-N3LL5NEU.js.map +1 -0
- package/dist/chunk-NEF7LR5J.js +29 -0
- package/dist/chunk-NEF7LR5J.js.map +1 -0
- package/dist/{chunk-3F2LKUMU.js → chunk-NIS256NW.js} +2 -2
- package/dist/{chunk-YIAA2X3D.js → chunk-NK5RGJ65.js} +3 -3
- package/dist/chunk-NLDVVWCL.js +84 -0
- package/dist/chunk-NLDVVWCL.js.map +1 -0
- package/dist/{chunk-4J7G5SY4.js → chunk-NZBZ7IS2.js} +72 -24
- package/dist/chunk-NZBZ7IS2.js.map +1 -0
- package/dist/{chunk-3TBLDMJA.js → chunk-O4KMGRXE.js} +5 -2
- package/dist/chunk-O4KMGRXE.js.map +1 -0
- package/dist/{chunk-7TWUCYER.js → chunk-PNRA7FAD.js} +7 -7
- package/dist/{chunk-5I4M26Q7.js → chunk-QBSFOKY6.js} +4 -4
- package/dist/{chunk-E53DSZEN.js → chunk-QR6G5KF4.js} +3 -3
- package/dist/{chunk-CJ2ZR7UA.js → chunk-QUENPGWZ.js} +261 -211
- package/dist/chunk-QUENPGWZ.js.map +1 -0
- package/dist/{chunk-4UH4BTGK.js → chunk-QVJPH7SH.js} +84 -84
- package/dist/{chunk-UYLMNVY6.js → chunk-R3KHKU7M.js} +16 -9
- package/dist/chunk-R3KHKU7M.js.map +1 -0
- package/dist/{chunk-JBPKEARU.js → chunk-RKNJBZ55.js} +4 -4
- package/dist/{chunk-WDISJRMG.js → chunk-RMMVQQA6.js} +2 -2
- package/dist/{chunk-JVLCVFQ4.js → chunk-RNHVVMFN.js} +3 -3
- package/dist/{chunk-QJAQNXWI.js → chunk-RVO6TCTU.js} +81 -84
- package/dist/chunk-RVO6TCTU.js.map +1 -0
- package/dist/chunk-S2HLHAZ4.js +16 -0
- package/dist/chunk-S2HLHAZ4.js.map +1 -0
- package/dist/{chunk-KWMXR7XS.js → chunk-S2V7RUCL.js} +8 -1
- package/dist/{chunk-KWMXR7XS.js.map → chunk-S2V7RUCL.js.map} +1 -1
- package/dist/{chunk-5SM35XZR.js → chunk-S5NZBKKQ.js} +2 -2
- package/dist/{chunk-VNA7W7QF.js → chunk-SVH57F5Z.js} +12 -4
- package/dist/chunk-SVH57F5Z.js.map +1 -0
- package/dist/{chunk-WIPEXG6R.js → chunk-SXIMQLGV.js} +2 -2
- package/dist/{chunk-RVLJEII5.js → chunk-SYUBB3WM.js} +256 -187
- package/dist/chunk-SYUBB3WM.js.map +1 -0
- package/dist/{chunk-VCD4PSK2.js → chunk-TQZ4DVBC.js} +7 -4
- package/dist/chunk-TQZ4DVBC.js.map +1 -0
- package/dist/{chunk-7K5Q6COX.js → chunk-TVVEYCNW.js} +4 -4
- package/dist/{chunk-YV32N67O.js → chunk-URS5GSM7.js} +1 -1
- package/dist/chunk-URS5GSM7.js.map +1 -0
- package/dist/{chunk-4B77XSG5.js → chunk-UV72DEZD.js} +5 -5
- package/dist/{chunk-BJKPPZ6Z.js → chunk-UW66OZTD.js} +2 -2
- package/dist/{chunk-XYTOI63Z.js → chunk-V2TNYF6Q.js} +19 -11
- package/dist/chunk-V2TNYF6Q.js.map +1 -0
- package/dist/{chunk-S2BBISHU.js → chunk-VANZKHTN.js} +3 -3
- package/dist/chunk-VHFXP27N.js +250 -0
- package/dist/chunk-VHFXP27N.js.map +1 -0
- package/dist/chunk-VL35ZFSZ.js +102 -0
- package/dist/chunk-VL35ZFSZ.js.map +1 -0
- package/dist/{chunk-3Y224NYC.js → chunk-VYISFWVX.js} +2 -2
- package/dist/{chunk-JE7EK33X.js → chunk-W2V7UESE.js} +2 -2
- package/dist/{chunk-TIHMZFIV.js → chunk-W3IC7QOY.js} +3 -3
- package/dist/{chunk-NRV4Y3PM.js → chunk-W4FBGYGK.js} +1 -1
- package/dist/{chunk-P2BM76KT.js → chunk-WAS4HV46.js} +174 -43
- package/dist/chunk-WAS4HV46.js.map +1 -0
- package/dist/{chunk-57QKLRBV.js → chunk-WB7JSQCP.js} +2 -1
- package/dist/chunk-WB7JSQCP.js.map +1 -0
- package/dist/{chunk-A5OJCXZL.js → chunk-WZ3TOIDW.js} +15 -4
- package/dist/chunk-WZ3TOIDW.js.map +1 -0
- package/dist/{chunk-MU7ZHSZE.js → chunk-WZFAPHIK.js} +2 -2
- package/dist/{chunk-T2TTP3KU.js → chunk-X4IDNPOS.js} +2 -2
- package/dist/{chunk-UVIKWC7M.js → chunk-XAGYS7X6.js} +17 -17
- package/dist/{chunk-BLAKS3CP.js → chunk-XL3TATMJ.js} +3 -3
- package/dist/{chunk-W4XJFLAL.js → chunk-XPRJSHNI.js} +2 -2
- package/dist/{chunk-5TFP4CUL.js → chunk-XQ3HXAQH.js} +14 -11
- package/dist/chunk-XQ3HXAQH.js.map +1 -0
- package/dist/{chunk-E6EE5B67.js → chunk-YK6BDDHP.js} +4 -4
- package/dist/{chunk-ES36HTSC.js → chunk-YLHM5BQQ.js} +3 -3
- package/dist/{chunk-ULARSG5Z.js → chunk-YN6ASZUG.js} +10 -8
- package/dist/{chunk-ULARSG5Z.js.map → chunk-YN6ASZUG.js.map} +1 -1
- package/dist/{chunk-VOUOLGIP.js → chunk-YRFAYOFQ.js} +11 -13
- package/dist/chunk-YRFAYOFQ.js.map +1 -0
- package/dist/{chunk-IKKWIPYN.js → chunk-YYQAKIDJ.js} +37 -1
- package/dist/chunk-YYQAKIDJ.js.map +1 -0
- package/dist/{chunk-GF22HWS2.js → chunk-Z54EM5YZ.js} +4 -4
- package/dist/{chunk-64UDOIMI.js → chunk-ZLQ37WJX.js} +2 -2
- package/dist/{cli-BUGN3d6_.d.ts → cli-BHBswmUa.d.ts} +5 -5
- package/dist/cli.d.ts +16 -12
- package/dist/cli.js +138 -123
- package/dist/compounding/engine.d.ts +3 -2
- package/dist/compounding/engine.js +25 -23
- 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 +10 -8
- package/dist/connectors/codex-materialize-runner.d.ts +2 -1
- package/dist/connectors/codex-materialize-runner.js +24 -22
- package/dist/connectors/codex-materialize.d.ts +2 -1
- package/dist/connectors/index.d.ts +2 -1
- package/dist/connectors/index.js +27 -25
- package/dist/consolidation-provenance-check.d.ts +3 -2
- package/dist/consolidation-provenance-check.js +4 -4
- package/dist/consolidation-undo.d.ts +3 -2
- package/dist/consolidation-undo.js +10 -7
- package/dist/consolidation-undo.js.map +1 -1
- package/dist/contradiction/index.d.ts +3 -2
- package/dist/converge-config.d.ts +2 -1
- package/dist/convergence-refresh.d.ts +4 -3
- package/dist/convergence-refresh.js +28 -26
- package/dist/conversation-index/backend.d.ts +2 -1
- package/dist/conversation-index/backend.js +2 -2
- 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 +43 -41
- package/dist/day-summary.d.ts +2 -1
- package/dist/delinearize.d.ts +2 -1
- package/dist/direct-answer-wiring.d.ts +2 -1
- package/dist/direct-answer-wiring.js +2 -2
- package/dist/direct-answer.d.ts +2 -1
- package/dist/embedding-fallback.d.ts +2 -1
- package/dist/embedding-fallback.js +2 -2
- package/dist/enrichment/index.d.ts +2 -1
- package/dist/entity-retrieval-boundaries.js +1 -1
- package/dist/entity-retrieval.d.ts +3 -2
- package/dist/entity-retrieval.js +25 -23
- package/dist/entity-schema.d.ts +2 -1
- package/dist/explicit-capture.d.ts +9 -8
- package/dist/explicit-capture.js +11 -9
- package/dist/external-wiki-access.d.ts +127 -0
- package/dist/external-wiki-access.js +187 -0
- package/dist/external-wiki-access.js.map +1 -0
- package/dist/external-wiki-cli.d.ts +13 -0
- package/dist/external-wiki-cli.js +10 -0
- package/dist/external-wiki-cli.js.map +1 -0
- package/dist/external-wiki-collection-registration.d.ts +39 -0
- package/dist/external-wiki-collection-registration.js +79 -0
- package/dist/external-wiki-collection-registration.js.map +1 -0
- package/dist/external-wiki-collection.d.ts +50 -0
- package/dist/external-wiki-collection.js +387 -0
- package/dist/external-wiki-collection.js.map +1 -0
- package/dist/external-wiki-config.d.ts +13 -0
- package/dist/external-wiki-config.js +13 -0
- package/dist/external-wiki-config.js.map +1 -0
- package/dist/external-wiki-guard.d.ts +11 -0
- package/dist/external-wiki-guard.js +18 -0
- package/dist/external-wiki-guard.js.map +1 -0
- package/dist/external-wiki-mcp-tools.d.ts +123 -0
- package/dist/external-wiki-mcp-tools.js +8 -0
- package/dist/external-wiki-mcp-tools.js.map +1 -0
- package/dist/external-wiki-search.d.ts +42 -0
- package/dist/external-wiki-search.js +11 -0
- package/dist/external-wiki-search.js.map +1 -0
- package/dist/external-wiki.d.ts +39 -0
- package/dist/external-wiki.js +14 -0
- package/dist/external-wiki.js.map +1 -0
- 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-source-grounding-helpers.d.ts +5 -3
- package/dist/extraction-source-grounding-helpers.js +1 -1
- package/dist/extraction-source-grounding-rules.d.ts +2 -1
- package/dist/extraction-source-grounding-rules.js +2 -2
- package/dist/extraction-source-grounding.d.ts +2 -1
- package/dist/extraction-source-grounding.js +5 -5
- package/dist/extraction.d.ts +2 -1
- package/dist/extraction.js +46 -43
- package/dist/fallback-llm.d.ts +2 -1
- package/dist/{first-start-migration-F2QJD66E.js → first-start-migration-ZSHEFEI3.js} +10 -12
- package/dist/{first-start-migration-F2QJD66E.js.map → first-start-migration-ZSHEFEI3.js.map} +1 -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-reinforcement.d.ts +2 -1
- package/dist/graph-snapshot.d.ts +2 -1
- package/dist/graph.d.ts +2 -1
- package/dist/harmonic-retrieval.js +2 -2
- 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 +443 -430
- package/dist/index.js +304 -269
- 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 +7 -7
- 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/maintenance/memory-governance.d.ts +2 -1
- package/dist/maintenance/memory-governance.js +25 -23
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +3 -2
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +25 -23
- package/dist/maintenance/rebuild-memory-projection.d.ts +3 -2
- package/dist/maintenance/rebuild-memory-projection.js +27 -25
- package/dist/{maintenance-LbuS2rUA.d.ts → maintenance-CoRikzIt.d.ts} +3 -3
- package/dist/mcp-memory-inspector-app.d.ts +14 -10
- package/dist/mcp-read-only-tools.js +1 -1
- 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 +10 -0
- package/dist/memory-snapshot.js +8 -0
- package/dist/memory-snapshot.js.map +1 -0
- 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 +41 -39
- package/dist/namespaces/principal.d.ts +2 -1
- package/dist/namespaces/search.d.ts +2 -1
- package/dist/namespaces/search.js +18 -18
- package/dist/namespaces/storage.d.ts +4 -3
- package/dist/namespaces/storage.js +24 -22
- package/dist/native-knowledge.d.ts +2 -1
- package/dist/offline-sync-impression-drain.d.ts +2 -1
- package/dist/offline-sync-impression-drain.js +11 -9
- package/dist/offline-sync.d.ts +29 -3
- package/dist/offline-sync.js +6 -2
- package/dist/operator-doctor-corpus.d.ts +2 -1
- package/dist/operator-doctor-corpus.js +46 -44
- package/dist/operator-doctor-replica.d.ts +2 -1
- package/dist/operator-doctor-replica.js +3 -3
- package/dist/operator-toolkit.d.ts +4 -3
- package/dist/operator-toolkit.js +60 -55
- package/dist/orchestration/compression-guideline-coordinator.d.ts +3 -2
- package/dist/orchestration/maintenance.d.ts +5 -4
- package/dist/orchestration/maintenance.js +37 -33
- package/dist/{orchestrator-rHiWt32X.d.ts → orchestrator-BJeq7Pw1.d.ts} +14 -7
- package/dist/orchestrator.d.ts +9 -8
- package/dist/orchestrator.js +200 -186
- package/dist/page-versioning.js +3 -3
- package/dist/patterns-cli.d.ts +2 -1
- package/dist/{pipeline-W_97O8BV.d.ts → pipeline-CNjY4wk3.d.ts} +1 -1
- package/dist/policy-runtime.d.ts +2 -1
- package/dist/policy-runtime.js +1 -1
- package/dist/proactive-contention.d.ts +2 -1
- package/dist/provenance.d.ts +2 -1
- package/dist/provenance.js +2 -2
- package/dist/{qmd-LWtMofAf.d.ts → qmd-C0UDZidt.d.ts} +9 -7
- package/dist/qmd-preflight.d.ts +5 -4
- package/dist/qmd-preflight.js +2 -2
- package/dist/qmd-recall-cache.d.ts +2 -1
- package/dist/qmd.d.ts +4 -3
- package/dist/qmd.js +8 -8
- 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 +8 -1
- package/dist/recall-xray.js +2 -2
- package/dist/reconcile/cursor.d.ts +12 -2
- package/dist/reconcile/cursor.js +46 -7
- package/dist/reconcile/cursor.js.map +1 -1
- package/dist/reconcile/manifest.d.ts +9 -2
- package/dist/reconcile/manifest.js +15 -268
- package/dist/reconcile/manifest.js.map +1 -1
- package/dist/reconcile/plan.d.ts +4 -1
- package/dist/reconcile/plan.js +4 -4
- 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-divergence.js +2 -2
- package/dist/replica-peers-config.d.ts +2 -1
- package/dist/resolve-auth-token.d.ts +2 -1
- package/dist/resume-bundles.js +12 -10
- package/dist/retrieval-agents.d.ts +4 -3
- package/dist/retrieval-agents.js +2 -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 +54 -54
- package/dist/{scope-profiles-BiQKOE-p.d.ts → scope-profiles-BJzp2F5A.d.ts} +1 -1
- package/dist/search/embed-helper.d.ts +2 -1
- package/dist/search/embed-helper.js +3 -3
- package/dist/search/factory.d.ts +4 -2
- package/dist/search/factory.js +20 -18
- package/dist/search/index.d.ts +2 -1
- package/dist/search/index.js +20 -20
- package/dist/search/lancedb-backend.d.ts +2 -1
- package/dist/search/lancedb-backend.js +4 -4
- package/dist/search/meilisearch-backend.d.ts +2 -1
- package/dist/search/meilisearch-backend.js +4 -4
- package/dist/search/noop-backend.d.ts +2 -1
- package/dist/search/orama-backend.d.ts +2 -1
- package/dist/search/orama-backend.js +4 -4
- package/dist/search/port.d.ts +18 -1
- 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/secure-store/index.js +2 -2
- package/dist/{semantic-consolidation-dHYCyqgh.d.ts → semantic-consolidation-D4KAZO2G.d.ts} +1 -1
- package/dist/semantic-consolidation.d.ts +3 -2
- package/dist/semantic-consolidation.js +26 -24
- package/dist/semantic-rule-promotion.js +24 -22
- package/dist/semantic-rule-verifier.d.ts +2 -1
- package/dist/semantic-rule-verifier.js +25 -23
- package/dist/{service-DJG3KCQ4.d.ts → service-DWC4tq7p.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 +10 -9
- package/dist/shared-context/manager.js +2 -2
- package/dist/signal.d.ts +2 -1
- package/dist/source-agent-qualifier.d.ts +2 -1
- package/dist/source-agent-qualifier.js +43 -40
- package/dist/{storage-F9FVh-w9.d.ts → storage-DPGjB-8e.d.ts} +28 -13
- package/dist/storage.d.ts +3 -2
- package/dist/storage.js +26 -24
- package/dist/summarizer.d.ts +2 -1
- package/dist/summarizer.js +5 -5
- package/dist/summary-snapshot.d.ts +2 -1
- 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-migration.js +1 -1
- package/dist/tier-routing.d.ts +2 -1
- package/dist/tool-scoped-memory.d.ts +5 -1
- package/dist/tool-scoped-memory.js +3 -1
- package/dist/topics.d.ts +2 -1
- package/dist/transcript.d.ts +2 -1
- package/dist/transfer/capsule-import.js +4 -4
- package/dist/transfer/types.d.ts +66 -66
- package/dist/trust-score-stage.d.ts +2 -1
- package/dist/trust-score.d.ts +2 -1
- package/dist/{types-rEwubvim.d.ts → types-yX_FwERf.d.ts} +8 -1
- 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 +25 -23
- package/dist/write-envelope.d.ts +2 -1
- package/package.json +2 -2
- package/src/abort-error.ts +17 -0
- package/src/access-admin-ops-surface.ts +1 -0
- package/src/access-boundary.ts +1 -0
- package/src/access-coding-context-resolution.ts +42 -0
- package/src/access-extraction-force-flush.ts +38 -2
- package/src/access-http-lcm-compaction.ts +5 -2
- package/src/access-http-offline-stream.ts +80 -0
- package/src/access-http.test.ts +310 -3
- package/src/access-http.ts +84 -77
- package/src/access-mcp-output-schemas.ts +36 -0
- package/src/access-mcp.test.ts +95 -1
- package/src/access-mcp.ts +7 -9
- package/src/access-observe-helpers.ts +64 -22
- package/src/access-observe-write-surface.ts +8 -0
- package/src/access-offline-manifest.ts +54 -0
- package/src/access-operations-batch.ts +3 -3
- package/src/access-operations.ts +13 -7
- package/src/access-recall-concurrency.ts +3 -27
- package/src/access-recall-surface.ts +3 -0
- package/src/access-service-health.test.ts +32 -7
- package/src/access-service-namespace.test.ts +55 -0
- package/src/access-service-observe-idempotency.test.ts +34 -2
- package/src/access-service-observe-lcm-parity.test.ts +183 -23
- package/src/access-service-observe-scope.test.ts +160 -1
- package/src/access-service-offline-file-content.test.ts +345 -1
- package/src/access-service.ts +88 -62
- package/src/access-surface-catalog.ts +4 -0
- package/src/admin/admin-surfaces.ts +2 -0
- package/src/binary-lifecycle/pipeline.test.ts +106 -1
- package/src/binary-lifecycle/pipeline.ts +3 -0
- package/src/coding/git-context.test.ts +47 -0
- package/src/coding/git-context.ts +129 -27
- package/src/config.test.ts +24 -0
- package/src/config.ts +9 -12
- package/src/connector-provenance.test.ts +101 -0
- package/src/consolidation-undo.ts +3 -0
- package/src/convergence-refresh.ts +14 -2
- package/src/correction/correction-access-wiring.ts +9 -7
- package/src/correction/correction-executor.test.ts +206 -2
- package/src/correction/correction-executor.ts +29 -20
- package/src/correction/correction-planner.test.ts +36 -0
- package/src/correction/correction-planner.ts +9 -15
- package/src/correction/correction-service.ts +3 -1
- package/src/correction/correction-storage-integration.test.ts +77 -0
- package/src/correction/correction-surfaces.test.ts +41 -28
- package/src/correction/passive-capture.test.ts +59 -0
- package/src/correction/passive-capture.ts +4 -1
- package/src/entity-retrieval-boundaries.ts +17 -4
- package/src/entity-retrieval.ts +27 -6
- package/src/external-wiki-access.test.ts +65 -0
- package/src/external-wiki-access.ts +31 -0
- package/src/external-wiki-cli.ts +100 -0
- package/src/external-wiki-collection-registration.test.ts +163 -0
- package/src/external-wiki-collection-registration.ts +101 -0
- package/src/external-wiki-collection.test.ts +502 -0
- package/src/external-wiki-collection.ts +503 -0
- package/src/external-wiki-config.test.ts +135 -0
- package/src/external-wiki-config.ts +100 -0
- package/src/external-wiki-guard.ts +83 -0
- package/src/external-wiki-mcp-tools.ts +23 -0
- package/src/external-wiki-search.test.ts +367 -0
- package/src/external-wiki-search.ts +362 -0
- package/src/external-wiki.test.ts +240 -0
- package/src/external-wiki.ts +427 -0
- package/src/extraction-scope-source-agent.test.ts +21 -0
- package/src/extraction-source-grounding-helpers.ts +243 -53
- package/src/extraction-source-grounding-rules.ts +133 -39
- package/src/extraction-source-grounding.test.ts +363 -33
- package/src/extraction-timeout.test.ts +1 -0
- package/src/extraction-watermark.test.ts +150 -7
- package/src/extraction.ts +8 -1
- package/src/index.ts +9 -5
- package/src/maintenance/first-start-migration.ts +11 -11
- package/src/mcp-read-only-tools.ts +1 -0
- package/src/memory-snapshot.ts +15 -0
- package/src/offline-sync.test.ts +194 -0
- package/src/offline-sync.ts +217 -13
- package/src/orchestration/external-wiki-recall-guard.test.ts +94 -0
- package/src/orchestration/extraction-persist.ts +19 -2
- package/src/orchestration/extraction-run-helpers.ts +37 -19
- package/src/orchestration/extraction-run.test.ts +171 -2
- package/src/orchestration/extraction-run.ts +11 -13
- package/src/orchestration/extraction-watermark.ts +106 -17
- package/src/orchestration/generic-recall-paths.ts +14 -0
- package/src/orchestration/orchestrator-helpers.ts +2 -0
- package/src/orchestration/orchestrator-init.ts +9 -0
- package/src/orchestration/recall-internal-deps.ts +6 -0
- package/src/orchestration/recall-internal.ts +154 -33
- package/src/orchestration/recall-rerank-coordinator.ts +60 -25
- package/src/orchestration/recall-search-pipeline.test.ts +75 -1
- package/src/orchestration/recall-search-pipeline.ts +50 -10
- package/src/orchestrator-convergence-refresh.test.ts +36 -2
- package/src/orchestrator.ts +13 -3
- package/src/page-versioning.ts +5 -19
- package/src/procedural/procedure-recall.ts +5 -1
- package/src/provenance-surfaces.test.ts +3 -0
- package/src/qmd-client.test.ts +78 -17
- package/src/qmd.test.ts +24 -0
- package/src/qmd.ts +224 -315
- package/src/recall-explain-renderer.ts +3 -0
- package/src/recall-rerank-coordinator.test.ts +61 -0
- package/src/recall-xray-renderer.test.ts +6 -0
- package/src/recall-xray.test.ts +88 -1
- package/src/recall-xray.ts +15 -0
- package/src/reconcile/cursor.test.ts +48 -0
- package/src/reconcile/cursor.ts +58 -11
- package/src/reconcile/manifest.test.ts +4 -0
- package/src/reconcile/manifest.ts +41 -51
- package/src/reconcile/plan.test.ts +4 -0
- package/src/reconcile/plan.ts +28 -16
- package/src/search/factory.ts +6 -6
- package/src/search/port.ts +25 -9
- package/src/secure-store/secure-fs.ts +20 -12
- package/src/secure-store/secure-store.test.ts +41 -2
- package/src/spaces/index.test.ts +61 -2
- package/src/spaces/index.ts +44 -18
- package/src/storage/entity-alias-config.ts +97 -0
- package/src/storage/entity-canonical-id-lock.ts +53 -23
- package/src/storage/entity-canonical-id-migration.ts +53 -22
- package/src/storage/entity-canonical-id-references.ts +3 -0
- package/src/storage/entity-id-safety.ts +7 -0
- package/src/storage/entity-store.ts +6 -2
- package/src/storage/memory-frontmatter-metadata.ts +4 -9
- package/src/storage/memory-migration-serialization.ts +10 -15
- package/src/storage/tombstone-blocked-capture-mutation.ts +52 -64
- package/src/storage/tombstone-blocked-capture-sync.ts +244 -199
- package/src/storage-contract/cache-coherence.test.ts +99 -0
- package/src/storage-deletion-revisions.test.ts +91 -0
- package/src/storage-fact-hash-index-defer.test.ts +460 -170
- package/src/storage.ts +572 -284
- package/src/testing/subjects/first-start-tier-migration.test.ts +75 -0
- package/src/tier-migration.ts +10 -12
- package/src/tool-scoped-memory.ts +10 -0
- package/src/transfer/capsule-import.ts +13 -0
- package/src/transfer/capsule-merge.ts +13 -0
- package/src/trust-score-recall-paths.test.ts +75 -1
- package/src/types.ts +7 -3
- package/dist/capsule-merge-IDWJPCWK.js.map +0 -1
- package/dist/chunk-3CE77VAP.js.map +0 -1
- package/dist/chunk-3TBLDMJA.js.map +0 -1
- package/dist/chunk-4J7G5SY4.js.map +0 -1
- package/dist/chunk-57QKLRBV.js.map +0 -1
- package/dist/chunk-5TFP4CUL.js.map +0 -1
- package/dist/chunk-7XC2HX75.js.map +0 -1
- package/dist/chunk-A5OJCXZL.js.map +0 -1
- package/dist/chunk-BUE5E2HL.js.map +0 -1
- package/dist/chunk-CJ2ZR7UA.js.map +0 -1
- package/dist/chunk-CUM2BBPN.js.map +0 -1
- package/dist/chunk-D3J5SLQK.js.map +0 -1
- package/dist/chunk-DL7ZD3JH.js.map +0 -1
- package/dist/chunk-DLVPUX7U.js.map +0 -1
- package/dist/chunk-E6PNLPGJ.js.map +0 -1
- package/dist/chunk-ECK75GDJ.js.map +0 -1
- package/dist/chunk-HREE4JHI.js.map +0 -1
- package/dist/chunk-HZFHQ4AQ.js.map +0 -1
- package/dist/chunk-IKKWIPYN.js.map +0 -1
- package/dist/chunk-J7VGGECD.js.map +0 -1
- package/dist/chunk-N5Z4EVOR.js.map +0 -1
- package/dist/chunk-NVRYW264.js.map +0 -1
- package/dist/chunk-P2BM76KT.js.map +0 -1
- package/dist/chunk-PVGDJXVK.js +0 -21
- package/dist/chunk-QJAQNXWI.js.map +0 -1
- package/dist/chunk-RN7DY3FC.js.map +0 -1
- package/dist/chunk-RVLJEII5.js.map +0 -1
- package/dist/chunk-S2NCTZGJ.js.map +0 -1
- package/dist/chunk-TDHTVMPG.js.map +0 -1
- package/dist/chunk-UYLMNVY6.js.map +0 -1
- package/dist/chunk-VCD4PSK2.js.map +0 -1
- package/dist/chunk-VNA7W7QF.js.map +0 -1
- package/dist/chunk-VOUOLGIP.js.map +0 -1
- package/dist/chunk-VWAXN2BN.js.map +0 -1
- package/dist/chunk-WOCNN776.js.map +0 -1
- package/dist/chunk-XYTOI63Z.js.map +0 -1
- package/dist/chunk-YV32N67O.js.map +0 -1
- /package/dist/{auto-sync-5OE5QOZB.js.map → auto-sync-UPTUVE4X.js.map} +0 -0
- /package/dist/{chunk-E5UK4VPE.js.map → chunk-2FSTB6BJ.js.map} +0 -0
- /package/dist/{chunk-5ZE7QHTK.js.map → chunk-2X2T2UVE.js.map} +0 -0
- /package/dist/{chunk-P4DRWEYC.js.map → chunk-3COYXTGM.js.map} +0 -0
- /package/dist/{chunk-5IVLTFOV.js.map → chunk-44N6ESJ4.js.map} +0 -0
- /package/dist/{chunk-HO3QBJEY.js.map → chunk-5546W5SI.js.map} +0 -0
- /package/dist/{chunk-AAIUERNB.js.map → chunk-5QJQHBLE.js.map} +0 -0
- /package/dist/{chunk-6CZPDBJS.js.map → chunk-5U7ID3EZ.js.map} +0 -0
- /package/dist/{chunk-DNWXFTLD.js.map → chunk-A4IJCD2Z.js.map} +0 -0
- /package/dist/{chunk-PKNLM44P.js.map → chunk-AC5OWJLV.js.map} +0 -0
- /package/dist/{chunk-LZ4LDKHZ.js.map → chunk-AMAUBUKY.js.map} +0 -0
- /package/dist/{chunk-S5SLVSVY.js.map → chunk-BQIFZ2MP.js.map} +0 -0
- /package/dist/{chunk-Q6IP2ARR.js.map → chunk-CSOYVTRX.js.map} +0 -0
- /package/dist/{chunk-XOQSEF7X.js.map → chunk-CVILPI77.js.map} +0 -0
- /package/dist/{chunk-4LMA77JH.js.map → chunk-E5XQIWAL.js.map} +0 -0
- /package/dist/{chunk-WUNIWKY4.js.map → chunk-ELIL2A37.js.map} +0 -0
- /package/dist/{chunk-OQ5PRDDS.js.map → chunk-ERZ2R42X.js.map} +0 -0
- /package/dist/{chunk-U7GW7NE7.js.map → chunk-FIK3CQNA.js.map} +0 -0
- /package/dist/{chunk-33PLLLL7.js.map → chunk-GFCVUY6G.js.map} +0 -0
- /package/dist/{chunk-VUPTKTDV.js.map → chunk-GUAL4PQH.js.map} +0 -0
- /package/dist/{chunk-CINZGPSJ.js.map → chunk-GUMZC2BO.js.map} +0 -0
- /package/dist/{chunk-H24WNPA2.js.map → chunk-GWFSVJ4P.js.map} +0 -0
- /package/dist/{chunk-TSH56VPU.js.map → chunk-HAYSYUAB.js.map} +0 -0
- /package/dist/{chunk-PDLBLTOK.js.map → chunk-HC3PBX23.js.map} +0 -0
- /package/dist/{chunk-KXB4VXHY.js.map → chunk-JIYDRBVZ.js.map} +0 -0
- /package/dist/{chunk-HLPD7B7P.js.map → chunk-JZH4LWHB.js.map} +0 -0
- /package/dist/{chunk-AV5ZEH4M.js.map → chunk-KVJRXN2E.js.map} +0 -0
- /package/dist/{chunk-WFTIGIIS.js.map → chunk-L6CQ7WIW.js.map} +0 -0
- /package/dist/{chunk-227UFSEQ.js.map → chunk-LEPOP46W.js.map} +0 -0
- /package/dist/{chunk-EJUEXZHX.js.map → chunk-LLJMAULE.js.map} +0 -0
- /package/dist/{chunk-QN25OCUF.js.map → chunk-LPYDOLSM.js.map} +0 -0
- /package/dist/{chunk-AS7YMSL6.js.map → chunk-M23RF3LJ.js.map} +0 -0
- /package/dist/{chunk-OAEQLRCY.js.map → chunk-MO4HSXHZ.js.map} +0 -0
- /package/dist/{chunk-3F2LKUMU.js.map → chunk-NIS256NW.js.map} +0 -0
- /package/dist/{chunk-YIAA2X3D.js.map → chunk-NK5RGJ65.js.map} +0 -0
- /package/dist/{chunk-7TWUCYER.js.map → chunk-PNRA7FAD.js.map} +0 -0
- /package/dist/{chunk-5I4M26Q7.js.map → chunk-QBSFOKY6.js.map} +0 -0
- /package/dist/{chunk-E53DSZEN.js.map → chunk-QR6G5KF4.js.map} +0 -0
- /package/dist/{chunk-4UH4BTGK.js.map → chunk-QVJPH7SH.js.map} +0 -0
- /package/dist/{chunk-JBPKEARU.js.map → chunk-RKNJBZ55.js.map} +0 -0
- /package/dist/{chunk-WDISJRMG.js.map → chunk-RMMVQQA6.js.map} +0 -0
- /package/dist/{chunk-JVLCVFQ4.js.map → chunk-RNHVVMFN.js.map} +0 -0
- /package/dist/{chunk-5SM35XZR.js.map → chunk-S5NZBKKQ.js.map} +0 -0
- /package/dist/{chunk-WIPEXG6R.js.map → chunk-SXIMQLGV.js.map} +0 -0
- /package/dist/{chunk-7K5Q6COX.js.map → chunk-TVVEYCNW.js.map} +0 -0
- /package/dist/{chunk-4B77XSG5.js.map → chunk-UV72DEZD.js.map} +0 -0
- /package/dist/{chunk-BJKPPZ6Z.js.map → chunk-UW66OZTD.js.map} +0 -0
- /package/dist/{chunk-S2BBISHU.js.map → chunk-VANZKHTN.js.map} +0 -0
- /package/dist/{chunk-3Y224NYC.js.map → chunk-VYISFWVX.js.map} +0 -0
- /package/dist/{chunk-JE7EK33X.js.map → chunk-W2V7UESE.js.map} +0 -0
- /package/dist/{chunk-TIHMZFIV.js.map → chunk-W3IC7QOY.js.map} +0 -0
- /package/dist/{chunk-NRV4Y3PM.js.map → chunk-W4FBGYGK.js.map} +0 -0
- /package/dist/{chunk-MU7ZHSZE.js.map → chunk-WZFAPHIK.js.map} +0 -0
- /package/dist/{chunk-T2TTP3KU.js.map → chunk-X4IDNPOS.js.map} +0 -0
- /package/dist/{chunk-UVIKWC7M.js.map → chunk-XAGYS7X6.js.map} +0 -0
- /package/dist/{chunk-BLAKS3CP.js.map → chunk-XL3TATMJ.js.map} +0 -0
- /package/dist/{chunk-W4XJFLAL.js.map → chunk-XPRJSHNI.js.map} +0 -0
- /package/dist/{chunk-E6EE5B67.js.map → chunk-YK6BDDHP.js.map} +0 -0
- /package/dist/{chunk-ES36HTSC.js.map → chunk-YLHM5BQQ.js.map} +0 -0
- /package/dist/{chunk-GF22HWS2.js.map → chunk-Z54EM5YZ.js.map} +0 -0
- /package/dist/{chunk-64UDOIMI.js.map → chunk-ZLQ37WJX.js.map} +0 -0
|
@@ -39,6 +39,7 @@ import { collectNativeKnowledgeChunks, formatNativeKnowledgeSection, searchNativ
|
|
|
39
39
|
import { objectiveStateStoreOverrideForNamespace, searchObjectiveStateSnapshots } from "../objective-state.js";
|
|
40
40
|
import { type GraphRecallRankedResult, type GraphRecallShadowComparison, mergeGraphExpandedResults } from "./graph-recall-coordinator.js";
|
|
41
41
|
import { buildProcedureRecallSection } from "../procedural/procedure-recall.js";
|
|
42
|
+
import { canRecallToolScopedMemory } from "../tool-scoped-memory.js";
|
|
42
43
|
import { buildQmdRecallCacheKey, getCachedQmdRecall, setCachedQmdRecall } from "../qmd-recall-cache.js";
|
|
43
44
|
import { MEMORY_ID_PATTERN } from "../recall-handles.js";
|
|
44
45
|
import {
|
|
@@ -95,7 +96,13 @@ import {
|
|
|
95
96
|
} from "../orchestrator.js";
|
|
96
97
|
import { isGenericRecallExcludedPath } from "./generic-recall-paths.js";
|
|
97
98
|
import type { RecallSectionBuckets } from "./recall-section-coordinator.js";
|
|
99
|
+
import {
|
|
100
|
+
reconcileRecallResultPartition,
|
|
101
|
+
type RecallResultPartition,
|
|
102
|
+
type RecallResultPartitionSink,
|
|
103
|
+
} from "./recall-rerank-coordinator.js";
|
|
98
104
|
import type { RecallInternalDeps } from "./recall-internal-deps.js";
|
|
105
|
+
|
|
99
106
|
export class RecallInternalCoordinator {
|
|
100
107
|
constructor(
|
|
101
108
|
private readonly deps: RecallInternalDeps,
|
|
@@ -279,6 +286,7 @@ export class RecallInternalCoordinator {
|
|
|
279
286
|
// sites) updates the same counter; the X-ray capture block
|
|
280
287
|
// reads this as the cold-fallback pool.
|
|
281
288
|
const xrayColdPoolSink = { size: 0 };
|
|
289
|
+
let selectedResultPartition: RecallResultPartition | null = null;
|
|
282
290
|
let identityInjectionModeUsed: IdentityInjectionMode | "none" = "none";
|
|
283
291
|
let identityInjectedChars = 0;
|
|
284
292
|
let identityInjectionTruncated = false;
|
|
@@ -566,6 +574,7 @@ export class RecallInternalCoordinator {
|
|
|
566
574
|
query: retrievalQuery,
|
|
567
575
|
tierExplain: null,
|
|
568
576
|
results: [],
|
|
577
|
+
appliedResultLimit: recallResultLimit,
|
|
569
578
|
filters: [
|
|
570
579
|
{
|
|
571
580
|
name: "planner-mode",
|
|
@@ -1296,7 +1305,11 @@ export class RecallInternalCoordinator {
|
|
|
1296
1305
|
source: "fresh",
|
|
1297
1306
|
success: true,
|
|
1298
1307
|
});
|
|
1299
|
-
return
|
|
1308
|
+
return lifecycleCaps.extractionScopeClassification
|
|
1309
|
+
? results.filter((artifact) =>
|
|
1310
|
+
canRecallToolScopedMemory(artifact.frontmatter, options.sourceConnector),
|
|
1311
|
+
)
|
|
1312
|
+
: results;
|
|
1300
1313
|
})();
|
|
1301
1314
|
|
|
1302
1315
|
const objectiveStatePromise = (async (): Promise<string | null> => {
|
|
@@ -2794,6 +2807,10 @@ export class RecallInternalCoordinator {
|
|
|
2794
2807
|
profileStorage,
|
|
2795
2808
|
retrievalQuery,
|
|
2796
2809
|
this.deps.config,
|
|
2810
|
+
{
|
|
2811
|
+
partitionToolScoped: lifecycleCaps.extractionScopeClassification,
|
|
2812
|
+
requestingConnector: options.sourceConnector,
|
|
2813
|
+
},
|
|
2797
2814
|
);
|
|
2798
2815
|
} catch (err) {
|
|
2799
2816
|
log.debug(
|
|
@@ -3959,6 +3976,7 @@ export class RecallInternalCoordinator {
|
|
|
3959
3976
|
abortSignal: options.abortSignal,
|
|
3960
3977
|
dropUnresolved: true,
|
|
3961
3978
|
recallNamespaces,
|
|
3979
|
+
requestingConnector: options.sourceConnector,
|
|
3962
3980
|
},
|
|
3963
3981
|
);
|
|
3964
3982
|
|
|
@@ -3971,7 +3989,7 @@ export class RecallInternalCoordinator {
|
|
|
3971
3989
|
recallNamespaces,
|
|
3972
3990
|
retrievalQuery,
|
|
3973
3991
|
qmdBoostInput.memoryByPath,
|
|
3974
|
-
{ asOfMs },
|
|
3992
|
+
{ asOfMs, requestingConnector: options.sourceConnector },
|
|
3975
3993
|
),
|
|
3976
3994
|
qmdBoostInput.results,
|
|
3977
3995
|
);
|
|
@@ -4092,13 +4110,25 @@ export class RecallInternalCoordinator {
|
|
|
4092
4110
|
// Diversify via MMR over the full candidate pool *before* truncating to
|
|
4093
4111
|
// the final recall limit. Running MMR after the slice would be unable
|
|
4094
4112
|
// to promote diverse candidates sitting just below the cutoff.
|
|
4095
|
-
|
|
4096
|
-
|
|
4097
|
-
|
|
4098
|
-
|
|
4099
|
-
|
|
4100
|
-
|
|
4101
|
-
|
|
4113
|
+
const hotQmdPartition =
|
|
4114
|
+
options.xrayCapture === true
|
|
4115
|
+
? this.deps.recallRerankCoordinator.diversifyRecallResultsWithHeadroom(
|
|
4116
|
+
"memories",
|
|
4117
|
+
memoryResults,
|
|
4118
|
+
recallResultLimit,
|
|
4119
|
+
retrievalQuery,
|
|
4120
|
+
caps,
|
|
4121
|
+
)
|
|
4122
|
+
: null;
|
|
4123
|
+
memoryResults = hotQmdPartition
|
|
4124
|
+
? [...hotQmdPartition.appliedResults]
|
|
4125
|
+
: this.deps.diversifyAndLimitRecallResults(
|
|
4126
|
+
"memories",
|
|
4127
|
+
memoryResults,
|
|
4128
|
+
recallResultLimit,
|
|
4129
|
+
retrievalQuery,
|
|
4130
|
+
caps,
|
|
4131
|
+
);
|
|
4102
4132
|
// E-Mem-inspired memory reconstruction: fill gaps for referenced entities
|
|
4103
4133
|
if (resolveRecallEnhancementCapabilities(this.deps.config).memoryReconstruction && memoryResults.length > 0) {
|
|
4104
4134
|
try {
|
|
@@ -4150,6 +4180,7 @@ export class RecallInternalCoordinator {
|
|
|
4150
4180
|
}
|
|
4151
4181
|
recallSource = "hot_qmd";
|
|
4152
4182
|
recalledMemoryCount = memoryResults.length;
|
|
4183
|
+
selectedResultPartition = hotQmdPartition;
|
|
4153
4184
|
this.deps.publishRecallResults({
|
|
4154
4185
|
title: "Relevant Memories",
|
|
4155
4186
|
results: memoryResults,
|
|
@@ -4199,7 +4230,7 @@ export class RecallInternalCoordinator {
|
|
|
4199
4230
|
recallNamespaces,
|
|
4200
4231
|
retrievalQuery,
|
|
4201
4232
|
undefined,
|
|
4202
|
-
{ asOfMs },
|
|
4233
|
+
{ asOfMs, requestingConnector: options.sourceConnector },
|
|
4203
4234
|
);
|
|
4204
4235
|
// MMR runs on the pre-truncation pool so diverse candidates just
|
|
4205
4236
|
// below the cutoff can be promoted into the injected set.
|
|
@@ -4207,16 +4238,29 @@ export class RecallInternalCoordinator {
|
|
|
4207
4238
|
xrayBranchPoolSize.hot_embedding,
|
|
4208
4239
|
boostedScoped.length,
|
|
4209
4240
|
);
|
|
4210
|
-
return
|
|
4211
|
-
"memories",
|
|
4212
|
-
boostedScoped,
|
|
4213
|
-
recallResultLimit,
|
|
4214
|
-
retrievalQuery,
|
|
4215
|
-
caps,
|
|
4216
|
-
);
|
|
4241
|
+
return boostedScoped;
|
|
4217
4242
|
},
|
|
4218
4243
|
[] as QmdSearchResult[],
|
|
4219
4244
|
);
|
|
4245
|
+
const embeddingPartition =
|
|
4246
|
+
options.xrayCapture === true
|
|
4247
|
+
? this.deps.recallRerankCoordinator.diversifyRecallResultsWithHeadroom(
|
|
4248
|
+
"memories",
|
|
4249
|
+
scoped,
|
|
4250
|
+
recallResultLimit,
|
|
4251
|
+
retrievalQuery,
|
|
4252
|
+
caps,
|
|
4253
|
+
)
|
|
4254
|
+
: null;
|
|
4255
|
+
scoped =
|
|
4256
|
+
embeddingPartition?.appliedResults ??
|
|
4257
|
+
this.deps.diversifyAndLimitRecallResults(
|
|
4258
|
+
"memories",
|
|
4259
|
+
scoped,
|
|
4260
|
+
recallResultLimit,
|
|
4261
|
+
retrievalQuery,
|
|
4262
|
+
caps,
|
|
4263
|
+
);
|
|
4220
4264
|
// Issue #1577 — apply TrustScore on the embedding-fallback path so the
|
|
4221
4265
|
// feature gate is consistent across ALL recall paths (rule 41 parity).
|
|
4222
4266
|
{
|
|
@@ -4260,6 +4304,7 @@ export class RecallInternalCoordinator {
|
|
|
4260
4304
|
}
|
|
4261
4305
|
recallSource = "hot_embedding";
|
|
4262
4306
|
recalledMemoryCount = scoped.length;
|
|
4307
|
+
selectedResultPartition = reconcileRecallResultPartition(embeddingPartition, scoped);
|
|
4263
4308
|
this.deps.publishRecallResults({
|
|
4264
4309
|
title: "Relevant Memories",
|
|
4265
4310
|
results: scoped,
|
|
@@ -4278,6 +4323,8 @@ export class RecallInternalCoordinator {
|
|
|
4278
4323
|
.filter(Boolean);
|
|
4279
4324
|
xrayRecalledResults = scoped;
|
|
4280
4325
|
} else {
|
|
4326
|
+
const coldPartitionSink: RecallResultPartitionSink | undefined =
|
|
4327
|
+
options.xrayCapture === true ? { partition: null } : undefined;
|
|
4281
4328
|
const longTerm = await this.deps.applyColdFallbackPipeline({
|
|
4282
4329
|
prompt: retrievalQuery,
|
|
4283
4330
|
recallNamespaces,
|
|
@@ -4291,9 +4338,11 @@ export class RecallInternalCoordinator {
|
|
|
4291
4338
|
backendDegradations.push(degradation);
|
|
4292
4339
|
},
|
|
4293
4340
|
xrayPoolSizeSink: xrayColdPoolSink,
|
|
4341
|
+
resultPartitionSink: coldPartitionSink,
|
|
4294
4342
|
trustByPathSink,
|
|
4295
4343
|
deadlineAtMs: enrichmentAssemblyDeadlineAtMs,
|
|
4296
4344
|
asOfMs,
|
|
4345
|
+
requestingConnector: options.sourceConnector,
|
|
4297
4346
|
...(options.includeLowConfidence === true ? { includeLowConfidence: true } : {}),
|
|
4298
4347
|
});
|
|
4299
4348
|
// Issue #1577 — read the cold pipeline's trust map back so cold
|
|
@@ -4309,6 +4358,7 @@ export class RecallInternalCoordinator {
|
|
|
4309
4358
|
}
|
|
4310
4359
|
recallSource = "cold_fallback";
|
|
4311
4360
|
recalledMemoryCount = longTerm.length;
|
|
4361
|
+
selectedResultPartition = coldPartitionSink?.partition ?? null;
|
|
4312
4362
|
this.deps.publishRecallResults({
|
|
4313
4363
|
title: "Long-Term Memories (Fallback)",
|
|
4314
4364
|
results: longTerm,
|
|
@@ -4394,7 +4444,7 @@ export class RecallInternalCoordinator {
|
|
|
4394
4444
|
recallNamespaces,
|
|
4395
4445
|
retrievalQuery,
|
|
4396
4446
|
undefined,
|
|
4397
|
-
{ asOfMs },
|
|
4447
|
+
{ asOfMs, requestingConnector: options.sourceConnector },
|
|
4398
4448
|
);
|
|
4399
4449
|
// MMR runs on the pre-truncation pool so diverse candidates just
|
|
4400
4450
|
// below the cutoff can be promoted into the injected set.
|
|
@@ -4402,16 +4452,29 @@ export class RecallInternalCoordinator {
|
|
|
4402
4452
|
xrayBranchPoolSize.hot_embedding,
|
|
4403
4453
|
boostedScoped.length,
|
|
4404
4454
|
);
|
|
4405
|
-
return
|
|
4406
|
-
"memories",
|
|
4407
|
-
boostedScoped,
|
|
4408
|
-
recallResultLimit,
|
|
4409
|
-
retrievalQuery,
|
|
4410
|
-
caps,
|
|
4411
|
-
);
|
|
4455
|
+
return boostedScoped;
|
|
4412
4456
|
},
|
|
4413
4457
|
[] as QmdSearchResult[],
|
|
4414
4458
|
);
|
|
4459
|
+
const embeddingPartition =
|
|
4460
|
+
options.xrayCapture === true
|
|
4461
|
+
? this.deps.recallRerankCoordinator.diversifyRecallResultsWithHeadroom(
|
|
4462
|
+
"memories",
|
|
4463
|
+
scoped,
|
|
4464
|
+
recallResultLimit,
|
|
4465
|
+
retrievalQuery,
|
|
4466
|
+
caps,
|
|
4467
|
+
)
|
|
4468
|
+
: null;
|
|
4469
|
+
scoped =
|
|
4470
|
+
embeddingPartition?.appliedResults ??
|
|
4471
|
+
this.deps.diversifyAndLimitRecallResults(
|
|
4472
|
+
"memories",
|
|
4473
|
+
scoped,
|
|
4474
|
+
recallResultLimit,
|
|
4475
|
+
retrievalQuery,
|
|
4476
|
+
caps,
|
|
4477
|
+
);
|
|
4415
4478
|
// Issue #1577 — apply TrustScore on the embedding-fallback path so the
|
|
4416
4479
|
// feature gate is consistent across ALL recall paths (rule 41 parity).
|
|
4417
4480
|
{
|
|
@@ -4452,6 +4515,7 @@ export class RecallInternalCoordinator {
|
|
|
4452
4515
|
}
|
|
4453
4516
|
recallSource = "hot_embedding";
|
|
4454
4517
|
recalledMemoryCount = scoped.length;
|
|
4518
|
+
selectedResultPartition = reconcileRecallResultPartition(embeddingPartition, scoped);
|
|
4455
4519
|
this.deps.publishRecallResults({
|
|
4456
4520
|
title: "Relevant Memories",
|
|
4457
4521
|
results: scoped,
|
|
@@ -4538,6 +4602,8 @@ export class RecallInternalCoordinator {
|
|
|
4538
4602
|
queryAwarePrefilter.candidatePaths &&
|
|
4539
4603
|
queryAwareScopedMemories.length === 0
|
|
4540
4604
|
) {
|
|
4605
|
+
const coldPartitionSink: RecallResultPartitionSink | undefined =
|
|
4606
|
+
options.xrayCapture === true ? { partition: null } : undefined;
|
|
4541
4607
|
const longTerm = await this.deps.applyColdFallbackPipeline({
|
|
4542
4608
|
prompt: retrievalQuery,
|
|
4543
4609
|
recallNamespaces,
|
|
@@ -4551,9 +4617,11 @@ export class RecallInternalCoordinator {
|
|
|
4551
4617
|
backendDegradations.push(degradation);
|
|
4552
4618
|
},
|
|
4553
4619
|
xrayPoolSizeSink: xrayColdPoolSink,
|
|
4620
|
+
resultPartitionSink: coldPartitionSink,
|
|
4554
4621
|
trustByPathSink,
|
|
4555
4622
|
deadlineAtMs: enrichmentAssemblyDeadlineAtMs,
|
|
4556
4623
|
asOfMs,
|
|
4624
|
+
requestingConnector: options.sourceConnector,
|
|
4557
4625
|
...(options.includeLowConfidence === true ? { includeLowConfidence: true } : {}),
|
|
4558
4626
|
});
|
|
4559
4627
|
// Issue #1577 — read the cold pipeline's trust map back (rule 41).
|
|
@@ -4561,6 +4629,7 @@ export class RecallInternalCoordinator {
|
|
|
4561
4629
|
if (longTerm.length > 0) {
|
|
4562
4630
|
recallSource = "cold_fallback";
|
|
4563
4631
|
recalledMemoryCount = longTerm.length;
|
|
4632
|
+
selectedResultPartition = coldPartitionSink?.partition ?? null;
|
|
4564
4633
|
this.deps.publishRecallResults({
|
|
4565
4634
|
title: "Long-Term Memories (Fallback)",
|
|
4566
4635
|
results: longTerm,
|
|
@@ -4608,7 +4677,7 @@ export class RecallInternalCoordinator {
|
|
|
4608
4677
|
recallNamespaces,
|
|
4609
4678
|
retrievalQuery,
|
|
4610
4679
|
preloadedMap,
|
|
4611
|
-
{ asOfMs },
|
|
4680
|
+
{ asOfMs, requestingConnector: options.sourceConnector },
|
|
4612
4681
|
)
|
|
4613
4682
|
).sort((a, b) => b.score - a.score);
|
|
4614
4683
|
// MMR runs on the pre-truncation pool so diverse candidates just
|
|
@@ -4617,16 +4686,29 @@ export class RecallInternalCoordinator {
|
|
|
4617
4686
|
xrayBranchPoolSize.recent_scan,
|
|
4618
4687
|
boostedRecent.length,
|
|
4619
4688
|
);
|
|
4620
|
-
return
|
|
4621
|
-
"memories",
|
|
4622
|
-
boostedRecent,
|
|
4623
|
-
recallResultLimit,
|
|
4624
|
-
retrievalQuery,
|
|
4625
|
-
caps,
|
|
4626
|
-
);
|
|
4689
|
+
return boostedRecent;
|
|
4627
4690
|
},
|
|
4628
4691
|
[] as QmdSearchResult[],
|
|
4629
4692
|
);
|
|
4693
|
+
const recentPartition =
|
|
4694
|
+
options.xrayCapture === true
|
|
4695
|
+
? this.deps.recallRerankCoordinator.diversifyRecallResultsWithHeadroom(
|
|
4696
|
+
"memories",
|
|
4697
|
+
recent,
|
|
4698
|
+
recallResultLimit,
|
|
4699
|
+
retrievalQuery,
|
|
4700
|
+
caps,
|
|
4701
|
+
)
|
|
4702
|
+
: null;
|
|
4703
|
+
recent =
|
|
4704
|
+
recentPartition?.appliedResults ??
|
|
4705
|
+
this.deps.diversifyAndLimitRecallResults(
|
|
4706
|
+
"memories",
|
|
4707
|
+
recent,
|
|
4708
|
+
recallResultLimit,
|
|
4709
|
+
retrievalQuery,
|
|
4710
|
+
caps,
|
|
4711
|
+
);
|
|
4630
4712
|
// Issue #1577 — apply TrustScore on the recent-scan path so the
|
|
4631
4713
|
// feature gate is consistent across ALL recall paths (rule 41).
|
|
4632
4714
|
{
|
|
@@ -4673,6 +4755,7 @@ export class RecallInternalCoordinator {
|
|
|
4673
4755
|
}
|
|
4674
4756
|
recallSource = "recent_scan";
|
|
4675
4757
|
recalledMemoryCount = recent.length;
|
|
4758
|
+
selectedResultPartition = reconcileRecallResultPartition(recentPartition, recent);
|
|
4676
4759
|
this.deps.publishRecallResults({
|
|
4677
4760
|
title: "Recent Memories",
|
|
4678
4761
|
results: recent,
|
|
@@ -4691,6 +4774,8 @@ export class RecallInternalCoordinator {
|
|
|
4691
4774
|
.filter(Boolean);
|
|
4692
4775
|
xrayRecalledResults = recent;
|
|
4693
4776
|
} else {
|
|
4777
|
+
const coldPartitionSink: RecallResultPartitionSink | undefined =
|
|
4778
|
+
options.xrayCapture === true ? { partition: null } : undefined;
|
|
4694
4779
|
const longTerm = await this.deps.applyColdFallbackPipeline({
|
|
4695
4780
|
prompt: retrievalQuery,
|
|
4696
4781
|
recallNamespaces,
|
|
@@ -4704,9 +4789,11 @@ export class RecallInternalCoordinator {
|
|
|
4704
4789
|
backendDegradations.push(degradation);
|
|
4705
4790
|
},
|
|
4706
4791
|
xrayPoolSizeSink: xrayColdPoolSink,
|
|
4792
|
+
resultPartitionSink: coldPartitionSink,
|
|
4707
4793
|
trustByPathSink,
|
|
4708
4794
|
deadlineAtMs: enrichmentAssemblyDeadlineAtMs,
|
|
4709
4795
|
asOfMs,
|
|
4796
|
+
requestingConnector: options.sourceConnector,
|
|
4710
4797
|
...(options.includeLowConfidence === true ? { includeLowConfidence: true } : {}),
|
|
4711
4798
|
});
|
|
4712
4799
|
// Issue #1577 — read the cold pipeline's trust map back (rule 41).
|
|
@@ -4721,6 +4808,7 @@ export class RecallInternalCoordinator {
|
|
|
4721
4808
|
}
|
|
4722
4809
|
recallSource = "cold_fallback";
|
|
4723
4810
|
recalledMemoryCount = longTerm.length;
|
|
4811
|
+
selectedResultPartition = coldPartitionSink?.partition ?? null;
|
|
4724
4812
|
this.deps.publishRecallResults({
|
|
4725
4813
|
title: "Long-Term Memories (Fallback)",
|
|
4726
4814
|
results: longTerm,
|
|
@@ -4742,6 +4830,8 @@ export class RecallInternalCoordinator {
|
|
|
4742
4830
|
}
|
|
4743
4831
|
}
|
|
4744
4832
|
} else {
|
|
4833
|
+
const coldPartitionSink: RecallResultPartitionSink | undefined =
|
|
4834
|
+
options.xrayCapture === true ? { partition: null } : undefined;
|
|
4745
4835
|
const longTerm = await this.deps.applyColdFallbackPipeline({
|
|
4746
4836
|
prompt: retrievalQuery,
|
|
4747
4837
|
recallNamespaces,
|
|
@@ -4755,9 +4845,11 @@ export class RecallInternalCoordinator {
|
|
|
4755
4845
|
backendDegradations.push(degradation);
|
|
4756
4846
|
},
|
|
4757
4847
|
xrayPoolSizeSink: xrayColdPoolSink,
|
|
4848
|
+
resultPartitionSink: coldPartitionSink,
|
|
4758
4849
|
trustByPathSink,
|
|
4759
4850
|
deadlineAtMs: enrichmentAssemblyDeadlineAtMs,
|
|
4760
4851
|
asOfMs,
|
|
4852
|
+
requestingConnector: options.sourceConnector,
|
|
4761
4853
|
...(options.includeLowConfidence === true ? { includeLowConfidence: true } : {}),
|
|
4762
4854
|
});
|
|
4763
4855
|
// Issue #1577 — read the cold pipeline's trust map back (rule 41).
|
|
@@ -4771,6 +4863,7 @@ export class RecallInternalCoordinator {
|
|
|
4771
4863
|
}
|
|
4772
4864
|
recallSource = "cold_fallback";
|
|
4773
4865
|
recalledMemoryCount = longTerm.length;
|
|
4866
|
+
selectedResultPartition = coldPartitionSink?.partition ?? null;
|
|
4774
4867
|
this.deps.publishRecallResults({
|
|
4775
4868
|
title: "Long-Term Memories (Fallback)",
|
|
4776
4869
|
results: longTerm,
|
|
@@ -5013,6 +5106,31 @@ export class RecallInternalCoordinator {
|
|
|
5013
5106
|
) {
|
|
5014
5107
|
try {
|
|
5015
5108
|
const servedBy = mapRecallSourceToXrayServedBy(recallSource);
|
|
5109
|
+
const toPartitionXrayResult = (
|
|
5110
|
+
candidate: QmdSearchResult,
|
|
5111
|
+
): RecallXrayResult => {
|
|
5112
|
+
const scoreDecomposition: RecallXrayScoreDecomposition = {
|
|
5113
|
+
final: candidate.score,
|
|
5114
|
+
};
|
|
5115
|
+
if (
|
|
5116
|
+
candidate.explain?.reinforcementBoost !== undefined &&
|
|
5117
|
+
candidate.explain.reinforcementBoost > 0
|
|
5118
|
+
) {
|
|
5119
|
+
scoreDecomposition.reinforcementBoost =
|
|
5120
|
+
candidate.explain.reinforcementBoost;
|
|
5121
|
+
}
|
|
5122
|
+
return {
|
|
5123
|
+
memoryId: candidate.docid,
|
|
5124
|
+
path: candidate.path,
|
|
5125
|
+
servedBy,
|
|
5126
|
+
scoreDecomposition,
|
|
5127
|
+
admittedBy: [],
|
|
5128
|
+
};
|
|
5129
|
+
};
|
|
5130
|
+
const appliedResults =
|
|
5131
|
+
selectedResultPartition?.appliedResults.map(toPartitionXrayResult) ?? [];
|
|
5132
|
+
const headroomResults =
|
|
5133
|
+
selectedResultPartition?.headroomResults.map(toPartitionXrayResult) ?? [];
|
|
5016
5134
|
// Derive xray results from `recalledMemoryPaths` as the single
|
|
5017
5135
|
// source of truth — `recalledMemoryIds` and `recalledMemoryPaths`
|
|
5018
5136
|
// are built with two independent filters upstream
|
|
@@ -5173,6 +5291,9 @@ export class RecallInternalCoordinator {
|
|
|
5173
5291
|
query: retrievalQuery,
|
|
5174
5292
|
tierExplain: null,
|
|
5175
5293
|
results: [...results, ...lcmStructuredXrayResults],
|
|
5294
|
+
appliedResultLimit: recallResultLimit,
|
|
5295
|
+
appliedResults,
|
|
5296
|
+
headroomResults,
|
|
5176
5297
|
filters,
|
|
5177
5298
|
budget: {
|
|
5178
5299
|
chars: this.deps.getRecallBudgetChars(options.budgetCharsOverride),
|
|
@@ -35,6 +35,23 @@ import { reorderRecallResultsWithMmr } from "../recall-mmr.js";
|
|
|
35
35
|
import { applyReasoningTraceBoost } from "../reasoning-trace-recall.js";
|
|
36
36
|
import { memoryMapKey } from "../recall-memory-map.js";
|
|
37
37
|
|
|
38
|
+
export interface RecallResultPartition {
|
|
39
|
+
appliedResults: QmdSearchResult[];
|
|
40
|
+
headroomResults: QmdSearchResult[];
|
|
41
|
+
}
|
|
42
|
+
export interface RecallResultPartitionSink {
|
|
43
|
+
partition: RecallResultPartition | null;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export function reconcileRecallResultPartition(
|
|
47
|
+
partition: RecallResultPartition | null | undefined,
|
|
48
|
+
appliedResults: QmdSearchResult[],
|
|
49
|
+
): RecallResultPartition | null {
|
|
50
|
+
return partition
|
|
51
|
+
? { appliedResults, headroomResults: partition.headroomResults }
|
|
52
|
+
: null;
|
|
53
|
+
}
|
|
54
|
+
|
|
38
55
|
/**
|
|
39
56
|
* Coordinator for the recall-result reranking subsystem.
|
|
40
57
|
*
|
|
@@ -479,40 +496,58 @@ export class RecallRerankCoordinator {
|
|
|
479
496
|
return { results, trustByPath: null };
|
|
480
497
|
}
|
|
481
498
|
|
|
482
|
-
|
|
499
|
+
diversifyRecallResultsWithHeadroom(
|
|
483
500
|
sectionId: string,
|
|
484
501
|
results: QmdSearchResult[],
|
|
485
502
|
limit: number,
|
|
486
503
|
retrievalQuery?: string,
|
|
487
|
-
// `caps` is additive AND last (issue #1523) so the positional call shape
|
|
488
|
-
// stays backward-compatible: the recall pipeline threads a resolved set,
|
|
489
|
-
// but callers that omit it (e.g. direct unit-test invocations) get an
|
|
490
|
-
// equivalent set derived from the same config — behavior-preserving.
|
|
491
504
|
caps: CapabilitySet = resolveCapabilities(this.getConfig()),
|
|
492
|
-
):
|
|
505
|
+
): RecallResultPartition {
|
|
493
506
|
const safeLimit =
|
|
494
507
|
typeof limit === "number" && Number.isFinite(limit)
|
|
495
508
|
? Math.max(0, Math.floor(limit))
|
|
496
509
|
: 0;
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
510
|
+
const candidates = Array.isArray(results) ? results : [];
|
|
511
|
+
let orderedPool: QmdSearchResult[] | undefined;
|
|
512
|
+
const resolveOrderedPool = (): QmdSearchResult[] => {
|
|
513
|
+
if (orderedPool) return orderedPool;
|
|
514
|
+
const boosted =
|
|
515
|
+
caps.recallReasoningTraceBoost && typeof retrievalQuery === "string"
|
|
516
|
+
? applyReasoningTraceBoost(candidates, {
|
|
517
|
+
enabled: true,
|
|
518
|
+
query: retrievalQuery,
|
|
519
|
+
})
|
|
520
|
+
: candidates;
|
|
521
|
+
orderedPool = this.applyMmrToQmdResults(sectionId, boosted, caps);
|
|
522
|
+
return orderedPool;
|
|
523
|
+
};
|
|
524
|
+
|
|
525
|
+
return {
|
|
526
|
+
get appliedResults(): QmdSearchResult[] {
|
|
527
|
+
if (safeLimit === 0 || candidates.length === 0) return [];
|
|
528
|
+
return resolveOrderedPool().slice(0, safeLimit);
|
|
529
|
+
},
|
|
530
|
+
get headroomResults(): QmdSearchResult[] {
|
|
531
|
+
if (candidates.length === 0) return [];
|
|
532
|
+
return resolveOrderedPool().slice(safeLimit);
|
|
533
|
+
},
|
|
534
|
+
};
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
diversifyAndLimitRecallResults(
|
|
538
|
+
sectionId: string,
|
|
539
|
+
results: QmdSearchResult[],
|
|
540
|
+
limit: number,
|
|
541
|
+
retrievalQuery?: string,
|
|
542
|
+
caps: CapabilitySet = resolveCapabilities(this.getConfig()),
|
|
543
|
+
): QmdSearchResult[] {
|
|
544
|
+
return this.diversifyRecallResultsWithHeadroom(
|
|
545
|
+
sectionId,
|
|
546
|
+
results,
|
|
547
|
+
limit,
|
|
548
|
+
retrievalQuery,
|
|
549
|
+
caps,
|
|
550
|
+
).appliedResults;
|
|
516
551
|
}
|
|
517
552
|
|
|
518
553
|
/**
|
|
@@ -28,12 +28,16 @@ function memory(path: string, status: string): MemoryFile {
|
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
async function makeCoordinator(
|
|
31
|
+
async function makeCoordinator(
|
|
32
|
+
memoryDir: string,
|
|
33
|
+
extractionScopeClassificationEnabled = true,
|
|
34
|
+
): Promise<RecallSearchPipelineCoordinator> {
|
|
32
35
|
const config = parseConfig({
|
|
33
36
|
openaiApiKey: "sk-test",
|
|
34
37
|
memoryDir,
|
|
35
38
|
workspaceDir: path.join(memoryDir, "workspace"),
|
|
36
39
|
namespaces: true,
|
|
40
|
+
extractionScopeClassificationEnabled,
|
|
37
41
|
});
|
|
38
42
|
const deps = {
|
|
39
43
|
config,
|
|
@@ -104,6 +108,76 @@ test("recall safety derives sourceConnector exclusively from the hydrated memory
|
|
|
104
108
|
}
|
|
105
109
|
});
|
|
106
110
|
|
|
111
|
+
test("recall safety partitions tool-scoped memories by requesting connector", async () => {
|
|
112
|
+
const memoryDir = await mkdtemp(path.join(os.tmpdir(), "remnic-connector-partition-"));
|
|
113
|
+
try {
|
|
114
|
+
const coordinator = await makeCoordinator(memoryDir);
|
|
115
|
+
const memories = [
|
|
116
|
+
{
|
|
117
|
+
path: "facts/same-tool.md",
|
|
118
|
+
content: "Use the search tool with a path.",
|
|
119
|
+
frontmatter: { status: "active", sourceConnector: "chatgpt", toolScoped: true },
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
path: "facts/other-tool.md",
|
|
123
|
+
content: "Use the search tool with a path.",
|
|
124
|
+
frontmatter: { status: "active", sourceConnector: "pi", toolScoped: true },
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
path: "facts/portable.md",
|
|
128
|
+
content: "Prefer focused searches.",
|
|
129
|
+
frontmatter: { status: "active", sourceConnector: "pi" },
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
path: "facts/legacy.md",
|
|
133
|
+
content: "Use the search tool with a path.",
|
|
134
|
+
frontmatter: { status: "active", sourceConnector: "pi" },
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
path: "facts/unattributed-tool.md",
|
|
138
|
+
content: "Use the search tool with a path.",
|
|
139
|
+
frontmatter: { status: "active", toolScoped: true },
|
|
140
|
+
},
|
|
141
|
+
] as unknown as MemoryFile[];
|
|
142
|
+
const results = memories.map((candidate, index) => ({
|
|
143
|
+
...result("default", candidate.path),
|
|
144
|
+
...(index === 1 ? { sourceConnector: "chatgpt" } : {}),
|
|
145
|
+
}));
|
|
146
|
+
const memoryByPath = new Map(
|
|
147
|
+
memories.map((candidate) => [`default\0${candidate.path}`, candidate]),
|
|
148
|
+
);
|
|
149
|
+
|
|
150
|
+
const safe = coordinator.filterSearchResultsByRecallSafety(results, memoryByPath, {
|
|
151
|
+
requestingConnector: "chatgpt",
|
|
152
|
+
});
|
|
153
|
+
|
|
154
|
+
assert.deepEqual(
|
|
155
|
+
safe.map((candidate) => candidate.path),
|
|
156
|
+
[
|
|
157
|
+
"facts/same-tool.md",
|
|
158
|
+
"facts/portable.md",
|
|
159
|
+
"facts/legacy.md",
|
|
160
|
+
"facts/unattributed-tool.md",
|
|
161
|
+
],
|
|
162
|
+
);
|
|
163
|
+
assert.equal(safe[0]?.sourceConnector, "chatgpt");
|
|
164
|
+
assert.equal(results[1]?.sourceConnector, "chatgpt");
|
|
165
|
+
assert.equal(
|
|
166
|
+
coordinator.filterSearchResultsByRecallSafety(results, memoryByPath).length,
|
|
167
|
+
results.length,
|
|
168
|
+
);
|
|
169
|
+
const gateDisabled = await makeCoordinator(memoryDir, false);
|
|
170
|
+
assert.equal(
|
|
171
|
+
gateDisabled.filterSearchResultsByRecallSafety(results, memoryByPath, {
|
|
172
|
+
requestingConnector: "chatgpt",
|
|
173
|
+
}).length,
|
|
174
|
+
results.length,
|
|
175
|
+
);
|
|
176
|
+
} finally {
|
|
177
|
+
await rm(memoryDir, { recursive: true, force: true });
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
|
|
107
181
|
function scopedCandidatesStub(
|
|
108
182
|
seed: QmdSearchResult[],
|
|
109
183
|
): RecallSearchPipelineDeps["searchScopedMemoryCandidates"] {
|