@remnic/core 1.1.30 → 9.3.515
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/abstraction-nodes.js +2 -2
- package/dist/access-cli.d.ts +1 -1
- package/dist/access-cli.js +156 -119
- package/dist/access-cli.js.map +1 -1
- package/dist/access-http.d.ts +9 -5
- package/dist/access-http.js +51 -51
- package/dist/access-idempotency.d.ts +2 -0
- package/dist/access-idempotency.js +1 -1
- package/dist/access-mcp.d.ts +16 -9
- package/dist/access-mcp.js +44 -44
- package/dist/access-schema.d.ts +47 -15
- package/dist/access-schema.js +8 -8
- package/dist/{access-service-B5hgZPCN.d.ts → access-service-qrrIrC-0.d.ts} +11 -129
- package/dist/access-service.d.ts +7 -4
- package/dist/access-service.js +40 -40
- package/dist/action-confidence.d.ts +1 -0
- package/dist/active-memory-bridge.d.ts +1 -0
- package/dist/active-memory-bridge.js +3 -2
- package/dist/active-recall.d.ts +1 -0
- package/dist/active-recall.js +14 -9
- package/dist/active-recall.js.map +1 -1
- package/dist/adapters/claude-code.d.ts +6 -2
- package/dist/adapters/claude-code.js +2 -2
- package/dist/adapters/codex.d.ts +5 -1
- package/dist/adapters/codex.js +2 -2
- package/dist/adapters/hermes.js +2 -2
- package/dist/adapters/index.js +6 -6
- package/dist/adapters/registry.js +6 -6
- package/dist/adapters/replit.d.ts +4 -2
- package/dist/adapters/replit.js +2 -2
- package/dist/adapters/types.d.ts +4 -0
- package/dist/adapters/types.js +1 -1
- package/dist/behavior-learner.d.ts +1 -0
- package/dist/behavior-signals.d.ts +1 -0
- package/dist/behavior-signals.js +1 -1
- package/dist/bootstrap.d.ts +5 -3
- package/dist/bootstrap.js +2 -2
- package/dist/boxes.d.ts +1 -0
- package/dist/boxes.js +1 -1
- package/dist/briefing.d.ts +1 -0
- package/dist/briefing.js +9 -9
- package/dist/buffer-surprise-report.d.ts +1 -0
- package/dist/buffer.d.ts +1 -0
- package/dist/buffer.js +2 -2
- package/dist/bulk-import/index.d.ts +28 -0
- package/dist/bulk-import/index.js +31 -0
- package/dist/calibration.d.ts +2 -0
- package/dist/calibration.js +50 -17
- package/dist/calibration.js.map +1 -1
- package/dist/{capsule-crypto-5CYAGVC5.js → capsule-crypto-7FJQINUR.js} +2 -2
- package/dist/{capsule-merge-4MGKE7C5.js → capsule-merge-T2JRE46P.js} +3 -3
- package/dist/causal-behavior.d.ts +1 -0
- package/dist/causal-behavior.js +4 -4
- package/dist/causal-chain.js +4 -4
- package/dist/causal-consolidation.d.ts +16 -1
- package/dist/causal-consolidation.js +115 -32
- package/dist/causal-consolidation.js.map +1 -1
- package/dist/causal-retrieval.js +14 -6
- package/dist/causal-retrieval.js.map +1 -1
- package/dist/causal-trajectory-graph.js +2 -2
- package/dist/causal-trajectory.js +2 -2
- package/dist/{chunk-SAZS2QZB.js → chunk-23UORJ4S.js} +3 -3
- package/dist/{chunk-76FLAAUC.js → chunk-2AN2L4NL.js} +17 -6
- package/dist/chunk-2AN2L4NL.js.map +1 -0
- package/dist/{chunk-W4L6CZKA.js → chunk-2DL3OFLD.js} +15 -10
- package/dist/chunk-2DL3OFLD.js.map +1 -0
- package/dist/{chunk-7OZ53EXP.js → chunk-2NLLXCJG.js} +21 -10
- package/dist/chunk-2NLLXCJG.js.map +1 -0
- package/dist/{chunk-PK7H5L6Y.js → chunk-2NM43EWN.js} +2 -2
- package/dist/{chunk-PYXS46O7.js → chunk-3BP57I6J.js} +2 -2
- package/dist/{chunk-FBYESMQ2.js → chunk-3C5RPJAX.js} +2 -2
- package/dist/{chunk-QKZGQIPJ.js → chunk-3Q4H3OBR.js} +171 -64
- package/dist/chunk-3Q4H3OBR.js.map +1 -0
- package/dist/{chunk-FKFMOY3N.js → chunk-42NQ7AVG.js} +3 -4
- package/dist/{chunk-FKFMOY3N.js.map → chunk-42NQ7AVG.js.map} +1 -1
- package/dist/chunk-4426WSWL.js +73 -0
- package/dist/chunk-4426WSWL.js.map +1 -0
- package/dist/{chunk-LIRZNNUP.js → chunk-44442YCH.js} +5 -2
- package/dist/chunk-44442YCH.js.map +1 -0
- package/dist/{chunk-H3ME6L6D.js → chunk-46GJIW5M.js} +23 -20
- package/dist/chunk-46GJIW5M.js.map +1 -0
- package/dist/{chunk-QDZ2RLEC.js → chunk-472U7RDF.js} +3 -3
- package/dist/chunk-472U7RDF.js.map +1 -0
- package/dist/{chunk-NN2DKE4T.js → chunk-4H5ZJHEN.js} +16 -3
- package/dist/{chunk-NN2DKE4T.js.map → chunk-4H5ZJHEN.js.map} +1 -1
- package/dist/{chunk-56K5QLHX.js → chunk-4HP7HIE3.js} +56 -13
- package/dist/chunk-4HP7HIE3.js.map +1 -0
- package/dist/{chunk-RK2Y4XOM.js → chunk-4JRRISLU.js} +9 -6
- package/dist/chunk-4JRRISLU.js.map +1 -0
- package/dist/{chunk-MG7NA5H3.js → chunk-4Q73JBSM.js} +17 -12
- package/dist/chunk-4Q73JBSM.js.map +1 -0
- package/dist/{chunk-XKLD5OK4.js → chunk-4RR6ROTB.js} +10 -11
- package/dist/chunk-4RR6ROTB.js.map +1 -0
- package/dist/{chunk-4KGVTPGD.js → chunk-6F6BXB7A.js} +9 -8
- package/dist/chunk-6F6BXB7A.js.map +1 -0
- package/dist/{chunk-NMZY542O.js → chunk-6URPAY2D.js} +41 -17
- package/dist/chunk-6URPAY2D.js.map +1 -0
- package/dist/{chunk-N53K2EXC.js → chunk-6VF75M3X.js} +2 -2
- package/dist/{chunk-XSZEP4SF.js → chunk-6XSPNR6L.js} +6 -5
- package/dist/chunk-6XSPNR6L.js.map +1 -0
- package/dist/{chunk-6H2TESSP.js → chunk-765K3SAT.js} +3 -3
- package/dist/{chunk-EDTHC6UD.js → chunk-77NAFXUD.js} +2 -2
- package/dist/{chunk-S7KDBTWT.js → chunk-7F7Z6MOS.js} +29 -14
- package/dist/chunk-7F7Z6MOS.js.map +1 -0
- package/dist/{chunk-MZH6EHNR.js → chunk-7H6CFEBJ.js} +41 -14
- package/dist/chunk-7H6CFEBJ.js.map +1 -0
- package/dist/{chunk-575RMLWN.js → chunk-7MV5CWTE.js} +26 -20
- package/dist/chunk-7MV5CWTE.js.map +1 -0
- package/dist/{chunk-MGKYQQYF.js → chunk-7Q3RCKAQ.js} +2 -2
- package/dist/chunk-7RXCMVFQ.js +27 -0
- package/dist/chunk-7RXCMVFQ.js.map +1 -0
- package/dist/{chunk-DGXUHMOV.js → chunk-A2IYSXDQ.js} +25 -6
- package/dist/chunk-A2IYSXDQ.js.map +1 -0
- package/dist/{chunk-EABGC2TL.js → chunk-A2Z6UCWT.js} +26 -4
- package/dist/chunk-A2Z6UCWT.js.map +1 -0
- package/dist/{chunk-3VAL7ZL2.js → chunk-A52AKD7C.js} +59 -24
- package/dist/chunk-A52AKD7C.js.map +1 -0
- package/dist/{chunk-5375UYTQ.js → chunk-A6D7A2FW.js} +4 -4
- package/dist/chunk-A6D7A2FW.js.map +1 -0
- package/dist/{chunk-FAAFWE4G.js → chunk-ALEPI75L.js} +24 -6
- package/dist/chunk-ALEPI75L.js.map +1 -0
- package/dist/{chunk-3SLRNYNG.js → chunk-AUDJPF4N.js} +15 -4
- package/dist/chunk-AUDJPF4N.js.map +1 -0
- package/dist/chunk-B5XMS73R.js +145 -0
- package/dist/chunk-B5XMS73R.js.map +1 -0
- package/dist/{chunk-HXXBL2KD.js → chunk-BECQDWBA.js} +44 -4
- package/dist/chunk-BECQDWBA.js.map +1 -0
- package/dist/{chunk-7SEAZFFB.js → chunk-BEUDU7Y4.js} +24 -4
- package/dist/chunk-BEUDU7Y4.js.map +1 -0
- package/dist/{chunk-XVVIG67A.js → chunk-BLZAVUD2.js} +61 -17
- package/dist/chunk-BLZAVUD2.js.map +1 -0
- package/dist/chunk-CHBI22MI.js +159 -0
- package/dist/chunk-CHBI22MI.js.map +1 -0
- package/dist/{chunk-GDFS42HT.js → chunk-CHCA44C3.js} +15 -8
- package/dist/chunk-CHCA44C3.js.map +1 -0
- package/dist/chunk-CINZGPSJ.js +22 -0
- package/dist/chunk-CINZGPSJ.js.map +1 -0
- package/dist/chunk-CMTINOFS.js +36 -0
- package/dist/chunk-CMTINOFS.js.map +1 -0
- package/dist/{chunk-34DQE4KF.js → chunk-CO7ZO4TU.js} +2 -2
- package/dist/{chunk-PFV5C235.js → chunk-CPPS65WS.js} +2 -1
- package/dist/{chunk-PFV5C235.js.map → chunk-CPPS65WS.js.map} +1 -1
- package/dist/{chunk-DINWEURR.js → chunk-CSKLPDN6.js} +20 -6
- package/dist/chunk-CSKLPDN6.js.map +1 -0
- package/dist/chunk-CWWMTTQE.js +566 -0
- package/dist/chunk-CWWMTTQE.js.map +1 -0
- package/dist/{chunk-IQT3XTKW.js → chunk-D24OXEPB.js} +13 -7
- package/dist/chunk-D24OXEPB.js.map +1 -0
- package/dist/{chunk-KRBK4BQH.js → chunk-D6WE5MTW.js} +272 -411
- package/dist/chunk-D6WE5MTW.js.map +1 -0
- package/dist/{chunk-WIICJPET.js → chunk-DEUNUKTD.js} +6 -4
- package/dist/{chunk-WIICJPET.js.map → chunk-DEUNUKTD.js.map} +1 -1
- package/dist/{chunk-ZYVPLJ4T.js → chunk-DHGSZ3UD.js} +9 -7
- package/dist/chunk-DHGSZ3UD.js.map +1 -0
- package/dist/{chunk-JR4ZC3G4.js → chunk-DLJ4IR6M.js} +91 -41
- package/dist/chunk-DLJ4IR6M.js.map +1 -0
- package/dist/{chunk-U4SCL7B7.js → chunk-DRD2Q7HQ.js} +82 -18
- package/dist/chunk-DRD2Q7HQ.js.map +1 -0
- package/dist/{chunk-2IWUMAES.js → chunk-E62SBGQ3.js} +28 -13
- package/dist/chunk-E62SBGQ3.js.map +1 -0
- package/dist/{chunk-C5BCH4ZS.js → chunk-EAZGEEG2.js} +21 -3
- package/dist/chunk-EAZGEEG2.js.map +1 -0
- package/dist/{chunk-TPB3I2AC.js → chunk-ECZU5BJH.js} +31 -10
- package/dist/chunk-ECZU5BJH.js.map +1 -0
- package/dist/{chunk-77H5NU3M.js → chunk-EDBEWFJO.js} +82 -18
- package/dist/chunk-EDBEWFJO.js.map +1 -0
- package/dist/chunk-EDQVAMQI.js +308 -0
- package/dist/chunk-EDQVAMQI.js.map +1 -0
- package/dist/{chunk-RRF5UOBJ.js → chunk-EI6V5UXY.js} +22 -15
- package/dist/chunk-EI6V5UXY.js.map +1 -0
- package/dist/{chunk-I5GLV3VE.js → chunk-EIPUHVKE.js} +31 -24
- package/dist/{chunk-I5GLV3VE.js.map → chunk-EIPUHVKE.js.map} +1 -1
- package/dist/{chunk-ZKSK55RC.js → chunk-ETUPBUHB.js} +2 -2
- package/dist/{chunk-25MQ7IHJ.js → chunk-EUML3N6B.js} +17 -6
- package/dist/chunk-EUML3N6B.js.map +1 -0
- package/dist/{chunk-5RGLBDQF.js → chunk-EVZFIAPG.js} +12 -12
- package/dist/chunk-EVZFIAPG.js.map +1 -0
- package/dist/{chunk-QRNI5JBH.js → chunk-EYIEWJNI.js} +2 -2
- package/dist/{chunk-3OWUCDKH.js → chunk-FER4WARO.js} +176 -42
- package/dist/chunk-FER4WARO.js.map +1 -0
- package/dist/{chunk-43PJZYGL.js → chunk-FPGE5NVO.js} +45 -10
- package/dist/chunk-FPGE5NVO.js.map +1 -0
- package/dist/{chunk-C6QPK5GG.js → chunk-FZZ2QTJI.js} +2 -2
- package/dist/{chunk-D46YSIYX.js → chunk-G3Z3QEF5.js} +19 -11
- package/dist/{chunk-D46YSIYX.js.map → chunk-G3Z3QEF5.js.map} +1 -1
- package/dist/{chunk-3JXBXXM2.js → chunk-G4IAEX6D.js} +2 -2
- package/dist/{chunk-MSWG7JI6.js → chunk-G56P5RLD.js} +8 -2
- package/dist/chunk-G56P5RLD.js.map +1 -0
- package/dist/{chunk-AGZQD76C.js → chunk-GCGJW34D.js} +48 -2
- package/dist/chunk-GCGJW34D.js.map +1 -0
- package/dist/chunk-H2NCNXMS.js +159 -0
- package/dist/chunk-H2NCNXMS.js.map +1 -0
- package/dist/{chunk-XYIK4LF6.js → chunk-H3FZVNRN.js} +8 -2
- package/dist/chunk-H3FZVNRN.js.map +1 -0
- package/dist/{chunk-TK4UEOSK.js → chunk-HDDRVXX4.js} +8 -8
- package/dist/chunk-HDDRVXX4.js.map +1 -0
- package/dist/{chunk-LLQ2LLWF.js → chunk-HENLZHIT.js} +15 -5
- package/dist/chunk-HENLZHIT.js.map +1 -0
- package/dist/{chunk-N2D6GXBM.js → chunk-HINSGUA7.js} +28 -20
- package/dist/chunk-HINSGUA7.js.map +1 -0
- package/dist/{chunk-APO3DCMU.js → chunk-HLAVGJ62.js} +30 -8
- package/dist/chunk-HLAVGJ62.js.map +1 -0
- package/dist/{chunk-TPMQ3G6Z.js → chunk-HOJZMQ4J.js} +2 -2
- package/dist/chunk-HOJZMQ4J.js.map +1 -0
- package/dist/{chunk-LUDTDZLK.js → chunk-HPWVAEET.js} +33 -7
- package/dist/chunk-HPWVAEET.js.map +1 -0
- package/dist/{chunk-NZL6GGQE.js → chunk-HQ6NIBL6.js} +92 -30
- package/dist/chunk-HQ6NIBL6.js.map +1 -0
- package/dist/{chunk-UWVJF25J.js → chunk-HWVTS5NO.js} +20 -6
- package/dist/chunk-HWVTS5NO.js.map +1 -0
- package/dist/{chunk-2WWLHTZY.js → chunk-IC4GELZE.js} +2 -2
- package/dist/{chunk-QA2ZAPBU.js → chunk-IPLYGWQF.js} +28 -20
- package/dist/chunk-IPLYGWQF.js.map +1 -0
- package/dist/{chunk-A6KTB5R6.js → chunk-IQ3OI2RR.js} +3 -3
- package/dist/chunk-IQ3OI2RR.js.map +1 -0
- package/dist/{chunk-6LVVDPJ4.js → chunk-J64TK33U.js} +3 -4
- package/dist/chunk-J64TK33U.js.map +1 -0
- package/dist/{chunk-6FC5EGNV.js → chunk-JBPKEARU.js} +15 -5
- package/dist/{chunk-6FC5EGNV.js.map → chunk-JBPKEARU.js.map} +1 -1
- package/dist/{chunk-RHY3HH7P.js → chunk-JFEKNTX7.js} +125 -33
- package/dist/chunk-JFEKNTX7.js.map +1 -0
- package/dist/{chunk-TZOLIGIG.js → chunk-JJEJJ7RK.js} +4 -2
- package/dist/chunk-JJEJJ7RK.js.map +1 -0
- package/dist/{chunk-PCUKNJAZ.js → chunk-JKV57BTN.js} +2 -2
- package/dist/{chunk-EJI5XIBB.js → chunk-JLNBQWZ2.js} +55 -7
- package/dist/chunk-JLNBQWZ2.js.map +1 -0
- package/dist/{chunk-XIG5PDM7.js → chunk-JUC24CTX.js} +8 -12
- package/dist/chunk-JUC24CTX.js.map +1 -0
- package/dist/{chunk-UL2NNBUL.js → chunk-JYIKKAK3.js} +106 -44
- package/dist/chunk-JYIKKAK3.js.map +1 -0
- package/dist/{chunk-OIGNEXKZ.js → chunk-K5O2QY6T.js} +5 -1
- package/dist/{chunk-OIGNEXKZ.js.map → chunk-K5O2QY6T.js.map} +1 -1
- package/dist/{chunk-ZTFCYYEZ.js → chunk-KCYE2MZM.js} +3 -3
- package/dist/chunk-KCYE2MZM.js.map +1 -0
- package/dist/{chunk-JWPLJLDU.js → chunk-KD3QD3A5.js} +2 -2
- package/dist/{chunk-JWPLJLDU.js.map → chunk-KD3QD3A5.js.map} +1 -1
- package/dist/{chunk-YRMVARQP.js → chunk-KFY3SGN7.js} +49 -2
- package/dist/chunk-KFY3SGN7.js.map +1 -0
- package/dist/{chunk-CYFQJMUV.js → chunk-KIB7SDIJ.js} +15 -10
- package/dist/chunk-KIB7SDIJ.js.map +1 -0
- package/dist/{chunk-3KW65B36.js → chunk-KILOTVIF.js} +95 -48
- package/dist/chunk-KILOTVIF.js.map +1 -0
- package/dist/{chunk-MXFBBHJU.js → chunk-KJMYHC7K.js} +10 -5
- package/dist/chunk-KJMYHC7K.js.map +1 -0
- package/dist/{chunk-W3LR522O.js → chunk-KM2A35EO.js} +36 -34
- package/dist/chunk-KM2A35EO.js.map +1 -0
- package/dist/{chunk-WELDCG6C.js → chunk-L227SKTB.js} +109 -36
- package/dist/chunk-L227SKTB.js.map +1 -0
- package/dist/{chunk-W6AQJ2PY.js → chunk-L7S47WZT.js} +35 -16
- package/dist/chunk-L7S47WZT.js.map +1 -0
- package/dist/{chunk-BVF3AGJP.js → chunk-LJBOVCQG.js} +26 -11
- package/dist/chunk-LJBOVCQG.js.map +1 -0
- package/dist/{chunk-2KI4QFHU.js → chunk-LMDRGRJ2.js} +2 -2
- package/dist/{chunk-MY6TPVXW.js → chunk-LMPHTYJC.js} +2 -2
- package/dist/{chunk-EHRTFRWW.js → chunk-LQHDIS7L.js} +10 -5
- package/dist/chunk-LQHDIS7L.js.map +1 -0
- package/dist/chunk-LUDUFZTV.js +170 -0
- package/dist/chunk-LUDUFZTV.js.map +1 -0
- package/dist/{chunk-5HRY2WRF.js → chunk-LZ3VEOU5.js} +2 -2
- package/dist/{chunk-Q7P4WJDP.js → chunk-M5T4Q2ZU.js} +1 -1
- package/dist/chunk-M5T4Q2ZU.js.map +1 -0
- package/dist/{chunk-ICRIXAP2.js → chunk-MC4FJXPA.js} +16 -6
- package/dist/chunk-MC4FJXPA.js.map +1 -0
- package/dist/{chunk-WPGJYVUH.js → chunk-MGVIEM2O.js} +23 -6
- package/dist/chunk-MGVIEM2O.js.map +1 -0
- package/dist/{chunk-OC7KHOOX.js → chunk-O27WNHTT.js} +22 -6
- package/dist/chunk-O27WNHTT.js.map +1 -0
- package/dist/{chunk-NGAVDO7E.js → chunk-OADWQ5CR.js} +2 -2
- package/dist/{chunk-2NMMFZ5T.js → chunk-OD4FM2U7.js} +6 -3
- package/dist/chunk-OD4FM2U7.js.map +1 -0
- package/dist/{chunk-OZHRDTDX.js → chunk-OKTXM5H4.js} +11 -1
- package/dist/chunk-OKTXM5H4.js.map +1 -0
- package/dist/{chunk-RXDLTSWT.js → chunk-ONPLNAPX.js} +16 -7
- package/dist/chunk-ONPLNAPX.js.map +1 -0
- package/dist/{chunk-FJ43PRLT.js → chunk-ORFGK3XI.js} +20 -14
- package/dist/chunk-ORFGK3XI.js.map +1 -0
- package/dist/{chunk-DOM4GKSW.js → chunk-OZKVVUJB.js} +3 -3
- package/dist/{chunk-MT4HVDUZ.js → chunk-PM3QHTFT.js} +3 -3
- package/dist/{chunk-4DWOBS2A.js → chunk-PRQJ5ESM.js} +27 -2
- package/dist/{chunk-4DWOBS2A.js.map → chunk-PRQJ5ESM.js.map} +1 -1
- package/dist/chunk-PU44GBL4.js +52 -0
- package/dist/chunk-PU44GBL4.js.map +1 -0
- package/dist/{chunk-MJFNCJXV.js → chunk-Q4CAQGKQ.js} +47 -9
- package/dist/chunk-Q4CAQGKQ.js.map +1 -0
- package/dist/{chunk-U3WSW6PZ.js → chunk-QMYXNM4P.js} +90 -35
- package/dist/chunk-QMYXNM4P.js.map +1 -0
- package/dist/{chunk-NBNN5GOB.js → chunk-QY7YA7OL.js} +11 -2
- package/dist/chunk-QY7YA7OL.js.map +1 -0
- package/dist/{chunk-QLLBRHAT.js → chunk-R26QUUQN.js} +181 -257
- package/dist/chunk-R26QUUQN.js.map +1 -0
- package/dist/{chunk-ZK7I7JYV.js → chunk-R3PS27B4.js} +7 -7
- package/dist/{chunk-TMQLARTH.js → chunk-RCTS5CKK.js} +33 -14
- package/dist/chunk-RCTS5CKK.js.map +1 -0
- package/dist/{chunk-2PRLKQAH.js → chunk-RLV3PQGH.js} +35 -19
- package/dist/chunk-RLV3PQGH.js.map +1 -0
- package/dist/{chunk-WW3QQF4H.js → chunk-ROZJACKP.js} +16 -1
- package/dist/chunk-ROZJACKP.js.map +1 -0
- package/dist/{chunk-7MNMYOFP.js → chunk-RSUYKGGZ.js} +3 -4
- package/dist/chunk-RSUYKGGZ.js.map +1 -0
- package/dist/{chunk-LT3NLYSI.js → chunk-RUZOJKNF.js} +10 -7
- package/dist/chunk-RUZOJKNF.js.map +1 -0
- package/dist/{chunk-326G7DJK.js → chunk-RW5DGAGO.js} +67 -13
- package/dist/chunk-RW5DGAGO.js.map +1 -0
- package/dist/{chunk-KOSORCJG.js → chunk-S53PKKWK.js} +63 -24
- package/dist/chunk-S53PKKWK.js.map +1 -0
- package/dist/{chunk-65PG43EQ.js → chunk-S7WU3Y3D.js} +21 -4
- package/dist/chunk-S7WU3Y3D.js.map +1 -0
- package/dist/{chunk-SKE7JYKA.js → chunk-SFXKHM7P.js} +2 -2
- package/dist/{chunk-HMDCOMYU.js → chunk-SKGV326D.js} +3 -3
- package/dist/chunk-T2PO5MUF.js +62 -0
- package/dist/chunk-T2PO5MUF.js.map +1 -0
- package/dist/{chunk-C7VW7C3F.js → chunk-TDKQGLJW.js} +3 -3
- package/dist/chunk-TDKQGLJW.js.map +1 -0
- package/dist/{chunk-3QKK7QOS.js → chunk-TERNBNJB.js} +3 -3
- package/dist/chunk-TERNBNJB.js.map +1 -0
- package/dist/{chunk-MXC3AP5I.js → chunk-TGQ2NTWH.js} +12 -7
- package/dist/chunk-TGQ2NTWH.js.map +1 -0
- package/dist/{chunk-3Y4P7RXM.js → chunk-TMSXWOBZ.js} +3 -4
- package/dist/chunk-TMSXWOBZ.js.map +1 -0
- package/dist/{chunk-3TNBOMQT.js → chunk-TVRN5QKH.js} +11 -11
- package/dist/{chunk-3TNBOMQT.js.map → chunk-TVRN5QKH.js.map} +1 -1
- package/dist/{chunk-5UM2VJ6D.js → chunk-UEY3VB6W.js} +2 -2
- package/dist/{chunk-I6K5FBRQ.js → chunk-UI3NYK34.js} +4 -1
- package/dist/{chunk-I6K5FBRQ.js.map → chunk-UI3NYK34.js.map} +1 -1
- package/dist/{chunk-VBJ7V5SK.js → chunk-UIPDNLXA.js} +21 -8
- package/dist/chunk-UIPDNLXA.js.map +1 -0
- package/dist/{chunk-GIF42EW3.js → chunk-UP6MOYCB.js} +3 -3
- package/dist/{chunk-K4FLSOR5.js → chunk-USYGGIJZ.js} +44 -15
- package/dist/chunk-USYGGIJZ.js.map +1 -0
- package/dist/{chunk-FIT6DMX6.js → chunk-UWY7GIVS.js} +152 -54
- package/dist/chunk-UWY7GIVS.js.map +1 -0
- package/dist/{chunk-MRILGULB.js → chunk-V2RCP53Q.js} +2 -2
- package/dist/{chunk-XKECPATV.js → chunk-VFUEZZBS.js} +113 -4
- package/dist/chunk-VFUEZZBS.js.map +1 -0
- package/dist/{chunk-FSFEQI74.js → chunk-W7L6HXUC.js} +2 -2
- package/dist/{chunk-3IQ2TR4N.js → chunk-WLEB7WCG.js} +2 -2
- package/dist/{chunk-GL6I6MEQ.js → chunk-WSGF57U2.js} +3 -3
- package/dist/{chunk-KNKUID7G.js → chunk-X7Y7WX73.js} +72 -6
- package/dist/chunk-X7Y7WX73.js.map +1 -0
- package/dist/{chunk-5NPGSAVB.js → chunk-XEKAG3FM.js} +23 -5
- package/dist/chunk-XEKAG3FM.js.map +1 -0
- package/dist/{chunk-3APJ5EVB.js → chunk-XKIQZXUB.js} +41 -26
- package/dist/chunk-XKIQZXUB.js.map +1 -0
- package/dist/chunk-XKXKSQU7.js +92 -0
- package/dist/chunk-XKXKSQU7.js.map +1 -0
- package/dist/{chunk-JA3AK3PT.js → chunk-XNLXAWHX.js} +4 -4
- package/dist/{chunk-CULXMQJH.js → chunk-XPXEJRUB.js} +3 -3
- package/dist/chunk-XPXEJRUB.js.map +1 -0
- package/dist/{chunk-PZIAX57I.js → chunk-XR6DNK4U.js} +7 -4
- package/dist/chunk-XR6DNK4U.js.map +1 -0
- package/dist/{chunk-47VWKCAF.js → chunk-XSQ4SGM5.js} +33 -4
- package/dist/chunk-XSQ4SGM5.js.map +1 -0
- package/dist/{chunk-66DHUKLO.js → chunk-XSWKORGM.js} +16 -14
- package/dist/chunk-XSWKORGM.js.map +1 -0
- package/dist/{chunk-QR3C7BKQ.js → chunk-XZ4WBBB5.js} +7 -8
- package/dist/chunk-XZ4WBBB5.js.map +1 -0
- package/dist/{chunk-WNARATI3.js → chunk-Y2SXZ5KZ.js} +59 -11
- package/dist/chunk-Y2SXZ5KZ.js.map +1 -0
- package/dist/{chunk-SIC6U3GZ.js → chunk-YHV3KRKS.js} +3 -3
- package/dist/{chunk-ZPKBYX2F.js → chunk-YNDLCWXS.js} +85 -9
- package/dist/chunk-YNDLCWXS.js.map +1 -0
- package/dist/{chunk-VLXA6PI2.js → chunk-YQMZ7IH2.js} +4 -4
- package/dist/{chunk-TMM4S4IJ.js → chunk-YR6GIWWY.js} +58 -8
- package/dist/chunk-YR6GIWWY.js.map +1 -0
- package/dist/{chunk-DK5LDEQM.js → chunk-YR7XMOWK.js} +39 -23
- package/dist/chunk-YR7XMOWK.js.map +1 -0
- package/dist/chunk-ZFXCQPNO.js +27 -0
- package/dist/chunk-ZFXCQPNO.js.map +1 -0
- package/dist/citations.js +1 -1
- package/dist/{cli-CJKI2JIe.d.ts → cli-X4NJoqSe.d.ts} +8 -31
- package/dist/cli.d.ts +10 -6
- package/dist/cli.js +122 -117
- package/dist/commitment-ledger.js +2 -2
- package/dist/compat/checks.js +1 -2
- package/dist/compounding/engine.d.ts +3 -2
- package/dist/compounding/engine.js +11 -11
- package/dist/compounding/preference-consolidator.d.ts +1 -0
- package/dist/compounding/preference-consolidator.js +8 -8
- package/dist/compounding/preference-consolidator.js.map +1 -1
- package/dist/compression-optimizer.d.ts +1 -0
- package/dist/compression-optimizer.js +1 -1
- package/dist/config.d.ts +1 -0
- package/dist/config.js +3 -2
- package/dist/connectors/codex-materialize-runner.d.ts +1 -0
- package/dist/connectors/codex-materialize-runner.js +12 -11
- package/dist/connectors/codex-materialize.d.ts +1 -0
- package/dist/connectors/codex-materialize.js +3 -2
- package/dist/connectors/index.d.ts +1 -0
- package/dist/connectors/index.js +14 -14
- package/dist/{connectors-cli-CwbyjGR7.d.ts → connectors-cli-DbTPNj2H.d.ts} +7 -1
- package/dist/connectors-cli.d.ts +1 -1
- package/dist/connectors-cli.js +3 -1
- package/dist/consolidation-provenance-check.d.ts +1 -0
- package/dist/consolidation-provenance-check.js +2 -2
- package/dist/consolidation-undo.d.ts +1 -0
- package/dist/consolidation-undo.js +1 -1
- package/dist/contradiction/index.d.ts +3 -1
- package/dist/contradiction/index.js +3 -3
- package/dist/{contradiction-review-ATP4S6IC.js → contradiction-review-6V2LXXK6.js} +2 -2
- package/dist/{contradiction-scan-5A4IDZV5.js → contradiction-scan-GIRVC4C7.js} +3 -3
- package/dist/conversation-index/backend.d.ts +3 -1
- package/dist/conversation-index/backend.js +3 -3
- package/dist/conversation-index/chunker.d.ts +1 -0
- package/dist/conversation-index/cleanup.js +1 -1
- package/dist/conversation-index/faiss-adapter.d.ts +2 -1
- package/dist/conversation-index/faiss-adapter.js +1 -1
- package/dist/conversation-index/indexer.d.ts +5 -2
- package/dist/conversation-index/indexer.js +1 -1
- package/dist/conversation-index/search.d.ts +2 -1
- package/dist/cross-namespace-budget.js +1 -1
- package/dist/cue-anchors.js +2 -2
- package/dist/dashboard-runtime.d.ts +6 -0
- package/dist/dashboard-runtime.js +3 -3
- package/dist/day-summary.d.ts +1 -0
- package/dist/day-summary.js +2 -2
- package/dist/delinearize.d.ts +1 -0
- package/dist/direct-answer-wiring.d.ts +1 -0
- package/dist/direct-answer.d.ts +1 -0
- package/dist/{dreams-ledger-LR2NBAZE.js → dreams-ledger-3WSCI5V4.js} +5 -4
- package/dist/{dreams-ledger-LR2NBAZE.js.map → dreams-ledger-3WSCI5V4.js.map} +1 -1
- package/dist/embedding-fallback.d.ts +3 -0
- package/dist/embedding-fallback.js +2 -2
- package/dist/enrichment/index.d.ts +1 -0
- package/dist/enrichment/index.js +1 -1
- package/dist/entity-retrieval.d.ts +2 -0
- package/dist/entity-retrieval.js +9 -9
- package/dist/entity-schema.d.ts +1 -0
- package/dist/evals.js +1 -1
- package/dist/explicit-capture.d.ts +5 -3
- package/dist/explicit-capture.js +2 -2
- package/dist/extraction-judge-telemetry.d.ts +2 -0
- package/dist/extraction-judge-training.d.ts +2 -0
- package/dist/extraction-judge.d.ts +2 -0
- package/dist/extraction.d.ts +2 -0
- package/dist/extraction.js +12 -12
- package/dist/{faiss-adapter-CzPghc4C.d.ts → faiss-adapter-BHecI1fF.d.ts} +4 -1
- package/dist/fallback-llm.d.ts +11 -1
- package/dist/fallback-llm.js +8 -6
- package/dist/{first-start-migration-4MHQEOSD.js → first-start-migration-CKTCTCQI.js} +5 -5
- package/dist/graph-dashboard-diff.d.ts +4 -0
- package/dist/graph-dashboard-diff.js +1 -1
- package/dist/graph-dashboard-parser.js +1 -1
- package/dist/{graph-edge-decay-5DI5GUNL.js → graph-edge-decay-MUP5J7CC.js} +6 -6
- package/dist/graph-events.js +1 -1
- package/dist/graph-snapshot.js +3 -3
- package/dist/graph.js +2 -2
- package/dist/harmonic-retrieval.js +4 -4
- package/dist/identity-continuity.d.ts +1 -0
- package/dist/importance.d.ts +1 -0
- package/dist/importers/index.d.ts +244 -0
- package/dist/importers/index.js +20 -0
- package/dist/index.d.ts +21 -351
- package/dist/index.js +886 -561
- package/dist/index.js.map +1 -1
- package/dist/intent.d.ts +1 -0
- package/dist/lcm/archive.d.ts +2 -2
- package/dist/lcm/archive.js +2 -2
- package/dist/lcm/engine.d.ts +3 -2
- package/dist/lcm/engine.js +6 -6
- package/dist/lcm/index.d.ts +1 -0
- package/dist/lcm/index.js +8 -8
- package/dist/lcm/recall.js +1 -1
- package/dist/lcm/summarizer.js +3 -3
- package/dist/lcm/tools.d.ts +1 -0
- package/dist/lifecycle.d.ts +1 -0
- package/dist/live-connectors-runner.d.ts +1 -0
- package/dist/live-connectors-runner.js +6 -6
- package/dist/local-llm.d.ts +1 -0
- package/dist/local-llm.js +2 -2
- package/dist/maintenance/archive-observations.js +1 -1
- package/dist/maintenance/memory-governance.d.ts +3 -1
- package/dist/maintenance/memory-governance.js +10 -8
- package/dist/maintenance/migrate-observations.js +3 -2
- package/dist/maintenance/observation-ledger-utils.d.ts +3 -0
- package/dist/maintenance/observation-ledger-utils.js +2 -1
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +2 -1
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +11 -8
- package/dist/maintenance/rebuild-memory-projection.d.ts +2 -1
- package/dist/maintenance/rebuild-memory-projection.js +13 -10
- package/dist/maintenance/rebuild-observations.d.ts +1 -0
- package/dist/maintenance/rebuild-observations.js +3 -2
- package/dist/mcp-memory-inspector-app.d.ts +7 -4
- package/dist/mcp-memory-inspector-app.js +1 -1
- package/dist/memory-action-policy.d.ts +1 -0
- package/dist/memory-cache.d.ts +1 -0
- package/dist/memory-cache.js +1 -1
- package/dist/memory-lifecycle-ledger-utils.d.ts +1 -0
- package/dist/memory-projection-store.d.ts +1 -0
- package/dist/memory-projection-store.js +1 -1
- package/dist/memory-provenance.d.ts +1 -0
- package/dist/memory-worth-outcomes.d.ts +1 -0
- package/dist/migrate/from-engram.js +2 -2
- package/dist/{migrate-from-identity-anchor-G27MCD6A.js → migrate-from-identity-anchor-EB4XI4Q2.js} +2 -2
- package/dist/model-registry.js +1 -1
- package/dist/models-json.d.ts +1 -0
- package/dist/namespaces/migrate.d.ts +3 -0
- package/dist/namespaces/migrate.js +24 -22
- package/dist/namespaces/principal.d.ts +1 -0
- package/dist/namespaces/principal.js +2 -1
- package/dist/namespaces/search.d.ts +1 -0
- package/dist/namespaces/search.js +15 -13
- package/dist/namespaces/storage.d.ts +4 -2
- package/dist/namespaces/storage.js +10 -9
- package/dist/native-knowledge.d.ts +1 -0
- package/dist/native-knowledge.js +1 -1
- package/dist/negative.js +1 -1
- package/dist/network/webdav.d.ts +16 -1
- package/dist/network/webdav.js +5 -3
- package/dist/objective-state-writers.js +4 -4
- package/dist/objective-state.js +2 -2
- package/dist/offline-sync.d.ts +8 -1
- package/dist/offline-sync.js +6 -4
- package/dist/operator-toolkit.d.ts +1 -0
- package/dist/operator-toolkit.js +35 -32
- package/dist/opik-exporter.js +1 -1
- package/dist/{orchestrator-DuWl9Hwx.d.ts → orchestrator-Co9nxRLF.d.ts} +4 -74
- package/dist/orchestrator.d.ts +5 -3
- package/dist/orchestrator.js +99 -96
- package/dist/page-versioning.js +1 -1
- package/dist/path-X2K5XCHL.js +9 -0
- package/dist/patterns-cli.d.ts +1 -0
- package/dist/peers/index.d.ts +328 -0
- package/dist/{peers-HCVGHMAE.js → peers/index.js} +4 -4
- package/dist/pipeline-D18UAKlN.d.ts +32 -0
- package/dist/plugin-entry-resolver.d.ts +9 -0
- package/dist/plugin-entry-resolver.js +8 -0
- package/dist/plugin-entry-resolver.js.map +1 -0
- package/dist/plugin-id.d.ts +2 -21
- package/dist/plugin-id.js +33 -4
- package/dist/plugin-id.js.map +1 -1
- package/dist/policy-runtime.d.ts +4 -0
- package/dist/policy-runtime.js +1 -1
- package/dist/profiling.js +1 -1
- package/dist/qmd-recall-cache.d.ts +1 -0
- package/dist/qmd.d.ts +1 -0
- package/dist/qmd.js +3 -3
- package/dist/recall-disclosure-escalation.d.ts +1 -0
- package/dist/recall-explain-renderer.d.ts +1 -0
- package/dist/recall-explain-renderer.js +3 -3
- package/dist/recall-state.d.ts +8 -1
- package/dist/recall-state.js +2 -1
- package/dist/recall-tag-filter.d.ts +1 -0
- package/dist/recall-xray-cli.d.ts +1 -0
- package/dist/recall-xray-cli.js +4 -4
- package/dist/recall-xray-renderer.d.ts +1 -0
- package/dist/recall-xray-renderer.js +3 -3
- package/dist/recall-xray.d.ts +1 -0
- package/dist/recall-xray.js +2 -2
- package/dist/relevance.d.ts +7 -1
- package/dist/relevance.js +2 -1
- package/dist/replay/normalizers/chatgpt.js +2 -2
- package/dist/replay/normalizers/claude.js +2 -2
- package/dist/replay/normalizers/openclaw.js +2 -2
- package/dist/replay/normalizers/shared.js +1 -1
- package/dist/replay/runner.js +1 -1
- package/dist/rerank.js +1 -1
- package/dist/{resolution-B7FNQSSP.js → resolution-ZY7VM6WS.js} +3 -3
- package/dist/resolution-ZY7VM6WS.js.map +1 -0
- package/dist/resolve-auth-token.d.ts +1 -0
- package/dist/resolve-auth-token.js +1 -1
- package/dist/resolve-provider-secret.d.ts +19 -29
- package/dist/resolve-provider-secret.js +2 -6
- package/dist/resume-bundles.js +10 -9
- package/dist/retrieval-agents.d.ts +2 -1
- package/dist/retrieval-agents.js +2 -1
- package/dist/retrieval-tiers.d.ts +1 -0
- package/dist/routing/engine.d.ts +1 -0
- package/dist/routing/store.d.ts +3 -0
- package/dist/routing/store.js +1 -1
- package/dist/runtime/env.js +1 -1
- package/dist/schemas.d.ts +213 -39
- package/dist/schemas.js +1 -1
- package/dist/sdk-compat.js +1 -1
- package/dist/search/document-scanner.js +1 -1
- package/dist/search/embed-helper.d.ts +7 -2
- package/dist/search/embed-helper.js +3 -1
- package/dist/search/factory.d.ts +2 -1
- package/dist/search/factory.js +13 -12
- package/dist/search/index.d.ts +2 -1
- package/dist/search/index.js +19 -18
- package/dist/search/lancedb-backend.d.ts +7 -6
- package/dist/search/lancedb-backend.js +4 -2
- package/dist/search/meilisearch-backend.d.ts +7 -6
- package/dist/search/meilisearch-backend.js +4 -2
- package/dist/search/noop-backend.d.ts +1 -0
- package/dist/search/orama-backend.d.ts +9 -7
- package/dist/search/orama-backend.js +8 -4
- package/dist/search/port.d.ts +1 -0
- package/dist/search/remote-backend.d.ts +1 -0
- package/dist/secure-store/index.d.ts +16 -3
- package/dist/secure-store/index.js +2 -2
- package/dist/{semantic-VwGI14Ok.d.ts → semantic-SLAa_prH.d.ts} +5 -3
- package/dist/semantic-consolidation.d.ts +1 -0
- package/dist/semantic-consolidation.js +14 -13
- package/dist/semantic-rule-promotion.js +8 -8
- package/dist/semantic-rule-verifier.d.ts +1 -0
- package/dist/semantic-rule-verifier.js +8 -8
- package/dist/session-integrity.d.ts +1 -0
- package/dist/session-integrity.js +1 -1
- package/dist/session-observer-bands.d.ts +1 -0
- package/dist/session-observer-state.d.ts +6 -1
- package/dist/session-observer-state.js +1 -1
- package/dist/shared-context/manager.d.ts +5 -0
- package/dist/shared-context/manager.js +3 -3
- package/dist/signal.d.ts +1 -0
- package/dist/signal.js +1 -1
- package/dist/source-attribution.js +1 -1
- package/dist/state-store-4QZISH3J.js +30 -0
- package/dist/state-store-4QZISH3J.js.map +1 -0
- package/dist/storage-C4DX8CuG.d.ts +157 -0
- package/dist/storage.d.ts +2 -0
- package/dist/storage.js +7 -7
- package/dist/store-contract.js +1 -1
- package/dist/summarizer.d.ts +1 -0
- package/dist/summarizer.js +7 -7
- package/dist/summary-snapshot.d.ts +1 -0
- package/dist/surfaces/dreams.js +48 -17
- package/dist/surfaces/dreams.js.map +1 -1
- package/dist/temporal-supersession.d.ts +1 -0
- package/dist/temporal-supersession.js +1 -1
- package/dist/temporal-validity.d.ts +1 -0
- package/dist/threading.d.ts +1 -0
- package/dist/tier-migration.d.ts +1 -0
- package/dist/tier-routing.d.ts +1 -0
- package/dist/{tier-stats-62ZVDFKS.js → tier-stats-SKML2OSF.js} +5 -5
- package/dist/tmt.js +1 -1
- package/dist/tokens.js +2 -2
- package/dist/topics.d.ts +1 -0
- package/dist/{trace-C5ETWBEF.js → trace-WM7V4CKI.js} +31 -1
- package/dist/trace-WM7V4CKI.js.map +1 -0
- package/dist/transcript.d.ts +1 -0
- package/dist/transcript.js +2 -2
- package/dist/transfer/autodetect.js +7 -7
- package/dist/transfer/backup.js +5 -5
- package/dist/transfer/capsule-export.js +5 -5
- package/dist/transfer/capsule-import.d.ts +6 -0
- package/dist/transfer/capsule-import.js +4 -4
- package/dist/transfer/export-json.js +3 -3
- package/dist/transfer/export-md.js +3 -3
- package/dist/transfer/export-sqlite.js +3 -3
- package/dist/transfer/fs-utils.d.ts +2 -1
- package/dist/transfer/fs-utils.js +5 -3
- package/dist/transfer/import-json.js +3 -3
- package/dist/transfer/import-md.js +3 -3
- package/dist/transfer/import-sqlite.js +3 -3
- package/dist/transfer/types.d.ts +12 -12
- package/dist/trust-zones.js +2 -2
- package/dist/types-B1VHaf2w.d.ts +126 -0
- package/dist/types-BliCnURB.d.ts +83 -0
- package/dist/types.d.ts +35 -0
- package/dist/types.js +1 -1
- package/dist/utility-learner.js +3 -3
- package/dist/utility-runtime.d.ts +1 -0
- package/dist/utility-runtime.js +4 -4
- package/dist/utility-telemetry.js +2 -2
- package/dist/verified-recall.js +9 -9
- package/dist/work/board.js +2 -2
- package/dist/work/boundary.js +1 -1
- package/dist/work/storage.d.ts +5 -0
- package/dist/work/storage.js +1 -1
- package/dist/work-product-ledger.js +2 -2
- package/package.json +74 -3
- package/scripts/ensure-better-sqlite3.mjs +8 -7
- package/scripts/faiss_index.py +141 -29
- package/src/access-cli.test.ts +87 -2
- package/src/access-cli.ts +59 -5
- package/src/access-http.test.ts +321 -0
- package/src/access-http.ts +201 -35
- package/src/access-idempotency.ts +136 -3
- package/src/access-mcp.test.ts +155 -0
- package/src/access-mcp.ts +116 -30
- package/src/access-schema.ts +22 -4
- package/src/access-service-project-tag.test.ts +37 -0
- package/src/access-service.ts +42 -10
- package/src/active-recall.test.ts +29 -1
- package/src/active-recall.ts +11 -7
- package/src/adapters/claude-code.ts +7 -8
- package/src/adapters/codex.ts +6 -7
- package/src/adapters/hermes.ts +1 -5
- package/src/adapters/registry.test.ts +63 -0
- package/src/adapters/registry.ts +10 -0
- package/src/adapters/replit.ts +5 -7
- package/src/adapters/types.ts +24 -1
- package/src/behavior-signals.ts +1 -1
- package/src/binary-lifecycle/backend.ts +16 -4
- package/src/binary-lifecycle/pipeline.test.ts +149 -0
- package/src/binary-lifecycle/pipeline.ts +49 -7
- package/src/binary-lifecycle/scanner.ts +19 -4
- package/src/boxes.ts +119 -32
- package/src/buffer-session.test.ts +28 -0
- package/src/buffer.ts +10 -14
- package/src/bulk-import/types.ts +10 -0
- package/src/calibration.test.ts +99 -0
- package/src/calibration.ts +57 -13
- package/src/causal-consolidation.test.ts +214 -0
- package/src/causal-consolidation.ts +131 -14
- package/src/causal-retrieval.ts +16 -3
- package/src/citations.test.ts +75 -0
- package/src/citations.ts +19 -6
- package/src/cli.ts +134 -109
- package/src/coding/coding-namespace.test.ts +7 -0
- package/src/coding/coding-namespace.ts +8 -0
- package/src/coding/review-context.test.ts +30 -0
- package/src/coding/review-context.ts +79 -9
- package/src/coding/wire-coding-context.test.ts +16 -0
- package/src/compat/checks.test.ts +33 -0
- package/src/compat/checks.ts +64 -4
- package/src/compounding/engine.ts +2 -2
- package/src/compounding/preference-consolidator.test.ts +47 -0
- package/src/compounding/preference-consolidator.ts +8 -8
- package/src/compression-optimizer.ts +5 -2
- package/src/config.test.ts +34 -2
- package/src/config.ts +62 -18
- package/src/connectors/codex-materialize-runner.ts +4 -3
- package/src/connectors/codex-materialize.ts +149 -34
- package/src/connectors/index.test.ts +144 -7
- package/src/connectors/index.ts +86 -15
- package/src/connectors/live/github.test.ts +47 -0
- package/src/connectors/live/github.ts +29 -1
- package/src/connectors/live/index.ts +2 -0
- package/src/connectors/live/live-connectors.test.ts +359 -73
- package/src/connectors/live/notion.test.ts +84 -0
- package/src/connectors/live/notion.ts +18 -1
- package/src/connectors/live/state-store.ts +419 -38
- package/src/connectors/weclone-installer.test.ts +16 -18
- package/src/connectors-cli.ts +19 -0
- package/src/console/trace.test.ts +28 -0
- package/src/console/trace.ts +42 -5
- package/src/contradiction/contradiction-judge.test.ts +49 -0
- package/src/contradiction/contradiction-judge.ts +15 -5
- package/src/contradiction/contradiction-review.ts +31 -7
- package/src/contradiction/contradiction-scan.ts +28 -18
- package/src/contradiction/contradiction.test.ts +237 -1
- package/src/contradiction/resolution.ts +43 -4
- package/src/conversation-index/backend.ts +13 -5
- package/src/conversation-index/cleanup.ts +25 -4
- package/src/conversation-index/faiss-adapter.ts +24 -15
- package/src/conversation-index/indexer.test.ts +71 -10
- package/src/conversation-index/indexer.ts +22 -3
- package/src/cross-namespace-budget.test.ts +59 -0
- package/src/cross-namespace-budget.ts +15 -7
- package/src/curation/index.ts +18 -17
- package/src/dashboard-runtime.test.ts +98 -0
- package/src/dashboard-runtime.ts +96 -6
- package/src/dedup/index.test.ts +133 -0
- package/src/dedup/index.ts +73 -10
- package/src/dedup/semantic.test.ts +77 -2
- package/src/dedup/semantic.ts +26 -6
- package/src/embedding-fallback.ts +47 -15
- package/src/enrichment/audit.ts +8 -1
- package/src/enrichment/pipeline.ts +21 -13
- package/src/enrichment/web-search-provider.ts +1 -6
- package/src/entity-retrieval.ts +57 -6
- package/src/evals.ts +22 -13
- package/src/explicit-capture.test.ts +40 -0
- package/src/explicit-capture.ts +14 -2
- package/src/extraction.ts +42 -30
- package/src/fallback-llm.ts +35 -2
- package/src/graph-dashboard-diff.test.ts +57 -0
- package/src/graph-dashboard-diff.ts +24 -2
- package/src/graph-dashboard-parser.test.ts +31 -0
- package/src/graph-dashboard-parser.ts +4 -1
- package/src/graph-events.ts +6 -4
- package/src/graph.test.ts +69 -0
- package/src/graph.ts +7 -4
- package/src/importers/base.test.ts +70 -0
- package/src/importers/base.ts +56 -7
- package/src/index.ts +6 -2
- package/src/lcm/archive.ts +65 -16
- package/src/lcm/engine.ts +27 -8
- package/src/lcm/recall.ts +5 -5
- package/src/lcm-engine.test.ts +87 -1
- package/src/lcm-recall.test.ts +71 -0
- package/src/live-connectors-runner.ts +100 -36
- package/src/maintenance/archive-observations.ts +24 -3
- package/src/maintenance/atomic-file.ts +85 -0
- package/src/maintenance/dreams-ledger.ts +15 -8
- package/src/maintenance/memory-governance.test.ts +53 -0
- package/src/maintenance/memory-governance.ts +15 -5
- package/src/maintenance/observation-ledger-utils.ts +6 -5
- package/src/maintenance/purge.test.ts +64 -0
- package/src/maintenance/rebuild-memory-lifecycle-ledger.ts +22 -9
- package/src/maintenance/rebuild-memory-projection.ts +22 -9
- package/src/maintenance/rebuild-observations.ts +7 -3
- package/src/mcp-memory-inspector-app.ts +26 -3
- package/src/memory-cache.test.ts +19 -0
- package/src/memory-cache.ts +1 -0
- package/src/memory-extension/codex-publisher.ts +25 -4
- package/src/memory-extension-host/host-discovery.test.ts +69 -0
- package/src/memory-extension-host/host-discovery.ts +63 -6
- package/src/memory-projection-store.ts +114 -62
- package/src/message-parts/index.ts +46 -31
- package/src/message-parts/message-parts.test.ts +77 -0
- package/src/migrate/from-engram.ts +68 -14
- package/src/model-registry.test.ts +38 -0
- package/src/model-registry.ts +12 -7
- package/src/namespaces/identity.test.ts +66 -0
- package/src/namespaces/identity.ts +23 -0
- package/src/namespaces/migrate.test.ts +62 -0
- package/src/namespaces/migrate.ts +82 -14
- package/src/namespaces/principal.test.ts +37 -1
- package/src/namespaces/principal.ts +18 -7
- package/src/namespaces/search.test.ts +76 -6
- package/src/namespaces/search.ts +22 -21
- package/src/namespaces/storage.ts +93 -11
- package/src/native-knowledge.ts +23 -3
- package/src/negative.ts +50 -5
- package/src/network/webdav.ts +177 -58
- package/src/offline-sync.ts +22 -11
- package/src/onboarding/index.test.ts +105 -0
- package/src/onboarding/index.ts +17 -5
- package/src/operator-toolkit.ts +39 -4
- package/src/orchestrator.ts +52 -17
- package/src/page-versioning.ts +31 -5
- package/src/peers/peers.test.ts +70 -0
- package/src/peers/storage.ts +32 -3
- package/src/plugin-entry-resolver.test.ts +60 -0
- package/src/plugin-entry-resolver.ts +48 -0
- package/src/plugin-id.test.ts +38 -0
- package/src/plugin-id.ts +31 -64
- package/src/policy-runtime.test.ts +75 -0
- package/src/policy-runtime.ts +32 -3
- package/src/procedural/procedure-miner.test.ts +152 -0
- package/src/procedural/procedure-miner.ts +124 -19
- package/src/profiling.test.ts +23 -0
- package/src/profiling.ts +10 -1
- package/src/projection/index.test.ts +253 -0
- package/src/projection/index.ts +159 -18
- package/src/qmd-client.test.ts +45 -0
- package/src/qmd.ts +8 -8
- package/src/recall-disclosure.test.ts +15 -1
- package/src/recall-state.ts +24 -5
- package/src/relevance.ts +24 -5
- package/src/replay/normalizers/chatgpt.ts +14 -4
- package/src/replay/normalizers/claude.ts +8 -3
- package/src/replay/normalizers/openclaw.ts +35 -12
- package/src/replay/normalizers/replay-normalizers.test.ts +65 -0
- package/src/replay/normalizers/shared.ts +4 -1
- package/src/replay/runner.ts +1 -1
- package/src/rerank.test.ts +41 -1
- package/src/rerank.ts +2 -2
- package/src/resolve-auth-token.test.ts +29 -0
- package/src/resolve-auth-token.ts +12 -7
- package/src/resolve-provider-secret.test.ts +78 -22
- package/src/resolve-provider-secret.ts +55 -223
- package/src/retrieval-agents.ts +51 -14
- package/src/review/index.test.ts +75 -1
- package/src/review/index.ts +88 -30
- package/src/routing/store.ts +36 -6
- package/src/runtime/env.test.ts +73 -0
- package/src/runtime/env.ts +7 -11
- package/src/schemas.ts +16 -1
- package/src/search/abort.ts +18 -0
- package/src/search/document-scanner.test.ts +80 -0
- package/src/search/document-scanner.ts +51 -9
- package/src/search/embed-helper.ts +19 -6
- package/src/search/factory.ts +9 -5
- package/src/search/lancedb-backend.ts +62 -22
- package/src/search/meilisearch-backend.ts +35 -12
- package/src/search/orama-backend.test.ts +27 -0
- package/src/search/orama-backend.ts +65 -15
- package/src/secure-store/cli-handlers.ts +70 -6
- package/src/secure-store/cli-renderer.ts +13 -7
- package/src/secure-store/secure-fs.ts +11 -5
- package/src/secure-store/secure-store.test.ts +70 -0
- package/src/semantic-consolidation.test.ts +45 -0
- package/src/semantic-consolidation.ts +3 -3
- package/src/session-integrity.test.ts +98 -0
- package/src/session-integrity.ts +51 -1
- package/src/session-observer-state.ts +108 -41
- package/src/shared-context/manager.ts +93 -15
- package/src/signal.test.ts +14 -0
- package/src/signal.ts +8 -1
- package/src/source-attribution.test.ts +8 -0
- package/src/source-attribution.ts +24 -2
- package/src/spaces/index.test.ts +93 -0
- package/src/spaces/index.ts +75 -9
- package/src/storage.ts +14 -1
- package/src/store-contract.test.ts +35 -0
- package/src/store-contract.ts +39 -5
- package/src/summarizer.ts +24 -18
- package/src/summary-snapshot.test.ts +77 -0
- package/src/surfaces/dreams.test.ts +73 -0
- package/src/surfaces/dreams.ts +53 -19
- package/src/sync/index.ts +42 -17
- package/src/taxonomy/taxonomy-loader.ts +43 -4
- package/src/temporal-supersession.test.ts +67 -0
- package/src/temporal-supersession.ts +8 -0
- package/src/tmt.test.ts +50 -0
- package/src/tmt.ts +35 -11
- package/src/tokens.test.ts +18 -0
- package/src/tokens.ts +7 -0
- package/src/training-export/converter.test.ts +55 -2
- package/src/training-export/converter.ts +36 -10
- package/src/training-export/registry.test.ts +17 -0
- package/src/training-export/registry.ts +19 -1
- package/src/transcript.ts +2 -2
- package/src/transfer/backup.ts +18 -7
- package/src/transfer/capsule-crypto.ts +105 -21
- package/src/transfer/capsule-encrypt.test.ts +106 -7
- package/src/transfer/capsule-export.ts +23 -14
- package/src/transfer/capsule-import.ts +11 -2
- package/src/transfer/exclusions.ts +7 -0
- package/src/transfer/export-sqlite.ts +14 -13
- package/src/transfer/fs-utils.ts +52 -1
- package/src/transfer/import-json.ts +12 -7
- package/src/transfer/import-md.ts +5 -5
- package/src/transfer/import-sqlite.ts +4 -5
- package/src/trust-zones.ts +1 -1
- package/src/types.ts +25 -0
- package/src/utility-telemetry.ts +1 -1
- package/src/utils/category-dir.test.ts +15 -0
- package/src/utils/category-dir.ts +3 -1
- package/src/work/boundary.ts +30 -18
- package/src/work/storage.ts +116 -38
- package/src/work-product-ledger.ts +1 -1
- package/dist/chunk-25MQ7IHJ.js.map +0 -1
- package/dist/chunk-2IWUMAES.js.map +0 -1
- package/dist/chunk-2NMMFZ5T.js.map +0 -1
- package/dist/chunk-2PRLKQAH.js.map +0 -1
- package/dist/chunk-326G7DJK.js.map +0 -1
- package/dist/chunk-3APJ5EVB.js.map +0 -1
- package/dist/chunk-3KW65B36.js.map +0 -1
- package/dist/chunk-3OWUCDKH.js.map +0 -1
- package/dist/chunk-3QKK7QOS.js.map +0 -1
- package/dist/chunk-3SLRNYNG.js.map +0 -1
- package/dist/chunk-3VAL7ZL2.js.map +0 -1
- package/dist/chunk-3Y4P7RXM.js.map +0 -1
- package/dist/chunk-43PJZYGL.js.map +0 -1
- package/dist/chunk-47VWKCAF.js.map +0 -1
- package/dist/chunk-4KGVTPGD.js.map +0 -1
- package/dist/chunk-5375UYTQ.js.map +0 -1
- package/dist/chunk-56K5QLHX.js.map +0 -1
- package/dist/chunk-575RMLWN.js.map +0 -1
- package/dist/chunk-5NPGSAVB.js.map +0 -1
- package/dist/chunk-5RGLBDQF.js.map +0 -1
- package/dist/chunk-65PG43EQ.js.map +0 -1
- package/dist/chunk-66DHUKLO.js.map +0 -1
- package/dist/chunk-6LVVDPJ4.js.map +0 -1
- package/dist/chunk-76FLAAUC.js.map +0 -1
- package/dist/chunk-77H5NU3M.js.map +0 -1
- package/dist/chunk-7MNMYOFP.js.map +0 -1
- package/dist/chunk-7OZ53EXP.js.map +0 -1
- package/dist/chunk-7SEAZFFB.js.map +0 -1
- package/dist/chunk-A6KTB5R6.js.map +0 -1
- package/dist/chunk-AGZQD76C.js.map +0 -1
- package/dist/chunk-APO3DCMU.js.map +0 -1
- package/dist/chunk-BVF3AGJP.js.map +0 -1
- package/dist/chunk-C5BCH4ZS.js.map +0 -1
- package/dist/chunk-C7VW7C3F.js.map +0 -1
- package/dist/chunk-CULXMQJH.js.map +0 -1
- package/dist/chunk-CYFQJMUV.js.map +0 -1
- package/dist/chunk-D654IBA6.js +0 -61
- package/dist/chunk-D654IBA6.js.map +0 -1
- package/dist/chunk-DGXUHMOV.js.map +0 -1
- package/dist/chunk-DINWEURR.js.map +0 -1
- package/dist/chunk-DK5LDEQM.js.map +0 -1
- package/dist/chunk-EABGC2TL.js.map +0 -1
- package/dist/chunk-EHRTFRWW.js.map +0 -1
- package/dist/chunk-EJI5XIBB.js.map +0 -1
- package/dist/chunk-FAAFWE4G.js.map +0 -1
- package/dist/chunk-FAJ7FZYM.js +0 -11
- package/dist/chunk-FAJ7FZYM.js.map +0 -1
- package/dist/chunk-FDU6HUUL.js +0 -147
- package/dist/chunk-FDU6HUUL.js.map +0 -1
- package/dist/chunk-FIT6DMX6.js.map +0 -1
- package/dist/chunk-FJ43PRLT.js.map +0 -1
- package/dist/chunk-FLTNHQK6.js +0 -262
- package/dist/chunk-FLTNHQK6.js.map +0 -1
- package/dist/chunk-GDFS42HT.js.map +0 -1
- package/dist/chunk-H3ME6L6D.js.map +0 -1
- package/dist/chunk-HXXBL2KD.js.map +0 -1
- package/dist/chunk-ICRIXAP2.js.map +0 -1
- package/dist/chunk-IQT3XTKW.js.map +0 -1
- package/dist/chunk-JR4ZC3G4.js.map +0 -1
- package/dist/chunk-K4FLSOR5.js.map +0 -1
- package/dist/chunk-KNKUID7G.js.map +0 -1
- package/dist/chunk-KOSORCJG.js.map +0 -1
- package/dist/chunk-KRBK4BQH.js.map +0 -1
- package/dist/chunk-LIRZNNUP.js.map +0 -1
- package/dist/chunk-LLQ2LLWF.js.map +0 -1
- package/dist/chunk-LPMVBPA3.js +0 -236
- package/dist/chunk-LPMVBPA3.js.map +0 -1
- package/dist/chunk-LT3NLYSI.js.map +0 -1
- package/dist/chunk-LUDTDZLK.js.map +0 -1
- package/dist/chunk-MG7NA5H3.js.map +0 -1
- package/dist/chunk-MJFNCJXV.js.map +0 -1
- package/dist/chunk-MSWG7JI6.js.map +0 -1
- package/dist/chunk-MXC3AP5I.js.map +0 -1
- package/dist/chunk-MXFBBHJU.js.map +0 -1
- package/dist/chunk-MZH6EHNR.js.map +0 -1
- package/dist/chunk-N2D6GXBM.js.map +0 -1
- package/dist/chunk-NBNN5GOB.js.map +0 -1
- package/dist/chunk-NMZY542O.js.map +0 -1
- package/dist/chunk-NZL6GGQE.js.map +0 -1
- package/dist/chunk-OC7KHOOX.js.map +0 -1
- package/dist/chunk-OZHRDTDX.js.map +0 -1
- package/dist/chunk-PZIAX57I.js.map +0 -1
- package/dist/chunk-Q7P4WJDP.js.map +0 -1
- package/dist/chunk-QA2ZAPBU.js.map +0 -1
- package/dist/chunk-QDZ2RLEC.js.map +0 -1
- package/dist/chunk-QKZGQIPJ.js.map +0 -1
- package/dist/chunk-QLLBRHAT.js.map +0 -1
- package/dist/chunk-QR3C7BKQ.js.map +0 -1
- package/dist/chunk-RHY3HH7P.js.map +0 -1
- package/dist/chunk-RK2Y4XOM.js.map +0 -1
- package/dist/chunk-RR2PKP3I.js +0 -63
- package/dist/chunk-RR2PKP3I.js.map +0 -1
- package/dist/chunk-RRF5UOBJ.js.map +0 -1
- package/dist/chunk-RXDLTSWT.js.map +0 -1
- package/dist/chunk-RYED3SPJ.js +0 -42
- package/dist/chunk-RYED3SPJ.js.map +0 -1
- package/dist/chunk-S7KDBTWT.js.map +0 -1
- package/dist/chunk-TK4UEOSK.js.map +0 -1
- package/dist/chunk-TMM4S4IJ.js.map +0 -1
- package/dist/chunk-TMQLARTH.js.map +0 -1
- package/dist/chunk-TPB3I2AC.js.map +0 -1
- package/dist/chunk-TPMQ3G6Z.js.map +0 -1
- package/dist/chunk-TZOLIGIG.js.map +0 -1
- package/dist/chunk-U3WSW6PZ.js.map +0 -1
- package/dist/chunk-U4SCL7B7.js.map +0 -1
- package/dist/chunk-U66YHYC7.js +0 -31
- package/dist/chunk-U66YHYC7.js.map +0 -1
- package/dist/chunk-UL2NNBUL.js.map +0 -1
- package/dist/chunk-UWVJF25J.js.map +0 -1
- package/dist/chunk-VBJ7V5SK.js.map +0 -1
- package/dist/chunk-W3LR522O.js.map +0 -1
- package/dist/chunk-W4L6CZKA.js.map +0 -1
- package/dist/chunk-W6AQJ2PY.js.map +0 -1
- package/dist/chunk-WELDCG6C.js.map +0 -1
- package/dist/chunk-WNARATI3.js.map +0 -1
- package/dist/chunk-WPGJYVUH.js.map +0 -1
- package/dist/chunk-WW3QQF4H.js.map +0 -1
- package/dist/chunk-XIG5PDM7.js.map +0 -1
- package/dist/chunk-XKECPATV.js.map +0 -1
- package/dist/chunk-XKLD5OK4.js.map +0 -1
- package/dist/chunk-XSZEP4SF.js.map +0 -1
- package/dist/chunk-XVVIG67A.js.map +0 -1
- package/dist/chunk-XYIK4LF6.js.map +0 -1
- package/dist/chunk-YRMVARQP.js.map +0 -1
- package/dist/chunk-ZPKBYX2F.js.map +0 -1
- package/dist/chunk-ZTFCYYEZ.js.map +0 -1
- package/dist/chunk-ZYVPLJ4T.js.map +0 -1
- package/dist/path-MR5JPYOP.js +0 -9
- package/dist/state-store-VZU2IA53.js +0 -16
- package/dist/trace-C5ETWBEF.js.map +0 -1
- /package/dist/{capsule-crypto-5CYAGVC5.js.map → bulk-import/index.js.map} +0 -0
- /package/dist/{contradiction-review-ATP4S6IC.js.map → capsule-crypto-7FJQINUR.js.map} +0 -0
- /package/dist/{capsule-merge-4MGKE7C5.js.map → capsule-merge-T2JRE46P.js.map} +0 -0
- /package/dist/{chunk-SAZS2QZB.js.map → chunk-23UORJ4S.js.map} +0 -0
- /package/dist/{chunk-PK7H5L6Y.js.map → chunk-2NM43EWN.js.map} +0 -0
- /package/dist/{chunk-PYXS46O7.js.map → chunk-3BP57I6J.js.map} +0 -0
- /package/dist/{chunk-FBYESMQ2.js.map → chunk-3C5RPJAX.js.map} +0 -0
- /package/dist/{chunk-N53K2EXC.js.map → chunk-6VF75M3X.js.map} +0 -0
- /package/dist/{chunk-6H2TESSP.js.map → chunk-765K3SAT.js.map} +0 -0
- /package/dist/{chunk-EDTHC6UD.js.map → chunk-77NAFXUD.js.map} +0 -0
- /package/dist/{chunk-MGKYQQYF.js.map → chunk-7Q3RCKAQ.js.map} +0 -0
- /package/dist/{chunk-34DQE4KF.js.map → chunk-CO7ZO4TU.js.map} +0 -0
- /package/dist/{chunk-ZKSK55RC.js.map → chunk-ETUPBUHB.js.map} +0 -0
- /package/dist/{chunk-QRNI5JBH.js.map → chunk-EYIEWJNI.js.map} +0 -0
- /package/dist/{chunk-C6QPK5GG.js.map → chunk-FZZ2QTJI.js.map} +0 -0
- /package/dist/{chunk-3JXBXXM2.js.map → chunk-G4IAEX6D.js.map} +0 -0
- /package/dist/{chunk-2WWLHTZY.js.map → chunk-IC4GELZE.js.map} +0 -0
- /package/dist/{chunk-PCUKNJAZ.js.map → chunk-JKV57BTN.js.map} +0 -0
- /package/dist/{chunk-2KI4QFHU.js.map → chunk-LMDRGRJ2.js.map} +0 -0
- /package/dist/{chunk-MY6TPVXW.js.map → chunk-LMPHTYJC.js.map} +0 -0
- /package/dist/{chunk-5HRY2WRF.js.map → chunk-LZ3VEOU5.js.map} +0 -0
- /package/dist/{chunk-NGAVDO7E.js.map → chunk-OADWQ5CR.js.map} +0 -0
- /package/dist/{chunk-DOM4GKSW.js.map → chunk-OZKVVUJB.js.map} +0 -0
- /package/dist/{chunk-MT4HVDUZ.js.map → chunk-PM3QHTFT.js.map} +0 -0
- /package/dist/{chunk-ZK7I7JYV.js.map → chunk-R3PS27B4.js.map} +0 -0
- /package/dist/{chunk-SKE7JYKA.js.map → chunk-SFXKHM7P.js.map} +0 -0
- /package/dist/{chunk-HMDCOMYU.js.map → chunk-SKGV326D.js.map} +0 -0
- /package/dist/{chunk-5UM2VJ6D.js.map → chunk-UEY3VB6W.js.map} +0 -0
- /package/dist/{chunk-GIF42EW3.js.map → chunk-UP6MOYCB.js.map} +0 -0
- /package/dist/{chunk-MRILGULB.js.map → chunk-V2RCP53Q.js.map} +0 -0
- /package/dist/{chunk-FSFEQI74.js.map → chunk-W7L6HXUC.js.map} +0 -0
- /package/dist/{chunk-3IQ2TR4N.js.map → chunk-WLEB7WCG.js.map} +0 -0
- /package/dist/{chunk-GL6I6MEQ.js.map → chunk-WSGF57U2.js.map} +0 -0
- /package/dist/{chunk-JA3AK3PT.js.map → chunk-XNLXAWHX.js.map} +0 -0
- /package/dist/{chunk-SIC6U3GZ.js.map → chunk-YHV3KRKS.js.map} +0 -0
- /package/dist/{chunk-VLXA6PI2.js.map → chunk-YQMZ7IH2.js.map} +0 -0
- /package/dist/{contradiction-scan-5A4IDZV5.js.map → contradiction-review-6V2LXXK6.js.map} +0 -0
- /package/dist/{migrate-from-identity-anchor-G27MCD6A.js.map → contradiction-scan-GIRVC4C7.js.map} +0 -0
- /package/dist/{first-start-migration-4MHQEOSD.js.map → first-start-migration-CKTCTCQI.js.map} +0 -0
- /package/dist/{graph-edge-decay-5DI5GUNL.js.map → graph-edge-decay-MUP5J7CC.js.map} +0 -0
- /package/dist/{path-MR5JPYOP.js.map → importers/index.js.map} +0 -0
- /package/dist/{peers-HCVGHMAE.js.map → migrate-from-identity-anchor-EB4XI4Q2.js.map} +0 -0
- /package/dist/{resolution-B7FNQSSP.js.map → path-X2K5XCHL.js.map} +0 -0
- /package/dist/{state-store-VZU2IA53.js.map → peers/index.js.map} +0 -0
- /package/dist/{tier-stats-62ZVDFKS.js.map → tier-stats-SKML2OSF.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/console/trace.ts"],"sourcesContent":["/**\n * Trace recording + replay for the operator console (issue #688 PR 3/3).\n *\n * This module is the I/O layer that bridges the live console surface\n * (PR 2/3, `runConsoleTui`) with an offline replay mode. Operators can:\n *\n * - `remnic console --record-trace <path>`: append every refresh\n * cycle's `ConsoleStateSnapshot` to a JSONL file at `<path>` (one\n * snapshot per line), so the engine state can be reviewed later.\n *\n * - `remnic console --trace <path> [--speed N]`: read the JSONL file\n * frame-by-frame, recompute the inter-frame delay from the\n * captured `capturedAt` timestamps (divided by `speed`), and feed\n * each frame into the same `renderFrame` function the live TUI\n * uses. EOF exits cleanly.\n *\n * Design contract:\n * - Replay reuses `renderFrame` (NOT a parallel reimplementation).\n * Live and replay must look identical for the same snapshot.\n * - Replay is fully sandboxed: no orchestrator instance is required,\n * no filesystem reads beyond the trace file itself.\n * - Recording is cheap: one `JSON.stringify` + a single\n * `\\n`-delimited append per snapshot. A failed write logs once and\n * disables further writes; the live loop must NOT crash.\n * - Speed multiplier `N`: positive finite. `N=2` halves the delay,\n * `N=0.5` doubles it. `Infinity` is permitted and means \"no\n * delay\" (back-to-back frames).\n */\n\nimport { promises as fs } from \"node:fs\";\nimport path from \"node:path\";\nimport readline from \"node:readline\";\nimport { createReadStream } from \"node:fs\";\nimport type { Writable } from \"node:stream\";\n\nimport { renderFrame } from \"./tui.js\";\nimport type { ConsoleStateSnapshot } from \"./state.js\";\n\n/** ANSI: clear screen + move cursor to home (top-left). Same constant the TUI uses. */\nconst ANSI_CLEAR_HOME = \"\\x1b[2J\\x1b[H\";\n/** ANSI: hide / show the cursor during replay. */\nconst ANSI_HIDE_CURSOR = \"\\x1b[?25l\";\nconst ANSI_SHOW_CURSOR = \"\\x1b[?25h\";\n\n/**\n * Default delay (ms) used when the trace file has fewer than two\n * frames OR the captured timestamps don't yield a valid delta. Mirrors\n * the live TUI's default refresh interval for visual consistency.\n */\nconst DEFAULT_REPLAY_DELAY_MS = 2000;\n\n/**\n * Maximum allowed delay between replay frames. A pathological trace\n * with hour-long gaps would otherwise stall replay indefinitely; cap\n * at one minute so a tester running `--trace` always sees progress.\n */\nconst MAX_REPLAY_DELAY_MS = 60_000;\n\n/** Minimum delay between replay frames (ms) — prevents starving the loop. */\nconst MIN_REPLAY_DELAY_MS = 0;\n\nexport interface TraceRecorder {\n /**\n * Append a snapshot to the trace file. Returns a promise that\n * resolves once the line is flushed. Errors are surfaced via\n * `getLastError()` rather than thrown — the live TUI must never\n * crash because tracing failed.\n */\n append: (snapshot: ConsoleStateSnapshot) => Promise<void>;\n /**\n * Close the underlying file handle. Idempotent.\n *\n * The optional `signal` parameter is forwarded from\n * `flushWithTimeout` when the deadline wins the race. When the\n * signal fires, the pending write-chain drain is abandoned and the\n * file handle is closed immediately, releasing OS resources instead\n * of leaving the handle open until the orphaned writeChain resolves.\n */\n close: (signal?: AbortSignal) => Promise<void>;\n /** Returns the most recent error (or null) without throwing. */\n getLastError: () => string | null;\n}\n\nexport interface OpenTraceRecorderOptions {\n /**\n * If true (default), `path` is created with `mkdir -p` on its\n * parent directory before the first append. Set to false in tests\n * that pre-create the parent.\n */\n ensureParentDir?: boolean;\n}\n\n/**\n * Open (create or append to) a JSONL trace recorder at `filePath`.\n * Each call to `recorder.append(snapshot)` writes\n * `JSON.stringify(snapshot) + \"\\n\"`. Concurrent appends are\n * serialized through an internal write chain so partial-line\n * interleaving cannot occur.\n */\nexport async function openTraceRecorder(\n filePath: string,\n options: OpenTraceRecorderOptions = {},\n): Promise<TraceRecorder> {\n const ensureParentDir = options.ensureParentDir ?? true;\n if (ensureParentDir) {\n const parent = path.dirname(filePath);\n if (parent && parent !== \".\" && parent !== \"/\") {\n await fs.mkdir(parent, { recursive: true });\n }\n }\n const handle = await fs.open(filePath, \"a\");\n let closed = false;\n let lastError: string | null = null;\n // Codex P0 (Common Gotcha #40): a serialized promise chain without\n // `.catch()` recovery permanently poisons the chain after the first\n // I/O error. Use `queueWrite` — it surfaces the error to the caller\n // AND restores the chain to a resolved state for the next caller.\n let writeChain: Promise<void> = Promise.resolve();\n const queueWrite = (line: string): Promise<void> => {\n const next = writeChain.then(async () => {\n if (closed) return;\n try {\n await handle.write(line);\n } catch (err) {\n const msg = describeError(err);\n lastError = msg;\n // Re-throw so the caller's awaiter sees the failure, but\n // recover the chain below so the next append can still run.\n throw err;\n }\n });\n writeChain = next.catch(() => {\n // Recovery: reset the chain so a single transient failure does\n // not poison every subsequent append. The original error is\n // already captured in `lastError` AND was surfaced to the\n // caller via the awaited `next` promise above.\n });\n return next;\n };\n return {\n append: async (snapshot: ConsoleStateSnapshot) => {\n if (closed) return;\n let line: string;\n try {\n line = JSON.stringify(snapshot) + \"\\n\";\n } catch (err) {\n // A non-serializable snapshot is a bug, not a runtime\n // condition we should crash on. Record + skip.\n lastError = `serialize failed: ${describeError(err)}`;\n return;\n }\n try {\n await queueWrite(line);\n } catch {\n // already captured in lastError via queueWrite\n }\n },\n close: async (signal?: AbortSignal) => {\n if (closed) return;\n // Codex P1: do NOT set `closed = true` before draining. Each\n // queued write begins with `if (closed) return;`, so flipping the\n // flag first would silently drop frames that callers already\n // queued via `append()`. Drain the existing chain first so every\n // already-queued write executes against the still-open handle,\n // THEN flip `closed` to reject any further appends, THEN close\n // the file handle. This honors the documented \"drain pending\n // writes\" contract of `close()`.\n //\n // Codex P1 (PR #732 round 5): when `flushWithTimeout` races the\n // drain against a deadline and the timeout wins, it fires the\n // `signal` passed here. We race the writeChain drain against that\n // signal so the file handle is closed promptly instead of being\n // held open until the orphaned writeChain eventually resolves.\n try {\n if (signal) {\n await Promise.race([\n writeChain,\n new Promise<void>((_, reject) => {\n if (signal.aborted) {\n reject(makeAbortError());\n return;\n }\n signal.addEventListener(\"abort\", () => reject(makeAbortError()), {\n once: true,\n });\n }),\n ]);\n } else {\n await writeChain;\n }\n } catch {\n // ignore — abort or I/O error already in lastError\n }\n closed = true;\n try {\n await handle.close();\n } catch (err) {\n lastError = describeError(err);\n }\n },\n getLastError: () => lastError,\n };\n}\n\nexport interface ReplayTraceOptions {\n /** Output stream. Defaults to `process.stdout`. */\n output?: Writable;\n /**\n * Speed multiplier. `1` = original cadence, `2` = twice as fast,\n * `0.5` = half speed. `Infinity` is permitted and means \"no\n * delay\" (back-to-back frames). Defaults to 1.\n */\n speed?: number;\n /**\n * Override the inter-frame delay function — primarily for tests so\n * we can swap `setTimeout` for an instant resolver. The function\n * receives the *raw* (already-speed-adjusted) delay in ms.\n */\n sleep?: (ms: number) => Promise<void>;\n /**\n * Hide / show the terminal cursor during replay. Defaults to true.\n * Tests typically pass false so they don't pollute captured output\n * with cursor-control escapes.\n */\n manageCursor?: boolean;\n /**\n * Optional clock injection — feeds `renderFrame`'s \"current time\"\n * value during replay. By default, replay uses the snapshot's own\n * `capturedAt` so the rendered timestamp matches the original\n * frame. Tests override this for determinism.\n */\n now?: (snapshot: ConsoleStateSnapshot, frameIndex: number) => number;\n /**\n * Abort signal. If aborted mid-replay, the loop exits cleanly at\n * the next frame boundary.\n */\n signal?: AbortSignal;\n}\n\nexport interface ReplayTraceResult {\n /** Total frames rendered. */\n framesRendered: number;\n /** Frames skipped because they could not be parsed. */\n framesSkipped: number;\n /** Last snapshot that was rendered, or null if the file was empty. */\n lastSnapshot: ConsoleStateSnapshot | null;\n}\n\n/**\n * Replay a JSONL trace file frame-by-frame. Each line is parsed,\n * optionally renders via `renderFrame`, then waits the speed-adjusted\n * delay before the next frame. Returns once EOF is reached or the\n * abort signal fires.\n */\nexport async function replayTrace(\n filePath: string,\n options: ReplayTraceOptions = {},\n): Promise<ReplayTraceResult> {\n const output: Writable = options.output ?? process.stdout;\n const speed = normalizeSpeed(options.speed);\n // Codex P2 (PR #732 follow-up): the default sleeper now uses\n // `sleepAbortable` which REJECTS with `AbortError` on signal abort\n // (rather than resolving silently). The replay loop catches the\n // AbortError and exits cleanly. Custom `sleep` implementations are\n // responsible for their own abort wiring; if they reject with an\n // AbortError-shaped error the loop will treat it as a clean exit.\n const sleep =\n options.sleep ?? ((ms: number) => sleepAbortable(ms, options.signal));\n const manageCursor = options.manageCursor ?? true;\n const nowFn =\n options.now ??\n ((snapshot: ConsoleStateSnapshot) => {\n const ms = Date.parse(snapshot.capturedAt);\n return Number.isFinite(ms) ? ms : Date.now();\n });\n\n const stream = createReadStream(filePath, { encoding: \"utf-8\" });\n const rl = readline.createInterface({ input: stream, crlfDelay: Infinity });\n\n let framesRendered = 0;\n let framesSkipped = 0;\n let lastSnapshot: ConsoleStateSnapshot | null = null;\n let prevCapturedMs: number | null = null;\n\n if (manageCursor) safeWrite(output, ANSI_HIDE_CURSOR);\n\n try {\n for await (const rawLine of rl) {\n if (options.signal?.aborted) break;\n const line = rawLine.trim();\n if (line.length === 0) continue;\n const snapshot = parseSnapshotLine(line);\n if (snapshot === null) {\n framesSkipped += 1;\n continue;\n }\n\n // Compute the inter-frame delay from the captured timestamps.\n // The first frame paints immediately; subsequent frames wait\n // `(this.capturedAt - prev.capturedAt) / speed`.\n const capturedMs = Date.parse(snapshot.capturedAt);\n let waitMs = 0;\n if (prevCapturedMs !== null && Number.isFinite(capturedMs)) {\n const rawDelta = capturedMs - prevCapturedMs;\n waitMs = computeReplayDelay(rawDelta, speed);\n } else if (prevCapturedMs !== null) {\n // No usable timestamp on this frame — fall back to the\n // default refresh interval (also speed-adjusted).\n waitMs = computeReplayDelay(DEFAULT_REPLAY_DELAY_MS, speed);\n }\n if (waitMs > 0) {\n try {\n await sleep(waitMs);\n } catch (err) {\n // Codex P2 (PR #732 follow-up): `sleepAbortable` rejects\n // with AbortError when SIGINT fires mid-sleep. Treat any\n // AbortError-shaped rejection as a clean early exit so\n // Ctrl-C does not have to wait for the current `setTimeout`\n // to elapse. Re-throw any other error so genuine bugs\n // surface.\n if (isAbortError(err) || options.signal?.aborted) break;\n throw err;\n }\n if (options.signal?.aborted) break;\n }\n\n let frame: string;\n try {\n frame = renderFrame({\n snapshot,\n renderError: null,\n now: () => nowFn(snapshot, framesRendered),\n });\n } catch (err) {\n // Mirror the live loop's renderer-failure recovery: emit a\n // minimal error frame and keep replaying.\n frame = `remnic console replay: render failed: ${describeError(err)}\\n`;\n }\n safeWrite(output, ANSI_CLEAR_HOME);\n safeWrite(output, frame);\n\n framesRendered += 1;\n lastSnapshot = snapshot;\n if (Number.isFinite(capturedMs)) prevCapturedMs = capturedMs;\n }\n } finally {\n rl.close();\n stream.close();\n if (manageCursor) safeWrite(output, ANSI_SHOW_CURSOR);\n }\n\n return { framesRendered, framesSkipped, lastSnapshot };\n}\n\n/**\n * Parse a single JSONL line into a `ConsoleStateSnapshot`. Returns\n * null for malformed lines so the replay loop can keep going. We\n * validate the minimum nested shape the renderer dereferences. The trace file\n * format is best-effort, but partial objects are skipped rather than counted as\n * rendered frames that only display renderer failures.\n */\nexport function parseSnapshotLine(line: string): ConsoleStateSnapshot | null {\n let parsed: unknown;\n try {\n parsed = JSON.parse(line);\n } catch {\n return null;\n }\n // Common Gotcha #18: JSON.parse('null') succeeds but null is not a\n // valid snapshot. Always check the result type.\n if (typeof parsed !== \"object\" || parsed === null || Array.isArray(parsed)) {\n return null;\n }\n if (!isConsoleStateSnapshot(parsed)) {\n return null;\n }\n return parsed;\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\nfunction isConsoleStateSnapshot(value: unknown): value is ConsoleStateSnapshot {\n if (!isRecord(value)) return false;\n if (typeof value.capturedAt !== \"string\") return false;\n\n const bufferState = value.bufferState;\n if (!isRecord(bufferState)) return false;\n if (typeof bufferState.turnsCount !== \"number\") return false;\n if (typeof bufferState.byteCount !== \"number\") return false;\n\n const extractionQueue = value.extractionQueue;\n if (!isRecord(extractionQueue)) return false;\n if (typeof extractionQueue.depth !== \"number\") return false;\n if (!Array.isArray(extractionQueue.recentVerdicts)) return false;\n\n if (!Array.isArray(value.dedupRecent)) return false;\n if (!Array.isArray(value.maintenanceLedgerTail)) return false;\n\n const qmdProbe = value.qmdProbe;\n if (!isRecord(qmdProbe)) return false;\n if (typeof qmdProbe.available !== \"boolean\") return false;\n if (typeof qmdProbe.daemonMode !== \"boolean\") return false;\n if (typeof qmdProbe.debug !== \"string\") return false;\n\n const daemon = value.daemon;\n if (!isRecord(daemon)) return false;\n if (typeof daemon.uptimeMs !== \"number\") return false;\n if (typeof daemon.version !== \"string\") return false;\n\n return Array.isArray(value.errors);\n}\n\n/**\n * Compute the speed-adjusted, clamped inter-frame delay. Exposed for\n * tests so we can assert the speed math without a real timer.\n *\n * - `rawDeltaMs` is the captured-time difference between two frames\n * (may be negative if the trace went back in time — clamped to 0).\n * - `speed` must be a positive finite number OR `Infinity` (treated\n * as \"no delay\"). Non-positive / NaN values are normalized to 1\n * upstream so this function never sees them.\n */\nexport function computeReplayDelay(rawDeltaMs: number, speed: number): number {\n if (!Number.isFinite(rawDeltaMs)) return 0;\n if (rawDeltaMs <= 0) return 0;\n if (!Number.isFinite(speed)) return 0; // Infinity → no delay.\n const adjusted = rawDeltaMs / speed;\n if (!Number.isFinite(adjusted)) return 0;\n if (adjusted <= MIN_REPLAY_DELAY_MS) return MIN_REPLAY_DELAY_MS;\n if (adjusted > MAX_REPLAY_DELAY_MS) return MAX_REPLAY_DELAY_MS;\n return adjusted;\n}\n\n/**\n * Coerce a user-provided `--speed` value into a valid positive\n * multiplier. Common Gotchas #28 / #36: CLI values arrive as strings,\n * and `\"false\"` / `\"0\"` are truthy. Always convert + validate at the\n * input boundary. Throws on invalid input so the CLI surfaces a\n * helpful error message instead of silently defaulting (Common\n * Gotcha #51).\n */\nexport function parseSpeedFlag(raw: unknown): number {\n if (raw === undefined || raw === null) return 1;\n const num = typeof raw === \"number\" ? raw : Number(raw);\n if (!Number.isFinite(num) && num !== Infinity) {\n throw new Error(\n `invalid --speed value: ${JSON.stringify(raw)} (must be a positive number)`,\n );\n }\n if (num <= 0) {\n throw new Error(\n `invalid --speed value: ${JSON.stringify(raw)} (must be > 0)`,\n );\n }\n return num;\n}\n\nfunction normalizeSpeed(speed: number | undefined): number {\n if (speed === undefined) return 1;\n if (!Number.isFinite(speed) && speed !== Infinity) return 1;\n if (speed <= 0) return 1;\n return speed;\n}\n\n/**\n * Abortable sleep used by `replayTrace` between frames.\n *\n * Codex P2 (PR #732): unlike a plain `setTimeout` wrapper, this\n * variant REJECTS with `AbortError` when `signal` fires (or is\n * already aborted on entry). That gives callers a way to\n * *distinguish* timer-expiry from signal-driven early exit, instead\n * of silently resolving on both. The replay loop catches the\n * `AbortError` and exits cleanly so Ctrl-C does not have to wait for\n * the current inter-frame `setTimeout` (capped at 60s) to elapse.\n *\n * Resolves only on timer expiry. Rejects with `AbortError` (DOMException-\n * shaped: `name === \"AbortError\"`) on abort. Exported so callers in\n * tests and adjacent modules can reuse the same primitive.\n */\nexport function sleepAbortable(\n ms: number,\n signal?: AbortSignal,\n): Promise<void> {\n return new Promise((resolve, reject) => {\n if (signal?.aborted) {\n reject(makeAbortError());\n return;\n }\n const timer = setTimeout(() => {\n if (signal && onAbort) signal.removeEventListener(\"abort\", onAbort);\n resolve();\n }, ms);\n let onAbort: (() => void) | null = null;\n if (signal) {\n onAbort = () => {\n clearTimeout(timer);\n reject(makeAbortError());\n };\n signal.addEventListener(\"abort\", onAbort, { once: true });\n }\n });\n}\n\n/**\n * Construct an `AbortError`-shaped error. Prefers the standard\n * `DOMException(\"...\", \"AbortError\")` when available (Node 18+);\n * falls back to a plain Error with `name = \"AbortError\"` for\n * environments without `DOMException`.\n */\nfunction makeAbortError(): Error {\n if (typeof DOMException !== \"undefined\") {\n return new DOMException(\"aborted\", \"AbortError\");\n }\n const err = new Error(\"aborted\");\n err.name = \"AbortError\";\n return err;\n}\n\n/**\n * Detect an AbortError-shaped rejection. Matches both\n * `DOMException(\"...\", \"AbortError\")` and plain `Error` with\n * `name === \"AbortError\"`. Exported for tests.\n */\nexport function isAbortError(err: unknown): boolean {\n return (\n typeof err === \"object\" &&\n err !== null &&\n \"name\" in err &&\n (err as { name?: unknown }).name === \"AbortError\"\n );\n}\n\nexport interface FlushWithTimeoutResult {\n /** True if the flush completed before the deadline. */\n flushed: boolean;\n /** True if the deadline won. */\n timedOut: boolean;\n /** Error from the flush, if any. */\n error: unknown;\n}\n\n/**\n * Bound a recorder flush against a wall-clock deadline (Codex P1, PR\n * #732 follow-up).\n *\n * The CLI shutdown path awaits `recorder.close()`. On a wedged\n * network-backed filesystem that drain can block indefinitely. This\n * helper races the drain against `timeoutMs` and returns a structured\n * result so the caller can decide whether to log a warning, retry, or\n * proceed silently. Returning a structured result (rather than\n * throwing) keeps shutdown ordering deterministic — the caller must\n * always reach the next teardown step.\n *\n * Errors raised by the flush are captured in `result.error` rather\n * than re-thrown.\n *\n * The `flush` factory receives an `AbortSignal` that fires when the\n * timeout wins the race. Callers should forward the signal into\n * whatever I/O the flush performs so the underlying operation is\n * actually cancelled rather than just orphaned. The signal is fired\n * exactly once, immediately after the timeout sentinel wins. The flush\n * promise is still awaited in the background; any subsequent error is\n * silently discarded (it was already abandoned by the caller).\n */\nexport async function flushWithTimeout(\n flush: (signal: AbortSignal) => Promise<void>,\n timeoutMs: number,\n): Promise<FlushWithTimeoutResult> {\n const TIMEOUT_SENTINEL = Symbol(\"flush-timeout\");\n let error: unknown = null;\n let timeoutHandle: ReturnType<typeof setTimeout> | null = null;\n // Codex P1 (PR #732 round 5): give the flush an AbortSignal so the\n // underlying close() can stop holding resources when the timeout\n // wins. Previously the close kept running silently after the race\n // resolved — the AbortController lets callers wire cancellation into\n // their I/O path (e.g., by aborting a stream or write chain) instead\n // of merely abandoning the orphaned promise.\n const ac = new AbortController();\n const flushPromise = flush(ac.signal).then(\n () => undefined,\n (err) => {\n error = err;\n // Resolve so the race winner is \"flush\" — the caller inspects\n // `result.error` to decide what to do.\n return undefined;\n },\n );\n const timeoutPromise = new Promise<symbol>((resolve) => {\n timeoutHandle = setTimeout(() => resolve(TIMEOUT_SENTINEL), timeoutMs);\n // Codex P1 (PR #732): unref the fallback timer so it does not\n // hold the event loop open on its own. Belt-and-suspenders with\n // the `clearTimeout` in the `finally` below: even if a future\n // refactor accidentally drops the clear, an unref'd timer will\n // not prevent process exit once the flush has resolved.\n if (typeof timeoutHandle.unref === \"function\") {\n timeoutHandle.unref();\n }\n });\n try {\n const winner = await Promise.race<symbol | void>([\n flushPromise,\n timeoutPromise,\n ]);\n if (winner === TIMEOUT_SENTINEL) {\n // Fire the abort signal so the flush's underlying I/O can\n // release its resources rather than staying open indefinitely.\n ac.abort();\n return { flushed: false, timedOut: true, error: null };\n }\n return { flushed: true, timedOut: false, error };\n } finally {\n // Codex P1 (PR #732): clear the fallback timer when the flush\n // wins the race. Without this, Node keeps the ref'd timeout\n // handle alive for the full `timeoutMs` and delays process exit\n // by that interval on EVERY normal shutdown — turning a\n // safety-net into a consistent user-visible hang.\n if (timeoutHandle !== null) {\n clearTimeout(timeoutHandle);\n }\n }\n}\n\nfunction safeWrite(output: Writable, chunk: string): void {\n try {\n output.write(chunk);\n } catch {\n // ignore — best effort\n }\n}\n\nfunction describeError(err: unknown): string {\n if (err instanceof Error) return err.message;\n try {\n return String(err);\n } catch {\n return \"unknown error\";\n }\n}\n"],"mappings":"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","names":[]}
|
package/dist/transcript.d.ts
CHANGED
package/dist/transcript.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
TranscriptManager
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-A6D7A2FW.js";
|
|
4
4
|
import "./chunk-FF4KLI5W.js";
|
|
5
|
-
import "./chunk-
|
|
5
|
+
import "./chunk-KFY3SGN7.js";
|
|
6
6
|
import "./chunk-2ODBA7MQ.js";
|
|
7
7
|
import "./chunk-PZ5AY32C.js";
|
|
8
8
|
export {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
detectImportFormat
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
5
|
-
import "../chunk-
|
|
6
|
-
import "../chunk-
|
|
7
|
-
import "../chunk-WEHSQBFR.js";
|
|
3
|
+
} from "../chunk-OZKVVUJB.js";
|
|
4
|
+
import "../chunk-2DL3OFLD.js";
|
|
5
|
+
import "../chunk-G4IAEX6D.js";
|
|
6
|
+
import "../chunk-765K3SAT.js";
|
|
8
7
|
import "../chunk-J4EB7DNW.js";
|
|
9
|
-
import "../chunk-
|
|
10
|
-
import "../chunk-
|
|
8
|
+
import "../chunk-WEHSQBFR.js";
|
|
9
|
+
import "../chunk-UI3NYK34.js";
|
|
10
|
+
import "../chunk-GCGJW34D.js";
|
|
11
11
|
import "../chunk-PZ5AY32C.js";
|
|
12
12
|
export {
|
|
13
13
|
detectImportFormat
|
package/dist/transfer/backup.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
backupMemoryDir
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
5
|
-
import "../chunk-KNKUID7G.js";
|
|
3
|
+
} from "../chunk-2NLLXCJG.js";
|
|
4
|
+
import "../chunk-765K3SAT.js";
|
|
6
5
|
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";
|
|
10
|
-
import "../chunk-
|
|
11
|
-
import "../chunk-
|
|
10
|
+
import "../chunk-UI3NYK34.js";
|
|
11
|
+
import "../chunk-GCGJW34D.js";
|
|
12
12
|
import "../chunk-A6XUJE5D.js";
|
|
13
13
|
import "../chunk-PZ5AY32C.js";
|
|
14
14
|
export {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
exportCapsule,
|
|
3
3
|
isValidCapsuleSince
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-WEHSQBFR.js";
|
|
6
|
-
import "../chunk-KNKUID7G.js";
|
|
4
|
+
} from "../chunk-IPLYGWQF.js";
|
|
7
5
|
import "../chunk-J4EB7DNW.js";
|
|
6
|
+
import "../chunk-WEHSQBFR.js";
|
|
7
|
+
import "../chunk-X7Y7WX73.js";
|
|
8
8
|
import "../chunk-BJMBJZ2Y.js";
|
|
9
9
|
import "../chunk-UKJAGEXH.js";
|
|
10
10
|
import "../chunk-FP2373TW.js";
|
|
11
|
-
import "../chunk-
|
|
12
|
-
import "../chunk-
|
|
11
|
+
import "../chunk-UI3NYK34.js";
|
|
12
|
+
import "../chunk-GCGJW34D.js";
|
|
13
13
|
import "../chunk-A6XUJE5D.js";
|
|
14
14
|
import "../chunk-PZ5AY32C.js";
|
|
15
15
|
export {
|
|
@@ -64,6 +64,12 @@ interface ImportCapsuleOptions {
|
|
|
64
64
|
* When provided and the archive is NOT encrypted, the value is ignored.
|
|
65
65
|
*/
|
|
66
66
|
memoryDir?: string;
|
|
67
|
+
/**
|
|
68
|
+
* Original secure-store passphrase for encrypted format-v2 archives. When
|
|
69
|
+
* supplied, the importer derives the archive key from the embedded KDF
|
|
70
|
+
* header, enabling restore without the source machine's unlocked keyring.
|
|
71
|
+
*/
|
|
72
|
+
passphrase?: string;
|
|
67
73
|
}
|
|
68
74
|
interface ImportCapsuleSkippedRecord {
|
|
69
75
|
/** Original record path (capsule-relative, posix). */
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
importCapsule
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-DHGSZ3UD.js";
|
|
4
|
+
import "../chunk-ALEPI75L.js";
|
|
5
5
|
import "../chunk-WEHSQBFR.js";
|
|
6
|
-
import "../chunk-
|
|
6
|
+
import "../chunk-X7Y7WX73.js";
|
|
7
7
|
import "../chunk-BJMBJZ2Y.js";
|
|
8
8
|
import "../chunk-UKJAGEXH.js";
|
|
9
9
|
import "../chunk-FP2373TW.js";
|
|
10
|
-
import "../chunk-
|
|
10
|
+
import "../chunk-GCGJW34D.js";
|
|
11
11
|
import "../chunk-A6XUJE5D.js";
|
|
12
12
|
import "../chunk-PZ5AY32C.js";
|
|
13
13
|
export {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
exportJsonBundle
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-UP6MOYCB.js";
|
|
4
4
|
import "../chunk-J4EB7DNW.js";
|
|
5
|
-
import "../chunk-
|
|
6
|
-
import "../chunk-
|
|
5
|
+
import "../chunk-UI3NYK34.js";
|
|
6
|
+
import "../chunk-GCGJW34D.js";
|
|
7
7
|
import "../chunk-PZ5AY32C.js";
|
|
8
8
|
export {
|
|
9
9
|
exportJsonBundle
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
exportMarkdownBundle,
|
|
3
3
|
looksLikeEngramMdExport
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-765K3SAT.js";
|
|
5
5
|
import "../chunk-J4EB7DNW.js";
|
|
6
|
-
import "../chunk-
|
|
7
|
-
import "../chunk-
|
|
6
|
+
import "../chunk-UI3NYK34.js";
|
|
7
|
+
import "../chunk-GCGJW34D.js";
|
|
8
8
|
import "../chunk-PZ5AY32C.js";
|
|
9
9
|
export {
|
|
10
10
|
exportMarkdownBundle,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
exportSqlite
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-XSWKORGM.js";
|
|
4
4
|
import "../chunk-Z734BLO3.js";
|
|
5
5
|
import "../chunk-3HPAPHUK.js";
|
|
6
|
-
import "../chunk-
|
|
7
|
-
import "../chunk-
|
|
6
|
+
import "../chunk-UI3NYK34.js";
|
|
7
|
+
import "../chunk-GCGJW34D.js";
|
|
8
8
|
import "../chunk-PZ5AY32C.js";
|
|
9
9
|
export {
|
|
10
10
|
exportSqlite
|
|
@@ -31,6 +31,7 @@ interface SafeArchiveRoot {
|
|
|
31
31
|
declare function prepareSafeArchiveRoot(absPath: string, errorPrefix: string, argName: string): Promise<SafeArchiveRoot>;
|
|
32
32
|
declare function validateArchiveRelativePath(relPath: string, errorPrefix: string): string;
|
|
33
33
|
declare function resolveSafeArchiveTarget(root: SafeArchiveRoot, relPath: string): Promise<string>;
|
|
34
|
+
declare function writeSafeArchiveTarget(root: SafeArchiveRoot, relPath: string, content: string | Uint8Array): Promise<void>;
|
|
34
35
|
/**
|
|
35
36
|
* Return true when {@link absPath} is the same as {@link rootReal} or a
|
|
36
37
|
* descendant. {@link rootReal} should be the value returned by
|
|
@@ -58,4 +59,4 @@ declare function assertIsDirectoryNotSymlink(absPath: string, errorPrefix: strin
|
|
|
58
59
|
*/
|
|
59
60
|
declare function assertRealpathInsideRoot(rootReal: string, targetAbs: string, sourcePath: string, errorPrefix: string): Promise<void>;
|
|
60
61
|
|
|
61
|
-
export { type SafeArchiveRoot, assertIsDirectoryNotSymlink, assertRealpathInsideRoot, ensureDirExists, fileExists, fromPosixRelPath, isPathInsideRoot, listFilesRecursive, prepareSafeArchiveRoot, readJsonFile, readUtf8FileStrict, resolveSafeArchiveTarget, sha256Bytes, sha256File, sha256String, toPosixRelPath, validateArchiveRelativePath, writeJsonFile };
|
|
62
|
+
export { type SafeArchiveRoot, assertIsDirectoryNotSymlink, assertRealpathInsideRoot, ensureDirExists, fileExists, fromPosixRelPath, isPathInsideRoot, listFilesRecursive, prepareSafeArchiveRoot, readJsonFile, readUtf8FileStrict, resolveSafeArchiveTarget, sha256Bytes, sha256File, sha256String, toPosixRelPath, validateArchiveRelativePath, writeJsonFile, writeSafeArchiveTarget };
|
|
@@ -15,8 +15,9 @@ import {
|
|
|
15
15
|
sha256String,
|
|
16
16
|
toPosixRelPath,
|
|
17
17
|
validateArchiveRelativePath,
|
|
18
|
-
writeJsonFile
|
|
19
|
-
|
|
18
|
+
writeJsonFile,
|
|
19
|
+
writeSafeArchiveTarget
|
|
20
|
+
} from "../chunk-GCGJW34D.js";
|
|
20
21
|
import "../chunk-PZ5AY32C.js";
|
|
21
22
|
export {
|
|
22
23
|
assertIsDirectoryNotSymlink,
|
|
@@ -35,6 +36,7 @@ export {
|
|
|
35
36
|
sha256String,
|
|
36
37
|
toPosixRelPath,
|
|
37
38
|
validateArchiveRelativePath,
|
|
38
|
-
writeJsonFile
|
|
39
|
+
writeJsonFile,
|
|
40
|
+
writeSafeArchiveTarget
|
|
39
41
|
};
|
|
40
42
|
//# sourceMappingURL=fs-utils.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
importJsonBundle,
|
|
3
3
|
looksLikeEngramJsonExport
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-2DL3OFLD.js";
|
|
5
|
+
import "../chunk-G4IAEX6D.js";
|
|
6
6
|
import "../chunk-WEHSQBFR.js";
|
|
7
|
-
import "../chunk-
|
|
7
|
+
import "../chunk-GCGJW34D.js";
|
|
8
8
|
import "../chunk-PZ5AY32C.js";
|
|
9
9
|
export {
|
|
10
10
|
importJsonBundle,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
importMarkdownBundle
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-HDDRVXX4.js";
|
|
4
|
+
import "../chunk-G4IAEX6D.js";
|
|
5
5
|
import "../chunk-WEHSQBFR.js";
|
|
6
|
-
import "../chunk-
|
|
6
|
+
import "../chunk-GCGJW34D.js";
|
|
7
7
|
import "../chunk-PZ5AY32C.js";
|
|
8
8
|
export {
|
|
9
9
|
importMarkdownBundle
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
importSqlite
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-3JXBXXM2.js";
|
|
3
|
+
} from "../chunk-4RR6ROTB.js";
|
|
5
4
|
import "../chunk-Z734BLO3.js";
|
|
5
|
+
import "../chunk-G4IAEX6D.js";
|
|
6
6
|
import "../chunk-3HPAPHUK.js";
|
|
7
|
-
import "../chunk-
|
|
7
|
+
import "../chunk-GCGJW34D.js";
|
|
8
8
|
import "../chunk-PZ5AY32C.js";
|
|
9
9
|
export {
|
|
10
10
|
importSqlite
|
package/dist/transfer/types.d.ts
CHANGED
|
@@ -313,13 +313,13 @@ declare const CapsuleBlockSchema: z.ZodObject<{
|
|
|
313
313
|
peerProfiles: boolean;
|
|
314
314
|
}>;
|
|
315
315
|
}, "strip", z.ZodTypeAny, {
|
|
316
|
-
schemaVersion: string;
|
|
317
316
|
includes: {
|
|
318
317
|
procedural: boolean;
|
|
319
318
|
taxonomy: boolean;
|
|
320
319
|
identityAnchors: boolean;
|
|
321
320
|
peerProfiles: boolean;
|
|
322
321
|
};
|
|
322
|
+
schemaVersion: string;
|
|
323
323
|
id: string;
|
|
324
324
|
description: string;
|
|
325
325
|
version: string;
|
|
@@ -334,13 +334,13 @@ declare const CapsuleBlockSchema: z.ZodObject<{
|
|
|
334
334
|
directAnswerEnabled: boolean;
|
|
335
335
|
};
|
|
336
336
|
}, {
|
|
337
|
-
schemaVersion: string;
|
|
338
337
|
includes: {
|
|
339
338
|
procedural: boolean;
|
|
340
339
|
taxonomy: boolean;
|
|
341
340
|
identityAnchors: boolean;
|
|
342
341
|
peerProfiles: boolean;
|
|
343
342
|
};
|
|
343
|
+
schemaVersion: string;
|
|
344
344
|
id: string;
|
|
345
345
|
description: string;
|
|
346
346
|
version: string;
|
|
@@ -464,13 +464,13 @@ declare const ExportManifestV2Schema: z.ZodObject<{
|
|
|
464
464
|
peerProfiles: boolean;
|
|
465
465
|
}>;
|
|
466
466
|
}, "strip", z.ZodTypeAny, {
|
|
467
|
-
schemaVersion: string;
|
|
468
467
|
includes: {
|
|
469
468
|
procedural: boolean;
|
|
470
469
|
taxonomy: boolean;
|
|
471
470
|
identityAnchors: boolean;
|
|
472
471
|
peerProfiles: boolean;
|
|
473
472
|
};
|
|
473
|
+
schemaVersion: string;
|
|
474
474
|
id: string;
|
|
475
475
|
description: string;
|
|
476
476
|
version: string;
|
|
@@ -485,13 +485,13 @@ declare const ExportManifestV2Schema: z.ZodObject<{
|
|
|
485
485
|
directAnswerEnabled: boolean;
|
|
486
486
|
};
|
|
487
487
|
}, {
|
|
488
|
-
schemaVersion: string;
|
|
489
488
|
includes: {
|
|
490
489
|
procedural: boolean;
|
|
491
490
|
taxonomy: boolean;
|
|
492
491
|
identityAnchors: boolean;
|
|
493
492
|
peerProfiles: boolean;
|
|
494
493
|
};
|
|
494
|
+
schemaVersion: string;
|
|
495
495
|
id: string;
|
|
496
496
|
description: string;
|
|
497
497
|
version: string;
|
|
@@ -518,13 +518,13 @@ declare const ExportManifestV2Schema: z.ZodObject<{
|
|
|
518
518
|
pluginVersion: string;
|
|
519
519
|
includesTranscripts: boolean;
|
|
520
520
|
capsule: {
|
|
521
|
-
schemaVersion: string;
|
|
522
521
|
includes: {
|
|
523
522
|
procedural: boolean;
|
|
524
523
|
taxonomy: boolean;
|
|
525
524
|
identityAnchors: boolean;
|
|
526
525
|
peerProfiles: boolean;
|
|
527
526
|
};
|
|
527
|
+
schemaVersion: string;
|
|
528
528
|
id: string;
|
|
529
529
|
description: string;
|
|
530
530
|
version: string;
|
|
@@ -551,13 +551,13 @@ declare const ExportManifestV2Schema: z.ZodObject<{
|
|
|
551
551
|
pluginVersion: string;
|
|
552
552
|
includesTranscripts: boolean;
|
|
553
553
|
capsule: {
|
|
554
|
-
schemaVersion: string;
|
|
555
554
|
includes: {
|
|
556
555
|
procedural: boolean;
|
|
557
556
|
taxonomy: boolean;
|
|
558
557
|
identityAnchors: boolean;
|
|
559
558
|
peerProfiles: boolean;
|
|
560
559
|
};
|
|
560
|
+
schemaVersion: string;
|
|
561
561
|
id: string;
|
|
562
562
|
description: string;
|
|
563
563
|
version: string;
|
|
@@ -683,13 +683,13 @@ declare const ExportBundleV2Schema: z.ZodObject<{
|
|
|
683
683
|
peerProfiles: boolean;
|
|
684
684
|
}>;
|
|
685
685
|
}, "strip", z.ZodTypeAny, {
|
|
686
|
-
schemaVersion: string;
|
|
687
686
|
includes: {
|
|
688
687
|
procedural: boolean;
|
|
689
688
|
taxonomy: boolean;
|
|
690
689
|
identityAnchors: boolean;
|
|
691
690
|
peerProfiles: boolean;
|
|
692
691
|
};
|
|
692
|
+
schemaVersion: string;
|
|
693
693
|
id: string;
|
|
694
694
|
description: string;
|
|
695
695
|
version: string;
|
|
@@ -704,13 +704,13 @@ declare const ExportBundleV2Schema: z.ZodObject<{
|
|
|
704
704
|
directAnswerEnabled: boolean;
|
|
705
705
|
};
|
|
706
706
|
}, {
|
|
707
|
-
schemaVersion: string;
|
|
708
707
|
includes: {
|
|
709
708
|
procedural: boolean;
|
|
710
709
|
taxonomy: boolean;
|
|
711
710
|
identityAnchors: boolean;
|
|
712
711
|
peerProfiles: boolean;
|
|
713
712
|
};
|
|
713
|
+
schemaVersion: string;
|
|
714
714
|
id: string;
|
|
715
715
|
description: string;
|
|
716
716
|
version: string;
|
|
@@ -737,13 +737,13 @@ declare const ExportBundleV2Schema: z.ZodObject<{
|
|
|
737
737
|
pluginVersion: string;
|
|
738
738
|
includesTranscripts: boolean;
|
|
739
739
|
capsule: {
|
|
740
|
-
schemaVersion: string;
|
|
741
740
|
includes: {
|
|
742
741
|
procedural: boolean;
|
|
743
742
|
taxonomy: boolean;
|
|
744
743
|
identityAnchors: boolean;
|
|
745
744
|
peerProfiles: boolean;
|
|
746
745
|
};
|
|
746
|
+
schemaVersion: string;
|
|
747
747
|
id: string;
|
|
748
748
|
description: string;
|
|
749
749
|
version: string;
|
|
@@ -770,13 +770,13 @@ declare const ExportBundleV2Schema: z.ZodObject<{
|
|
|
770
770
|
pluginVersion: string;
|
|
771
771
|
includesTranscripts: boolean;
|
|
772
772
|
capsule: {
|
|
773
|
-
schemaVersion: string;
|
|
774
773
|
includes: {
|
|
775
774
|
procedural: boolean;
|
|
776
775
|
taxonomy: boolean;
|
|
777
776
|
identityAnchors: boolean;
|
|
778
777
|
peerProfiles: boolean;
|
|
779
778
|
};
|
|
779
|
+
schemaVersion: string;
|
|
780
780
|
id: string;
|
|
781
781
|
description: string;
|
|
782
782
|
version: string;
|
|
@@ -815,13 +815,13 @@ declare const ExportBundleV2Schema: z.ZodObject<{
|
|
|
815
815
|
pluginVersion: string;
|
|
816
816
|
includesTranscripts: boolean;
|
|
817
817
|
capsule: {
|
|
818
|
-
schemaVersion: string;
|
|
819
818
|
includes: {
|
|
820
819
|
procedural: boolean;
|
|
821
820
|
taxonomy: boolean;
|
|
822
821
|
identityAnchors: boolean;
|
|
823
822
|
peerProfiles: boolean;
|
|
824
823
|
};
|
|
824
|
+
schemaVersion: string;
|
|
825
825
|
id: string;
|
|
826
826
|
description: string;
|
|
827
827
|
version: string;
|
|
@@ -854,13 +854,13 @@ declare const ExportBundleV2Schema: z.ZodObject<{
|
|
|
854
854
|
pluginVersion: string;
|
|
855
855
|
includesTranscripts: boolean;
|
|
856
856
|
capsule: {
|
|
857
|
-
schemaVersion: string;
|
|
858
857
|
includes: {
|
|
859
858
|
procedural: boolean;
|
|
860
859
|
taxonomy: boolean;
|
|
861
860
|
identityAnchors: boolean;
|
|
862
861
|
peerProfiles: boolean;
|
|
863
862
|
};
|
|
863
|
+
schemaVersion: string;
|
|
864
864
|
id: string;
|
|
865
865
|
description: string;
|
|
866
866
|
version: string;
|
package/dist/trust-zones.js
CHANGED
|
@@ -11,9 +11,9 @@ import {
|
|
|
11
11
|
seedTrustZoneDemoDataset,
|
|
12
12
|
summarizeTrustZonePromotionReadiness,
|
|
13
13
|
validateTrustZoneRecord
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-472U7RDF.js";
|
|
15
15
|
import "./chunk-DT5TVLJE.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-A2IYSXDQ.js";
|
|
17
17
|
import "./chunk-LPSF4OQH.js";
|
|
18
18
|
import "./chunk-PZ5AY32C.js";
|
|
19
19
|
export {
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Peer registry types — issue #679 PR 1/5.
|
|
3
|
+
*
|
|
4
|
+
* Generalizes the singular identity-anchor model to a multi-peer registry.
|
|
5
|
+
* Every party Remnic interacts with — humans, agents, integrations, and
|
|
6
|
+
* "self" — is represented as a `Peer` with an evolving cognitive profile.
|
|
7
|
+
*
|
|
8
|
+
* This module defines pure types only. Storage primitives live in
|
|
9
|
+
* `./storage.ts`. Reasoner integration, recall injection, CLI/HTTP/MCP
|
|
10
|
+
* surfaces, and migration of existing identity-anchor data ship in later
|
|
11
|
+
* PRs (2/5 — 5/5).
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Kind of peer.
|
|
15
|
+
*
|
|
16
|
+
* - `self` — the current Remnic operator (replaces singular identity-anchor).
|
|
17
|
+
* - `human` — another human collaborator distinct from self.
|
|
18
|
+
* - `agent` — another AI agent (Claude Code, Codex, Hermes, etc.).
|
|
19
|
+
* - `integration` — non-conversational integration (cron, webhook, importer).
|
|
20
|
+
*/
|
|
21
|
+
type PeerKind = "self" | "human" | "agent" | "integration";
|
|
22
|
+
/**
|
|
23
|
+
* Stable, slow-changing facts about a peer.
|
|
24
|
+
*
|
|
25
|
+
* `id` matches `^[A-Za-z0-9](?:[A-Za-z0-9._-]*[A-Za-z0-9])?$`, 1-64 chars,
|
|
26
|
+
* with no leading/trailing/consecutive dots or dashes. Stored on disk under
|
|
27
|
+
* `peers/{id}/identity.md` as YAML frontmatter + markdown body.
|
|
28
|
+
*/
|
|
29
|
+
interface Peer {
|
|
30
|
+
/** Stable, opaque identifier. See PEER_ID_PATTERN. */
|
|
31
|
+
readonly id: string;
|
|
32
|
+
/** Kind of peer. Drives default profile schema and recall posture. */
|
|
33
|
+
readonly kind: PeerKind;
|
|
34
|
+
/** Human-readable display name. Distinct from `id`; mutable. */
|
|
35
|
+
readonly displayName: string;
|
|
36
|
+
/** ISO-8601 timestamp of first registration. */
|
|
37
|
+
readonly createdAt: string;
|
|
38
|
+
/** ISO-8601 timestamp of most recent update to identity. */
|
|
39
|
+
readonly updatedAt: string;
|
|
40
|
+
/** Optional free-form markdown body for the identity kernel. */
|
|
41
|
+
readonly notes?: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Evolving cognitive profile for a peer.
|
|
45
|
+
*
|
|
46
|
+
* Updated by the async profile reasoner (PR 2/5) from observable session
|
|
47
|
+
* signals. Every field carries provenance back to its originating session
|
|
48
|
+
* and signal. This PR only defines the shape — population is deferred.
|
|
49
|
+
*/
|
|
50
|
+
interface PeerProfile {
|
|
51
|
+
/** Peer this profile belongs to. */
|
|
52
|
+
readonly peerId: string;
|
|
53
|
+
/** ISO-8601 timestamp of most recent profile mutation. */
|
|
54
|
+
readonly updatedAt: string;
|
|
55
|
+
/**
|
|
56
|
+
* Arbitrary key/value profile fields. Values are markdown strings.
|
|
57
|
+
* Keys are stable section identifiers (e.g. `communication_style`,
|
|
58
|
+
* `recurring_concerns`). The reasoner is responsible for choosing
|
|
59
|
+
* keys; this PR does not constrain them beyond requiring strings.
|
|
60
|
+
*/
|
|
61
|
+
readonly fields: Record<string, string>;
|
|
62
|
+
/**
|
|
63
|
+
* Per-field provenance. Maps field key → list of provenance entries.
|
|
64
|
+
* A field may have multiple sources (the reasoner accumulates evidence
|
|
65
|
+
* across sessions before promoting a field).
|
|
66
|
+
*/
|
|
67
|
+
readonly provenance: Record<string, ReadonlyArray<PeerProfileFieldProvenance>>;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Provenance for a single profile-field mutation.
|
|
71
|
+
*
|
|
72
|
+
* Reasoner output (PR 2/5) attaches one of these every time it touches a
|
|
73
|
+
* field, so the user can audit exactly why a profile claim exists.
|
|
74
|
+
*/
|
|
75
|
+
interface PeerProfileFieldProvenance {
|
|
76
|
+
/** ISO-8601 timestamp the field was set/updated by this signal. */
|
|
77
|
+
readonly observedAt: string;
|
|
78
|
+
/** Originating session id (or other source identifier). */
|
|
79
|
+
readonly sourceSessionId?: string;
|
|
80
|
+
/** Short label for the signal type (e.g. "explicit_preference"). */
|
|
81
|
+
readonly signal: string;
|
|
82
|
+
/** Optional free-form note explaining the inference. */
|
|
83
|
+
readonly note?: string;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* One row of the append-only interaction log for a peer.
|
|
87
|
+
*
|
|
88
|
+
* Stored on disk under `peers/{id}/interactions.log.md` as a sequence of
|
|
89
|
+
* markdown bullet entries with a leading ISO-8601 timestamp. Append-only
|
|
90
|
+
* by contract — the reasoner reads this log to derive profile updates.
|
|
91
|
+
*/
|
|
92
|
+
interface PeerInteractionLogEntry {
|
|
93
|
+
/** ISO-8601 timestamp the interaction occurred. */
|
|
94
|
+
readonly timestamp: string;
|
|
95
|
+
/** Originating session id, if any. */
|
|
96
|
+
readonly sessionId?: string;
|
|
97
|
+
/** Short kind label (e.g. "message", "tool_call", "preference_set"). */
|
|
98
|
+
readonly kind: string;
|
|
99
|
+
/** Free-form markdown summary of the interaction. */
|
|
100
|
+
readonly summary: string;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Regex enforced on `Peer.id`. Exported so callers can mirror validation
|
|
104
|
+
* before constructing a `Peer`.
|
|
105
|
+
*
|
|
106
|
+
* Rules:
|
|
107
|
+
* - 1-64 characters total
|
|
108
|
+
* - First and last character must be `[A-Za-z0-9]`
|
|
109
|
+
* - Interior may contain `.`, `_`, `-` in addition to alphanumerics
|
|
110
|
+
* - No leading or trailing dot/dash/underscore
|
|
111
|
+
* - No consecutive separators (`..`, `--`, `__`, `.-`, etc.)
|
|
112
|
+
*
|
|
113
|
+
* Cursor Medium: previously the regex allowed `a..b` even though the
|
|
114
|
+
* docs claimed otherwise — a separate JS-side check enforced the rule
|
|
115
|
+
* but the standalone PATTERN was wrong for any external consumer
|
|
116
|
+
* relying on it. Tighten the regex itself so PEER_ID_PATTERN is the
|
|
117
|
+
* single source of truth: an alphanumeric, optionally followed by
|
|
118
|
+
* groups of (one separator + one-or-more alphanumerics), with the
|
|
119
|
+
* final group ending on an alphanumeric. Negative lookahead-free so
|
|
120
|
+
* it works in any JS engine.
|
|
121
|
+
*/
|
|
122
|
+
declare const PEER_ID_PATTERN: RegExp;
|
|
123
|
+
/** Maximum length for `Peer.id`. */
|
|
124
|
+
declare const PEER_ID_MAX_LENGTH = 64;
|
|
125
|
+
|
|
126
|
+
export { type PeerInteractionLogEntry as P, type Peer as a, type PeerProfile as b, PEER_ID_MAX_LENGTH as c, PEER_ID_PATTERN as d, type PeerKind as e, type PeerProfileFieldProvenance as f };
|