@remnic/core 9.69.50 → 9.69.51
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 +30 -30
- package/dist/access-audit.d.ts +1 -0
- package/dist/access-audit.js +2 -2
- package/dist/access-authorization-probe.js +31 -31
- package/dist/access-boundary.js +30 -30
- package/dist/access-cli.js +84 -83
- package/dist/access-cli.js.map +1 -1
- package/dist/access-extraction-force-flush.js +30 -30
- package/dist/access-http-briefing.js +31 -31
- package/dist/access-http-query.js +32 -32
- package/dist/access-http.js +50 -50
- package/dist/access-identity-continuity-surface.js +30 -30
- package/dist/access-lcm-surface.js +30 -30
- package/dist/access-mcp-output-schemas.js +1 -1
- package/dist/access-mcp.js +41 -41
- package/dist/access-namespace-preflight.js +30 -30
- package/dist/access-observe-write-category.js +5 -5
- package/dist/access-observe-write-surface.js +30 -30
- package/dist/access-operations-batch.js +32 -32
- package/dist/access-operations.js +39 -39
- package/dist/access-recall-concurrency.js +30 -30
- package/dist/access-recall-response.js +30 -30
- package/dist/access-recall-surface.d.ts +1 -1
- package/dist/access-recall-surface.js +30 -30
- package/dist/access-schema.js +4 -4
- package/dist/access-service.js +30 -30
- package/dist/access-surface-catalog.js +32 -32
- package/dist/active-recall.js +2 -2
- package/dist/briefing.js +5 -5
- package/dist/{capsule-crypto-7FJQINUR.js → capsule-crypto-YO5QJ6L3.js} +2 -2
- package/dist/causal-consolidation.js +6 -6
- package/dist/{chunk-BHI5ILU5.js → chunk-25HSEIEM.js} +2 -2
- package/dist/{chunk-3RZB7TYL.js → chunk-2EICZYIG.js} +2 -2
- package/dist/{chunk-2IVHOQRY.js → chunk-2ERLN25A.js} +2 -2
- package/dist/{chunk-OQZYHCWM.js → chunk-2G2CVN2T.js} +27 -26
- package/dist/{chunk-OQZYHCWM.js.map → chunk-2G2CVN2T.js.map} +1 -1
- package/dist/{chunk-PPNFKQ6D.js → chunk-2SZBCM2S.js} +2 -2
- package/dist/{chunk-E73SVGJA.js → chunk-33SX6K3N.js} +2 -2
- package/dist/{chunk-D6WX5FEF.js → chunk-3QZRSEAM.js} +2 -2
- package/dist/{chunk-LBLXEFWK.js → chunk-4MN27537.js} +1 -1
- package/dist/chunk-4MN27537.js.map +1 -0
- package/dist/{chunk-LR7KUQ2W.js → chunk-6HCJWCA4.js} +5 -5
- package/dist/chunk-6VITOSPL.js +69 -0
- package/dist/chunk-6VITOSPL.js.map +1 -0
- package/dist/{chunk-EZV43XBD.js → chunk-6Z4OLQUO.js} +2 -2
- package/dist/{chunk-JTPAXDSX.js → chunk-6ZMIASYT.js} +2 -2
- package/dist/{chunk-UD6W67JM.js → chunk-72AV2H3R.js} +76 -25
- package/dist/chunk-72AV2H3R.js.map +1 -0
- package/dist/{chunk-DNO6QWCB.js → chunk-7TTOX6NW.js} +2 -2
- package/dist/{chunk-OP5IBPHP.js → chunk-A33DLYNY.js} +2 -2
- package/dist/{chunk-3MIZ2EKQ.js → chunk-AH3OIMS7.js} +2 -2
- package/dist/{chunk-TZ44E732.js → chunk-AIVRD66I.js} +2 -2
- package/dist/{chunk-IST6MBYC.js → chunk-BMAYH7F4.js} +473 -329
- package/dist/chunk-BMAYH7F4.js.map +1 -0
- package/dist/{chunk-XTMABIFW.js → chunk-BULK6DGB.js} +2 -2
- package/dist/{chunk-2NLLXCJG.js → chunk-BXLOS5AJ.js} +2 -2
- package/dist/{chunk-PMLFPVYJ.js → chunk-CKBA2MWS.js} +2 -2
- package/dist/{chunk-TVVEYCNW.js → chunk-DAOMWGO2.js} +2 -2
- package/dist/{chunk-E64HBW7M.js → chunk-DLXBMXIB.js} +2 -2
- package/dist/{chunk-X7Y7WX73.js → chunk-DQEMWVMT.js} +1 -1
- package/dist/{chunk-MQMZO23A.js → chunk-DQSVGTKB.js} +2 -2
- package/dist/{chunk-X6B2QWXW.js → chunk-DX63RFDJ.js} +2 -2
- package/dist/{chunk-OLJYDGGP.js → chunk-EBJL6HGR.js} +4 -4
- package/dist/{chunk-KOEDSRF5.js → chunk-ETNC6TT6.js} +2 -2
- package/dist/{chunk-SRMBMMTK.js → chunk-HEKWNWNL.js} +3 -3
- package/dist/{chunk-UI6R2YUB.js → chunk-IGDEKECC.js} +1 -1
- package/dist/{chunk-MECKA6G2.js → chunk-ISA5U5AP.js} +2 -2
- package/dist/{chunk-ZUNYFDI4.js → chunk-JGPG5UHM.js} +2 -2
- package/dist/{chunk-C3PKRFZ4.js → chunk-JXSOB3SA.js} +2 -2
- package/dist/{chunk-56C7OO3N.js → chunk-KAPYPTPS.js} +15 -15
- package/dist/{chunk-W6V7JN2E.js → chunk-KBHDV7P3.js} +3 -3
- package/dist/{chunk-F5V7KRQS.js → chunk-LIAKZGOY.js} +2 -2
- package/dist/{chunk-A7GQBJP5.js → chunk-LVFI5LG7.js} +7 -7
- package/dist/{chunk-QSP4Y73Q.js → chunk-LX7KIJQF.js} +2 -2
- package/dist/{chunk-ECLY4NZA.js → chunk-LZI6FWZW.js} +7 -1
- package/dist/chunk-LZI6FWZW.js.map +1 -0
- package/dist/{chunk-4PXFLDMJ.js → chunk-MNF6PTNL.js} +2 -2
- package/dist/{chunk-BOTSR5S3.js → chunk-MYDA2GA2.js} +2 -2
- package/dist/{chunk-4SDO74N2.js → chunk-NROI5XMG.js} +2 -2
- package/dist/{chunk-IYHHCSF6.js → chunk-NVW5ISEJ.js} +32 -32
- package/dist/{chunk-AL7OLBL7.js → chunk-NXSNFPYI.js} +2 -2
- package/dist/{chunk-D7QX26FF.js → chunk-O4JFBEUL.js} +2 -2
- package/dist/{chunk-PA5EOTRR.js → chunk-OIK3YL2P.js} +3 -3
- package/dist/{chunk-JOP7W24J.js → chunk-PLJ2MQFT.js} +4 -4
- package/dist/{chunk-HRCWDO6S.js → chunk-PYTSGD5M.js} +2 -2
- package/dist/{chunk-VBRS7Z3O.js → chunk-Q6OC4UUT.js} +2 -2
- package/dist/{chunk-4FWNMN5R.js → chunk-QRSC37NC.js} +5 -5
- package/dist/{chunk-D2XUSZ24.js → chunk-RIP2AOZW.js} +2 -2
- package/dist/{chunk-ZBAQMSEY.js → chunk-SCM4VYJW.js} +2 -2
- package/dist/{chunk-6525YIYL.js → chunk-SMI2G3MA.js} +3 -3
- package/dist/{chunk-DH536WT2.js → chunk-ST7FDKZT.js} +12 -2
- package/dist/chunk-ST7FDKZT.js.map +1 -0
- package/dist/{chunk-AYGWJ2UK.js → chunk-SZ75IB2T.js} +2 -2
- package/dist/{chunk-42BV46XS.js → chunk-T73ZC7C5.js} +2 -2
- package/dist/{chunk-3SI3FFTW.js → chunk-TNFDWJRS.js} +2 -2
- package/dist/{chunk-3UQIS2GC.js → chunk-TTFJQ5B5.js} +2 -2
- package/dist/{chunk-QZDUNK6V.js → chunk-UP3226JC.js} +6 -6
- package/dist/{chunk-IPLYGWQF.js → chunk-VDX2J7OX.js} +6 -6
- package/dist/{chunk-QXQCPNKA.js → chunk-VLR4S5GF.js} +7 -7
- package/dist/{chunk-ZHXSOMYH.js → chunk-VVX5PZFS.js} +2 -2
- package/dist/{chunk-HS75MCQF.js → chunk-WUUGE7QC.js} +4 -4
- package/dist/{chunk-MVMNEU65.js → chunk-X25NTN3W.js} +2 -2
- package/dist/{chunk-IC3PM3YO.js → chunk-XFXVIXDI.js} +2 -2
- package/dist/{chunk-ML5FW2RO.js → chunk-XHDQQ2TT.js} +2 -2
- package/dist/{chunk-XUKUMBP3.js → chunk-XRUOO7OT.js} +2 -2
- package/dist/{chunk-WVI43D54.js → chunk-YEIKOBOW.js} +15 -2
- package/dist/chunk-YEIKOBOW.js.map +1 -0
- package/dist/{chunk-AYP2FZFA.js → chunk-YIIW2OH2.js} +2 -2
- package/dist/{chunk-FO6IK4IF.js → chunk-YJJMJH6J.js} +8 -8
- package/dist/cli.js +68 -68
- package/dist/coding/export-okf-codegraph.js +4 -4
- package/dist/compounding/engine.js +5 -5
- package/dist/config.js +2 -2
- package/dist/connectors/codex-materialize-runner.js +5 -5
- package/dist/connectors/index.js +5 -5
- package/dist/convergence-refresh.js +7 -7
- package/dist/corpus-watermark.js +7 -7
- package/dist/deep-recall-http-glue.js +5 -5
- package/dist/deep-recall.js +2 -2
- package/dist/directory-sidecars.d.ts +28 -2
- package/dist/directory-sidecars.js +9 -1
- package/dist/entity-retrieval.js +5 -5
- package/dist/external-wiki-access.js +31 -31
- package/dist/extraction.js +5 -5
- package/dist/harmonic-retrieval.js +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +98 -88
- package/dist/lcm/engine.js +3 -3
- package/dist/lcm/index.js +8 -8
- package/dist/location/index.js +7 -7
- package/dist/maintenance/memory-governance.js +5 -5
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +5 -5
- package/dist/maintenance/rebuild-memory-projection.js +6 -6
- package/dist/memory-browse-operations.js +31 -31
- package/dist/memory-browse.js +3 -3
- package/dist/namespaces/migrate.js +6 -6
- package/dist/namespaces/search.js +3 -3
- package/dist/namespaces/storage.js +5 -5
- package/dist/operator-doctor-corpus.js +8 -8
- package/dist/operator-toolkit.js +15 -15
- package/dist/orchestration/maintenance.js +13 -13
- package/dist/orchestrator.js +84 -83
- package/dist/recall-audit-anomaly.d.ts +1 -0
- package/dist/recall-audit.d.ts +4 -0
- package/dist/recall-audit.js +1 -1
- package/dist/recall-composition-decision.d.ts +41 -0
- package/dist/recall-composition-decision.js +17 -0
- package/dist/recall-composition-decision.js.map +1 -0
- package/dist/recall-explain-renderer.d.ts +1 -0
- package/dist/recall-explain-renderer.js +2 -2
- package/dist/recall-navigation-operations.js +31 -31
- package/dist/recall-navigation-renderer.d.ts +1 -0
- package/dist/recall-navigation.d.ts +1 -0
- package/dist/recall-navigation.js +30 -30
- package/dist/recall-state-view-admission.js +3 -3
- package/dist/recall-tag-filter.d.ts +1 -0
- package/dist/recall-xray-cli.d.ts +1 -0
- package/dist/recall-xray-cli.js +3 -3
- package/dist/recall-xray-renderer.d.ts +1 -0
- package/dist/recall-xray-renderer.js +2 -2
- package/dist/recall-xray.d.ts +9 -0
- package/dist/recall-xray.js +1 -1
- package/dist/resume-bundles.js +3 -3
- package/dist/search/factory.js +2 -2
- package/dist/search/index.js +4 -4
- package/dist/semantic-consolidation.js +6 -6
- package/dist/semantic-rule-promotion.js +5 -5
- package/dist/semantic-rule-verifier.js +5 -5
- package/dist/source-agent-qualifier.js +5 -5
- package/dist/standup/build.js +5 -5
- package/dist/storage.js +4 -4
- package/dist/support-passport/index.js +33 -33
- package/dist/transfer/autodetect.js +1 -1
- package/dist/transfer/backup.js +2 -2
- package/dist/transfer/capsule-export.js +3 -3
- package/dist/transfer/capsule-import.js +2 -2
- package/dist/transfer/export-okf.js +5 -5
- package/dist/verified-recall.js +5 -5
- package/dist/who-knows-cli.js +6 -6
- package/dist/who-knows.js +5 -5
- package/package.json +2 -2
- package/src/access-mcp-output-schemas.ts +14 -1
- package/src/access-recall-response.ts +3 -0
- package/src/directory-sidecars.test.ts +119 -0
- package/src/directory-sidecars.ts +110 -25
- package/src/experience/session-experience-recall.test.ts +228 -0
- package/src/experience/session-experience-recall.ts +60 -0
- package/src/index.ts +1 -0
- package/src/orchestration/recall-entry.ts +16 -2
- package/src/orchestration/recall-internal.ts +21 -18
- package/src/orchestration/recall-recognition-search.test.ts +290 -0
- package/src/orchestration/recall-recognition-search.ts +160 -0
- package/src/procedural/procedure-recall.ts +14 -3
- package/src/recall-audit.test.ts +34 -0
- package/src/recall-audit.ts +4 -0
- package/src/recall-composition-decision.test.ts +134 -0
- package/src/recall-composition-decision.ts +113 -0
- package/src/recall-xray-renderer.test.ts +17 -0
- package/src/recall-xray-renderer.ts +10 -0
- package/src/recall-xray.test.ts +28 -0
- package/src/recall-xray.ts +15 -0
- package/src/testing/subjects/recall-recognition-tier.test.ts +106 -0
- package/dist/chunk-DH536WT2.js.map +0 -1
- package/dist/chunk-ECLY4NZA.js.map +0 -1
- package/dist/chunk-IST6MBYC.js.map +0 -1
- package/dist/chunk-LBLXEFWK.js.map +0 -1
- package/dist/chunk-UD6W67JM.js.map +0 -1
- package/dist/chunk-WVI43D54.js.map +0 -1
- /package/dist/{capsule-crypto-7FJQINUR.js.map → capsule-crypto-YO5QJ6L3.js.map} +0 -0
- /package/dist/{chunk-BHI5ILU5.js.map → chunk-25HSEIEM.js.map} +0 -0
- /package/dist/{chunk-3RZB7TYL.js.map → chunk-2EICZYIG.js.map} +0 -0
- /package/dist/{chunk-2IVHOQRY.js.map → chunk-2ERLN25A.js.map} +0 -0
- /package/dist/{chunk-PPNFKQ6D.js.map → chunk-2SZBCM2S.js.map} +0 -0
- /package/dist/{chunk-E73SVGJA.js.map → chunk-33SX6K3N.js.map} +0 -0
- /package/dist/{chunk-D6WX5FEF.js.map → chunk-3QZRSEAM.js.map} +0 -0
- /package/dist/{chunk-LR7KUQ2W.js.map → chunk-6HCJWCA4.js.map} +0 -0
- /package/dist/{chunk-EZV43XBD.js.map → chunk-6Z4OLQUO.js.map} +0 -0
- /package/dist/{chunk-JTPAXDSX.js.map → chunk-6ZMIASYT.js.map} +0 -0
- /package/dist/{chunk-DNO6QWCB.js.map → chunk-7TTOX6NW.js.map} +0 -0
- /package/dist/{chunk-OP5IBPHP.js.map → chunk-A33DLYNY.js.map} +0 -0
- /package/dist/{chunk-3MIZ2EKQ.js.map → chunk-AH3OIMS7.js.map} +0 -0
- /package/dist/{chunk-TZ44E732.js.map → chunk-AIVRD66I.js.map} +0 -0
- /package/dist/{chunk-XTMABIFW.js.map → chunk-BULK6DGB.js.map} +0 -0
- /package/dist/{chunk-2NLLXCJG.js.map → chunk-BXLOS5AJ.js.map} +0 -0
- /package/dist/{chunk-PMLFPVYJ.js.map → chunk-CKBA2MWS.js.map} +0 -0
- /package/dist/{chunk-TVVEYCNW.js.map → chunk-DAOMWGO2.js.map} +0 -0
- /package/dist/{chunk-E64HBW7M.js.map → chunk-DLXBMXIB.js.map} +0 -0
- /package/dist/{chunk-X7Y7WX73.js.map → chunk-DQEMWVMT.js.map} +0 -0
- /package/dist/{chunk-MQMZO23A.js.map → chunk-DQSVGTKB.js.map} +0 -0
- /package/dist/{chunk-X6B2QWXW.js.map → chunk-DX63RFDJ.js.map} +0 -0
- /package/dist/{chunk-OLJYDGGP.js.map → chunk-EBJL6HGR.js.map} +0 -0
- /package/dist/{chunk-KOEDSRF5.js.map → chunk-ETNC6TT6.js.map} +0 -0
- /package/dist/{chunk-SRMBMMTK.js.map → chunk-HEKWNWNL.js.map} +0 -0
- /package/dist/{chunk-UI6R2YUB.js.map → chunk-IGDEKECC.js.map} +0 -0
- /package/dist/{chunk-MECKA6G2.js.map → chunk-ISA5U5AP.js.map} +0 -0
- /package/dist/{chunk-ZUNYFDI4.js.map → chunk-JGPG5UHM.js.map} +0 -0
- /package/dist/{chunk-C3PKRFZ4.js.map → chunk-JXSOB3SA.js.map} +0 -0
- /package/dist/{chunk-56C7OO3N.js.map → chunk-KAPYPTPS.js.map} +0 -0
- /package/dist/{chunk-W6V7JN2E.js.map → chunk-KBHDV7P3.js.map} +0 -0
- /package/dist/{chunk-F5V7KRQS.js.map → chunk-LIAKZGOY.js.map} +0 -0
- /package/dist/{chunk-A7GQBJP5.js.map → chunk-LVFI5LG7.js.map} +0 -0
- /package/dist/{chunk-QSP4Y73Q.js.map → chunk-LX7KIJQF.js.map} +0 -0
- /package/dist/{chunk-4PXFLDMJ.js.map → chunk-MNF6PTNL.js.map} +0 -0
- /package/dist/{chunk-BOTSR5S3.js.map → chunk-MYDA2GA2.js.map} +0 -0
- /package/dist/{chunk-4SDO74N2.js.map → chunk-NROI5XMG.js.map} +0 -0
- /package/dist/{chunk-IYHHCSF6.js.map → chunk-NVW5ISEJ.js.map} +0 -0
- /package/dist/{chunk-AL7OLBL7.js.map → chunk-NXSNFPYI.js.map} +0 -0
- /package/dist/{chunk-D7QX26FF.js.map → chunk-O4JFBEUL.js.map} +0 -0
- /package/dist/{chunk-PA5EOTRR.js.map → chunk-OIK3YL2P.js.map} +0 -0
- /package/dist/{chunk-JOP7W24J.js.map → chunk-PLJ2MQFT.js.map} +0 -0
- /package/dist/{chunk-HRCWDO6S.js.map → chunk-PYTSGD5M.js.map} +0 -0
- /package/dist/{chunk-VBRS7Z3O.js.map → chunk-Q6OC4UUT.js.map} +0 -0
- /package/dist/{chunk-4FWNMN5R.js.map → chunk-QRSC37NC.js.map} +0 -0
- /package/dist/{chunk-D2XUSZ24.js.map → chunk-RIP2AOZW.js.map} +0 -0
- /package/dist/{chunk-ZBAQMSEY.js.map → chunk-SCM4VYJW.js.map} +0 -0
- /package/dist/{chunk-6525YIYL.js.map → chunk-SMI2G3MA.js.map} +0 -0
- /package/dist/{chunk-AYGWJ2UK.js.map → chunk-SZ75IB2T.js.map} +0 -0
- /package/dist/{chunk-42BV46XS.js.map → chunk-T73ZC7C5.js.map} +0 -0
- /package/dist/{chunk-3SI3FFTW.js.map → chunk-TNFDWJRS.js.map} +0 -0
- /package/dist/{chunk-3UQIS2GC.js.map → chunk-TTFJQ5B5.js.map} +0 -0
- /package/dist/{chunk-QZDUNK6V.js.map → chunk-UP3226JC.js.map} +0 -0
- /package/dist/{chunk-IPLYGWQF.js.map → chunk-VDX2J7OX.js.map} +0 -0
- /package/dist/{chunk-QXQCPNKA.js.map → chunk-VLR4S5GF.js.map} +0 -0
- /package/dist/{chunk-ZHXSOMYH.js.map → chunk-VVX5PZFS.js.map} +0 -0
- /package/dist/{chunk-HS75MCQF.js.map → chunk-WUUGE7QC.js.map} +0 -0
- /package/dist/{chunk-MVMNEU65.js.map → chunk-X25NTN3W.js.map} +0 -0
- /package/dist/{chunk-IC3PM3YO.js.map → chunk-XFXVIXDI.js.map} +0 -0
- /package/dist/{chunk-ML5FW2RO.js.map → chunk-XHDQQ2TT.js.map} +0 -0
- /package/dist/{chunk-XUKUMBP3.js.map → chunk-XRUOO7OT.js.map} +0 -0
- /package/dist/{chunk-AYP2FZFA.js.map → chunk-YIIW2OH2.js.map} +0 -0
- /package/dist/{chunk-FO6IK4IF.js.map → chunk-YJJMJH6J.js.map} +0 -0
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
SUPPORT_PASSPORT_MODEL_RESULT_PATH,
|
|
5
5
|
SupportPassportModelBridge,
|
|
6
6
|
parseSupportPassportModelJob
|
|
7
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-MNF6PTNL.js";
|
|
8
8
|
import {
|
|
9
9
|
DEFAULT_SUPPORT_PASSPORT_CONFIG,
|
|
10
10
|
parseSupportPassportConfig
|
|
@@ -14,8 +14,8 @@ import {
|
|
|
14
14
|
buildSupportPassportPublicRequestHandler,
|
|
15
15
|
composeSupportPassportExternalRequestHandlers,
|
|
16
16
|
normalizeSupportPassportNetworkAddress
|
|
17
|
-
} from "../chunk-
|
|
18
|
-
import "../chunk-
|
|
17
|
+
} from "../chunk-DX63RFDJ.js";
|
|
18
|
+
import "../chunk-2EICZYIG.js";
|
|
19
19
|
import {
|
|
20
20
|
SUPPORT_PASSPORT_DRAFT_MAX_CONTENT_CHARACTERS,
|
|
21
21
|
SUPPORT_PASSPORT_DRAFT_MAX_MEMORIES,
|
|
@@ -56,19 +56,19 @@ import {
|
|
|
56
56
|
notifySupportPassportCommitted,
|
|
57
57
|
resolveSupportPassportModelRoutePlan,
|
|
58
58
|
syncDirectoryForDurability
|
|
59
|
-
} from "../chunk-
|
|
59
|
+
} from "../chunk-2G2CVN2T.js";
|
|
60
60
|
import "../chunk-W4F3C7N7.js";
|
|
61
61
|
import "../chunk-MPC7TYTZ.js";
|
|
62
|
-
import "../chunk-
|
|
62
|
+
import "../chunk-VVX5PZFS.js";
|
|
63
63
|
import "../chunk-IFBSZGW3.js";
|
|
64
64
|
import "../chunk-QKCXRS5A.js";
|
|
65
65
|
import "../chunk-C3QXITIP.js";
|
|
66
66
|
import "../chunk-VQ7B2Q6M.js";
|
|
67
|
-
import "../chunk-
|
|
67
|
+
import "../chunk-ETNC6TT6.js";
|
|
68
68
|
import "../chunk-PJSK6OJM.js";
|
|
69
|
+
import "../chunk-ROBHL3GL.js";
|
|
69
70
|
import "../chunk-GNVZQ5JN.js";
|
|
70
71
|
import "../chunk-YN2UN7N3.js";
|
|
71
|
-
import "../chunk-ROBHL3GL.js";
|
|
72
72
|
import "../chunk-BXOPUJ3W.js";
|
|
73
73
|
import "../chunk-6DNMUYEE.js";
|
|
74
74
|
import "../chunk-P5FPO2BR.js";
|
|
@@ -82,21 +82,21 @@ import "../chunk-VYDGHJIN.js";
|
|
|
82
82
|
import "../chunk-UVEBBXB5.js";
|
|
83
83
|
import "../chunk-7O5EW7KX.js";
|
|
84
84
|
import "../chunk-H7XKCNR6.js";
|
|
85
|
-
import "../chunk-
|
|
85
|
+
import "../chunk-ST7FDKZT.js";
|
|
86
86
|
import "../chunk-SOBJ6NEY.js";
|
|
87
|
-
import "../chunk-
|
|
88
|
-
import "../chunk-
|
|
87
|
+
import "../chunk-LZI6FWZW.js";
|
|
88
|
+
import "../chunk-CKBA2MWS.js";
|
|
89
89
|
import "../chunk-CVILPI77.js";
|
|
90
90
|
import "../chunk-6WHJ2EAB.js";
|
|
91
91
|
import "../chunk-AQEJKOKI.js";
|
|
92
92
|
import "../chunk-HM7RHKS4.js";
|
|
93
93
|
import "../chunk-UD7UNYRD.js";
|
|
94
94
|
import "../chunk-IISBCCWR.js";
|
|
95
|
-
import "../chunk-
|
|
96
|
-
import "../chunk-
|
|
95
|
+
import "../chunk-DLXBMXIB.js";
|
|
96
|
+
import "../chunk-2ERLN25A.js";
|
|
97
97
|
import "../chunk-2YA5N2BY.js";
|
|
98
98
|
import "../chunk-HWLIMQE2.js";
|
|
99
|
-
import "../chunk-
|
|
99
|
+
import "../chunk-IGDEKECC.js";
|
|
100
100
|
import "../chunk-EI6V5UXY.js";
|
|
101
101
|
import "../chunk-CEO4DONG.js";
|
|
102
102
|
import "../chunk-SGUDMW2K.js";
|
|
@@ -110,21 +110,21 @@ import "../chunk-LTHVM4XN.js";
|
|
|
110
110
|
import "../chunk-C37ZRXX7.js";
|
|
111
111
|
import "../chunk-B4EGAHHS.js";
|
|
112
112
|
import "../chunk-IHOXK2I6.js";
|
|
113
|
-
import "../chunk-
|
|
113
|
+
import "../chunk-72AV2H3R.js";
|
|
114
114
|
import "../chunk-NAFPHFDM.js";
|
|
115
115
|
import "../chunk-RF2SMMPP.js";
|
|
116
116
|
import "../chunk-AJBWVDRV.js";
|
|
117
|
-
import "../chunk-
|
|
117
|
+
import "../chunk-WUUGE7QC.js";
|
|
118
|
+
import "../chunk-HRATODNO.js";
|
|
118
119
|
import "../chunk-WTWQA7BB.js";
|
|
119
120
|
import "../chunk-VZIAVM72.js";
|
|
120
|
-
import "../chunk-
|
|
121
|
-
import "../chunk-
|
|
122
|
-
import "../chunk-
|
|
123
|
-
import "../chunk-
|
|
124
|
-
import "../chunk-42BV46XS.js";
|
|
121
|
+
import "../chunk-O4JFBEUL.js";
|
|
122
|
+
import "../chunk-JGPG5UHM.js";
|
|
123
|
+
import "../chunk-SMI2G3MA.js";
|
|
124
|
+
import "../chunk-T73ZC7C5.js";
|
|
125
125
|
import "../chunk-UFGFMWAD.js";
|
|
126
126
|
import "../chunk-BMWN7B3Y.js";
|
|
127
|
-
import "../chunk-
|
|
127
|
+
import "../chunk-ISA5U5AP.js";
|
|
128
128
|
import "../chunk-3UXOZBHV.js";
|
|
129
129
|
import "../chunk-PIWFNPQT.js";
|
|
130
130
|
import "../chunk-5FAGCOZD.js";
|
|
@@ -140,19 +140,19 @@ import "../chunk-K2XUWZBM.js";
|
|
|
140
140
|
import "../chunk-OD4FM2U7.js";
|
|
141
141
|
import "../chunk-ZY2MNJR6.js";
|
|
142
142
|
import "../chunk-TBBDFYXW.js";
|
|
143
|
-
import "../chunk-
|
|
144
|
-
import "../chunk-
|
|
143
|
+
import "../chunk-XRUOO7OT.js";
|
|
144
|
+
import "../chunk-RIP2AOZW.js";
|
|
145
145
|
import "../chunk-UHVXE24Y.js";
|
|
146
146
|
import "../chunk-46WM6JX2.js";
|
|
147
147
|
import "../chunk-D5F7TKMH.js";
|
|
148
|
-
import "../chunk-
|
|
149
|
-
import "../chunk-
|
|
148
|
+
import "../chunk-AIVRD66I.js";
|
|
149
|
+
import "../chunk-PLJ2MQFT.js";
|
|
150
|
+
import "../chunk-KVO2BTA4.js";
|
|
150
151
|
import "../chunk-CYEPCZN5.js";
|
|
151
152
|
import "../chunk-G6NQ3L4T.js";
|
|
152
153
|
import "../chunk-WPGR3RW4.js";
|
|
153
154
|
import "../chunk-6KTXE6A3.js";
|
|
154
155
|
import "../chunk-D7MAYFQP.js";
|
|
155
|
-
import "../chunk-KVO2BTA4.js";
|
|
156
156
|
import "../chunk-4O6WRBGE.js";
|
|
157
157
|
import "../chunk-GUMZC2BO.js";
|
|
158
158
|
import "../chunk-TFA6HPOA.js";
|
|
@@ -224,17 +224,17 @@ import "../chunk-RGMVMVMF.js";
|
|
|
224
224
|
import "../chunk-3QL24R5Y.js";
|
|
225
225
|
import "../chunk-SYOIVK7K.js";
|
|
226
226
|
import "../chunk-PQVCH2AE.js";
|
|
227
|
-
import "../chunk-
|
|
227
|
+
import "../chunk-LIAKZGOY.js";
|
|
228
228
|
import "../chunk-UDAUULK2.js";
|
|
229
229
|
import "../chunk-GDYU6VF4.js";
|
|
230
230
|
import "../chunk-BT7NVCML.js";
|
|
231
231
|
import "../chunk-353C5UNV.js";
|
|
232
232
|
import "../chunk-VYCOJKSX.js";
|
|
233
|
-
import "../chunk-
|
|
234
|
-
import "../chunk-
|
|
235
|
-
import "../chunk-J4EB7DNW.js";
|
|
233
|
+
import "../chunk-YIIW2OH2.js";
|
|
234
|
+
import "../chunk-VDX2J7OX.js";
|
|
236
235
|
import "../chunk-WEHSQBFR.js";
|
|
237
|
-
import "../chunk-
|
|
236
|
+
import "../chunk-DQEMWVMT.js";
|
|
237
|
+
import "../chunk-J4EB7DNW.js";
|
|
238
238
|
import "../chunk-BJMBJZ2Y.js";
|
|
239
239
|
import "../chunk-UKJAGEXH.js";
|
|
240
240
|
import "../chunk-FP2373TW.js";
|
|
@@ -321,9 +321,9 @@ import "../chunk-46EST7JO.js";
|
|
|
321
321
|
import "../chunk-G73MCJKL.js";
|
|
322
322
|
import "../chunk-A2IYSXDQ.js";
|
|
323
323
|
import "../chunk-B6O2YLUR.js";
|
|
324
|
-
import "../chunk-
|
|
324
|
+
import "../chunk-DAOMWGO2.js";
|
|
325
325
|
import "../chunk-RFYAYKTD.js";
|
|
326
|
-
import "../chunk-
|
|
326
|
+
import "../chunk-4MN27537.js";
|
|
327
327
|
import "../chunk-YRLHEEQT.js";
|
|
328
328
|
import "../chunk-FF4KLI5W.js";
|
|
329
329
|
import "../chunk-JN72EPOE.js";
|
|
@@ -4,8 +4,8 @@ import {
|
|
|
4
4
|
import "../chunk-2DL3OFLD.js";
|
|
5
5
|
import "../chunk-G4IAEX6D.js";
|
|
6
6
|
import "../chunk-765K3SAT.js";
|
|
7
|
-
import "../chunk-J4EB7DNW.js";
|
|
8
7
|
import "../chunk-WEHSQBFR.js";
|
|
8
|
+
import "../chunk-J4EB7DNW.js";
|
|
9
9
|
import "../chunk-UI3NYK34.js";
|
|
10
10
|
import "../chunk-GCGJW34D.js";
|
|
11
11
|
import "../chunk-PZ5AY32C.js";
|
package/dist/transfer/backup.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
backupMemoryDir
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-BXLOS5AJ.js";
|
|
4
4
|
import "../chunk-765K3SAT.js";
|
|
5
|
+
import "../chunk-DQEMWVMT.js";
|
|
5
6
|
import "../chunk-J4EB7DNW.js";
|
|
6
|
-
import "../chunk-X7Y7WX73.js";
|
|
7
7
|
import "../chunk-BJMBJZ2Y.js";
|
|
8
8
|
import "../chunk-UKJAGEXH.js";
|
|
9
9
|
import "../chunk-FP2373TW.js";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
exportCapsule,
|
|
3
3
|
isValidCapsuleSince
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-J4EB7DNW.js";
|
|
4
|
+
} from "../chunk-VDX2J7OX.js";
|
|
6
5
|
import "../chunk-WEHSQBFR.js";
|
|
7
|
-
import "../chunk-
|
|
6
|
+
import "../chunk-DQEMWVMT.js";
|
|
7
|
+
import "../chunk-J4EB7DNW.js";
|
|
8
8
|
import "../chunk-BJMBJZ2Y.js";
|
|
9
9
|
import "../chunk-UKJAGEXH.js";
|
|
10
10
|
import "../chunk-FP2373TW.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
importCapsule
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-VVX5PZFS.js";
|
|
4
4
|
import "../chunk-JPKK466T.js";
|
|
5
5
|
import "../chunk-XCB6QDL6.js";
|
|
6
6
|
import "../chunk-RBOJCG4T.js";
|
|
@@ -10,7 +10,7 @@ import "../chunk-6CIAGZ6X.js";
|
|
|
10
10
|
import "../chunk-C64XATK7.js";
|
|
11
11
|
import "../chunk-42JKGUFJ.js";
|
|
12
12
|
import "../chunk-WEHSQBFR.js";
|
|
13
|
-
import "../chunk-
|
|
13
|
+
import "../chunk-DQEMWVMT.js";
|
|
14
14
|
import "../chunk-BJMBJZ2Y.js";
|
|
15
15
|
import "../chunk-UKJAGEXH.js";
|
|
16
16
|
import "../chunk-FP2373TW.js";
|
|
@@ -4,24 +4,24 @@ import {
|
|
|
4
4
|
exportOkfBundle,
|
|
5
5
|
firstHeading,
|
|
6
6
|
parseIncludeStatus
|
|
7
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-25HSEIEM.js";
|
|
8
8
|
import {
|
|
9
9
|
OKF_EXPORT_VERSION
|
|
10
10
|
} from "../chunk-UJX4I26O.js";
|
|
11
11
|
import "../chunk-D24OXEPB.js";
|
|
12
12
|
import "../chunk-3UXOZBHV.js";
|
|
13
|
-
import "../chunk-
|
|
13
|
+
import "../chunk-RIP2AOZW.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-AIVRD66I.js";
|
|
18
|
+
import "../chunk-PLJ2MQFT.js";
|
|
19
|
+
import "../chunk-KVO2BTA4.js";
|
|
19
20
|
import "../chunk-CYEPCZN5.js";
|
|
20
21
|
import "../chunk-G6NQ3L4T.js";
|
|
21
22
|
import "../chunk-WPGR3RW4.js";
|
|
22
23
|
import "../chunk-6KTXE6A3.js";
|
|
23
24
|
import "../chunk-D7MAYFQP.js";
|
|
24
|
-
import "../chunk-KVO2BTA4.js";
|
|
25
25
|
import "../chunk-4O6WRBGE.js";
|
|
26
26
|
import "../chunk-GUMZC2BO.js";
|
|
27
27
|
import "../chunk-TFA6HPOA.js";
|
package/dist/verified-recall.js
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import {
|
|
2
2
|
compareVerifiedEpisodeResults,
|
|
3
3
|
searchVerifiedEpisodes
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-3QZRSEAM.js";
|
|
5
5
|
import "./chunk-B7RWBZXW.js";
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-RIP2AOZW.js";
|
|
7
7
|
import "./chunk-UHVXE24Y.js";
|
|
8
8
|
import "./chunk-46WM6JX2.js";
|
|
9
9
|
import "./chunk-D5F7TKMH.js";
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-AIVRD66I.js";
|
|
11
|
+
import "./chunk-PLJ2MQFT.js";
|
|
12
|
+
import "./chunk-KVO2BTA4.js";
|
|
12
13
|
import "./chunk-CYEPCZN5.js";
|
|
13
14
|
import "./chunk-G6NQ3L4T.js";
|
|
14
15
|
import "./chunk-WPGR3RW4.js";
|
|
15
16
|
import "./chunk-6KTXE6A3.js";
|
|
16
17
|
import "./chunk-D7MAYFQP.js";
|
|
17
|
-
import "./chunk-KVO2BTA4.js";
|
|
18
18
|
import "./chunk-4O6WRBGE.js";
|
|
19
19
|
import "./chunk-GUMZC2BO.js";
|
|
20
20
|
import "./chunk-TFA6HPOA.js";
|
package/dist/who-knows-cli.js
CHANGED
|
@@ -4,20 +4,20 @@ import {
|
|
|
4
4
|
renderWhoKnows,
|
|
5
5
|
renderWhoKnowsJson,
|
|
6
6
|
renderWhoKnowsText
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-7TTOX6NW.js";
|
|
8
|
+
import "./chunk-ETNC6TT6.js";
|
|
9
|
+
import "./chunk-RIP2AOZW.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-AIVRD66I.js";
|
|
14
|
+
import "./chunk-PLJ2MQFT.js";
|
|
15
|
+
import "./chunk-KVO2BTA4.js";
|
|
15
16
|
import "./chunk-CYEPCZN5.js";
|
|
16
17
|
import "./chunk-G6NQ3L4T.js";
|
|
17
18
|
import "./chunk-WPGR3RW4.js";
|
|
18
19
|
import "./chunk-6KTXE6A3.js";
|
|
19
20
|
import "./chunk-D7MAYFQP.js";
|
|
20
|
-
import "./chunk-KVO2BTA4.js";
|
|
21
21
|
import "./chunk-4O6WRBGE.js";
|
|
22
22
|
import "./chunk-GUMZC2BO.js";
|
|
23
23
|
import "./chunk-TFA6HPOA.js";
|
package/dist/who-knows.js
CHANGED
|
@@ -9,19 +9,19 @@ import {
|
|
|
9
9
|
loadWhoKnowsEntities,
|
|
10
10
|
tokenizeTopic,
|
|
11
11
|
validateWhoKnowsInput
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-ETNC6TT6.js";
|
|
13
|
+
import "./chunk-RIP2AOZW.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-AIVRD66I.js";
|
|
18
|
+
import "./chunk-PLJ2MQFT.js";
|
|
19
|
+
import "./chunk-KVO2BTA4.js";
|
|
19
20
|
import "./chunk-CYEPCZN5.js";
|
|
20
21
|
import "./chunk-G6NQ3L4T.js";
|
|
21
22
|
import "./chunk-WPGR3RW4.js";
|
|
22
23
|
import "./chunk-6KTXE6A3.js";
|
|
23
24
|
import "./chunk-D7MAYFQP.js";
|
|
24
|
-
import "./chunk-KVO2BTA4.js";
|
|
25
25
|
import "./chunk-4O6WRBGE.js";
|
|
26
26
|
import "./chunk-GUMZC2BO.js";
|
|
27
27
|
import "./chunk-TFA6HPOA.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@remnic/core",
|
|
3
|
-
"version": "9.69.
|
|
3
|
+
"version": "9.69.51",
|
|
4
4
|
"description": "Framework-agnostic Remnic memory engine — orchestrator, storage, extraction, search, trust zones",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -3307,7 +3307,7 @@
|
|
|
3307
3307
|
"core"
|
|
3308
3308
|
],
|
|
3309
3309
|
"peerDependencies": {
|
|
3310
|
-
"@remnic/coding-graph": "^9.69.
|
|
3310
|
+
"@remnic/coding-graph": "^9.69.51"
|
|
3311
3311
|
},
|
|
3312
3312
|
"peerDependenciesMeta": {
|
|
3313
3313
|
"@remnic/coding-graph": {
|
|
@@ -83,7 +83,20 @@ const TOOL_OUTPUT_SCHEMAS: Readonly<Record<string, Record<string, unknown>>> = {
|
|
|
83
83
|
query: T_STRING,
|
|
84
84
|
namespace: T_STRING,
|
|
85
85
|
context: T_STRING,
|
|
86
|
-
contextComposition: objectSchema({
|
|
86
|
+
contextComposition: objectSchema({
|
|
87
|
+
context: T_STRING,
|
|
88
|
+
footer: T_STRING,
|
|
89
|
+
degradation: objectSchema({
|
|
90
|
+
state: T_STRING,
|
|
91
|
+
reason: T_STRING,
|
|
92
|
+
detail: T_STRING,
|
|
93
|
+
budget: objectSchema({
|
|
94
|
+
contextBudget: T_NUMBER,
|
|
95
|
+
fullChars: T_NUMBER,
|
|
96
|
+
deliveredChars: T_NUMBER,
|
|
97
|
+
}),
|
|
98
|
+
}),
|
|
99
|
+
}),
|
|
87
100
|
count: T_NUMBER,
|
|
88
101
|
memoryIds: T_ARRAY,
|
|
89
102
|
results: T_ARRAY,
|
|
@@ -276,6 +276,9 @@ export async function assembleRecallResponse(
|
|
|
276
276
|
plannerMode: snapshot?.plannerMode ?? mode,
|
|
277
277
|
requestedMode: mode,
|
|
278
278
|
fallbackUsed: snapshot?.fallbackUsed ?? false,
|
|
279
|
+
...(effectiveComposition.degradation
|
|
280
|
+
? { degradation: effectiveComposition.degradation }
|
|
281
|
+
: {}),
|
|
279
282
|
};
|
|
280
283
|
const auditResult = await deps.auditAdapter.record(
|
|
281
284
|
resolvedAgentId || "__anonymous__",
|
|
@@ -10,6 +10,8 @@ import {
|
|
|
10
10
|
DIRECTORY_SIDECAR_MARKER,
|
|
11
11
|
findDirectorySidecarsForQuery,
|
|
12
12
|
loadDirectorySidecar,
|
|
13
|
+
parseDirectorySidecarsEnabled,
|
|
14
|
+
refreshDirectorySidecarsAfterWrite,
|
|
13
15
|
runDirectorySidecarMaintenance,
|
|
14
16
|
} from "./directory-sidecars.js";
|
|
15
17
|
import {
|
|
@@ -266,3 +268,120 @@ test("user-authored sidecar-named files are never clobbered or removed", async (
|
|
|
266
268
|
rmSync(root, { recursive: true, force: true });
|
|
267
269
|
}
|
|
268
270
|
});
|
|
271
|
+
|
|
272
|
+
test("parseDirectorySidecarsEnabled defaults off and rejects nothing silently", () => {
|
|
273
|
+
assert.equal(parseDirectorySidecarsEnabled(undefined), false);
|
|
274
|
+
assert.equal(parseDirectorySidecarsEnabled(null), false);
|
|
275
|
+
assert.equal(parseDirectorySidecarsEnabled(false), false);
|
|
276
|
+
assert.equal(parseDirectorySidecarsEnabled("false"), false);
|
|
277
|
+
assert.equal(parseDirectorySidecarsEnabled(0), false);
|
|
278
|
+
assert.equal(parseDirectorySidecarsEnabled(true), true);
|
|
279
|
+
assert.equal(parseDirectorySidecarsEnabled("true"), true);
|
|
280
|
+
assert.equal(parseDirectorySidecarsEnabled(1), true);
|
|
281
|
+
});
|
|
282
|
+
|
|
283
|
+
test("write-path refresh is a zero-write no-op when disabled", async () => {
|
|
284
|
+
const root = store();
|
|
285
|
+
try {
|
|
286
|
+
const written = await writeMemory(
|
|
287
|
+
root,
|
|
288
|
+
"facts/2026-01-02/fact-1.md",
|
|
289
|
+
"North dome shutter cycle completed.",
|
|
290
|
+
);
|
|
291
|
+
const report = await refreshDirectorySidecarsAfterWrite(root, written, false);
|
|
292
|
+
assert.deepEqual(report.written, []);
|
|
293
|
+
assert.deepEqual(report.removed, []);
|
|
294
|
+
assert.equal(await exists(path.join(root, "facts", "2026-01-02", DIRECTORY_SIDECAR_BASENAME)), false);
|
|
295
|
+
assert.equal(await exists(path.join(root, "facts", DIRECTORY_SIDECAR_BASENAME)), false);
|
|
296
|
+
} finally {
|
|
297
|
+
rmSync(root, { recursive: true, force: true });
|
|
298
|
+
}
|
|
299
|
+
});
|
|
300
|
+
|
|
301
|
+
test("write-path refresh populates the day sidecar and the parent abstract", async () => {
|
|
302
|
+
const root = store();
|
|
303
|
+
try {
|
|
304
|
+
const written = await writeMemory(
|
|
305
|
+
root,
|
|
306
|
+
"facts/2026-01-02/fact-1.md",
|
|
307
|
+
"Telescope calibration log for the north dome.",
|
|
308
|
+
);
|
|
309
|
+
const report = await refreshDirectorySidecarsAfterWrite(root, written, true);
|
|
310
|
+
const daySidecar = path.join(root, "facts", "2026-01-02", DIRECTORY_SIDECAR_BASENAME);
|
|
311
|
+
const parentSidecar = path.join(root, "facts", DIRECTORY_SIDECAR_BASENAME);
|
|
312
|
+
assert.ok(report.written.includes(daySidecar), "day sidecar written on the write path");
|
|
313
|
+
assert.ok(report.written.includes(parentSidecar), "parent sidecar written after the child");
|
|
314
|
+
assert.ok(
|
|
315
|
+
report.written.indexOf(daySidecar) < report.written.indexOf(parentSidecar),
|
|
316
|
+
"child sidecar written before parent (bottom-up)",
|
|
317
|
+
);
|
|
318
|
+
|
|
319
|
+
const day = await loadDirectorySidecar(path.join(root, "facts", "2026-01-02"), { refresh: false });
|
|
320
|
+
assert.equal(day?.fresh, true, "write-path reuse of fingerprints leaves the sidecar fresh");
|
|
321
|
+
assert.match(day?.overview ?? "", /Telescope calibration/);
|
|
322
|
+
|
|
323
|
+
const parent = await readFile(parentSidecar, "utf8");
|
|
324
|
+
assert.match(parent, /2026-01-02/);
|
|
325
|
+
assert.ok(parent.startsWith(DIRECTORY_SIDECAR_MARKER));
|
|
326
|
+
} finally {
|
|
327
|
+
rmSync(root, { recursive: true, force: true });
|
|
328
|
+
}
|
|
329
|
+
});
|
|
330
|
+
|
|
331
|
+
test("write-path refresh after delete updates the parent and prunes an emptied directory", async () => {
|
|
332
|
+
const root = store();
|
|
333
|
+
try {
|
|
334
|
+
const fact1 = await writeMemory(root, "facts/2026-01-02/fact-1.md", "First observation run.");
|
|
335
|
+
await writeMemory(root, "facts/2026-01-02/fact-2.md", "Second observation run.");
|
|
336
|
+
await refreshDirectorySidecarsAfterWrite(root, fact1, true);
|
|
337
|
+
|
|
338
|
+
rmSync(fact1);
|
|
339
|
+
const report = await refreshDirectorySidecarsAfterWrite(root, fact1, true);
|
|
340
|
+
const dayDir = path.join(root, "facts", "2026-01-02");
|
|
341
|
+
const daySidecar = await readFile(path.join(dayDir, DIRECTORY_SIDECAR_BASENAME), "utf8");
|
|
342
|
+
assert.doesNotMatch(daySidecar, /First observation/, "deleted child leaves the sidecar");
|
|
343
|
+
assert.match(daySidecar, /Second observation/);
|
|
344
|
+
assert.ok(report.written.some((p) => p === path.join(dayDir, DIRECTORY_SIDECAR_BASENAME)));
|
|
345
|
+
assert.ok(report.written.some((p) => p === path.join(root, "facts", DIRECTORY_SIDECAR_BASENAME)));
|
|
346
|
+
|
|
347
|
+
rmSync(path.join(dayDir, "fact-2.md"));
|
|
348
|
+
const pruned = await refreshDirectorySidecarsAfterWrite(root, path.join(dayDir, "fact-2.md"), true);
|
|
349
|
+
assert.ok(pruned.removed.some((p) => p === path.join(dayDir, DIRECTORY_SIDECAR_BASENAME)));
|
|
350
|
+
assert.equal(await exists(path.join(dayDir, DIRECTORY_SIDECAR_BASENAME)), false);
|
|
351
|
+
} finally {
|
|
352
|
+
rmSync(root, { recursive: true, force: true });
|
|
353
|
+
}
|
|
354
|
+
});
|
|
355
|
+
|
|
356
|
+
test("write-path refresh stays inside the changed namespace and skips unrelated categories", async () => {
|
|
357
|
+
const root = store();
|
|
358
|
+
try {
|
|
359
|
+
const alpha = await writeMemory(
|
|
360
|
+
root,
|
|
361
|
+
"namespaces/alpha/facts/2026-05-01/a-1.md",
|
|
362
|
+
"Alpha wing telescope mirror audit.",
|
|
363
|
+
);
|
|
364
|
+
await writeMemory(root, "namespaces/beta/facts/2026-05-01/b-1.md", "Beta wing spectrograph dark frames.");
|
|
365
|
+
await writeMemory(root, "entities/obs-1.md", "The north dome observer rotation schedule.");
|
|
366
|
+
|
|
367
|
+
const report = await refreshDirectorySidecarsAfterWrite(root, alpha, true);
|
|
368
|
+
assert.ok(
|
|
369
|
+
report.written.every((p) => p.includes(`${path.sep}namespaces${path.sep}alpha${path.sep}`)),
|
|
370
|
+
"write-path only touches the changed namespace ancestry",
|
|
371
|
+
);
|
|
372
|
+
assert.equal(
|
|
373
|
+
await exists(path.join(root, "namespaces", "beta", "facts", "2026-05-01", DIRECTORY_SIDECAR_BASENAME)),
|
|
374
|
+
false,
|
|
375
|
+
);
|
|
376
|
+
assert.equal(await exists(path.join(root, "entities", DIRECTORY_SIDECAR_BASENAME)), false);
|
|
377
|
+
|
|
378
|
+
const scoped = await loadDirectorySidecar(
|
|
379
|
+
path.join(root, "namespaces", "alpha", "facts", "2026-05-01"),
|
|
380
|
+
{ refresh: false },
|
|
381
|
+
);
|
|
382
|
+
assert.equal(scoped?.fresh, true);
|
|
383
|
+
assert.match(scoped?.overview ?? "", /telescope mirror/);
|
|
384
|
+
} finally {
|
|
385
|
+
rmSync(root, { recursive: true, force: true });
|
|
386
|
+
}
|
|
387
|
+
});
|