instar 1.3.94 → 1.3.96
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/commands/machine.d.ts.map +1 -1
- package/dist/commands/machine.js +15 -1
- package/dist/commands/machine.js.map +1 -1
- package/dist/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +13 -0
- package/dist/commands/server.js.map +1 -1
- package/dist/core/MachineIdentity.d.ts +2 -0
- package/dist/core/MachineIdentity.d.ts.map +1 -1
- package/dist/core/MachineIdentity.js +4 -0
- package/dist/core/MachineIdentity.js.map +1 -1
- package/dist/core/PairingSessionStore.d.ts +12 -0
- package/dist/core/PairingSessionStore.d.ts.map +1 -0
- package/dist/core/PairingSessionStore.js +54 -0
- package/dist/core/PairingSessionStore.js.map +1 -0
- package/dist/lifeline/ServerSupervisor.d.ts.map +1 -1
- package/dist/lifeline/ServerSupervisor.js +25 -12
- package/dist/lifeline/ServerSupervisor.js.map +1 -1
- package/dist/monitoring/AttributionResolver.d.ts +18 -0
- package/dist/monitoring/AttributionResolver.d.ts.map +1 -1
- package/dist/monitoring/AttributionResolver.js +18 -0
- package/dist/monitoring/AttributionResolver.js.map +1 -1
- package/dist/monitoring/BurnDetector.d.ts.map +1 -1
- package/dist/monitoring/BurnDetector.js +17 -1
- package/dist/monitoring/BurnDetector.js.map +1 -1
- package/dist/monitoring/TokenLedger.d.ts +26 -0
- package/dist/monitoring/TokenLedger.d.ts.map +1 -1
- package/dist/monitoring/TokenLedger.js +121 -4
- package/dist/monitoring/TokenLedger.js.map +1 -1
- package/dist/server/machineRoutes.d.ts.map +1 -1
- package/dist/server/machineRoutes.js +64 -9
- package/dist/server/machineRoutes.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +3 -3
- package/upgrades/1.3.95.md +39 -0
- package/upgrades/1.3.96.md +37 -0
- package/upgrades/side-effects/burn-attribution-wiring.md +103 -0
- package/upgrades/side-effects/native-rebuild-loop-and-wake-socket-crash-fix.md +66 -0
- package/upgrades/side-effects/noninteractive-pool-join.md +85 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machineRoutes.js","sourceRoot":"","sources":["../../src/server/machineRoutes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAQ,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAK1D,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAsEzE,sEAAsE;AAEtE,MAAM,UAAU,mBAAmB,CAAC,GAAwB;IAC1D,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB,MAAM,cAAc,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,iBAAiB,GAAG,IAAI,cAAc,EAAE,CAAC;IAC/C,MAAM,gBAAgB,GAAG,IAAI,cAAc,EAAE,CAAC;IAE9C,gFAAgF;IAChF,2EAA2E;IAC3E,4EAA4E;IAC5E,iFAAiF;IACjF,8EAA8E;IAE9E,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACrD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAU,CAAC;QACnC,MAAM,IAAI,GAAG,WAAiC,CAAC;QAC/C,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,IAAI,IAAK,GAAG,CAAC,IAAY,CAAC,KAAK,CAAoC,CAAC;QACvF,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YACpC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;gBACrB,KAAK,EAAE,uBAAuB;gBAC9B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,MAAM,EAAE,gBAAgB,KAAK,CAAC,MAAM,qBAAqB,IAAI,CAAC,SAAS,EAAE;aAC1E,CAAC,CAAC;YACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mDAAmD,EAAE,CAAC,CAAC;YACrF,OAAO;QACT,CAAC;QACD,GAAG,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,mFAAmF;IACnF,0EAA0E;IAC1E,+EAA+E;IAC/E,gFAAgF;IAChF,+EAA+E;IAC/E,uEAAuE;IACvE,wDAAwD;IAExD,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACzD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAU,CAAC;QACnC,MAAM,IAAI,GAAG,WAAiC,CAAC;QAC/C,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,IAAI,IAAK,GAAG,CAAC,IAAY,CAAC,KAAK,CAErC,CAAC;QACd,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YAC7F,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;YAC5B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,kCAAkC,EAAE,CAAC,CAAC;YACpE,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,GAAG,CAAC,kBAAkB,CACnC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EAAE,EAChG,IAAI,CAAC,SAAS,CACf,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC;QAC3F,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;gBACrB,KAAK,EAAE,oBAAoB;gBAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACzD,CAAC,CAAC;YACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,kDAAkD,EAAE,CAAC,CAAC;QACtF,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,qEAAqE;IAErE,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACzD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAU,CAAC;QACnC,MAAM,IAAI,GAAG,WAAiC,CAAC;QAE/C,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAiB,CAAC;QACvC,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;YAChF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,2BAA2B,EAAE,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,gEAAgE;QAChE,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YACvC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;gBACrB,KAAK,EAAE,oBAAoB;gBAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,MAAM,EAAE,oBAAoB,QAAQ,CAAC,MAAM,qBAAqB,IAAI,CAAC,SAAS,EAAE;aACjF,CAAC,CAAC;YACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uDAAuD,EAAE,CAAC,CAAC;YACzF,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QAEvE,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;YACrB,KAAK,EAAE,oBAAoB;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM;SACP,CAAC,CAAC;QAEH,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,qDAAqD;YACrD,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;YACjB,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;QAC7D,CAAC;aAAM,IAAI,MAAM,KAAK,oBAAoB,EAAE,CAAC;YAC3C,+CAA+C;YAC/C,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,wCAAwC;YACxC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,mEAAmE;IACnE,mFAAmF;IACnF,sEAAsE;IAEtE,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACpC,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAEtE,IAAI,CAAC,WAAW,IAAI,CAAC,eAAe,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QAED,6DAA6D;QAC7D,wEAAwE;QACxE,gFAAgF;QAEhF,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;YACrB,KAAK,EAAE,iBAAiB;YACxB,SAAS,EAAE,eAAe,CAAC,SAAS;YACpC,WAAW,EAAE,eAAe,CAAC,IAAI;YACjC,EAAE,EAAE,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,SAAS;SACpD,CAAC,CAAC;QAEH,4EAA4E;QAC5E,MAAM,aAAa,GAAG,GAAG,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;QAEzD,GAAG,CAAC,IAAI,CAAC;YACP,MAAM,EAAE,SAAS;YACjB,eAAe,EAAE,aAAa;YAC9B,OAAO,EAAE,4DAA4D;SACtE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,oFAAoF;IACpF,qEAAqE;IACrE,4EAA4E;IAC5E,8EAA8E;IAC9E,+EAA+E;IAE/E,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC7D,MAAM,EAAE,WAAW,EAAE,GAAG,GAAU,CAAC;QACnC,MAAM,IAAI,GAAG,WAAiC,CAAC;QAC/C,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,IAAI,IAAK,GAAG,CAAC,IAAY,CAAC,QAAQ,CAE3C,CAAC;QACd,IACE,CAAC,QAAQ;YACT,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ;YACpC,CAAC,QAAQ,CAAC,eAAe;YACzB,OAAO,QAAQ,CAAC,iBAAiB,KAAK,QAAQ,EAC9C,CAAC;YACD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;YAClE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;YACxB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAC,CAAC;YACxE,OAAO;QACT,CAAC;QACD,GAAG,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,iFAAiF;IACjF,+EAA+E;IAC/E,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,kCAAkC;IAElC,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC9D,MAAM,EAAE,WAAW,EAAE,GAAG,GAAU,CAAC;QACnC,MAAM,IAAI,GAAG,WAAiC,CAAC;QAC/C,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,IAAK,GAAG,CAAC,IAAY,CAAC,MAAM,CAEvC,CAAC;QACd,IACE,CAAC,MAAM;YACP,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ;YACpC,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;YACnC,OAAO,MAAM,CAAC,mBAAmB,KAAK,QAAQ;YAC9C,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAChC,CAAC;YACD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACvB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qCAAqC,EAAE,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QACD,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,qFAAqF;IACrF,8EAA8E;IAC9E,6EAA6E;IAC7E,gFAAgF;IAEhF,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC3D,MAAM,EAAE,WAAW,EAAE,GAAG,GAAU,CAAC;QACnC,MAAM,IAAI,GAAG,WAAiC,CAAC;QAC/C,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,IAAK,GAAG,CAAC,IAAY,CAAC,GAAG,CAEjC,CAAC;QACd,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,eAAe,IAAI,OAAO,GAAG,CAAC,iBAAiB,KAAK,QAAQ,EAAE,CAAC;YACjH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC,CAAC;YAC/D,OAAO;QACT,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;YACtB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oCAAoC,EAAE,CAAC,CAAC;YACtE,OAAO;QACT,CAAC;QACD,GAAG,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACtC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,oFAAoF;IACpF,gFAAgF;IAChF,4EAA4E;IAC5E,0EAA0E;IAE1E,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC7D,MAAM,EAAE,WAAW,EAAE,GAAG,GAAU,CAAC;QACnC,MAAM,IAAI,GAAG,WAAiC,CAAC;QAC/C,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;YACxB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAC,CAAC;YACxE,OAAO;QACT,CAAC;QACD,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,qEAAqE;IAErE,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACjE,MAAM,SAAS,GAAG,iBAAiB,CAAC,QAAQ,EAAE,CAAC;QAC/C,GAAG,CAAC,IAAI,CAAC;YACP,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,SAAS,EAAE,SAAS,CAAC,SAAS;SAC/B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,qEAAqE;IAErE,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,GAAG,GAAU,CAAC;QACnC,MAAM,IAAI,GAAG,WAAiC,CAAC;QAC/C,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAEnD,sBAAsB;QACtB,IAAI,CAAC,SAAS,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;YAClE,OAAO;QACT,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,6CAA6C,EAAE,CAAC,CAAC;YAC/E,OAAO;QACT,CAAC;QAED,gCAAgC;QAChC,gHAAgH;QAChH,MAAM,WAAW,GAAG,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QACpC,OAAO,WAAW,CAAC,SAAS,CAAC;QAC7B,OAAO,WAAW,CAAC,kBAAkB,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;aACzC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;aACnC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjB,MAAM,gBAAgB,GAAG,GAAG,SAAS,IAAI,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,cAAc,IAAI,QAAQ,EAAE,CAAC;QAE5F,MAAM,YAAY,GAAG,GAAG,CAAC,eAAe,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;YACzE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;oBACrB,KAAK,EAAE,0BAA0B;oBACjC,SAAS,EAAE,IAAI,CAAC,SAAS;iBAC1B,CAAC,CAAC;gBACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC,CAAC;gBAC/D,OAAO;YACT,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QAED,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;YACrB,KAAK,EAAE,mBAAmB;YAC1B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,GAAG,CAAC,eAAe,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC,SAAS;SAC5F,CAAC,CAAC;QAEH,wDAAwD;QACxD,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAErD,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,CAAC;gBAC1B,GAAG,CAAC,IAAI,CAAC;oBACP,MAAM,EAAE,WAAW;oBACnB,OAAO,EAAE,2DAA2D;iBACrE,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,0CAA0C;YAC1C,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;YAC9D,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAExD,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;gBACrB,KAAK,EAAE,mBAAmB;gBAC1B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,IAAI,EAAE,GAAG,CAAC,cAAc;aACzB,CAAC,CAAC;YAEH,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;YAEjB,GAAG,CAAC,IAAI,CAAC;gBACP,MAAM,EAAE,YAAY;gBACpB,KAAK,EAAE,aAAa,CAAC,KAAK;gBAC1B,OAAO,EAAE,kDAAkD;aAC5D,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;gBACrB,KAAK,EAAE,gBAAgB;gBACvB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;YACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACpD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,yEAAyE;IAEzE,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACjE,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,EAAE,CAAC;QAC9C,GAAG,CAAC,IAAI,CAAC;YACP,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,SAAS,EAAE,SAAS,CAAC,SAAS;SAC/B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,mEAAmE;IAEnE,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC5D,MAAM,EAAE,WAAW,EAAE,GAAG,GAAU,CAAC;QACnC,MAAM,IAAI,GAAG,WAAiC,CAAC;QAC/C,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAE/F,gDAAgD;QAChD,IAAI,CAAC,SAAS,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;YAClE,OAAO;QACT,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,6CAA6C,EAAE,CAAC,CAAC;YAC/E,OAAO;QACT,CAAC;QAED,gCAAgC;QAChC,MAAM,WAAW,GAAG,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QACpC,OAAO,WAAW,CAAC,SAAS,CAAC;QAC7B,OAAO,WAAW,CAAC,kBAAkB,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;aACzC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;aACnC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjB,MAAM,gBAAgB,GAAG,GAAG,SAAS,IAAI,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,cAAc,IAAI,QAAQ,EAAE,CAAC;QAE5F,MAAM,YAAY,GAAG,GAAG,CAAC,eAAe,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;YACzE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;oBACrB,KAAK,EAAE,8BAA8B;oBACrC,SAAS,EAAE,IAAI,CAAC,SAAS;iBAC1B,CAAC,CAAC;gBACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC,CAAC;gBAC/D,OAAO;YACT,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QAED,gCAAgC;QAChC,IAAI,CAAC,kBAAkB,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;YACzD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mCAAmC,EAAE,CAAC,CAAC;YACrE,OAAO;QACT,CAAC;QAED,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;YACrB,KAAK,EAAE,sBAAsB;YAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;QAEH,mEAAmE;QACnE,+EAA+E;QAC/E,sDAAsD;QACtD,GAAG,CAAC,IAAI,CAAC;YACP,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE,iEAAiE;SAC3E,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,kEAAkE;IAElE,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC1D,MAAM,EAAE,WAAW,EAAE,GAAG,GAAU,CAAC;QACnC,MAAM,IAAI,GAAG,WAAiC,CAAC;QAC/C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAE3C,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACnB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,2BAA2B,EAAE,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,sBAAsB,IAAI,YAAY,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/F,OAAO;QACT,CAAC;QAED,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;YACrB,KAAK,EAAE,qBAAqB;YAC5B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;QAEH,kEAAkE;QAClE,wDAAwD;QACxD,GAAG,CAAC,IAAI,CAAC;YACP,MAAM,EAAE,UAAU;YAClB,IAAI;YACJ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,uEAAuE;IACvE,kFAAkF;IAClF,gDAAgD;IAEhD,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QAC5E,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACvB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC,CAAC;YAC3D,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC;YAC1B,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;gBAC3B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBACpD,OAAO;YACT,CAAC;YAED,6EAA6E;YAC7E,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YACpE,IAAI,QAAQ,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,wDAAwD,EAAE,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC;QACvF,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"machineRoutes.js","sourceRoot":"","sources":["../../src/server/machineRoutes.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./builtin-manifest.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
|
-
"generatedAt": "2026-05-
|
|
5
|
-
"instarVersion": "1.3.
|
|
4
|
+
"generatedAt": "2026-05-29T20:58:04.138Z",
|
|
5
|
+
"instarVersion": "1.3.96",
|
|
6
6
|
"entryCount": 193,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -753,7 +753,7 @@
|
|
|
753
753
|
"type": "route-group",
|
|
754
754
|
"domain": "coordination",
|
|
755
755
|
"sourcePath": "src/server/machineRoutes.ts",
|
|
756
|
-
"contentHash": "
|
|
756
|
+
"contentHash": "1d64bdcd5106044c1d9d976dfbd610876f09755ac38a57a76e2994eaa39b238d",
|
|
757
757
|
"since": "2025-01-01"
|
|
758
758
|
},
|
|
759
759
|
"route-group:secret-drop": {
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- bump: patch -->
|
|
4
|
+
|
|
5
|
+
## What Changed
|
|
6
|
+
|
|
7
|
+
**Multi-Machine Session Pool — non-interactive, code-authenticated pool join
|
|
8
|
+
(still dark).** An active-active pool has to form its mesh automatically, so a
|
|
9
|
+
machine can't require a human to confirm matching visual symbols (SAS) to join.
|
|
10
|
+
Pairing is now code-authenticated: `instar pair` persists a short-lived,
|
|
11
|
+
single-use pairing code (via the new `PairingSessionStore`), and the awake
|
|
12
|
+
machine's `/api/pair` endpoint validates the code presented by `instar join`,
|
|
13
|
+
then auto-registers the joiner as **standby**, stores its public keys, and
|
|
14
|
+
records its URL. The code (carried over the TLS tunnel) is the shared secret —
|
|
15
|
+
single-use, attempt-capped, time-limited; a joiner can only ever become standby.
|
|
16
|
+
This closes the one-directional-pairing gap (the awake machine now learns the
|
|
17
|
+
joiner without an interactive step). The whole layer stays gated behind
|
|
18
|
+
`multiMachine.sessionPool`.
|
|
19
|
+
|
|
20
|
+
## What to Tell Your User
|
|
21
|
+
|
|
22
|
+
Nothing changes yet — still off by default. It makes a multi-machine pool able to
|
|
23
|
+
form its mesh automatically (no per-machine visual-symbol confirmation) when the
|
|
24
|
+
pool is enabled.
|
|
25
|
+
|
|
26
|
+
## Summary of New Capabilities
|
|
27
|
+
|
|
28
|
+
- `PairingSessionStore` — persists the active pairing session so the running
|
|
29
|
+
server can validate a join code non-interactively.
|
|
30
|
+
- `/api/pair` now validates the code + auto-registers the joiner (standby) +
|
|
31
|
+
exchanges URLs/keys, instead of being signal-only/interactive.
|
|
32
|
+
|
|
33
|
+
## Evidence
|
|
34
|
+
|
|
35
|
+
- Unit: `tests/unit/pairing-session-store.test.ts`.
|
|
36
|
+
- Integration: `tests/integration/pool-noninteractive-pairing.test.ts`
|
|
37
|
+
(valid/wrong/locked-out/no-session/consumed/malformed) + updated legacy
|
|
38
|
+
`machine-routes.test.ts` assertion.
|
|
39
|
+
- Side-effects + security analysis: `upgrades/side-effects/noninteractive-pool-join.md`.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- bump: patch -->
|
|
4
|
+
|
|
5
|
+
## What Changed
|
|
6
|
+
|
|
7
|
+
**Fleet fix — runaway CPU from a server crash/rebuild loop.** Some agents could
|
|
8
|
+
get stuck restarting their server hundreds of times while pinning a CPU core.
|
|
9
|
+
Two bugs compounded: (1) the wake-socket helper threw an *asynchronous*
|
|
10
|
+
EADDRINUSE that the server boot didn't catch, crashing the whole server when a
|
|
11
|
+
duplicate/stale `listener.sock` holder was present; (2) the supervisor then
|
|
12
|
+
mis-read those bind failures as a native-module (better-sqlite3) problem and
|
|
13
|
+
force-rebuilt it on every restart — futile, CPU-heavy node-gyp compiles
|
|
14
|
+
(observed fleet-wide: hundreds of rebuilds across several agents). Now the wake
|
|
15
|
+
socket degrades gracefully on error (the agent keeps serving without it), and
|
|
16
|
+
better-sqlite3 is only rebuilt when it *actually* fails to load with an ABI
|
|
17
|
+
mismatch. This stops the loop and frees the CPU it was burning.
|
|
18
|
+
|
|
19
|
+
## What to Tell Your User
|
|
20
|
+
|
|
21
|
+
If your machine ever felt hot or an agent seemed to be "restarting a lot," this
|
|
22
|
+
removes a cause of that. No action needed — nothing changes in normal operation.
|
|
23
|
+
|
|
24
|
+
## Summary of New Capabilities
|
|
25
|
+
|
|
26
|
+
- Wake-socket failures (e.g. a duplicate/stale `listener.sock` holder) degrade
|
|
27
|
+
gracefully instead of crashing the server process.
|
|
28
|
+
- better-sqlite3 is rebuilt only on a real `NODE_MODULE_VERSION` ABI mismatch —
|
|
29
|
+
bind failures no longer trigger futile native rebuilds.
|
|
30
|
+
|
|
31
|
+
## Evidence
|
|
32
|
+
|
|
33
|
+
- `tests/unit/wake-socket-error-handling.test.ts` (wiring + live-peer EADDRINUSE
|
|
34
|
+
surfaces as a catchable event).
|
|
35
|
+
- `tests/unit/server-supervisor-preflight.test.ts` (no rebuild on bind-failure
|
|
36
|
+
when the module loads; rebuild still fires on a real ABI mismatch).
|
|
37
|
+
- Side-effects: `upgrades/side-effects/native-rebuild-loop-and-wake-socket-crash-fix.md`.
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# Side-Effects Review — wire AttributionResolver into ingest + exempt the pre-attribution sentinel
|
|
2
|
+
|
|
3
|
+
## What changed
|
|
4
|
+
|
|
5
|
+
Completes **Phase 2** of `docs/specs/token-burn-detection-and-self-heal.md`, which
|
|
6
|
+
was specced but never wired. Three source files + their tests:
|
|
7
|
+
|
|
8
|
+
1. **`src/monitoring/AttributionResolver.ts`** — exports a new
|
|
9
|
+
`PRE_ATTRIBUTION_KEY = 'unknown::pre-attribution'` constant: the sentinel
|
|
10
|
+
meaning "the resolver has never run on this event" (the column default and
|
|
11
|
+
the historical hardcoded ingest value). `resolveAttribution()` itself is
|
|
12
|
+
unchanged and never returns this sentinel.
|
|
13
|
+
|
|
14
|
+
2. **`src/monitoring/TokenLedger.ts`**
|
|
15
|
+
- `ingestLine()` now calls `resolveAttribution({sessionId, projectPath: cwd,
|
|
16
|
+
prompt: null, model})` instead of hardcoding `'unknown::pre-attribution'`.
|
|
17
|
+
The Claude-CLI JSONL assistant line carries no user prompt, so this is
|
|
18
|
+
cwd/job/hook/session-level attribution; prompt-shape attribution remains a
|
|
19
|
+
separate follow-up (needs user+assistant line correlation at ingest).
|
|
20
|
+
- New `ledger_meta` key/value table + `getMeta`/`setMeta` helpers.
|
|
21
|
+
- New `backfillAttributionOnce()` — one-shot, idempotent, marker-guarded
|
|
22
|
+
(`attribution-backfill-v1`) re-resolution of legacy sentinel rows, run
|
|
23
|
+
non-fatally from the constructor after `prepareStatements()`.
|
|
24
|
+
|
|
25
|
+
3. **`src/monitoring/BurnDetector.ts`** — `tick()` exempts the
|
|
26
|
+
`PRE_ATTRIBUTION_KEY` sentinel from the **absolute-share** trigger only. A
|
|
27
|
+
bucket at 100% under the sentinel is a coverage gap, not a burn. The
|
|
28
|
+
genuinely-residual `unknown::<sessionId>` key (resolver ran, no match) is
|
|
29
|
+
NOT exempt and still alerts (the spec's "alert on unattributable spend").
|
|
30
|
+
Baseline-divergence is unaffected.
|
|
31
|
+
|
|
32
|
+
## Why
|
|
33
|
+
|
|
34
|
+
The recurring `unknown::pre-attribution consumed 100.0% of 24h spend
|
|
35
|
+
(threshold 25%)` alert was a **fleet-wide false positive**. Because the
|
|
36
|
+
resolver was never wired, every JSONL-sourced event defaulted to the single
|
|
37
|
+
sentinel bucket, whose share was always 100%, so the absolute-share trigger
|
|
38
|
+
fired every hour forever — on every agent with burn-detection enabled (default)
|
|
39
|
+
and any daily spend. Real spend on the reporting agent was ~1.5M tokens/24h
|
|
40
|
+
(the bleed this system targets was ~3B/day).
|
|
41
|
+
|
|
42
|
+
## Behavioral side effects
|
|
43
|
+
|
|
44
|
+
- **BurnDetector no longer emits absolute-share on the sentinel.** Intended.
|
|
45
|
+
This is the false-positive fix. Real burns are unaffected: (a) any resolved
|
|
46
|
+
key (component/job/hook/`unknown::<sid>`) still trips at >25%; (b) the
|
|
47
|
+
sentinel only exists transiently until backfill clears it; (c) a real burner
|
|
48
|
+
sharing the 24h window with sentinel rows still trips (the sentinel is
|
|
49
|
+
skipped, not counted against the burner's share — verified by test
|
|
50
|
+
"does not let the sentinel mask a real burner sharing the window").
|
|
51
|
+
- **Existing attribution distribution changes shape.** Instead of one 100%
|
|
52
|
+
bucket, spend now splits per origin (mostly `unknown::<sessionId>` for the
|
|
53
|
+
dominant Claude-CLI path, plus `user-job:*` / `user-hook:*`). The
|
|
54
|
+
`/tokens/*` summary/sessions/by-project routes are unchanged in schema; only
|
|
55
|
+
the `byAttributionKey` grouping is now meaningful. No route signature changed.
|
|
56
|
+
- **One-time backfill UPDATE on first boot after upgrade.** On the reporting
|
|
57
|
+
agent that's ~384k rows across a few hundred distinct (session, project,
|
|
58
|
+
model) triples — resolved once per triple inside a single transaction, so a
|
|
59
|
+
handful of bulk UPDATEs, not 384k. Marker-guarded → runs exactly once per DB.
|
|
60
|
+
Wrapped in try/catch in the constructor: a backfill failure logs and is
|
|
61
|
+
swallowed (worst case: sentinel rows stay unattributed and thus exempt from
|
|
62
|
+
burn alerts — i.e. degrades to the old-but-safe behavior, never a crash).
|
|
63
|
+
|
|
64
|
+
## Migration parity
|
|
65
|
+
|
|
66
|
+
No `PostUpdateMigrator` change required. The backfill self-heals on the
|
|
67
|
+
constructor's next run, which happens on every server start. Existing agents
|
|
68
|
+
get it on their next restart onto a version carrying this change. The new
|
|
69
|
+
`ledger_meta` table is created idempotently in the SCHEMA list alongside the
|
|
70
|
+
existing tables.
|
|
71
|
+
|
|
72
|
+
## Blast radius / isolation
|
|
73
|
+
|
|
74
|
+
- Scope is the three monitoring files. **No HTTP route, server-boot, or
|
|
75
|
+
CapabilityIndex change** → no agent-awareness/CLAUDE.md-template update owed.
|
|
76
|
+
- Codex token sessions live in a separate table (`codex_token_sessions`) and
|
|
77
|
+
are untouched — burn detection reads only `token_events`.
|
|
78
|
+
- Read-only-observability invariant of the TokenLedger is preserved: the only
|
|
79
|
+
new write is to the ledger's own SQLite DB (the backfill UPDATE + the meta
|
|
80
|
+
marker). No source JSONL file is touched.
|
|
81
|
+
|
|
82
|
+
## Rollback
|
|
83
|
+
|
|
84
|
+
Revert the three `src/monitoring/*` files. Backfilled `attribution_key` values
|
|
85
|
+
are harmless if the revert lands (they're just better labels); the
|
|
86
|
+
`ledger_meta` table and its marker row are inert without the new code. No data
|
|
87
|
+
loss, no schema-incompatible state. (Per-phase revert matches the umbrella
|
|
88
|
+
spec's rollback model.)
|
|
89
|
+
|
|
90
|
+
## Tests
|
|
91
|
+
|
|
92
|
+
- New `tests/unit/burn-attribution-wiring.test.ts` (11 tests): resolver never
|
|
93
|
+
returns the sentinel; ingest now resolves a real key; two sessions split into
|
|
94
|
+
two keys; job-cwd → `user-job:*`; backfill converts legacy sentinel rows on
|
|
95
|
+
reopen + is idempotent; BurnDetector regression — sentinel at 100% emits
|
|
96
|
+
nothing, residual `unknown::<sid>` at 100% still emits, sentinel doesn't mask
|
|
97
|
+
a co-occurring real burner.
|
|
98
|
+
- Updated `tests/unit/token-ledger.test.ts` (#512 schema-order migration test):
|
|
99
|
+
now asserts the migrated legacy row is backfilled to `unknown::sess-old` and
|
|
100
|
+
the sentinel is gone, instead of asserting the sentinel persists.
|
|
101
|
+
- Full sweep green: `vitest run` over burn-detection-phase-1..6 + token-ledger +
|
|
102
|
+
TokenLedger-codex + TokenLedgerPoller-codex + burn-attribution-wiring =
|
|
103
|
+
**149 passed, 0 failed**. `tsc --noEmit` clean.
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# Side-effects review — Fleet fix: native-module rebuild-loop + wake-socket crash-loop
|
|
2
|
+
|
|
3
|
+
## What was happening (real-hardware, 2026-05-29)
|
|
4
|
+
|
|
5
|
+
The "inspec" agent's server had restarted **1830 times** and was pinning a CPU
|
|
6
|
+
core. Root cause was a self-perpetuating crash loop with two independent bugs
|
|
7
|
+
that compounded — and the rebuild half had fired across the whole fleet:
|
|
8
|
+
|
|
9
|
+
1. **WakeSocketServer async `'error'` crashed the entire server process.** When a
|
|
10
|
+
LIVE peer (a duplicate instance, or a transient rapid-respawn race) already
|
|
11
|
+
holds `listener.sock`, `WakeSocketServer` emits `'error'` (EADDRINUSE)
|
|
12
|
+
**asynchronously**. The server-boot consumer wired `'wake'` and
|
|
13
|
+
`'failover-trigger'` listeners but **no `'error'` listener**, and its
|
|
14
|
+
try/catch around `.start()` only catches *synchronous* errors. So the async
|
|
15
|
+
EADDRINUSE was an unhandled EventEmitter `'error'` → the whole server process
|
|
16
|
+
crashed. With the supervisor respawn, that became an unrecoverable loop.
|
|
17
|
+
|
|
18
|
+
2. **The supervisor misattributed bind failures to a native-module problem.**
|
|
19
|
+
On ≥2 consecutive bind failures, `ServerSupervisor.preflightSelfHeal()`
|
|
20
|
+
force-rebuilt better-sqlite3 **even when the module loaded fine** (`force =
|
|
21
|
+
consecutiveBindFailures >= 2; needsRebuild = force || abiMismatch`). A bind
|
|
22
|
+
failure is almost always a held/stale socket or port (EADDRINUSE), NOT a
|
|
23
|
+
native ABI mismatch — so this burned the machine on futile, CPU-heavy
|
|
24
|
+
node-gyp rebuilds. Fleet-wide rebuild counts: **sagemind 202, deep-signal
|
|
25
|
+
144, inspec 112, ai-guy 104, codey 46.**
|
|
26
|
+
|
|
27
|
+
(inspec also had an inspec-SPECIFIC trigger: a leftover duplicate launchd job,
|
|
28
|
+
`ai.instar.echo-server-inspec`, ran a *second* server `--dir monroe-workspace`
|
|
29
|
+
that raced the lifeline-managed one for the socket. That was remediated
|
|
30
|
+
operationally — disabled + plist renamed `.DISABLED` — and is not a code change.)
|
|
31
|
+
|
|
32
|
+
## The fix
|
|
33
|
+
|
|
34
|
+
- **`src/commands/server.ts`** — attach `wakeSocketServer.on('error', …)`
|
|
35
|
+
BEFORE `.start()`. The wake socket is an optimization (fast wake/failover from
|
|
36
|
+
the listener daemon); on any error it now **degrades gracefully** (logs,
|
|
37
|
+
continues without it) instead of crashing the agent. This alone breaks the
|
|
38
|
+
crash loop — the server stays up even if the wake socket can't bind.
|
|
39
|
+
|
|
40
|
+
- **`src/lifeline/ServerSupervisor.ts`** — `preflightSelfHeal()` rebuilds
|
|
41
|
+
better-sqlite3 **only** when a copy actually fails to load with a
|
|
42
|
+
`NODE_MODULE_VERSION` ABI mismatch. The bind-failure-count force-rebuild is
|
|
43
|
+
gone. A genuine native crash-loop still self-heals (a server that crashes
|
|
44
|
+
before binding because the module won't load is caught by the load check); a
|
|
45
|
+
held-socket bind failure now logs a clear diagnostic ("…NOT a native-module
|
|
46
|
+
problem (likely a held socket/port)…") instead of rebuilding.
|
|
47
|
+
|
|
48
|
+
## Blast radius
|
|
49
|
+
|
|
50
|
+
- **Pure robustness/CPU fix — no behavior change in the healthy path.** A server
|
|
51
|
+
that binds cleanly is unaffected. Genuine ABI mismatches still rebuild.
|
|
52
|
+
- **No new config / route / schema → no migration.** Server + supervisor code;
|
|
53
|
+
existing agents pick it up on the next release. Fleet-wide benefit: stops the
|
|
54
|
+
futile rebuild CPU drain + the wake-socket crash loop for every agent.
|
|
55
|
+
- **Degradation is safe:** without the wake socket, the agent falls back to its
|
|
56
|
+
normal inbox/poll path; it just loses the fast-wake optimization.
|
|
57
|
+
|
|
58
|
+
## Tests
|
|
59
|
+
|
|
60
|
+
- `tests/unit/wake-socket-error-handling.test.ts` — wiring: the consumer
|
|
61
|
+
attaches a graceful `'error'` handler before `.start()`; behavioral: a
|
|
62
|
+
live-peer EADDRINUSE surfaces as a catchable `'error'` event (not an uncaught
|
|
63
|
+
throw).
|
|
64
|
+
- `tests/unit/server-supervisor-preflight.test.ts` — bind failures + a
|
|
65
|
+
fine-loading better-sqlite3 → **no** rebuild; an actual NODE_MODULE_VERSION
|
|
66
|
+
load failure → rebuild still fires.
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# Side-effects review — Non-interactive, code-authenticated pool join (trust model A)
|
|
2
|
+
|
|
3
|
+
## What changed & why
|
|
4
|
+
|
|
5
|
+
Bringing up a second real machine for the Multi-Machine Session Pool surfaced
|
|
6
|
+
that the awake machine never learned about a machine that joined headlessly: the
|
|
7
|
+
existing `pair`/`join` flow is **interactive by design** — `/api/pair` was
|
|
8
|
+
"signal-only" and real registration completed only via a human confirming
|
|
9
|
+
matching SAS visual symbols on both screens. An active-active session pool can't
|
|
10
|
+
require a human to eyeball symbols per machine, so (operator decision: "Proceed
|
|
11
|
+
with A") pairing becomes **code-authenticated and non-interactive**: the
|
|
12
|
+
time-limited, single-use pairing code (carried over the TLS tunnel) is the
|
|
13
|
+
shared secret that authorizes the join; Ed25519-signed mesh RPCs handle trust
|
|
14
|
+
thereafter.
|
|
15
|
+
|
|
16
|
+
Root cause of the gap: `instar pair` created the `PairingSession` into an
|
|
17
|
+
**unused** `_pairingSession` variable and discarded it, so the running server
|
|
18
|
+
had no code to validate against.
|
|
19
|
+
|
|
20
|
+
Changes:
|
|
21
|
+
- **`src/core/PairingSessionStore.ts`** (new): persists the validation-relevant
|
|
22
|
+
fields of the active `PairingSession` to `.instar/machine/pairing-session.json`
|
|
23
|
+
(0600), and loads it. The ephemeral X25519 private key is deliberately NOT
|
|
24
|
+
persisted (it is a `KeyObject`, not JSON-serializable, and unused for code auth).
|
|
25
|
+
- **`src/commands/machine.ts`** (`pairMachine`): persists the session via
|
|
26
|
+
`PairingSessionStore` (10-min window) instead of discarding it; (`joinMesh`):
|
|
27
|
+
sends the joiner's own advertised URL in the pair body when it already has one.
|
|
28
|
+
- **`src/server/machineRoutes.ts`** (`/api/pair`): validates the submitted code
|
|
29
|
+
against the persisted session (`validatePairingCode` — single-use,
|
|
30
|
+
attempt-capped, TTL'd), and on success registers the joiner as **standby**,
|
|
31
|
+
stores its public keys (`storeRemoteIdentity`, so MeshRpc can verify it),
|
|
32
|
+
records its advertised URL, and burns the code. Rejections are audited.
|
|
33
|
+
- **`src/core/MachineIdentity.ts`**: adds a `baseDir` getter so the route can
|
|
34
|
+
co-locate its `PairingSessionStore` with the registry.
|
|
35
|
+
|
|
36
|
+
## Security analysis
|
|
37
|
+
|
|
38
|
+
- **The code IS the auth.** It is a `WORD-WORD-NNNN` secret, single-use
|
|
39
|
+
(`consumed`), attempt-capped (default 3 — failed attempts persist across
|
|
40
|
+
requests so the cap actually throttles brute force), and TTL'd (10 min as set
|
|
41
|
+
by `instar pair`). It travels over the Cloudflare TLS tunnel. Brute force over
|
|
42
|
+
a large code space within 3 attempts is infeasible.
|
|
43
|
+
- **A joiner can only ever become `standby`.** The role is hard-coded in the
|
|
44
|
+
handler; a join request can never claim the awake role or move the lease.
|
|
45
|
+
- **`/api/pair` remains unauthenticated** (it is the bootstrap, before the joiner
|
|
46
|
+
is known) — but it is now *gated*: with no active session it rejects (403)
|
|
47
|
+
rather than the old behavior of accepting any request. Malformed identities are
|
|
48
|
+
rejected (400) before anything is persisted.
|
|
49
|
+
- **What we trade away vs. SAS:** the human visual-symbol MITM check. Mitigated
|
|
50
|
+
by code-over-TLS + short TTL + single-use + attempt cap. This is the operator's
|
|
51
|
+
explicit trust-model choice for automated pool formation.
|
|
52
|
+
|
|
53
|
+
## Blast radius
|
|
54
|
+
|
|
55
|
+
- **Dark-feature-adjacent.** This is the multi-machine pairing path; a
|
|
56
|
+
single-machine agent never calls it. No behavior change unless an operator runs
|
|
57
|
+
`instar pair` + `instar join`.
|
|
58
|
+
- **No new config / schema.** `/api/pair` is server code → existing agents get
|
|
59
|
+
the new handler on update; no `PostUpdateMigrator` entry needed. The
|
|
60
|
+
`pairing-session.json` file is created on demand by `instar pair`.
|
|
61
|
+
- **Backward-compatible join:** `joinMesh` still registers the awake machine from
|
|
62
|
+
the response and records its URL (the #531 fix); the only response change is
|
|
63
|
+
`status: 'paired'` instead of `'pending'`, which `joinMesh` does not branch on.
|
|
64
|
+
|
|
65
|
+
## Not closed here (scoped follow-up)
|
|
66
|
+
|
|
67
|
+
For a **quick-tunnel** standby, its reachable URL is only known after its server
|
|
68
|
+
starts (post-join), so it cannot be sent in the pair body. The awake machine
|
|
69
|
+
therefore still needs a way to learn a quick-tunnel standby's URL — either the
|
|
70
|
+
standby uses a named tunnel (deterministic URL, exchanged at pair time), or a
|
|
71
|
+
dedicated authenticated URL-announce path is added (the standby is now registered
|
|
72
|
+
with verifiable keys, so it can sign such a call). Raised explicitly; the
|
|
73
|
+
heartbeat path is awake→standby (lease arbitration), so it is not a clean carrier.
|
|
74
|
+
|
|
75
|
+
## Tests
|
|
76
|
+
|
|
77
|
+
- `tests/unit/pairing-session-store.test.ts` — `PairingSessionStore` roundtrip,
|
|
78
|
+
null-on-absent, no-private-key-persisted, 0600 perms, overwrite, malformed-file
|
|
79
|
+
tolerance.
|
|
80
|
+
- `tests/integration/pool-noninteractive-pairing.test.ts` — valid code registers
|
|
81
|
+
joiner as standby + records URL + stores keys + consumes code; wrong code 403 +
|
|
82
|
+
attempt increment; brute-force lockout; no-session 403; consumed 403; malformed
|
|
83
|
+
identity 400.
|
|
84
|
+
- `tests/integration/machine-routes.test.ts` — updated the legacy signal-only
|
|
85
|
+
assertion to the new session-gated contract.
|