@remnic/core 9.69.76 → 9.69.77
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.js +37 -36
- package/dist/access-authorization-probe.js +38 -37
- package/dist/access-boundary.js +37 -36
- package/dist/access-cli.js +101 -100
- package/dist/access-cli.js.map +1 -1
- package/dist/access-extraction-force-flush.js +37 -36
- package/dist/access-http-briefing.js +38 -37
- package/dist/access-http-query.js +39 -38
- package/dist/access-http.js +56 -55
- package/dist/access-identity-continuity-surface.js +37 -36
- package/dist/access-lcm-surface.js +37 -36
- package/dist/access-mcp.js +46 -45
- package/dist/access-namespace-preflight.js +37 -36
- package/dist/access-observe-write-category.js +6 -6
- package/dist/access-observe-write-surface.js +37 -36
- package/dist/access-offline-manifest.js +3 -3
- package/dist/access-operations-batch.js +38 -37
- package/dist/access-operations.js +45 -44
- package/dist/access-recall-concurrency.js +37 -36
- package/dist/access-recall-response.js +37 -36
- package/dist/access-recall-surface.js +37 -36
- package/dist/access-schema.js +5 -5
- package/dist/access-service.js +37 -36
- package/dist/access-surface-catalog.js +39 -38
- package/dist/access-surface-catalog.js.map +1 -1
- package/dist/active-recall.js +13 -13
- package/dist/adapters/index.js +4 -4
- package/dist/adapters/registry.js +2 -2
- package/dist/briefing-followup-timeout.d.ts +3 -0
- package/dist/briefing-followup-timeout.d.ts.map +1 -0
- package/dist/briefing-followup-timeout.js +10 -0
- package/dist/briefing.d.ts.map +1 -1
- package/dist/briefing.js +10 -9
- package/dist/buffer.js +4 -4
- package/dist/{capsule-crypto-YO5QJ6L3.js → capsule-crypto-GWVG7LGC.js} +2 -2
- package/dist/capsule-crypto-GWVG7LGC.js.map +1 -0
- package/dist/causal-consolidation.js +10 -10
- package/dist/{chunk-TWUMZCGA.js → chunk-2CH6MMO2.js} +6 -6
- package/dist/{chunk-N6TUO3O6.js → chunk-2GKLHU2D.js} +2 -2
- package/dist/{chunk-I6PZTU3Q.js → chunk-2I6VHX6Q.js} +2 -2
- package/dist/{chunk-LVFI5LG7.js → chunk-2L5FSNPC.js} +5 -5
- package/dist/{chunk-FAT6HY7N.js → chunk-345MEMRU.js} +15 -2
- package/dist/chunk-345MEMRU.js.map +1 -0
- package/dist/{chunk-IGJL6JOD.js → chunk-3AGCSD42.js} +2 -2
- package/dist/{chunk-252U6XYX.js → chunk-3K3PITOE.js} +2 -2
- package/dist/{chunk-5Z574AVZ.js → chunk-5ELENZTA.js} +2 -2
- package/dist/{chunk-5ELXQQY7.js → chunk-5X7ZTLFS.js} +2 -2
- package/dist/{chunk-NRPLDEFR.js → chunk-6DTJBTHL.js} +2 -2
- package/dist/{chunk-IV2CY3RE.js → chunk-6MJGDUC7.js} +3 -3
- package/dist/{chunk-JU5MAF2L.js → chunk-7DZHRPCO.js} +2 -2
- package/dist/{chunk-YPWOZ6ME.js → chunk-7G6WUOLB.js} +3 -3
- package/dist/{chunk-JBHCTDYF.js → chunk-7QXTCONH.js} +2 -2
- package/dist/{chunk-LTS2XIU3.js → chunk-7WO66MKJ.js} +2 -2
- package/dist/{chunk-RQIETS2K.js → chunk-A2XDQ3JW.js} +2 -2
- package/dist/{chunk-XNTIX4LA.js → chunk-ALOMLIRC.js} +64 -61
- package/dist/{chunk-XNTIX4LA.js.map → chunk-ALOMLIRC.js.map} +1 -1
- package/dist/{chunk-OH6AMNSA.js → chunk-AVO2CBIL.js} +2 -2
- package/dist/{chunk-FUWW7ED4.js → chunk-AZ2X5LNA.js} +2 -2
- package/dist/{chunk-3NTVCMDD.js → chunk-B3OFQP5Y.js} +2 -2
- package/dist/chunk-B3OFQP5Y.js.map +1 -0
- package/dist/{chunk-HC4RWJR3.js → chunk-BNPLDVM6.js} +2 -2
- package/dist/{chunk-VDX2J7OX.js → chunk-BUKK5SWA.js} +2 -2
- package/dist/{chunk-WZ7M2QRP.js → chunk-CDEI5S5W.js} +2 -2
- package/dist/{chunk-KOXUUJE3.js → chunk-CLSYE5OZ.js} +2 -2
- package/dist/{chunk-YNNXM6FN.js → chunk-CYCE3L2I.js} +40 -40
- package/dist/{chunk-34R75BVF.js → chunk-DCPAAAIC.js} +2 -2
- package/dist/{chunk-N25RPRSI.js → chunk-DSQWTXHP.js} +8 -8
- package/dist/{chunk-6VQFPA3J.js → chunk-EJPF6XDQ.js} +2 -2
- package/dist/{chunk-BRBB62TS.js → chunk-EVBI7S4J.js} +2 -2
- package/dist/{chunk-5D6IMOW6.js → chunk-FMT52ROU.js} +37 -37
- package/dist/{chunk-JOAR32R6.js → chunk-FVK5NQ3V.js} +2 -2
- package/dist/{chunk-3SL52JKD.js → chunk-FZVROZKC.js} +5 -5
- package/dist/{chunk-MKGIW5W6.js → chunk-GARVFCV6.js} +2 -2
- package/dist/{chunk-364F6EMG.js → chunk-GATQP7CE.js} +2 -2
- package/dist/{chunk-6OR3AQHP.js → chunk-GXQ5GDUH.js} +2 -2
- package/dist/chunk-GZFKCLRC.js +17 -0
- package/dist/chunk-GZFKCLRC.js.map +1 -0
- package/dist/{chunk-VVX5PZFS.js → chunk-H36X4NRH.js} +2 -2
- package/dist/{chunk-2VH2JWYN.js → chunk-I4G4UWQA.js} +2 -2
- package/dist/{chunk-6OACG7JV.js → chunk-IBGEHKQ6.js} +3 -3
- package/dist/{chunk-P2FJ2KYJ.js → chunk-IILMR37Z.js} +14 -14
- package/dist/{chunk-X2PBZOYZ.js → chunk-IP5VLSLO.js} +2 -2
- package/dist/{chunk-2MLWQMXH.js → chunk-IVH7INFM.js} +3 -3
- package/dist/{chunk-UHKME3I7.js → chunk-K2SXIWEV.js} +2 -2
- package/dist/{chunk-OJMAM4RO.js → chunk-LEP46X5Y.js} +2 -2
- package/dist/{chunk-74C5FI4S.js → chunk-LZLJK2IA.js} +5 -5
- package/dist/{chunk-W5VYWOU3.js → chunk-MQQPONTM.js} +2 -2
- package/dist/{chunk-BFDBLAVG.js → chunk-NGFRFDSK.js} +2 -2
- package/dist/{chunk-OIKX22FU.js → chunk-NHV6WCM5.js} +1 -1
- package/dist/{chunk-FCVPZIHF.js → chunk-NYZRJW5X.js} +2 -2
- package/dist/{chunk-HKPGEFIT.js → chunk-OHRIBMSS.js} +2 -2
- package/dist/{chunk-4MONIKIY.js → chunk-OJ3TV57W.js} +12 -7
- package/dist/chunk-OJ3TV57W.js.map +1 -0
- package/dist/{chunk-BXLOS5AJ.js → chunk-OWHERGF2.js} +2 -2
- package/dist/{chunk-YYI5DZAQ.js → chunk-QIDMGBUY.js} +2 -2
- package/dist/{chunk-6FJCKMSJ.js → chunk-QJAGDPY7.js} +3 -3
- package/dist/{chunk-Y37KZVUM.js → chunk-RDUM6BKQ.js} +2 -2
- package/dist/{chunk-XQSAPG34.js → chunk-RGX4DGOG.js} +2 -2
- package/dist/{chunk-OMYCECTS.js → chunk-RJLV4BKR.js} +2 -2
- package/dist/{chunk-XIA4CN3T.js → chunk-RKTT72XV.js} +4 -4
- package/dist/{chunk-OOWUOWXK.js → chunk-RMG22TH2.js} +2 -2
- package/dist/{chunk-XLLRMUMH.js → chunk-RRMIACBG.js} +8 -8
- package/dist/{chunk-XLLRMUMH.js.map → chunk-RRMIACBG.js.map} +1 -1
- package/dist/{chunk-4GPI3GVE.js → chunk-SLEAJ67D.js} +5 -5
- package/dist/{chunk-XC4MDMQE.js → chunk-SUSMEKBE.js} +3 -3
- package/dist/{chunk-YZENVZWY.js → chunk-TY446V34.js} +2 -2
- package/dist/{chunk-PIG4WJFQ.js → chunk-UHESJ6TQ.js} +2 -2
- package/dist/{chunk-PIG4WJFQ.js.map → chunk-UHESJ6TQ.js.map} +1 -1
- package/dist/{chunk-GN7YTM5I.js → chunk-UKB7ZDKK.js} +2 -2
- package/dist/{chunk-DQEMWVMT.js → chunk-UVYI6VIX.js} +1 -1
- package/dist/{chunk-VKWMW32Y.js → chunk-WGXWZE3K.js} +2 -2
- package/dist/{chunk-ZHOXXHT5.js → chunk-WQZZDN5M.js} +4 -4
- package/dist/{chunk-TYR4D4GH.js → chunk-X33QB7LW.js} +2 -2
- package/dist/{chunk-NQBD3R24.js → chunk-X3NZ2HAO.js} +2 -2
- package/dist/{chunk-Q4AUIFUA.js → chunk-XAITGGX5.js} +4 -4
- package/dist/{chunk-NC7OAEYY.js → chunk-XNYTMLPS.js} +3 -3
- package/dist/{chunk-SFDZ66MD.js → chunk-YL273SOF.js} +2 -2
- package/dist/{chunk-6RBUAPQT.js → chunk-YUAOU2B2.js} +3 -3
- package/dist/{chunk-AV5K5QH4.js → chunk-ZWWF7PI5.js} +4 -4
- package/dist/{chunk-J3NN2Q4Z.js → chunk-ZYBLNHUB.js} +4 -4
- package/dist/cli.js +75 -74
- package/dist/coding/export-okf-codegraph.js +9 -9
- package/dist/compounding/engine.js +9 -9
- package/dist/config-qmd.js +1 -1
- package/dist/config.js +13 -13
- package/dist/connectors/codex-materialize-runner.js +9 -9
- package/dist/connectors/index.js +9 -9
- package/dist/convergence-refresh.js +11 -11
- package/dist/corpus-watermark.js +11 -11
- package/dist/deep-recall-http-glue.js +6 -6
- package/dist/directory-sidecars.d.ts.map +1 -1
- package/dist/directory-sidecars.js +1 -1
- package/dist/entity-retrieval.js +9 -9
- package/dist/external-wiki-access.js +38 -37
- package/dist/extraction-span-materialize.js +2 -2
- package/dist/extraction.js +16 -16
- package/dist/{first-start-migration-7OATHJKB.js → first-start-migration-GAT7G733.js} +4 -4
- package/dist/harmonic-retrieval.js +1 -1
- package/dist/index.js +156 -155
- package/dist/lcm/engine.js +2 -2
- package/dist/lcm/index.js +5 -5
- package/dist/location/index.js +11 -11
- package/dist/maintenance/memory-governance.js +9 -9
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +9 -9
- package/dist/maintenance/rebuild-memory-projection.js +10 -10
- package/dist/memory-browse-operations.js +38 -37
- package/dist/memory-browse.js +5 -5
- package/dist/namespaces/migrate.js +10 -10
- package/dist/namespaces/search.js +5 -5
- package/dist/namespaces/storage.js +9 -9
- package/dist/offline-sync.js +2 -2
- package/dist/operator-doctor-corpus.js +12 -12
- package/dist/operator-toolkit.js +22 -22
- package/dist/orchestration/maintenance.js +17 -17
- package/dist/orchestration/recall-recognition-search.d.ts +1 -0
- package/dist/orchestration/recall-recognition-search.d.ts.map +1 -1
- package/dist/orchestrator.js +102 -101
- package/dist/qmd.d.ts +1 -1
- package/dist/qmd.d.ts.map +1 -1
- package/dist/qmd.js +1 -1
- package/dist/recall-navigation-operations.js +38 -37
- package/dist/recall-navigation.js +37 -36
- package/dist/recall-state-view-admission.js +5 -5
- package/dist/recall-why-service.js +5 -5
- package/dist/resume-bundles.js +14 -14
- package/dist/search/factory.js +4 -4
- package/dist/search/index.js +8 -8
- package/dist/semantic-consolidation.js +10 -10
- package/dist/semantic-rule-promotion.js +9 -9
- package/dist/semantic-rule-verifier.js +9 -9
- package/dist/source-agent-qualifier.js +12 -12
- package/dist/standup/build.js +9 -9
- package/dist/storage.js +8 -8
- package/dist/support-passport/index.js +40 -39
- package/dist/transfer/backup.js +2 -2
- package/dist/transfer/capsule-export.js +2 -2
- package/dist/transfer/capsule-import.js +2 -2
- package/dist/transfer/export-okf.js +10 -10
- package/dist/verified-recall.js +9 -9
- package/dist/who-knows-cli.js +10 -10
- package/dist/who-knows.js +9 -9
- package/package.json +2 -2
- package/src/briefing-followup-timeout.test.ts +15 -0
- package/src/briefing-followup-timeout.ts +14 -0
- package/src/briefing.ts +8 -9
- package/src/config-qmd.ts +1 -1
- package/src/config.test.ts +2 -2
- package/src/config.ts +1 -1
- package/src/directory-sidecars.test.ts +36 -1
- package/src/directory-sidecars.ts +14 -1
- package/src/orchestration/recall-internal.ts +1 -1
- package/src/orchestration/recall-recognition-search.test.ts +8 -0
- package/src/orchestration/recall-recognition-search.ts +5 -1
- package/src/orchestration/recall-search-pipeline.ts +1 -1
- package/src/qmd.ts +4 -4
- package/src/recall-budget-config.test.ts +1 -1
- package/dist/chunk-3NTVCMDD.js.map +0 -1
- package/dist/chunk-4MONIKIY.js.map +0 -1
- package/dist/chunk-FAT6HY7N.js.map +0 -1
- /package/dist/{capsule-crypto-YO5QJ6L3.js.map → briefing-followup-timeout.js.map} +0 -0
- /package/dist/{chunk-TWUMZCGA.js.map → chunk-2CH6MMO2.js.map} +0 -0
- /package/dist/{chunk-N6TUO3O6.js.map → chunk-2GKLHU2D.js.map} +0 -0
- /package/dist/{chunk-I6PZTU3Q.js.map → chunk-2I6VHX6Q.js.map} +0 -0
- /package/dist/{chunk-LVFI5LG7.js.map → chunk-2L5FSNPC.js.map} +0 -0
- /package/dist/{chunk-IGJL6JOD.js.map → chunk-3AGCSD42.js.map} +0 -0
- /package/dist/{chunk-252U6XYX.js.map → chunk-3K3PITOE.js.map} +0 -0
- /package/dist/{chunk-5Z574AVZ.js.map → chunk-5ELENZTA.js.map} +0 -0
- /package/dist/{chunk-5ELXQQY7.js.map → chunk-5X7ZTLFS.js.map} +0 -0
- /package/dist/{chunk-NRPLDEFR.js.map → chunk-6DTJBTHL.js.map} +0 -0
- /package/dist/{chunk-IV2CY3RE.js.map → chunk-6MJGDUC7.js.map} +0 -0
- /package/dist/{chunk-JU5MAF2L.js.map → chunk-7DZHRPCO.js.map} +0 -0
- /package/dist/{chunk-YPWOZ6ME.js.map → chunk-7G6WUOLB.js.map} +0 -0
- /package/dist/{chunk-JBHCTDYF.js.map → chunk-7QXTCONH.js.map} +0 -0
- /package/dist/{chunk-LTS2XIU3.js.map → chunk-7WO66MKJ.js.map} +0 -0
- /package/dist/{chunk-RQIETS2K.js.map → chunk-A2XDQ3JW.js.map} +0 -0
- /package/dist/{chunk-OH6AMNSA.js.map → chunk-AVO2CBIL.js.map} +0 -0
- /package/dist/{chunk-FUWW7ED4.js.map → chunk-AZ2X5LNA.js.map} +0 -0
- /package/dist/{chunk-HC4RWJR3.js.map → chunk-BNPLDVM6.js.map} +0 -0
- /package/dist/{chunk-VDX2J7OX.js.map → chunk-BUKK5SWA.js.map} +0 -0
- /package/dist/{chunk-WZ7M2QRP.js.map → chunk-CDEI5S5W.js.map} +0 -0
- /package/dist/{chunk-KOXUUJE3.js.map → chunk-CLSYE5OZ.js.map} +0 -0
- /package/dist/{chunk-YNNXM6FN.js.map → chunk-CYCE3L2I.js.map} +0 -0
- /package/dist/{chunk-34R75BVF.js.map → chunk-DCPAAAIC.js.map} +0 -0
- /package/dist/{chunk-N25RPRSI.js.map → chunk-DSQWTXHP.js.map} +0 -0
- /package/dist/{chunk-6VQFPA3J.js.map → chunk-EJPF6XDQ.js.map} +0 -0
- /package/dist/{chunk-BRBB62TS.js.map → chunk-EVBI7S4J.js.map} +0 -0
- /package/dist/{chunk-5D6IMOW6.js.map → chunk-FMT52ROU.js.map} +0 -0
- /package/dist/{chunk-JOAR32R6.js.map → chunk-FVK5NQ3V.js.map} +0 -0
- /package/dist/{chunk-3SL52JKD.js.map → chunk-FZVROZKC.js.map} +0 -0
- /package/dist/{chunk-MKGIW5W6.js.map → chunk-GARVFCV6.js.map} +0 -0
- /package/dist/{chunk-364F6EMG.js.map → chunk-GATQP7CE.js.map} +0 -0
- /package/dist/{chunk-6OR3AQHP.js.map → chunk-GXQ5GDUH.js.map} +0 -0
- /package/dist/{chunk-VVX5PZFS.js.map → chunk-H36X4NRH.js.map} +0 -0
- /package/dist/{chunk-2VH2JWYN.js.map → chunk-I4G4UWQA.js.map} +0 -0
- /package/dist/{chunk-6OACG7JV.js.map → chunk-IBGEHKQ6.js.map} +0 -0
- /package/dist/{chunk-P2FJ2KYJ.js.map → chunk-IILMR37Z.js.map} +0 -0
- /package/dist/{chunk-X2PBZOYZ.js.map → chunk-IP5VLSLO.js.map} +0 -0
- /package/dist/{chunk-2MLWQMXH.js.map → chunk-IVH7INFM.js.map} +0 -0
- /package/dist/{chunk-UHKME3I7.js.map → chunk-K2SXIWEV.js.map} +0 -0
- /package/dist/{chunk-OJMAM4RO.js.map → chunk-LEP46X5Y.js.map} +0 -0
- /package/dist/{chunk-74C5FI4S.js.map → chunk-LZLJK2IA.js.map} +0 -0
- /package/dist/{chunk-W5VYWOU3.js.map → chunk-MQQPONTM.js.map} +0 -0
- /package/dist/{chunk-BFDBLAVG.js.map → chunk-NGFRFDSK.js.map} +0 -0
- /package/dist/{chunk-OIKX22FU.js.map → chunk-NHV6WCM5.js.map} +0 -0
- /package/dist/{chunk-FCVPZIHF.js.map → chunk-NYZRJW5X.js.map} +0 -0
- /package/dist/{chunk-HKPGEFIT.js.map → chunk-OHRIBMSS.js.map} +0 -0
- /package/dist/{chunk-BXLOS5AJ.js.map → chunk-OWHERGF2.js.map} +0 -0
- /package/dist/{chunk-YYI5DZAQ.js.map → chunk-QIDMGBUY.js.map} +0 -0
- /package/dist/{chunk-6FJCKMSJ.js.map → chunk-QJAGDPY7.js.map} +0 -0
- /package/dist/{chunk-Y37KZVUM.js.map → chunk-RDUM6BKQ.js.map} +0 -0
- /package/dist/{chunk-XQSAPG34.js.map → chunk-RGX4DGOG.js.map} +0 -0
- /package/dist/{chunk-OMYCECTS.js.map → chunk-RJLV4BKR.js.map} +0 -0
- /package/dist/{chunk-XIA4CN3T.js.map → chunk-RKTT72XV.js.map} +0 -0
- /package/dist/{chunk-OOWUOWXK.js.map → chunk-RMG22TH2.js.map} +0 -0
- /package/dist/{chunk-4GPI3GVE.js.map → chunk-SLEAJ67D.js.map} +0 -0
- /package/dist/{chunk-XC4MDMQE.js.map → chunk-SUSMEKBE.js.map} +0 -0
- /package/dist/{chunk-YZENVZWY.js.map → chunk-TY446V34.js.map} +0 -0
- /package/dist/{chunk-GN7YTM5I.js.map → chunk-UKB7ZDKK.js.map} +0 -0
- /package/dist/{chunk-DQEMWVMT.js.map → chunk-UVYI6VIX.js.map} +0 -0
- /package/dist/{chunk-VKWMW32Y.js.map → chunk-WGXWZE3K.js.map} +0 -0
- /package/dist/{chunk-ZHOXXHT5.js.map → chunk-WQZZDN5M.js.map} +0 -0
- /package/dist/{chunk-TYR4D4GH.js.map → chunk-X33QB7LW.js.map} +0 -0
- /package/dist/{chunk-NQBD3R24.js.map → chunk-X3NZ2HAO.js.map} +0 -0
- /package/dist/{chunk-Q4AUIFUA.js.map → chunk-XAITGGX5.js.map} +0 -0
- /package/dist/{chunk-NC7OAEYY.js.map → chunk-XNYTMLPS.js.map} +0 -0
- /package/dist/{chunk-SFDZ66MD.js.map → chunk-YL273SOF.js.map} +0 -0
- /package/dist/{chunk-6RBUAPQT.js.map → chunk-YUAOU2B2.js.map} +0 -0
- /package/dist/{chunk-AV5K5QH4.js.map → chunk-ZWWF7PI5.js.map} +0 -0
- /package/dist/{chunk-J3NN2Q4Z.js.map → chunk-ZYBLNHUB.js.map} +0 -0
- /package/dist/{first-start-migration-7OATHJKB.js.map → first-start-migration-GAT7G733.js.map} +0 -0
package/dist/who-knows-cli.js
CHANGED
|
@@ -4,21 +4,21 @@ import {
|
|
|
4
4
|
renderWhoKnows,
|
|
5
5
|
renderWhoKnowsJson,
|
|
6
6
|
renderWhoKnowsText
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-5X7ZTLFS.js";
|
|
8
|
+
import "./chunk-QIDMGBUY.js";
|
|
9
|
+
import "./chunk-YUAOU2B2.js";
|
|
10
10
|
import "./chunk-UHVXE24Y.js";
|
|
11
11
|
import "./chunk-46WM6JX2.js";
|
|
12
12
|
import "./chunk-D5F7TKMH.js";
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-RJLV4BKR.js";
|
|
14
|
+
import "./chunk-SLEAJ67D.js";
|
|
15
|
+
import "./chunk-S7LWX2PQ.js";
|
|
15
16
|
import "./chunk-T2YX56QI.js";
|
|
16
17
|
import "./chunk-CYEPCZN5.js";
|
|
17
18
|
import "./chunk-T3FMRLWQ.js";
|
|
18
19
|
import "./chunk-7VO6E5UD.js";
|
|
19
|
-
import "./chunk-Z4TXB4K7.js";
|
|
20
|
-
import "./chunk-S7LWX2PQ.js";
|
|
21
20
|
import "./chunk-4O6WRBGE.js";
|
|
21
|
+
import "./chunk-Z4TXB4K7.js";
|
|
22
22
|
import "./chunk-GUMZC2BO.js";
|
|
23
23
|
import "./chunk-TFA6HPOA.js";
|
|
24
24
|
import "./chunk-F4TWWUMP.js";
|
|
@@ -33,11 +33,11 @@ import "./chunk-FF6N7BXC.js";
|
|
|
33
33
|
import "./chunk-J3IWHCMF.js";
|
|
34
34
|
import "./chunk-AAD2ZS6P.js";
|
|
35
35
|
import "./chunk-DUJYRVUD.js";
|
|
36
|
+
import "./chunk-3ONXXHQO.js";
|
|
36
37
|
import "./chunk-YXZG5TVN.js";
|
|
37
38
|
import "./chunk-ZIKENA2C.js";
|
|
38
|
-
import "./chunk-
|
|
39
|
+
import "./chunk-345MEMRU.js";
|
|
39
40
|
import "./chunk-SCU65EZI.js";
|
|
40
|
-
import "./chunk-3ONXXHQO.js";
|
|
41
41
|
import "./chunk-5GINB5LC.js";
|
|
42
42
|
import "./chunk-3WU7XOFN.js";
|
|
43
43
|
import "./chunk-G7D6GZ5J.js";
|
|
@@ -47,7 +47,7 @@ import "./chunk-RBOJCG4T.js";
|
|
|
47
47
|
import "./chunk-R7QY5ZVB.js";
|
|
48
48
|
import "./chunk-5WITETWU.js";
|
|
49
49
|
import "./chunk-6CIAGZ6X.js";
|
|
50
|
-
import "./chunk-
|
|
50
|
+
import "./chunk-B3OFQP5Y.js";
|
|
51
51
|
import "./chunk-G26YNEOC.js";
|
|
52
52
|
import "./chunk-ZLQ37WJX.js";
|
|
53
53
|
import "./chunk-IUM3VSHI.js";
|
package/dist/who-knows.js
CHANGED
|
@@ -9,20 +9,20 @@ import {
|
|
|
9
9
|
loadWhoKnowsEntities,
|
|
10
10
|
tokenizeTopic,
|
|
11
11
|
validateWhoKnowsInput
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-QIDMGBUY.js";
|
|
13
|
+
import "./chunk-YUAOU2B2.js";
|
|
14
14
|
import "./chunk-UHVXE24Y.js";
|
|
15
15
|
import "./chunk-46WM6JX2.js";
|
|
16
16
|
import "./chunk-D5F7TKMH.js";
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-RJLV4BKR.js";
|
|
18
|
+
import "./chunk-SLEAJ67D.js";
|
|
19
|
+
import "./chunk-S7LWX2PQ.js";
|
|
19
20
|
import "./chunk-T2YX56QI.js";
|
|
20
21
|
import "./chunk-CYEPCZN5.js";
|
|
21
22
|
import "./chunk-T3FMRLWQ.js";
|
|
22
23
|
import "./chunk-7VO6E5UD.js";
|
|
23
|
-
import "./chunk-Z4TXB4K7.js";
|
|
24
|
-
import "./chunk-S7LWX2PQ.js";
|
|
25
24
|
import "./chunk-4O6WRBGE.js";
|
|
25
|
+
import "./chunk-Z4TXB4K7.js";
|
|
26
26
|
import "./chunk-GUMZC2BO.js";
|
|
27
27
|
import "./chunk-TFA6HPOA.js";
|
|
28
28
|
import "./chunk-F4TWWUMP.js";
|
|
@@ -37,11 +37,11 @@ import "./chunk-FF6N7BXC.js";
|
|
|
37
37
|
import "./chunk-J3IWHCMF.js";
|
|
38
38
|
import "./chunk-AAD2ZS6P.js";
|
|
39
39
|
import "./chunk-DUJYRVUD.js";
|
|
40
|
+
import "./chunk-3ONXXHQO.js";
|
|
40
41
|
import "./chunk-YXZG5TVN.js";
|
|
41
42
|
import "./chunk-ZIKENA2C.js";
|
|
42
|
-
import "./chunk-
|
|
43
|
+
import "./chunk-345MEMRU.js";
|
|
43
44
|
import "./chunk-SCU65EZI.js";
|
|
44
|
-
import "./chunk-3ONXXHQO.js";
|
|
45
45
|
import "./chunk-5GINB5LC.js";
|
|
46
46
|
import "./chunk-3WU7XOFN.js";
|
|
47
47
|
import "./chunk-G7D6GZ5J.js";
|
|
@@ -51,7 +51,7 @@ import "./chunk-RBOJCG4T.js";
|
|
|
51
51
|
import "./chunk-R7QY5ZVB.js";
|
|
52
52
|
import "./chunk-5WITETWU.js";
|
|
53
53
|
import "./chunk-6CIAGZ6X.js";
|
|
54
|
-
import "./chunk-
|
|
54
|
+
import "./chunk-B3OFQP5Y.js";
|
|
55
55
|
import "./chunk-G26YNEOC.js";
|
|
56
56
|
import "./chunk-ZLQ37WJX.js";
|
|
57
57
|
import "./chunk-IUM3VSHI.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@remnic/core",
|
|
3
|
-
"version": "9.69.
|
|
3
|
+
"version": "9.69.77",
|
|
4
4
|
"description": "Framework-agnostic Remnic memory engine — orchestrator, storage, extraction, search, trust zones",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -3317,7 +3317,7 @@
|
|
|
3317
3317
|
"core"
|
|
3318
3318
|
],
|
|
3319
3319
|
"peerDependencies": {
|
|
3320
|
-
"@remnic/coding-graph": "^9.69.
|
|
3320
|
+
"@remnic/coding-graph": "^9.69.77"
|
|
3321
3321
|
},
|
|
3322
3322
|
"peerDependenciesMeta": {
|
|
3323
3323
|
"@remnic/coding-graph": {
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import assert from "node:assert/strict";
|
|
2
|
+
import test from "node:test";
|
|
3
|
+
|
|
4
|
+
import { withBriefingFollowupTimeout } from "./briefing-followup-timeout.js";
|
|
5
|
+
|
|
6
|
+
test("#3086 briefing follow-up timeout rejects so briefing can degrade", async () => {
|
|
7
|
+
await assert.rejects(
|
|
8
|
+
withBriefingFollowupTimeout(new Promise(() => {}), 20),
|
|
9
|
+
/briefing follow-up timeout/,
|
|
10
|
+
);
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
test("#3086 briefing follow-up timeout returns the work when it finishes", async () => {
|
|
14
|
+
assert.equal(await withBriefingFollowupTimeout(Promise.resolve("ok"), 50), "ok");
|
|
15
|
+
});
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export const BRIEFING_FOLLOWUP_TIMEOUT_MS = 8_000;
|
|
2
|
+
|
|
3
|
+
export async function withBriefingFollowupTimeout<T>(
|
|
4
|
+
work: Promise<T>,
|
|
5
|
+
timeoutMs = BRIEFING_FOLLOWUP_TIMEOUT_MS,
|
|
6
|
+
): Promise<T> {
|
|
7
|
+
const { promise: timeout, reject } = Promise.withResolvers<T>();
|
|
8
|
+
const timer = setTimeout(() => reject(new Error("briefing follow-up timeout")), timeoutMs);
|
|
9
|
+
try {
|
|
10
|
+
return await Promise.race([work, timeout]);
|
|
11
|
+
} finally {
|
|
12
|
+
clearTimeout(timer);
|
|
13
|
+
}
|
|
14
|
+
}
|
package/src/briefing.ts
CHANGED
|
@@ -19,6 +19,7 @@ import { readFile } from "node:fs/promises";
|
|
|
19
19
|
import os from "node:os";
|
|
20
20
|
import path from "node:path";
|
|
21
21
|
import { log } from "./logger.js";
|
|
22
|
+
import { withBriefingFollowupTimeout } from "./briefing-followup-timeout.js";
|
|
22
23
|
import { extractJsonCandidates } from "./json-extract.js";
|
|
23
24
|
import { drainPassiveCorrectionNotifications } from "./correction/passive-correction-notifications.js";
|
|
24
25
|
import { excludeSupportPassportPrivateMemories } from "./support-passport/card-projection.js";
|
|
@@ -846,10 +847,6 @@ export async function buildBriefing(options: BuildBriefingOptions): Promise<Brie
|
|
|
846
847
|
|
|
847
848
|
const activeThreads = buildActiveThreads(focusedMemories);
|
|
848
849
|
const recentEntities = buildRecentEntities(allEntities, window, focus);
|
|
849
|
-
// TODO(#370): openCommitments only covers memories inside the lookback window.
|
|
850
|
-
// Still-open commitments (pending tag, commitment category) that pre-date the
|
|
851
|
-
// window are silently omitted. A separate query over allMemories filtered to
|
|
852
|
-
// open-status entries would surface these. Deferred to avoid scope creep here.
|
|
853
850
|
const openCommitments = buildOpenCommitments(focusedMemories);
|
|
854
851
|
|
|
855
852
|
const calendarLoadResult = options.calendarSource
|
|
@@ -882,11 +879,13 @@ export async function buildBriefing(options: BuildBriefingOptions): Promise<Brie
|
|
|
882
879
|
model: options.model ?? BRIEFING_FOLLOWUP_DEFAULT_MODEL,
|
|
883
880
|
baseURL: options.openaiBaseUrl,
|
|
884
881
|
});
|
|
885
|
-
const generated = await
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
882
|
+
const generated = await withBriefingFollowupTimeout(
|
|
883
|
+
generator({
|
|
884
|
+
sections: sectionsBase,
|
|
885
|
+
windowLabel: window.label,
|
|
886
|
+
maxFollowups,
|
|
887
|
+
}),
|
|
888
|
+
);
|
|
890
889
|
followups = generated.slice(0, maxFollowups);
|
|
891
890
|
} catch (err) {
|
|
892
891
|
const errMsg = stringifyError(err);
|
package/src/config-qmd.ts
CHANGED
|
@@ -63,7 +63,7 @@ export function parseQmdSearchStrategy(value: unknown): "hybrid" | "lex-vec" | "
|
|
|
63
63
|
// Issue #1335. Reject non-numeric / non-integer timeouts rather than silently
|
|
64
64
|
// coercing them (gotcha #51), then clamp valid integers to the documented bounds.
|
|
65
65
|
export function parseQmdDaemonTimeoutMs(value: unknown): number {
|
|
66
|
-
if (value === undefined || value === null) return
|
|
66
|
+
if (value === undefined || value === null) return 60_000;
|
|
67
67
|
const coerced = coerceNumber(value);
|
|
68
68
|
if (coerced === undefined || !Number.isInteger(coerced)) {
|
|
69
69
|
throw new Error(
|
package/src/config.test.ts
CHANGED
|
@@ -708,8 +708,8 @@ test("parseConfig qmdSubprocessStrategy defaults to query (honors QMD query inte
|
|
|
708
708
|
}
|
|
709
709
|
});
|
|
710
710
|
|
|
711
|
-
test("parseConfig qmdDaemonTimeoutMs defaults to
|
|
712
|
-
assert.equal(parseConfig({}).qmdDaemonTimeoutMs,
|
|
711
|
+
test("parseConfig qmdDaemonTimeoutMs defaults to 60000 and clamps valid integers", () => {
|
|
712
|
+
assert.equal(parseConfig({}).qmdDaemonTimeoutMs, 60_000);
|
|
713
713
|
assert.equal(parseConfig({ qmdDaemonTimeoutMs: 20_000 }).qmdDaemonTimeoutMs, 20_000);
|
|
714
714
|
assert.equal(parseConfig({ qmdDaemonTimeoutMs: "20000" }).qmdDaemonTimeoutMs, 20_000);
|
|
715
715
|
// Below floor clamps up; above ceiling clamps down.
|
package/src/config.ts
CHANGED
|
@@ -3127,7 +3127,7 @@ export function parseConfig(
|
|
|
3127
3127
|
recallEnrichmentDeadlineMs:
|
|
3128
3128
|
typeof cfg.recallEnrichmentDeadlineMs === "number"
|
|
3129
3129
|
? Math.max(0, Math.floor(cfg.recallEnrichmentDeadlineMs))
|
|
3130
|
-
:
|
|
3130
|
+
: 60_000,
|
|
3131
3131
|
recallPipeline: recallPipelineConfig.pipeline,
|
|
3132
3132
|
recallMmrEnabled: cfg.recallMmrEnabled !== false,
|
|
3133
3133
|
recallMmrLambda:
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import assert from "node:assert/strict";
|
|
2
|
-
import { chmodSync, mkdtempSync, rmSync, writeFileSync } from "node:fs";
|
|
2
|
+
import { chmodSync, existsSync, mkdtempSync, mkdirSync, rmSync, symlinkSync, writeFileSync } from "node:fs";
|
|
3
3
|
import { mkdir, readdir, readFile, stat } from "node:fs/promises";
|
|
4
4
|
import os from "node:os";
|
|
5
5
|
import path from "node:path";
|
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
DIRECTORY_SIDECAR_MARKER,
|
|
11
11
|
NEIGHBORHOOD_ABSTRACT_LABEL,
|
|
12
12
|
applyDirectorySidecarDrillDown,
|
|
13
|
+
directorySidecarAncestry,
|
|
13
14
|
findDirectorySidecarsForQuery,
|
|
14
15
|
loadDirectorySidecar,
|
|
15
16
|
parseDirectorySidecarsEnabled,
|
|
@@ -498,3 +499,37 @@ test("drill-down prefers the most specific matching directory", async () => {
|
|
|
498
499
|
rmSync(root, { recursive: true, force: true });
|
|
499
500
|
}
|
|
500
501
|
});
|
|
502
|
+
|
|
503
|
+
test("#3007 sidecar ancestry refuses a symlinked memory root", () => {
|
|
504
|
+
const root = store();
|
|
505
|
+
try {
|
|
506
|
+
const facts = path.join(root, "facts");
|
|
507
|
+
mkdirSync(facts);
|
|
508
|
+
const linked = path.join(root, "linked-root");
|
|
509
|
+
symlinkSync(root, linked);
|
|
510
|
+
assert.deepEqual(directorySidecarAncestry(linked, "facts/2026-01-01/fact.md"), []);
|
|
511
|
+
} finally {
|
|
512
|
+
rmSync(root, { recursive: true, force: true });
|
|
513
|
+
}
|
|
514
|
+
});
|
|
515
|
+
|
|
516
|
+
test("#3090 sidecar ancestry refuses a symlink above the category root", async () => {
|
|
517
|
+
const root = store();
|
|
518
|
+
try {
|
|
519
|
+
const outside = path.join(root, "outside");
|
|
520
|
+
mkdirSync(path.join(outside, "alpha", "facts", "2026-01-01"), { recursive: true });
|
|
521
|
+
writeFileSync(path.join(outside, "alpha", "facts", "2026-01-01", "fact.md"), "x");
|
|
522
|
+
mkdirSync(path.join(root, "namespaces"));
|
|
523
|
+
symlinkSync(outside, path.join(root, "namespaces", "alpha"));
|
|
524
|
+
const report = await refreshDirectorySidecarsAfterWrite(
|
|
525
|
+
root,
|
|
526
|
+
"namespaces/alpha/facts/2026-01-01/fact.md",
|
|
527
|
+
true,
|
|
528
|
+
);
|
|
529
|
+
assert.deepEqual(report, { written: [], removed: [] });
|
|
530
|
+
assert.equal(existsSync(path.join(outside, "alpha", "facts", "overview.md")), false);
|
|
531
|
+
assert.equal(existsSync(path.join(outside, "alpha", "facts", "2026-01-01", "overview.md")), false);
|
|
532
|
+
} finally {
|
|
533
|
+
rmSync(root, { recursive: true, force: true });
|
|
534
|
+
}
|
|
535
|
+
});
|
|
@@ -337,10 +337,21 @@ function childAbstractsFromDisk(dir: string): Map<string, string> {
|
|
|
337
337
|
*/
|
|
338
338
|
export function directorySidecarAncestry(memoryDir: string, changedPath: string): string[] {
|
|
339
339
|
const root = path.resolve(memoryDir);
|
|
340
|
+
if (!isRealDirectory(root)) return [];
|
|
340
341
|
const abs = path.isAbsolute(changedPath) ? path.resolve(changedPath) : path.resolve(root, changedPath);
|
|
341
342
|
const rel = path.relative(root, abs);
|
|
342
343
|
if (rel.startsWith("..") || path.isAbsolute(rel)) return [];
|
|
343
344
|
const parts = rel.split(path.sep).filter(Boolean);
|
|
345
|
+
let cursor = root;
|
|
346
|
+
for (let i = 0; i < parts.length; i++) {
|
|
347
|
+
cursor = path.join(cursor, parts[i] ?? "");
|
|
348
|
+
try {
|
|
349
|
+
if (lstatSync(cursor).isSymbolicLink()) return [];
|
|
350
|
+
} catch {
|
|
351
|
+
if (i === parts.length - 1) break;
|
|
352
|
+
return [];
|
|
353
|
+
}
|
|
354
|
+
}
|
|
344
355
|
const dirParts = isRealDirectory(abs) ? parts : parts.slice(0, -1);
|
|
345
356
|
let categoryAt = -1;
|
|
346
357
|
if (dirParts[0] === "namespaces" && dirParts.length >= 3 && CATEGORY_ROOTS.has(dirParts[2] ?? "")) {
|
|
@@ -351,7 +362,9 @@ export function directorySidecarAncestry(memoryDir: string, changedPath: string)
|
|
|
351
362
|
if (categoryAt === -1) return [];
|
|
352
363
|
const dirs: string[] = [];
|
|
353
364
|
for (let i = dirParts.length; i > categoryAt; i--) {
|
|
354
|
-
|
|
365
|
+
const dir = path.join(root, ...dirParts.slice(0, i));
|
|
366
|
+
if (!isRealDirectory(dir)) return [];
|
|
367
|
+
dirs.push(dir);
|
|
355
368
|
}
|
|
356
369
|
return dirs;
|
|
357
370
|
}
|
|
@@ -165,7 +165,7 @@ export class RecallInternalCoordinator {
|
|
|
165
165
|
const recallSectionDeadlineMs = this.deps.config.recallCoreDeadlineMs ?? 75_000;
|
|
166
166
|
const recallOuterTimeoutMs = this.deps.config.recallOuterTimeoutMs ?? 75_000;
|
|
167
167
|
const enrichmentSectionDeadlineMs =
|
|
168
|
-
this.deps.config.recallEnrichmentDeadlineMs ??
|
|
168
|
+
this.deps.config.recallEnrichmentDeadlineMs ?? 60_000;
|
|
169
169
|
// Wrap entire recall body in try/finally so profiling trace is always closed,
|
|
170
170
|
// even on unexpected exceptions (e.g., throwIfRecallAborted, phase-1 errors).
|
|
171
171
|
try {
|
|
@@ -15,6 +15,7 @@ import test from "node:test";
|
|
|
15
15
|
import { saveRecognitionIndex, type RecognitionIndex } from "../recall-recognition-tier.js";
|
|
16
16
|
import {
|
|
17
17
|
fetchQmdMemoryResultsWithRecognitionSwap,
|
|
18
|
+
recognitionHitScore,
|
|
18
19
|
type RecognitionSearchDeps,
|
|
19
20
|
} from "./recall-recognition-search.js";
|
|
20
21
|
import type { QmdSearchResult } from "../types.js";
|
|
@@ -30,6 +31,13 @@ function indexOf(ids: string[]): RecognitionIndex {
|
|
|
30
31
|
};
|
|
31
32
|
}
|
|
32
33
|
|
|
34
|
+
test("#3117 recognition hit scores stay on the retrieval 0-1 scale", () => {
|
|
35
|
+
assert.equal(recognitionHitScore(0), 1);
|
|
36
|
+
assert.ok(recognitionHitScore(1) < 1);
|
|
37
|
+
assert.ok(recognitionHitScore(1) > recognitionHitScore(2));
|
|
38
|
+
assert.ok(recognitionHitScore(99) > 0);
|
|
39
|
+
});
|
|
40
|
+
|
|
33
41
|
async function tmpDir(): Promise<string> {
|
|
34
42
|
return mkdtemp(path.join(os.tmpdir(), "remnic-recognition-search-"));
|
|
35
43
|
}
|
|
@@ -133,6 +133,10 @@ export async function fetchQmdMemoryResultsWithRecognitionSwap(
|
|
|
133
133
|
);
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
+
export function recognitionHitScore(rankOffset: number): number {
|
|
137
|
+
return 1 / (1 + rankOffset);
|
|
138
|
+
}
|
|
139
|
+
|
|
136
140
|
async function hitsFromIds(
|
|
137
141
|
namespace: string,
|
|
138
142
|
storage: RecognitionStorage,
|
|
@@ -152,7 +156,7 @@ async function hitsFromIds(
|
|
|
152
156
|
docid: `${namespace}:${rel}`,
|
|
153
157
|
namespace,
|
|
154
158
|
path: rel,
|
|
155
|
-
score:
|
|
159
|
+
score: recognitionHitScore(offset),
|
|
156
160
|
snippet: descriptionById.get(id) ?? id,
|
|
157
161
|
});
|
|
158
162
|
}
|
|
@@ -315,7 +315,7 @@ export class RecallSearchPipelineCoordinator {
|
|
|
315
315
|
320,
|
|
316
316
|
Math.max(fetchLimit, qmdFetchLimit * 5),
|
|
317
317
|
);
|
|
318
|
-
const qmdRecallBudgetMs = this.deps.config.recallEnrichmentDeadlineMs ??
|
|
318
|
+
const qmdRecallBudgetMs = this.deps.config.recallEnrichmentDeadlineMs ?? 60_000;
|
|
319
319
|
const qmdRecallBudgetEnabled = qmdRecallBudgetMs > 0;
|
|
320
320
|
const startedAtMs = Date.now();
|
|
321
321
|
let lastPrimaryResultCount = 0;
|
package/src/qmd.ts
CHANGED
|
@@ -70,7 +70,7 @@ export interface QmdClientOptions {
|
|
|
70
70
|
qmdSubprocessStrategy?: QmdSubprocessStrategy;
|
|
71
71
|
/** Override automatic qmd fallback probes; defaults to known install paths. */
|
|
72
72
|
qmdFallbackPaths?: string[];
|
|
73
|
-
/** Per-call daemon search timeout in ms; default
|
|
73
|
+
/** Per-call daemon search timeout in ms; default 60000. Issue #1335/#3098. */
|
|
74
74
|
qmdDaemonTimeoutMs?: number;
|
|
75
75
|
}
|
|
76
76
|
|
|
@@ -152,9 +152,9 @@ export type { QmdStatusReport } from "./qmd-status.js";
|
|
|
152
152
|
|
|
153
153
|
const QMD_TIMEOUT_MS = 30_000;
|
|
154
154
|
// Daemon timeout for search calls. Keep under RECALL_TIMEOUT_MS (75s) so a slow
|
|
155
|
-
// daemon fails fast. Default only — override via `qmdDaemonTimeoutMs` (#1335).
|
|
156
|
-
//
|
|
157
|
-
const QMD_DAEMON_TIMEOUT_MS =
|
|
155
|
+
// daemon fails fast. Default only — override via `qmdDaemonTimeoutMs` (#1335/#3098).
|
|
156
|
+
// 60s covers multi-GB cold indexes that 8s missed; operators can still set 8s.
|
|
157
|
+
const QMD_DAEMON_TIMEOUT_MS = 60_000;
|
|
158
158
|
const QMD_UPDATE_BACKOFF_MS = 15 * 60 * 1000; // 15m
|
|
159
159
|
const QMD_EMBED_BACKOFF_MS = 60 * 60 * 1000; // 60m
|
|
160
160
|
const QMD_CLI_WARN_THROTTLE_MS = 15 * 60 * 1000; // 15m
|
|
@@ -8,7 +8,7 @@ test("parseConfig applies recall timeout and qmd recall cache defaults", () => {
|
|
|
8
8
|
|
|
9
9
|
assert.equal(config.recallOuterTimeoutMs, 75_000);
|
|
10
10
|
assert.equal(config.recallCoreDeadlineMs, 75_000);
|
|
11
|
-
assert.equal(config.recallEnrichmentDeadlineMs,
|
|
11
|
+
assert.equal(config.recallEnrichmentDeadlineMs, 60_000);
|
|
12
12
|
assert.equal(config.qmdRecallCacheTtlMs, 60_000);
|
|
13
13
|
assert.equal(config.qmdRecallCacheStaleTtlMs, 10 * 60_000);
|
|
14
14
|
assert.equal(config.qmdRecallCacheMaxEntries, 128);
|