@mnemoverse/mcp-memory-server 0.8.0 → 0.8.2

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/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,UAAU,GAIX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAE5E,6EAA6E;AAC7E,6EAA6E;AAC7E,2EAA2E;AAC3E,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAwB,CAAC;AAE9D,MAAM,OAAO,GACX,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,oCAAoC,CAAC;AACzE,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC;AAErD,yEAAyE;AACzE,wFAAwF;AACxF,mGAAmG;AACnG,MAAM,gBAAgB,GAAG,MAAM,GAAG,CAAC,CAAC;AAEpC,8EAA8E;AAC9E,2EAA2E;AAC3E,0EAA0E;AAC1E,4EAA4E;AAC5E,0EAA0E;AAC1E,8EAA8E;AAC9E,kDAAkD;AAElD;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,QAAQ,CACrB,IAAY,EACZ,UAAuB,EAAE;IAEzB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,uEAAuE;YACrE,sEAAsE,CACzE,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,GAAG,IAAI,EAAE,EAAE;QAC3C,GAAG,OAAO;QACV,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,WAAW,EAAE,OAAO;YACpB,GAAG,CAAE,OAAO,CAAC,OAAkC,IAAI,EAAE,CAAC;SACvD;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,qEAAqE;IACrE,kEAAkE;IAClE,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,GAAG,EAAE,CAAC;QACpE,OAAO,EAAO,CAAC;IACjB,CAAC;IAED,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAM,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,SAAS,CAChB,IAAY,EACZ,QAAQ,GAAG,gEAAgE;IAE3E,IAAI,IAAI,CAAC,MAAM,IAAI,gBAAgB;QAAE,OAAO,IAAI,CAAC;IACjD,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,GAAG,GAAG,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC5D,IAAI,QAAQ,IAAI,MAAM,IAAI,QAAQ,IAAI,MAAM,EAAE,CAAC;QAC7C,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IACD,gFAAgF;IAChF,oFAAoF;IACpF,+EAA+E;IAC/E,OAAO,GAAG,SAAS,+CAA+C,QAAQ,GAAG,CAAC;AAChF,CAAC;AAED;;;;;;;;;GASG;AAEH,uBAAuB;AAEvB,+EAA+E;AAC/E,4EAA4E;AAC5E,yEAAyE;AACzE,yDAAyD;AACzD,MAAM,MAAM,GAAG,IAAI,SAAS,CAC1B;IACE,IAAI,EAAE,mBAAmB;IACzB,OAAO,EAAE,GAAG,CAAC,OAAO;CACrB,EACD,EAAE,YAAY,EAAE,mBAAmB,EAAE,CACtC,CAAC;AAEF,6BAA6B;AAE7B,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;IACE,WAAW,EACT,0tBAA0tB;IAC5tB,WAAW,EAAE;QACX,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,KAAK,CAAC;aACV,QAAQ,CACP,+JAA+J,CAChK;QACH,QAAQ,EAAE,CAAC;aACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,EAAE;aACV,QAAQ,CACP,kFAAkF,CACnF;QACH,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,mFAAmF,CACpF;KACJ;IACD,WAAW,EAAE;QACX,KAAK,EAAE,cAAc;QACrB,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,KAAK;QACrB,aAAa,EAAE,IAAI;KACpB;CACF,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;IACtC,MAAM,CAAC,GAAG,MAAM,QAAQ,CAKrB,eAAe,EAAE;QAClB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,OAAO;YACP,QAAQ,EAAE,QAAQ,IAAI,EAAE;YACxB,MAAM,EAAE,MAAM,IAAI,SAAS;SAC5B,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,CAAC,CAAC,EAAE,UAAU,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAEnD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QACd,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,uBAAuB,UAAU,UAAU,CAAC,CAAC,OAAO,IAAI,SAAS,EAAE;iBAC1E;aACF;SACF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,IAAI,gBAAgB,iBAAiB,UAAU,GAAG;aAChF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,4BAA4B;AAE5B,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;IACE,WAAW,EACT,ulBAAulB;IACzlB,WAAW,EAAE;QACX,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,IAAI,CAAC;aACT,QAAQ,CACP,sIAAsI,CACvI;QACH,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,EAAE,CAAC;aACP,QAAQ,EAAE;aACV,QAAQ,CAAC,oCAAoC,CAAC;QACjD,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,uGAAuG,CACxG;QACH,QAAQ,EAAE,CAAC;aACR,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;aAC9B,QAAQ,EAAE;aACV,QAAQ,CACP,iEAAiE;YAC/D,+DAA+D;YAC/D,wDAAwD,CAC3D;QACH,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,CAAC,EAAE,CAAC;aACP,QAAQ,EAAE;aACV,QAAQ,CACP,gEAAgE;YAC9D,wDAAwD,CAC3D;QACH,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,CAAC,EAAE,CAAC;aACP,QAAQ,EAAE;aACV,QAAQ,CAAC,wDAAwD,CAAC;QACrE,cAAc,EAAE,CAAC;aACd,MAAM,EAAE;aACR,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,kEAAkE;YAChE,iEAAiE;YACjE,6DAA6D;YAC7D,kCAAkC,CACrC;KACJ;IACD,WAAW,EAAE;QACX,KAAK,EAAE,iBAAiB;QACxB,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;KACpB;CACF,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE;IACzE,MAAM,CAAC,GAAG,MAAM,QAAQ,CAGrB,cAAc,EAAE;QACjB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,KAAK;YACL,KAAK,EAAE,KAAK,IAAI,CAAC;YACjB,MAAM,EAAE,MAAM,IAAI,SAAS;YAC3B,oBAAoB,EAAE,IAAI;YAC1B,gEAAgE;YAChE,0DAA0D;YAC1D,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9C,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAErD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,IAAI,cAAc,CAAC,EAAE,CAAC;QAC7D,kEAAkE;QAClE,kEAAkE;QAClE,qEAAqE;QACrE,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,wDAAwD;iBAC/D;aACF;SACF,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,wEAAwE;QACxE,sEAAsE;QACtE,kEAAkE;QAClE,wEAAwE;QACxE,qEAAqE;QACrE,qDAAqD;QACrD,MAAM,IAAI,GAAG,MAAM,sBAAsB,CACvC,GAAG,EAAE,CAAC,QAAQ,CAA2B,eAAe,CAAC;QACzD,sEAAsE;QACtE,gEAAgE;QAChE,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CACvC,CAAC;QACF,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC;SAC3C,CAAC;IACJ,CAAC;IAED,qEAAqE;IACrE,oEAAoE;IACpE,qEAAqE;IACrE,qEAAqE;IACrE,mEAAmE;IACnE,iBAAiB;IACjB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAE9D,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,cAAc,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,QAAQ,QAAQ,KAAK,CAAC;IAExD,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC;aACtB;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,mCAAmC;AAEnC,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;IACE,WAAW,EACT,+dAA+d;IACje,WAAW,EAAE;QACX,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,6FAA6F,CAC9F;QACH,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,6FAA6F,CAC9F;QACH,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,4KAA4K,CAC7K;QACH,cAAc,EAAE,CAAC;aACd,MAAM,EAAE;aACR,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,gIAAgI,CACjI;QACH,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,wCAAwC,CAAC;QACrD,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,2HAA2H,CAC5H;KACJ;IACD,WAAW,EAAE;QACX,KAAK,EAAE,sBAAsB;QAC7B,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;KACpB;CACF,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;IAChE,IAAI,CAAwD,CAAC;IAC7D,IAAI,CAAC;QACH,CAAC,GAAG,MAAM,QAAQ,CAChB,gBAAgB,EAChB;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,MAAM,EAAE,MAAM,IAAI,SAAS;gBAC3B,KAAK,EAAE,KAAK,IAAI,SAAS;gBACzB,KAAK,EAAE,KAAK,IAAI,SAAS;gBACzB,cAAc,EAAE,cAAc,IAAI,SAAS;gBAC3C,KAAK,EAAE,KAAK,IAAI,EAAE;gBAClB,MAAM,EAAE,MAAM,IAAI,SAAS;aAC5B,CAAC;SACH,CACF,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,mEAAmE;QACnE,mEAAmE;QACnE,4CAA4C;QAC5C,MAAM,cAAc,GAClB,CAAC,YAAY,KAAK;YAClB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC;YACjD,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EACF,mEAAmE;4BACnE,+DAA+D;qBAClE;iBACF;aACF,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,KAAK;wBACT,CAAC,CAAC,mCAAmC;wBACrC,CAAC,CAAC,uBAAuB;iBAC5B;aACF;SACF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,SAAS,CACb,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,WAAW,CAAC,EACvC,oDAAoD,CACrD;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,gCAAgC;AAEhC,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;IACE,WAAW,EACT,wWAAwW;IAC1W,WAAW,EAAE;QACX,QAAQ,EAAE,CAAC;aACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CACP,gEAAgE,CACjE;QACH,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC,CAAC;aACP,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CACP,6EAA6E,CAC9E;KACJ;IACD,WAAW,EAAE;QACX,KAAK,EAAE,yBAAyB;QAChC,YAAY,EAAE,KAAK;QACnB,mEAAmE;QACnE,qEAAqE;QACrE,kEAAkE;QAClE,qEAAqE;QACrE,eAAe,EAAE,IAAI;QACrB,cAAc,EAAE,KAAK;QACrB,aAAa,EAAE,IAAI;KACpB;CACF,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;IAC9B,MAAM,CAAC,GAAG,MAAM,QAAQ,CAA6B,kBAAkB,EAAE;QACvE,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;KAC5C,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,CAAC,EAAE,aAAa,IAAI,CAAC,CAAC;IAEpC,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,yBAAyB,KAAK,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;aAC1E;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,6BAA6B;AAE7B,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;IACE,WAAW,EACT,6YAA6Y;IAC/Y,WAAW,EAAE,EAAE;IACf,WAAW,EAAE;QACX,KAAK,EAAE,mBAAmB;QAC1B,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;KACpB;CACF,EACD,KAAK,IAAI,EAAE;IACT,MAAM,CAAC,GAAG,MAAM,QAAQ,CAQrB,eAAe,CAAC,CAAC;IAEpB,MAAM,OAAO,GACX,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QAC/C,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QACtB,CAAC,CAAC,SAAS,CAAC;IAEhB,MAAM,IAAI,GAAG;QACX,aAAa,CAAC,EAAE,WAAW,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,IAAI,CAAC,cAAc,CAAC,EAAE,UAAU,IAAI,CAAC,cAAc;QACnG,iBAAiB,CAAC,EAAE,aAAa,IAAI,CAAC,gBAAgB;QACtD,YAAY,OAAO,EAAE;QACrB,wBAAwB,CAAC,CAAC,EAAE,WAAW,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,EAAE,cAAc,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;KAC9G,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACxD,CAAC,CACF,CAAC;AAEF,8BAA8B;AAE9B,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;IACE,WAAW,EACT,+XAA+X;IACjY,WAAW,EAAE;QACX,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CACP,sFAAsF,CACvF;KACJ;IACD,WAAW,EAAE;QACX,KAAK,EAAE,iBAAiB;QACxB,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,IAAI;QACrB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;KACpB;CACF,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;IACpB,mEAAmE;IACnE,mEAAmE;IACnE,kBAAkB;IAClB,MAAM,CAAC,GAAG,MAAM,QAAQ,CACtB,iBAAiB,kBAAkB,CAAC,OAAO,CAAC,EAAE,EAC9C,EAAE,MAAM,EAAE,QAAQ,EAAE,CACrB,CAAC;IAEF,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;QAChB,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,2BAA2B,OAAO,GAAG;iBAC5C;aACF;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,kBAAkB,OAAO,GAAG;aACnC;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,qCAAqC;AAErC,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;IACE,WAAW,EACT,0eAA0e;IAC5e,WAAW,EAAE;QACX,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,CACP,6FAA6F,CAC9F;QACH,OAAO,EAAE,CAAC;aACP,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CACP,4FAA4F,CAC7F;KACJ;IACD,WAAW,EAAE;QACX,KAAK,EAAE,gCAAgC;QACvC,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,IAAI;QACrB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;KACpB;CACF;AACD,mEAAmE;AACnE,sEAAsE;AACtE,+DAA+D;AAC/D,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACnB,MAAM,CAAC,GAAG,MAAM,QAAQ,CACtB,kBAAkB,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAC9C,EAAE,MAAM,EAAE,QAAQ,EAAE,CACrB,CAAC;IAEF,MAAM,KAAK,GAAG,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC;IAC9B,MAAM,UAAU,GAAG,CAAC,EAAE,MAAM,IAAI,MAAM,CAAC;IAEvC,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,WAAW,KAAK,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,iBAAiB,UAAU,IAAI;aAC7F;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,mCAAmC;AAEnC,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;IACE,WAAW,EACT,2YAA2Y;IAC7Y,WAAW,EAAE;QACX,IAAI,EAAE,CAAC;aACJ,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,CACP,6DAA6D,CAC9D;QACH,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,GAAG,CAAC,IAAI,CAAC;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,mCAAmC,CAAC;KACjD;IACD,WAAW,EAAE;QACX,KAAK,EAAE,oBAAoB;QAC3B,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,KAAK;QACrB,aAAa,EAAE,IAAI;KACpB;CACF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE;IAC9B,MAAM,CAAC,GAAG,MAAM,QAAQ,CAIrB,eAAe,EAAE;QAClB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;KAC5C,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACtC,2EAA2E;IAC3E,0DAA0D;IAC1D,MAAM,IAAI,GAAG,OAAO;QAClB,CAAC,CAAC,wBAAwB,QAAQ,eAAe,OAAO,IAAI;YAC1D,4BAA4B,OAAO,oCAAoC;YACvE,CAAC,MAAM;gBACL,CAAC,CAAC,4DAA4D,MAAM,IAAI;gBACxE,CAAC,CAAC,EAAE,CAAC;QACT,CAAC,CAAC,SAAS,QAAQ,iEAAiE;YAClF,2CAA2C,CAAC;IAChD,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC;aACtB;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,sCAAsC;AAEtC,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;IACE,WAAW,EACT,mUAAmU;IACrU,WAAW,EAAE;QACX,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,CAAC,oDAAoD,CAAC;QACjE,KAAK,EAAE,CAAC;aACL,IAAI,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;aAC5B,QAAQ,EAAE;aACV,QAAQ,CACP,sEAAsE,CACvE;QACH,eAAe,EAAE,CAAC;aACf,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,EAAE,CAAC;aACP,QAAQ,EAAE;aACV,QAAQ,CAAC,4CAA4C,CAAC;KAC1D;IACD,WAAW,EAAE;QACX,KAAK,EAAE,gBAAgB;QACvB,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,KAAK;QACrB,aAAa,EAAE,IAAI;KACpB;CACF,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE;IAC5C,MAAM,CAAC,GAAG,MAAM,QAAQ,CAIrB,iBAAiB,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE;QACzD,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;KACjD,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,uEAAuE;gBACvE,wEAAwE;gBACxE,mDAAmD;gBACnD,IAAI,EAAE,SAAS,CACb,uEAAuE;oBACrE,GAAG,CAAC,EAAE,aAAa,IAAI,CAAC,EAAE,QAAQ,IAAI,uBAAuB,EAAE,CAClE;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,iCAAiC;AAEjC,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;IACE,WAAW,EACT,wRAAwR;IAC1R,WAAW,EAAE;QACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC;KACzE;IACD,WAAW,EAAE;QACX,KAAK,EAAE,WAAW;QAClB,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;KACpB;CACF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;IACjB,MAAM,CAAC,GAAG,MAAM,QAAQ,CAKrB,oBAAoB,EAAE;QACvB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC;KAC/B,CAAC,CAAC;IACH,qEAAqE;IACrE,gFAAgF;IAChF,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,UAAU,CAAC;IACnD,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC;IAC/C,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,CAAC,EAAE,cAAc;QAC9B,CAAC,CAAC,+BAA+B,QAAQ,IAAI;QAC7C,CAAC,CAAC,WAAW,QAAQ,MAAM,KAAK,IAAI,CAAC;IACvC,6EAA6E;IAC7E,MAAM,KAAK,GAAG,OAAO;QACnB,CAAC,CAAC,wBAAwB,OAAO,oEAAoE;QACrG,CAAC,CAAC,sFAAsF,CAAC;IAC3F,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,SAAS,CAAC,GAAG,MAAM,KAAK,KAAK,EAAE,CAAC;aACvC;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,kCAAkC;AAElC,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;IACE,WAAW,EACT,uTAAuT;IACzT,WAAW,EAAE,EAAE;IACf,WAAW,EAAE;QACX,KAAK,EAAE,YAAY;QACnB,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;KACpB;CACF,EACD,KAAK,IAAI,EAAE;IACT,MAAM,KAAK,GAAG,MAAM,QAAQ,CAS1B,eAAe,CAAC,CAAC;IACnB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EACF,oEAAoE;wBACpE,yDAAyD;iBAC5D;aACF;SACF,CAAC;IACJ,CAAC;IACD,mFAAmF;IACnF,oFAAoF;IACpF,sCAAsC;IACtC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3B,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,gBAAgB,CAAC;QACrD,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACtC,qFAAqF;QACrF,wFAAwF;QACxF,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5E,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACnC,MAAM,QAAQ,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,kBAAkB,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,OAAO,MAAM,IAAI,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,QAAQ,GAAG,GAAG,EAAE,CAAC;IAC9E,CAAC,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,sBAAsB,IAAI,CAAC,MAAM,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACxE,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,yDAAyD,CAAC;aACjF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,2BAA2B;AAE3B,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;IACE,WAAW,EACT,qTAAqT;IACvT,WAAW,EAAE,EAAE;IACf,WAAW,EAAE;QACX,KAAK,EAAE,oBAAoB;QAC3B,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;KACpB;CACF,EACD,KAAK,IAAI,EAAE;IACT,MAAM,CAAC,GAAG,MAAM,QAAQ,CAOrB,gBAAgB,CAAC,CAAC;IACrB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,0CAA0C;iBACjD;aACF;SACF,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3B,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,YAAY,CAAC;QACnD,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACvC,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;IACH,MAAM,IAAI,GACR,uBAAuB,IAAI,CAAC,MAAM,gDAAgD;QAClF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,6DAA6D,CAAC;aACrF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,gBAAgB;AAEhB,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;IACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,168 @@
1
+ /**
2
+ * Naming a thing so the reader can reproduce it — the counterpart to
3
+ * `safeInline`, and deliberately NOT the same tool.
4
+ *
5
+ * `safeInline` (src/render.ts) is a SANITISER: it maps every character outside
6
+ * `[\w .@:+/-]` to a space, collapses runs of whitespace, trims the ends and
7
+ * truncates. That is the right treatment for a display string chosen by a
8
+ * DIFFERENT principal — an agent name — where the only job is to make a
9
+ * hostile value harmless to paste into a model's context and nothing about the
10
+ * value needs to stay recognisable. (Room names looked like that class and are
11
+ * not — see the threat model at the bottom.)
12
+ *
13
+ * It is the WRONG treatment for any value the reader is expected to compare or
14
+ * send back, and it was being used for exactly that (reviews, 2026-08-08):
15
+ *
16
+ * - `" engineering"` and `"engineering"` rendered identically, so the
17
+ * `@domain` tag added in this release could point a reader at the wrong
18
+ * store, and `memory_stats` could not support the byte-exact check that
19
+ * `memory_delete_domain`'s own description sends the reader there for.
20
+ * - `"проект:acme"` and `"план:acme"` both rendered as `:acme` — one lossy
21
+ * transform, two distinct stores, one output string. A whitespace-only
22
+ * domain rendered as the empty string, i.e. as no name at all.
23
+ * - Core's only write-rejection reason, `"Below importance threshold (0.412 <
24
+ * 0.500)"`, was relayed under the label `Server reason:` as
25
+ * `Below importance threshold 0.412 0.500` — the comparison operator and
26
+ * both delimiters deleted from a quote that claims to be verbatim.
27
+ *
28
+ * Domain names are matched byte-for-byte everywhere in the engine (parameterised
29
+ * equality on raw bytes; no trim, no case-fold, no normalisation in the schema,
30
+ * the storage layer or a migration), so a name that cannot be reproduced cannot
31
+ * be acted on. Hence the rule this module implements: **print a value exactly,
32
+ * or do not print it at all.**
33
+ *
34
+ * ## The renderer
35
+ *
36
+ * `exactLiteral` returns the value as a JSON string literal, chosen because it
37
+ * satisfies both halves of the problem at once and needs no bespoke decoder:
38
+ *
39
+ * - REVERSIBLE. `JSON.parse(literal) === value`, for every input, including
40
+ * lone surrogates. That is the contract, and it is asserted directly in
41
+ * test/names.test.ts rather than approximated by sampling characters.
42
+ * Spaces stay inside the quotes, so leading/trailing/doubled whitespace is
43
+ * visible; control characters become `\n` or a `\uXXXX` escape; non-ASCII
44
+ * letters pass through untouched, so Cyrillic survives as itself.
45
+ * - INJECTION-SAFE for the surface it lands on. The output is one line: no
46
+ * raw newline can forge a new instruction block, `"` and `\` are escaped so
47
+ * the quoted context cannot be closed early, and line/paragraph separators
48
+ * (U+2028/U+2029, which `JSON.stringify` leaves raw) are escaped here.
49
+ *
50
+ * On top of `JSON.stringify` this escapes everything invisible or
51
+ * whitespace-confusable that it leaves alone: U+007F–U+009F, all format
52
+ * characters (zero-width space and joiners, soft hyphen, bidi overrides, BOM),
53
+ * line and paragraph separators, and every space separator EXCEPT plain U+0020
54
+ * — so a name padded with a no-break space is distinguishable from one padded
55
+ * with an ordinary one. Combining marks are left as they are: they are ordinary
56
+ * letters in many languages, and the guarantee here is byte-exact round-trip,
57
+ * not visual uniqueness.
58
+ *
59
+ * ## Truncation
60
+ *
61
+ * A truncated name is not reproducible, so nothing is truncated. When the
62
+ * literal would exceed the cap, `exactLiteral` returns `null` and the call site
63
+ * must choose a NAME-FREE phrasing ("the domain you passed"). The caps are set
64
+ * so this is unreachable for any name the engine can hold — the `atoms.domain`
65
+ * column is `VARCHAR(100)` — leaving only pathological values (a hundred
66
+ * control characters) unnamed.
67
+ *
68
+ * ## Threat model, stated because it differs from `safeInline`'s
69
+ *
70
+ * A `domain` is never another principal's free text. `/memory/stats` reports
71
+ * the caller's own org bucket only and never contains a room; an atom that
72
+ * lives in a room bucket carries the canonical `xroom:<room_id>` as its domain,
73
+ * and core 400s any non-canonical spelling of that while `room_id` itself is
74
+ * charset-validated. So every value rendered here is either the caller's own
75
+ * string or a machine-shaped address — with one exception. Room NAMES are
76
+ * another principal's free text — chosen by an owner, shown to a joiner — and
77
+ * they are printed through this module too ({@link roomNamePhrase}, 0.8.1): the
78
+ * literal is already the anti-injection treatment (one line; quotes,
79
+ * backslashes and invisibles escaped), while the sanitiser it replaces did not
80
+ * make hostile names harmless so much as it made ordinary names WRONG — two
81
+ * live rooms named "проект" and "план" both rendered "(unnamed room)" in the
82
+ * note that asks the reader to pick one, and "Zoë" was quoted as "Zo". A room
83
+ * name is display-only (the ADDRESS beside it is what a reader re-sends), so a
84
+ * name that cannot be printed within the cap degrades to a phrase saying so —
85
+ * never to a truncated or rewritten name, and never to "(unnamed room)", which
86
+ * is reserved for a room that genuinely has no name.
87
+ */
88
+ export interface ExactLiteral {
89
+ /** The value as a JSON string literal, quotes included. */
90
+ literal: string;
91
+ /**
92
+ * True when the literal is more than the value wrapped in quotes — i.e. it
93
+ * contains at least one escape, so the text between the quotes is NOT the
94
+ * name and must be decoded before it is sent back.
95
+ */
96
+ escaped: boolean;
97
+ }
98
+ /** Longest literal we will print for a domain name in a sentence or a list. */
99
+ export declare const MAX_DOMAIN_LITERAL = 256;
100
+ /** Longest literal we will print as an `@domain` tag on a result line. */
101
+ export declare const MAX_DOMAIN_TAG_LITERAL = 128;
102
+ /**
103
+ * The value as a reproducible JSON string literal, or `null` when it cannot be
104
+ * printed within `max` — in which case the caller must not name it at all.
105
+ */
106
+ export declare function exactLiteral(value: string | null | undefined, max?: number): ExactLiteral | null;
107
+ /**
108
+ * A domain named inside a sentence: the exact literal, or `fallback` — a phrase
109
+ * that names nothing — when it cannot be reproduced.
110
+ */
111
+ export declare function domainPhrase(name: string | null | undefined, fallback?: string, max?: number): string;
112
+ /**
113
+ * A room name as display text, with the three states kept apart because each
114
+ * used to collapse into the next (reviews, 2026-08-08):
115
+ *
116
+ * - a printable name is the exact literal — "проект" is `"проект"`, not
117
+ * "(unnamed room)"; "Zoë" is `"Zoë"`, not `"Zo"`;
118
+ * - a name that cannot be printed within the cap is SAID to be unprintable —
119
+ * claiming the room is unnamed would be false, and printing an altered
120
+ * spelling would be worse;
121
+ * - only a genuinely absent or empty name is "(unnamed room)".
122
+ *
123
+ * The phrases carry no quotes of their own, so they cannot be mistaken for a
124
+ * printed name: every real name on a page is a quoted JSON literal, and a room
125
+ * literally named `(unnamed room)` still renders distinguishably, in quotes.
126
+ *
127
+ * `name` is `unknown` because two of the call sites read it off the wire where
128
+ * the types are aspirational; a non-string is not a name, so it falls to the
129
+ * unnamed phrase — the same narrowing `asRoom` (src/scope.ts) applies.
130
+ */
131
+ export declare function roomNamePhrase(name: unknown): string;
132
+ /**
133
+ * The `Domains:` line of memory_stats — the surface two tool descriptions send
134
+ * the reader to "to confirm the exact domain name before a delete", which it
135
+ * could not do while the names went through `safeInline`.
136
+ *
137
+ * A name that cannot be printed exactly is COUNTED, never silently dropped:
138
+ * dropping it would make this list assert that a store does not exist, on the
139
+ * one surface whose job is the opposite. An absent or empty list keeps the
140
+ * existing "none reported", which is honest about both of the states core can
141
+ * produce (no key on a non-core 200, or a genuinely empty bucket).
142
+ */
143
+ export declare function formatDomainList(domains: unknown, emptyLabel?: string): string;
144
+ /**
145
+ * The one clause that explains the escaping, so a reader cannot mistake
146
+ * `"engineering\u200b"` for a name whose last six characters are a backslash, a
147
+ * `u` and four digits.
148
+ *
149
+ * Deliberately absent unless an escape was actually used: the common case is a
150
+ * plain name, where the quotes are the whole convention and a legend would be
151
+ * the sort of caveat that trains readers to skip caveats.
152
+ */
153
+ export declare const DOMAIN_ESCAPE_LEGEND: string;
154
+ /**
155
+ * Append {@link DOMAIN_ESCAPE_LEGEND} to `message` if one of `names` was printed
156
+ * in it WITH an escape, and the legend is not there already.
157
+ *
158
+ * Two properties, both by construction rather than by call-site discipline:
159
+ *
160
+ * - At most once per answer. A message is assembled from several independent
161
+ * notes and more than one of them may have named a store.
162
+ * - Only for a name that is actually on the page. A caller passes the
163
+ * candidates it had; whether a sentence named one of them depends on the
164
+ * branch it took (`scopeLabel` says "that room" for a room address, and
165
+ * nothing at all for a name it cannot reproduce). A legend that explains
166
+ * escapes in a name the reader cannot see is a caveat about nothing.
167
+ */
168
+ export declare function withDomainEscapeLegend(message: string, ...names: (string | null | undefined)[]): string;
package/dist/names.js ADDED
@@ -0,0 +1,216 @@
1
+ /**
2
+ * Naming a thing so the reader can reproduce it — the counterpart to
3
+ * `safeInline`, and deliberately NOT the same tool.
4
+ *
5
+ * `safeInline` (src/render.ts) is a SANITISER: it maps every character outside
6
+ * `[\w .@:+/-]` to a space, collapses runs of whitespace, trims the ends and
7
+ * truncates. That is the right treatment for a display string chosen by a
8
+ * DIFFERENT principal — an agent name — where the only job is to make a
9
+ * hostile value harmless to paste into a model's context and nothing about the
10
+ * value needs to stay recognisable. (Room names looked like that class and are
11
+ * not — see the threat model at the bottom.)
12
+ *
13
+ * It is the WRONG treatment for any value the reader is expected to compare or
14
+ * send back, and it was being used for exactly that (reviews, 2026-08-08):
15
+ *
16
+ * - `" engineering"` and `"engineering"` rendered identically, so the
17
+ * `@domain` tag added in this release could point a reader at the wrong
18
+ * store, and `memory_stats` could not support the byte-exact check that
19
+ * `memory_delete_domain`'s own description sends the reader there for.
20
+ * - `"проект:acme"` and `"план:acme"` both rendered as `:acme` — one lossy
21
+ * transform, two distinct stores, one output string. A whitespace-only
22
+ * domain rendered as the empty string, i.e. as no name at all.
23
+ * - Core's only write-rejection reason, `"Below importance threshold (0.412 <
24
+ * 0.500)"`, was relayed under the label `Server reason:` as
25
+ * `Below importance threshold 0.412 0.500` — the comparison operator and
26
+ * both delimiters deleted from a quote that claims to be verbatim.
27
+ *
28
+ * Domain names are matched byte-for-byte everywhere in the engine (parameterised
29
+ * equality on raw bytes; no trim, no case-fold, no normalisation in the schema,
30
+ * the storage layer or a migration), so a name that cannot be reproduced cannot
31
+ * be acted on. Hence the rule this module implements: **print a value exactly,
32
+ * or do not print it at all.**
33
+ *
34
+ * ## The renderer
35
+ *
36
+ * `exactLiteral` returns the value as a JSON string literal, chosen because it
37
+ * satisfies both halves of the problem at once and needs no bespoke decoder:
38
+ *
39
+ * - REVERSIBLE. `JSON.parse(literal) === value`, for every input, including
40
+ * lone surrogates. That is the contract, and it is asserted directly in
41
+ * test/names.test.ts rather than approximated by sampling characters.
42
+ * Spaces stay inside the quotes, so leading/trailing/doubled whitespace is
43
+ * visible; control characters become `\n` or a `\uXXXX` escape; non-ASCII
44
+ * letters pass through untouched, so Cyrillic survives as itself.
45
+ * - INJECTION-SAFE for the surface it lands on. The output is one line: no
46
+ * raw newline can forge a new instruction block, `"` and `\` are escaped so
47
+ * the quoted context cannot be closed early, and line/paragraph separators
48
+ * (U+2028/U+2029, which `JSON.stringify` leaves raw) are escaped here.
49
+ *
50
+ * On top of `JSON.stringify` this escapes everything invisible or
51
+ * whitespace-confusable that it leaves alone: U+007F–U+009F, all format
52
+ * characters (zero-width space and joiners, soft hyphen, bidi overrides, BOM),
53
+ * line and paragraph separators, and every space separator EXCEPT plain U+0020
54
+ * — so a name padded with a no-break space is distinguishable from one padded
55
+ * with an ordinary one. Combining marks are left as they are: they are ordinary
56
+ * letters in many languages, and the guarantee here is byte-exact round-trip,
57
+ * not visual uniqueness.
58
+ *
59
+ * ## Truncation
60
+ *
61
+ * A truncated name is not reproducible, so nothing is truncated. When the
62
+ * literal would exceed the cap, `exactLiteral` returns `null` and the call site
63
+ * must choose a NAME-FREE phrasing ("the domain you passed"). The caps are set
64
+ * so this is unreachable for any name the engine can hold — the `atoms.domain`
65
+ * column is `VARCHAR(100)` — leaving only pathological values (a hundred
66
+ * control characters) unnamed.
67
+ *
68
+ * ## Threat model, stated because it differs from `safeInline`'s
69
+ *
70
+ * A `domain` is never another principal's free text. `/memory/stats` reports
71
+ * the caller's own org bucket only and never contains a room; an atom that
72
+ * lives in a room bucket carries the canonical `xroom:<room_id>` as its domain,
73
+ * and core 400s any non-canonical spelling of that while `room_id` itself is
74
+ * charset-validated. So every value rendered here is either the caller's own
75
+ * string or a machine-shaped address — with one exception. Room NAMES are
76
+ * another principal's free text — chosen by an owner, shown to a joiner — and
77
+ * they are printed through this module too ({@link roomNamePhrase}, 0.8.1): the
78
+ * literal is already the anti-injection treatment (one line; quotes,
79
+ * backslashes and invisibles escaped), while the sanitiser it replaces did not
80
+ * make hostile names harmless so much as it made ordinary names WRONG — two
81
+ * live rooms named "проект" and "план" both rendered "(unnamed room)" in the
82
+ * note that asks the reader to pick one, and "Zoë" was quoted as "Zo". A room
83
+ * name is display-only (the ADDRESS beside it is what a reader re-sends), so a
84
+ * name that cannot be printed within the cap degrades to a phrase saying so —
85
+ * never to a truncated or rewritten name, and never to "(unnamed room)", which
86
+ * is reserved for a room that genuinely has no name.
87
+ */
88
+ /**
89
+ * Everything `JSON.stringify` passes through raw that a reader cannot see, or
90
+ * cannot tell apart from a plain space. U+0020 is exempted in the replacer so
91
+ * ordinary spaces stay legible inside the quotes.
92
+ */
93
+ const NOT_REPRODUCIBLE_RAW = /[\p{Cc}\p{Cf}\p{Cs}\p{Zl}\p{Zp}\p{Zs}]/gu;
94
+ /** Escape every UTF-16 unit of a match — a match may be a surrogate pair. */
95
+ function escapeUnits(match) {
96
+ let out = "";
97
+ for (let i = 0; i < match.length; i++) {
98
+ out += "\\u" + match.charCodeAt(i).toString(16).padStart(4, "0");
99
+ }
100
+ return out;
101
+ }
102
+ /** Longest literal we will print for a domain name in a sentence or a list. */
103
+ export const MAX_DOMAIN_LITERAL = 256;
104
+ /** Longest literal we will print as an `@domain` tag on a result line. */
105
+ export const MAX_DOMAIN_TAG_LITERAL = 128;
106
+ /**
107
+ * The value as a reproducible JSON string literal, or `null` when it cannot be
108
+ * printed within `max` — in which case the caller must not name it at all.
109
+ */
110
+ export function exactLiteral(value, max = MAX_DOMAIN_LITERAL) {
111
+ // Not just a null check: a response field the types say is a string can be a
112
+ // number or an object on the wire, and `JSON.stringify(5)` returns an
113
+ // UNQUOTED `5` that no longer round-trips. A value that is not a string is
114
+ // not a name we can print exactly, so we do not print it.
115
+ if (typeof value !== "string")
116
+ return null;
117
+ const literal = JSON.stringify(value).replace(NOT_REPRODUCIBLE_RAW, (m) => m === " " ? m : escapeUnits(m));
118
+ if (literal.length > max)
119
+ return null;
120
+ return { literal, escaped: literal.slice(1, -1) !== value };
121
+ }
122
+ /**
123
+ * A domain named inside a sentence: the exact literal, or `fallback` — a phrase
124
+ * that names nothing — when it cannot be reproduced.
125
+ */
126
+ export function domainPhrase(name, fallback = "the domain you passed", max = MAX_DOMAIN_LITERAL) {
127
+ return exactLiteral(name, max)?.literal ?? fallback;
128
+ }
129
+ /**
130
+ * A room name as display text, with the three states kept apart because each
131
+ * used to collapse into the next (reviews, 2026-08-08):
132
+ *
133
+ * - a printable name is the exact literal — "проект" is `"проект"`, not
134
+ * "(unnamed room)"; "Zoë" is `"Zoë"`, not `"Zo"`;
135
+ * - a name that cannot be printed within the cap is SAID to be unprintable —
136
+ * claiming the room is unnamed would be false, and printing an altered
137
+ * spelling would be worse;
138
+ * - only a genuinely absent or empty name is "(unnamed room)".
139
+ *
140
+ * The phrases carry no quotes of their own, so they cannot be mistaken for a
141
+ * printed name: every real name on a page is a quoted JSON literal, and a room
142
+ * literally named `(unnamed room)` still renders distinguishably, in quotes.
143
+ *
144
+ * `name` is `unknown` because two of the call sites read it off the wire where
145
+ * the types are aspirational; a non-string is not a name, so it falls to the
146
+ * unnamed phrase — the same narrowing `asRoom` (src/scope.ts) applies.
147
+ */
148
+ export function roomNamePhrase(name) {
149
+ if (typeof name !== "string" || name === "")
150
+ return "(unnamed room)";
151
+ return exactLiteral(name)?.literal ?? "(room name cannot be printed exactly)";
152
+ }
153
+ /**
154
+ * The `Domains:` line of memory_stats — the surface two tool descriptions send
155
+ * the reader to "to confirm the exact domain name before a delete", which it
156
+ * could not do while the names went through `safeInline`.
157
+ *
158
+ * A name that cannot be printed exactly is COUNTED, never silently dropped:
159
+ * dropping it would make this list assert that a store does not exist, on the
160
+ * one surface whose job is the opposite. An absent or empty list keeps the
161
+ * existing "none reported", which is honest about both of the states core can
162
+ * produce (no key on a non-core 200, or a genuinely empty bucket).
163
+ */
164
+ export function formatDomainList(domains, emptyLabel = "none reported") {
165
+ if (!Array.isArray(domains) || domains.length === 0)
166
+ return emptyLabel;
167
+ const rendered = domains.map((d) => exactLiteral(d));
168
+ const named = rendered.filter((x) => x !== null);
169
+ const unnamed = rendered.length - named.length;
170
+ // "cannot be printed exactly", not "too long": length is the reachable cause,
171
+ // but a value that is not a string at all lands here too, and naming the wrong
172
+ // cause is the habit this release exists to break.
173
+ const tail = unnamed > 0
174
+ ? `${named.length > 0 ? " " : ""}(+${unnamed} name${unnamed === 1 ? "" : "s"} not shown — cannot be printed exactly)`
175
+ : "";
176
+ return named.map((x) => x.literal).join(", ") + tail;
177
+ }
178
+ /**
179
+ * The one clause that explains the escaping, so a reader cannot mistake
180
+ * `"engineering\u200b"` for a name whose last six characters are a backslash, a
181
+ * `u` and four digits.
182
+ *
183
+ * Deliberately absent unless an escape was actually used: the common case is a
184
+ * plain name, where the quotes are the whole convention and a legend would be
185
+ * the sort of caveat that trains readers to skip caveats.
186
+ */
187
+ export const DOMAIN_ESCAPE_LEGEND = "\n\n(Quoted names above are printed as JSON string literals so they can be " +
188
+ "reproduced exactly: the surrounding quotes are not part of the name, and an " +
189
+ "escape such as \\u00a0 or \\n stands for ONE character. Decode it before you " +
190
+ "send the name back — do not paste the escape text.)";
191
+ /** Substring that identifies the legend, for the at-most-once check below. */
192
+ const LEGEND_MARK = "printed as JSON string literals";
193
+ /**
194
+ * Append {@link DOMAIN_ESCAPE_LEGEND} to `message` if one of `names` was printed
195
+ * in it WITH an escape, and the legend is not there already.
196
+ *
197
+ * Two properties, both by construction rather than by call-site discipline:
198
+ *
199
+ * - At most once per answer. A message is assembled from several independent
200
+ * notes and more than one of them may have named a store.
201
+ * - Only for a name that is actually on the page. A caller passes the
202
+ * candidates it had; whether a sentence named one of them depends on the
203
+ * branch it took (`scopeLabel` says "that room" for a room address, and
204
+ * nothing at all for a name it cannot reproduce). A legend that explains
205
+ * escapes in a name the reader cannot see is a caveat about nothing.
206
+ */
207
+ export function withDomainEscapeLegend(message, ...names) {
208
+ if (message.includes(LEGEND_MARK))
209
+ return message;
210
+ const needed = names.some((n) => {
211
+ const r = exactLiteral(n);
212
+ return r !== null && r.escaped && message.includes(r.literal);
213
+ });
214
+ return needed ? message + DOMAIN_ESCAPE_LEGEND : message;
215
+ }
216
+ //# sourceMappingURL=names.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"names.js","sourceRoot":"","sources":["../src/names.ts"],"names":[],"mappings":"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"}
package/dist/render.d.ts CHANGED
@@ -36,10 +36,25 @@ export type RecentItem = {
36
36
  provenance?: Provenance | null;
37
37
  };
38
38
  /**
39
- * Sanitize a string for inline interpolation into tool output (CN-032:
40
- * hostile connectors choose their own agent_name). Charset/cap identical
41
- * to index.ts's safeInline — re-exported here so both render paths share
42
- * one implementation.
39
+ * Sanitize a string for inline interpolation into tool output (CN-032: hostile
40
+ * connectors choose their own agent_name). The single implementation, imported
41
+ * by index.ts and injected into src/scope.ts for the machine-shaped room
42
+ * fields (address, room_id — core charset-validates both; this is a defensive
43
+ * second pass).
44
+ *
45
+ * NOT for anything the reader must reproduce. This is lossy and non-injective
46
+ * by design — non-ASCII becomes spaces, whitespace is collapsed and trimmed,
47
+ * the tail is cut — so two distinct values can come out as one string and a
48
+ * padded value comes out as its clean twin. For a domain name, an id, or
49
+ * anything else that gets compared or sent back, use src/names.ts
50
+ * (`exactLiteral`), which prints exactly or refuses to print.
51
+ *
52
+ * NOT for room NAMES either, as of 0.8.1 (`roomNamePhrase`, src/names.ts).
53
+ * They are display-only, but this sanitiser did not make them harmless so much
54
+ * as it made them wrong: "проект" rendered "(unnamed room)", and "Zoë" was
55
+ * quoted as "Zo" — a different name presented as the name. The exact literal
56
+ * is single-line with quotes and invisibles escaped, so it carries the same
57
+ * anti-injection property without the renaming.
43
58
  */
44
59
  export declare function safeInline(s: string | undefined | null, cap?: number): string;
45
60
  /**
@@ -47,6 +62,33 @@ export declare function safeInline(s: string | undefined | null, cap?: number):
47
62
  * `principal` (may be an email / PII), even though the response carries it.
48
63
  */
49
64
  export declare function formatAuthorTag(p?: Provenance | null): string;
65
+ /**
66
+ * ` @"domain"` — which store the memory actually came from, printed so it can
67
+ * be re-sent.
68
+ *
69
+ * Absent before 0.8.1, and its absence was a real trap: an unscoped search for
70
+ * a common name returned five different people's "Maria Chen" from five
71
+ * different projects, ranked together, with nothing on the line to tell them
72
+ * apart (dogfood, 2026-08-07). A reader could not answer "is this mine?"
73
+ * without re-querying scoped.
74
+ *
75
+ * The tag went out through `safeInline`, which defeated the one job it has. It
76
+ * is a DISAMBIGUATOR between stores whose names differ by a space or a
77
+ * character set, and the sanitiser erases exactly those differences:
78
+ * `"проект:acme"` and `"план:acme"` both printed `@:acme`, merging the two
79
+ * stores the tag exists to separate. Worse, `" general"` sanitised to `general`
80
+ * and was then SUPPRESSED by the check below, so a memory from a padded store
81
+ * rendered as if it came from the caller's default bucket. Now the value is
82
+ * printed as an exact JSON literal (src/names.ts) and only the literal string
83
+ * `"general"` is suppressed.
84
+ *
85
+ * Still omitted when the server doesn't send a domain, and for the caller's own
86
+ * default bucket — labelling everything `@"general"` would be noise on the
87
+ * common case. When the literal will not fit, the tag says so rather than
88
+ * disappearing: an absent tag means "the default bucket", which would be a
89
+ * false statement about the store.
90
+ */
91
+ export declare function formatDomainTag(domain?: string): string;
50
92
  /**
51
93
  * ` · 2026-08-01 21:04Z` — minute-precision UTC, compact enough for a line
52
94
  * tail, precise enough to order a same-day room conversation by eye.
@@ -55,11 +97,33 @@ export declare function formatAuthorTag(p?: Provenance | null): string;
55
97
  export declare function formatDateTag(createdAt?: string): string;
56
98
  /**
57
99
  * One memory_read result line:
58
- * `N. [82%] content (concepts) [by X] · 2026-08-01 21:04Z\n id: <uuid>`
100
+ * `N. content (concepts) @"domain" [by X] · 2026-08-01 21:04Z\n id: <uuid>`
59
101
  *
60
102
  * The id sits on its own indented line: full-width (feedback/delete need
61
103
  * the EXACT id, truncation would break them) without crowding the content
62
104
  * line a model actually reads.
105
+ *
106
+ * NO SCORE, as of 0.8.1 (Eduard's call). The line used to lead with the
107
+ * server's `relevance` rendered as a percentage, and that was wrong twice
108
+ * over:
109
+ *
110
+ * - It read as confidence and wasn't. The engine's relevance floor
111
+ * (`min_relevance`, default 0.3) is low enough that a query about
112
+ * something never stored still returns near-neighbours — dogfooding got a
113
+ * real person's profile at "73%" for a question about someone fictional,
114
+ * and month-old notes at "73%" for "what's new". A number that in practice
115
+ * never bottoms out cannot say "I don't know", but a reader takes it as
116
+ * though it can. (An earlier draft of this comment claimed there was NO
117
+ * floor. There is one; it is simply too low to mean anything — review,
118
+ * 2026-08-08.)
119
+ * - It wasn't a percentage of anything. Positive feedback pushes the score
120
+ * above 1.0, so reads showed "112%".
121
+ *
122
+ * Rank order still carries the ranking, which is the part that is true. A
123
+ * genuinely dependable signal is worth surfacing and is on the 0.9 list —
124
+ * this is a deliberate removal until there is one, not a decision that
125
+ * scores are useless. `relevance` stays on the type because the server sends
126
+ * it; we simply do not put it in front of a reader yet.
63
127
  */
64
128
  export declare function formatReadItem(item: ReadItem, index: number): string;
65
129
  /**
@@ -67,5 +131,15 @@ export declare function formatReadItem(item: ReadItem, index: number): string;
67
131
  * relevance, date leads because the feed is ORDERED by it.
68
132
  */
69
133
  export declare function formatRecentItem(item: RecentItem, index: number): string;
70
- /** Full feed page: items newest-first + how to continue / that it's over. */
134
+ /**
135
+ * Full feed page: items newest-first + how to continue / that it's over.
136
+ *
137
+ * Returns the BODY only — no escape legend. The legend belongs to the final
138
+ * answer, and the caller (src/index.ts) appends it AFTER capResult: appended
139
+ * here it sat before the cap, which truncates from the end, so the one
140
+ * sentence explaining that an escape like \u200b is ONE character was the
141
+ * first thing cut from every page long enough to be capped (truth F6,
142
+ * 2026-08-08). Once-per-answer still holds — withDomainEscapeLegend is
143
+ * at-most-once by construction (src/names.ts).
144
+ */
71
145
  export declare function formatRecentPage(items: RecentItem[], nextCursor?: string | null): string;