zelari-code 2.16.4 → 2.17.0

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.
Files changed (38) hide show
  1. package/dist/cli/app.js +3 -0
  2. package/dist/cli/app.js.map +1 -1
  3. package/dist/cli/companion/serve.js +29 -0
  4. package/dist/cli/companion/serve.js.map +1 -1
  5. package/dist/cli/harnessState.js +240 -0
  6. package/dist/cli/harnessState.js.map +1 -0
  7. package/dist/cli/headless/harnessStateEmit.js +38 -0
  8. package/dist/cli/headless/harnessStateEmit.js.map +1 -0
  9. package/dist/cli/headless/policyGate.js +6 -3
  10. package/dist/cli/headless/policyGate.js.map +1 -1
  11. package/dist/cli/headless/runOneTurn.js +29 -5
  12. package/dist/cli/headless/runOneTurn.js.map +1 -1
  13. package/dist/cli/headless.js +20 -9
  14. package/dist/cli/headless.js.map +1 -1
  15. package/dist/cli/hooks/useChatTurn.js +25 -1
  16. package/dist/cli/hooks/useChatTurn.js.map +1 -1
  17. package/dist/cli/hooks/useSlashDispatch.js +1 -1
  18. package/dist/cli/hooks/useSlashDispatch.js.map +1 -1
  19. package/dist/cli/kraken/verificationBridge.js +27 -4
  20. package/dist/cli/kraken/verificationBridge.js.map +1 -1
  21. package/dist/cli/lsp/manager.js +31 -11
  22. package/dist/cli/lsp/manager.js.map +1 -1
  23. package/dist/cli/main.bundled.js +849 -471
  24. package/dist/cli/main.bundled.js.map +4 -4
  25. package/dist/cli/memory/fileBackend.js +7 -3
  26. package/dist/cli/memory/fileBackend.js.map +1 -1
  27. package/dist/cli/memory/spineTelemetry.js +49 -0
  28. package/dist/cli/memory/spineTelemetry.js.map +1 -0
  29. package/dist/cli/runHeadless.js +122 -30
  30. package/dist/cli/runHeadless.js.map +1 -1
  31. package/dist/cli/safety/jails/win32.js.map +1 -1
  32. package/dist/cli/serve/harnessServer.js +20 -1
  33. package/dist/cli/serve/harnessServer.js.map +1 -1
  34. package/dist/cli/sessionSpine.js +7 -13
  35. package/dist/cli/sessionSpine.js.map +1 -1
  36. package/dist/cli/slashHandlers/krakenGraph.js +11 -0
  37. package/dist/cli/slashHandlers/krakenGraph.js.map +1 -1
  38. package/package.json +2 -2
package/dist/cli/app.js CHANGED
@@ -187,6 +187,9 @@ export function App() {
187
187
  sessionId: session.sessionId,
188
188
  messages: session.messages,
189
189
  setMessages: session.setMessages,
190
+ // W2: same writer ref passed to useChatTurn — lets /kraken graph project
191
+ // memory events onto the session spine mirror.
192
+ writerRef: session.writerRef,
190
193
  setInput,
191
194
  setBusy,
192
195
  setSessionId: session.setSessionId,
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,+EAA+E;AAC/E,yEAAyE;AACzE,wCAAwC;AACxC,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,GAAG,EAAQ,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAiB,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAA0C,MAAM,qBAAqB,CAAC;AAC7H,OAAO,EAAE,aAAa,EAAoB,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,uCAAuC,CAAC;AAC/C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yCAAyC,CAAC;AACjD,OAAO,oCAAoC,CAAC;AAC5C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,yCAAyC,CAAC;AACjD,OAAO,8CAA8C,CAAC;AACtD,OAAO,EACL,iBAAiB,EACjB,iBAAiB,IAAI,qBAAqB,GAC3C,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,UAAU,CAAC;AACrD,MAAM,QAAQ,GAAG,mBAAmB,CAAC;AAErC;;;GAGG;AACH,MAAM,gBAAgB,GAA2B;IAC/C,mBAAmB,EAAE,UAAU;IAC/B,MAAM,EAAE,UAAU;IAClB,SAAS,EAAE,qBAAqB;IAChC,KAAK,EAAE,SAAS;IAChB,UAAU,EAAE,iBAAiB;IAC7B,SAAS,EAAE,eAAe;IAC1B,WAAW,EAAE,mBAAmB;CACjC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,GAAG;IACjB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAChF,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC;QAC/C,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC;QACf,YAAY,EAAE,CAAC;QACf,aAAa,EAAE,CAAC;QAChB,aAAa,EAAE,CAAC;QAChB,YAAY,EAAE,CAAC;QACf,YAAY,EAAE,CAAC;QACf,eAAe,EAAE,CAAC;QAClB,cAAc,EAAE,SAA+B;KAChD,CAAC,CAAC;IACH,2EAA2E;IAC3E,4EAA4E;IAC5E,2CAA2C;IAC3C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChD,qFAAqF;IACrF,kEAAkE;IAClE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAW,QAAQ,CAAC,CAAC;IACrD,4EAA4E;IAC5E,wDAAwD;IACxD,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAmB,OAAO,CAAC,CAAC;IAChE,0EAA0E;IAC1E,gEAAgE;IAChE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAuB,IAAI,CAAC,CAAC;IACjE,2EAA2E;IAC3E,8EAA8E;IAC9E,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAClD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM;YAAE,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;;YACvD,cAAc,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,CAAC;IACnD,MAAM,WAAW,GAAG,cAAc,CAAC,eAAe,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAE1E,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,yEAAyE;IACzE,4EAA4E;IAC5E,gEAAgE;IAChE,mBAAmB,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7D,yEAAyE;IACzE,0EAA0E;IAC1E,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAEtC,yEAAyE;IACzE,6EAA6E;IAC7E,MAAM,EAAE,kBAAkB,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC1C,QAAQ,CACN,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACd,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,kBAAkB,KAAK,IAAI,EAAE,CAC1C,CAAC;IAEF,yEAAyE;IACzE,0EAA0E;IAC1E,qEAAqE;IACrE,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,kBAAkB,CAAC,EAAyB,CAAC;QACxD,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,mBAAmB,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,OAAO;QAC9G,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAAE,OAAO;QACpC,0BAA0B,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACnC,wDAAwD;QACxD,uDAAuD;IACzD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,uEAAuE;IACvE,2EAA2E;IAC3E,qDAAqD;IACrD,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,kBAAkB,CACjE,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,OAAO,CAChB,CAAC;IAEF,MAAM,QAAQ,GAAG,WAAW,CAAC;QAC3B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,eAAe,EAAE,UAAU;QAC3B,cAAc,EAAE,SAAS;QACzB,OAAO;QACP,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,eAAe;QACf,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,uEAAuE;QACvE,sEAAsE;QACtE,wEAAwE;QACxE,SAAS;KACV,CAAC,CAAC;IAEH,sEAAsE;IACtE,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,EAAU,EAAE,EAAE;QAC9C,KAAK,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QACxC,0BAA0B,EAAE,CAAC;QAC7B,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,OAAO,CAAC,SAAS,CAAC,OAAO,GAAG,MAAM,iBAAiB,CACjD,IAAI,kBAAkB,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,CAAC,EAC5D,EAAE,CACH,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAExB,wEAAwE;IACxE,wDAAwD;IACxD,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,KAAK,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QACxC,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACxC,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAExB,uEAAuE;IACvE,yEAAyE;IACzE,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,OAAO,CAAC,eAAe,EAAE,CAAC;QAC1B,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,MAAM,YAAY,GAAG,gBAAgB,CAAC;QACpC,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,gBAAgB,EAAE,EAAE,EAAE,CAAC;QAC7C,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,yEAAyE;QACzE,+CAA+C;QAC/C,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,QAAQ;QACR,OAAO;QACP,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,iBAAiB,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAA4B,CAAC;QAC3E,kBAAkB;QAClB,WAAW;QACX,gBAAgB;QAChB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,aAAa,EAAE,QAAQ,CAAC,aAAa;QACrC,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,qBAAqB,EAAE,QAAQ,CAAC,qBAAqB;QACrD,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB;QACnD,IAAI;QACJ,OAAO;QACP,UAAU,EAAE,SAAS;QACrB,YAAY;QACZ,MAAM;QACN,OAAO;QACP,aAAa,EAAE,UAAU;QACzB,YAAY;KACb,CAAC,CAAC;IAEH,2EAA2E;IAC3E,2EAA2E;IAC3E,4EAA4E;IAC5E,qEAAqE;IACrE,qEAAqE;IACrE,sDAAsD;IACtD,MAAM,cAAc,GAAG,WAAW,CAAC,CAAC,KAAa,EAAE,EAAE;QACnD,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,SAAS,CAAC,IAAI,CAAC,CAAC;QAChB,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACpC,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC;YACzB,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,aAAa,IAAI,KAAK,EAAE,CAAC;QAC/C,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;IAC3B,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACtC,IAAI,MAAM,EAAE,IAAI,KAAK,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;QACtB,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,2EAA2E;IAC3E,8EAA8E;IAC9E,MAAM,MAAM,GAAG,OAAO,CAAc,GAAG,EAAE;QACvC,OAAO;YACL,EAAE,EAAE,aAAa;YACjB,IAAI,EAAE,QAAQ;YACd,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;SACZ,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,0EAA0E;IAC1E,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,SAAS,CAAC,GAAG,EAAE;QACb,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC7E,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAE9B,4EAA4E;IAC5E,4EAA4E;IAC5E,0EAA0E;IAC1E,EAAE;IACF,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,sEAAsE;IACtE,+CAA+C;IAC/C,MAAM,SAAS,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,eAAe,IAAI,UAAU,EAAE,CAAC;IAC1E,MAAM,WAAW,GAA2B,OAAO,CAAC,SAAS;QAC3D,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC/B,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,CACL;QACE,oBAAC,MAAM,IAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,IACvC,CAAC,IAAI,EAAE,EAAE,CACR,IAAI,CAAC,EAAE,KAAK,aAAa,CAAC,CAAC,CAAC,CAC1B,oBAAC,aAAa,IACZ,GAAG,EAAE,IAAI,CAAC,EAAE,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,kBAAkB,CAAC,EAAE,EACjC,KAAK,EAAE,WAAW,EAClB,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE,EAC3B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,GACrB,CACH,CAAC,CAAC,CAAC,CACF,aAAa,CAAC,IAAI,CAAC,CACpB,CAEI;QACT,oBAAC,GAAG,IAAC,aAAa,EAAC,KAAK;YAGtB,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC;gBAClD,oBAAC,UAAU,IACT,IAAI,EAAE,OAAO,CAAC,IAAI,EAClB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,cAAc,EAAE,MAAM,KAAK,IAAI,EAC/B,cAAc,EAAE,WAAW,GAC3B;gBACD,MAAM,CAAC,CAAC,CAAC,CACR,oBAAC,UAAU,IACT,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,GACrD,CACH,CAAC,CAAC,CAAC,CACF,oBAAC,QAAQ,IACP,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,IAAI,GACd,CACH;gBACD,oBAAC,SAAS,IACR,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,kBAAkB,CAAC,EAAE,EAC/B,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EACpE,aAAa,EAAE,OAAO,CAAC,aAAa,EACpC,UAAU,EAAE,QAAQ,CAAC,UAAU,EAC/B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,OAAO,EAAE,YAAY,CAAC,YAAY,EAClC,YAAY,EAAE,YAAY,CAAC,YAAY,EACvC,YAAY,EAAE,YAAY,CAAC,YAAY,IAAI,CAAC,EAC5C,WAAW,EAAE,YAAY,CAAC,aAAa,IAAI,CAAC,EAC5C,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,OAAO,EACjE,WAAW,EAAE,uBAAuB,EAAE,EACtC,UAAU,EAAE,uBAAuB,EAAE,IAAI,SAAS,EAClD,WAAW,EAAE,wBAAwB,EAAE,IAAI,SAAS,GACpD,CACE;YACL,WAAW,IAAI,CACd,oBAAC,OAAO,IAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI,CACpE,CACG,CACL,CACJ,CAAC;AACJ,CAAC;AAED,sEAAsE;AACtE,gEAAgE;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,yEAAyE;AACzE,kDAAkD;AAClD,KAAK,KAAK,CAAC;AAAC,KAAK,QAAQ,CAAC"}
@@ -221,6 +221,7 @@ export async function runCompanionServe(opts = {}) {
221
221
  },
222
222
  eventsUrl: `/v1/runs/${result.run.id}/events`,
223
223
  cancelUrl: `/v1/runs/${result.run.id}/cancel`,
224
+ steerUrl: `/v1/runs/${result.run.id}/steer`,
224
225
  });
225
226
  return;
226
227
  }
@@ -302,6 +303,34 @@ export async function runCompanionServe(opts = {}) {
302
303
  sendJson(res, 200, { ok: true, cancelled: runId });
303
304
  return;
304
305
  }
306
+ // t40: live-turn steering over HTTP — same control plane as the NDJSON
307
+ // session.steer command (RunManager.steer → HarnessClient.steer →
308
+ // RuntimeControlQueue). Error mapping mirrors the cancel handler above.
309
+ const steerMatch = /^\/v1\/runs\/([^/]+)\/steer$/.exec(path);
310
+ if (req.method === 'POST' && steerMatch) {
311
+ const runId = steerMatch[1];
312
+ const raw = await readBody(req);
313
+ let body = {};
314
+ try {
315
+ body = raw ? JSON.parse(raw) : {};
316
+ }
317
+ catch {
318
+ sendJson(res, 400, { ok: false, error: 'invalid JSON body' });
319
+ return;
320
+ }
321
+ const text = typeof body.text === 'string' ? body.text.trim() : '';
322
+ if (!text) {
323
+ sendJson(res, 400, { ok: false, error: 'text is required' });
324
+ return;
325
+ }
326
+ const result = await runs.steer(runId, text);
327
+ if (!result.ok) {
328
+ sendJson(res, 404, { ok: false, error: result.error });
329
+ return;
330
+ }
331
+ sendJson(res, 200, { ok: true, steered: runId, result: result.result });
332
+ return;
333
+ }
305
334
  sendJson(res, 404, { ok: false, error: 'not found' });
306
335
  }
307
336
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/cli/companion/serve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/cli/companion/serve.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,240 @@
1
+ /**
2
+ * harnessState.ts — HarnessState increment 1: a TYPED read-model derived from
3
+ * the ADR-0016 session spine plus a per-turn Turn Completion Contract
4
+ * (execution lens). Pure derivation — zero behavior change, no production
5
+ * wiring this increment; the only I/O is the `readHarnessState` convenience.
6
+ *
7
+ * Idiom follows session/replay.ts `buildProjection`: one pass, switch over
8
+ * the closed vocabulary, defensive payload reads, unknown kinds ignored.
9
+ * A turn STARTS at `user.message` (earlier events are pre-message session
10
+ * scaffolding) and CLOSES at the next `user.message` or `session.ended`; a
11
+ * turn with neither stays open/pending. ADR-0023: unknown ≠ pass — a turn
12
+ * WITHOUT verification evidence is not complete-by-default, and a non-strict
13
+ * `verification.run` is not admissible (mirrors evaluateStrictBuildGateFromSession).
14
+ */
15
+ import path from 'node:path';
16
+ import { readSessionLog } from '@zelari/core/session';
17
+ /** Defensive payload readers (buildProjection idiom). */
18
+ function asString(v) {
19
+ return typeof v === 'string' ? v : '';
20
+ }
21
+ function asNumber(v) {
22
+ return typeof v === 'number' && Number.isFinite(v) ? v : undefined;
23
+ }
24
+ /** A result without a usable callId cannot settle a call (`seq:` keys never collide). */
25
+ function asCallId(v, seq) {
26
+ return typeof v === 'string' && v.length > 0 ? v : `seq:${seq}`;
27
+ }
28
+ function newTurn(index, userText) {
29
+ return {
30
+ index,
31
+ userText: userText.length > 0 ? userText : undefined,
32
+ toolCalls: 0,
33
+ toolKinds: [],
34
+ outcome: 'pending',
35
+ unsettledCallIds: new Set(),
36
+ settledCallIds: new Set(),
37
+ interrupted: 0,
38
+ assistantMessages: 0,
39
+ };
40
+ }
41
+ /**
42
+ * Pure, single-pass, O(n) derivation. Unknown kinds are ignored (tolerant
43
+ * replay contract — retired vocabulary still replays as schema-mismatch
44
+ * upstream and never reaches this function via readSessionLog).
45
+ */
46
+ export function deriveHarnessState(events) {
47
+ const session = {
48
+ sessionId: events[events.length - 1]?.sessionId ?? '',
49
+ status: 'pending',
50
+ lastSeq: 0,
51
+ };
52
+ const support = { contextProjections: [], memoryEvents: 0, compactions: 0 };
53
+ let tokensSaved;
54
+ const acc = [];
55
+ let current = null;
56
+ for (const e of events) {
57
+ session.lastSeq = e.seq;
58
+ switch (e.kind) {
59
+ case 'session.started':
60
+ // Pre-message scaffolding: anchors the session, never opens a turn.
61
+ session.startedAt ??= e.ts;
62
+ break;
63
+ case 'session.ended': {
64
+ session.endedAt = e.ts;
65
+ const reason = asString(e.data.reason);
66
+ session.status = reason.length > 0 ? reason : 'ended';
67
+ if (current) {
68
+ current.closedBy = 'session-ended';
69
+ current.endReason = reason;
70
+ current = null;
71
+ }
72
+ break;
73
+ }
74
+ case 'user.message': {
75
+ if (current)
76
+ current.closedBy = 'next-turn';
77
+ current = newTurn(acc.length + 1, asString(e.data.text));
78
+ acc.push(current);
79
+ break;
80
+ }
81
+ case 'assistant.message': {
82
+ if (!current)
83
+ break;
84
+ current.assistantMessages += 1;
85
+ const text = asString(e.data.text);
86
+ current.assistantChars = (current.assistantChars ?? 0) + text.length;
87
+ current.assistantText = text; // LAST assistant text wins (reference, no concat)
88
+ break;
89
+ }
90
+ case 'tool.call': {
91
+ if (!current)
92
+ break;
93
+ current.toolCalls += 1;
94
+ const tool = asString(e.data.tool);
95
+ if (tool.length > 0 && !current.toolKinds.includes(tool))
96
+ current.toolKinds.push(tool);
97
+ current.unsettledCallIds.add(asCallId(e.data.callId, e.seq));
98
+ break;
99
+ }
100
+ case 'tool.result': {
101
+ if (!current)
102
+ break;
103
+ current.settledCallIds.add(asCallId(e.data.callId, e.seq));
104
+ break;
105
+ }
106
+ case 'tool.interrupted': {
107
+ // A dangling call classified by recovery — its outcome is unknown,
108
+ // so the turn's tools are NOT settled (unknown ≠ pass).
109
+ if (current)
110
+ current.interrupted += 1;
111
+ break;
112
+ }
113
+ case 'verification.run': {
114
+ // LAST verification.run in the turn is the turn's final verdict.
115
+ if (!current)
116
+ break;
117
+ current.verification = {
118
+ strict: e.data.strict === true,
119
+ verdict: asString(e.data.verdict) || 'unknown',
120
+ };
121
+ break;
122
+ }
123
+ case 'session.compacted': {
124
+ support.compactions += 1;
125
+ const saved = asNumber(e.data.tokensSaved);
126
+ if (saved !== undefined)
127
+ tokensSaved = (tokensSaved ?? 0) + saved;
128
+ break;
129
+ }
130
+ case 'note': {
131
+ const subject = asString(e.data.subject);
132
+ if (subject === 'context.projection') {
133
+ support.contextProjections.push({
134
+ contextChars: asNumber(e.data.contextChars) ?? 0,
135
+ returnedCount: asNumber(e.data.returnedCount) ?? 0,
136
+ });
137
+ }
138
+ else if (subject === 'memory_event') {
139
+ support.memoryEvents += 1;
140
+ }
141
+ break;
142
+ }
143
+ default:
144
+ // Unknown/irrelevant kinds are state-only for this read-model.
145
+ break;
146
+ }
147
+ }
148
+ const turns = acc.map((t) => finalizeTurn(t));
149
+ return {
150
+ session,
151
+ turns,
152
+ execution: { turnsTotal: turns.length, contracts: acc.map((t) => contractFor(t)) },
153
+ support: tokensSaved === undefined ? support : { ...support, tokensSavedByCompaction: tokensSaved },
154
+ };
155
+ }
156
+ /** Lifecycle outcome of a closed/open turn (independent of the contract gate). */
157
+ function finalizeTurn(t) {
158
+ let outcome;
159
+ if (t.closedBy === undefined)
160
+ outcome = 'pending';
161
+ // Closed by session.ended with a non-completed reason.
162
+ else if (t.closedBy === 'session-ended' && t.endReason !== 'completed')
163
+ outcome = 'error';
164
+ // Closed by the next user.message or a completed end.
165
+ else
166
+ outcome = 'completed';
167
+ return {
168
+ index: t.index,
169
+ userText: t.userText,
170
+ assistantChars: t.assistantMessages > 0 ? (t.assistantChars ?? 0) : undefined,
171
+ assistantText: t.assistantMessages > 0 ? t.assistantText : undefined,
172
+ toolCalls: t.toolCalls,
173
+ toolKinds: t.toolKinds,
174
+ verification: t.verification,
175
+ outcome,
176
+ };
177
+ }
178
+ /**
179
+ * Turn Completion Contract rules (ADR-0023: unknown ≠ pass):
180
+ * R1 userMessage — always true by construction (a turn exists only after a user.message).
181
+ * R2 assistantReply — at least one assistant.message in the turn; else blocker
182
+ * 'assistant-reply-missing'.
183
+ * R3 toolsSettled — every tool.call got a tool.result and no tool.interrupted;
184
+ * else blocker 'tools-unsettled' (an unresulted call is unknown, never pass).
185
+ * R4 verification present but NOT strict → blocker 'verification-not-strict'
186
+ * (a non-strict snapshot is not admissible evidence).
187
+ * R5 verification strict with verdict ≠ 'PASS' → blocker `verification-verdict-<VERDICT>`
188
+ * (names the verdict, e.g. 'verification-verdict-BLOCKED').
189
+ * R6 verification absent → the turn must have closed cleanly (outcome 'completed');
190
+ * pending → 'turn-pending', error → `turn-error-<reason>`. Evidence-less turns
191
+ * are NOT complete-by-default.
192
+ * R7 verification strict with verdict 'PASS' → gate satisfied (evidence beats the
193
+ * lifecycle heuristic; the strict gate cannot mark an errored run PASS upstream).
194
+ */
195
+ function contractFor(t) {
196
+ const userMessage = true; // R1
197
+ const assistantReply = t.assistantMessages > 0; // R2
198
+ // R3 — callId-set comparison; a result without a usable callId cannot settle
199
+ // a call (safe direction: stays unsettled rather than false-pass).
200
+ const allSettled = [...t.unsettledCallIds].every((id) => t.settledCallIds.has(id));
201
+ const toolsSettled = allSettled && t.interrupted === 0;
202
+ const blockers = [];
203
+ if (!assistantReply)
204
+ blockers.push('assistant-reply-missing');
205
+ if (!toolsSettled)
206
+ blockers.push('tools-unsettled');
207
+ if (t.verification) {
208
+ if (!t.verification.strict)
209
+ blockers.push('verification-not-strict');
210
+ else if (t.verification.verdict !== 'PASS')
211
+ blockers.push(`verification-verdict-${t.verification.verdict}`);
212
+ }
213
+ else if (t.closedBy === undefined) {
214
+ blockers.push('turn-pending');
215
+ }
216
+ else if (t.closedBy === 'session-ended' && t.endReason !== 'completed') {
217
+ blockers.push(`turn-error-${t.endReason}`);
218
+ }
219
+ return {
220
+ turn: t.index,
221
+ complete: userMessage && assistantReply && toolsSettled && blockers.length === 0,
222
+ signals: {
223
+ userMessage,
224
+ assistantReply,
225
+ toolsSettled,
226
+ verification: t.verification,
227
+ },
228
+ blockers,
229
+ };
230
+ }
231
+ /**
232
+ * Convenience read-model loader for a session DIR (the `<id>/` folder under
233
+ * `.zelari/sessions` containing `events.jsonl`). Tolerant like readSessionLog:
234
+ * a missing log yields an empty pending state, never a throw.
235
+ */
236
+ export async function readHarnessState(sessionDir) {
237
+ const report = await readSessionLog(path.join(sessionDir, 'events.jsonl'));
238
+ return deriveHarnessState(report.events);
239
+ }
240
+ //# sourceMappingURL=harnessState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harnessState.js","sourceRoot":"","sources":["../../src/cli/harnessState.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * harness_state final-NDJSON emitter — ONE shared helper for all headless
3
+ * hosts (H1 inc.3).
4
+ *
5
+ * The one-shot host wired this inline in H1 inc.2 (runOneTurn): with the
6
+ * spine closed, a `--output json` host emits the derived ADR-0023 read-model
7
+ * (session lens + per-turn Turn Completion Contract) as the FINAL NDJSON
8
+ * line. Council / mission / kraken-graph call this same helper right after
9
+ * their spine.close so every JSON host ends its stream identically (see
10
+ * ADR-0023 R6 for the lifecycle-complete contract).
11
+ *
12
+ * Same dir resolution as the spine mirror (workspaceRoot +
13
+ * ZELARI_SESSIONS_DIR) so the read matches what was written; best-effort by
14
+ * contract — no-op unless output === 'json', and ANY resolution/read/
15
+ * derivation failure degrades to ONE stderr line, never throws, and never
16
+ * affects exit codes.
17
+ */
18
+ import path from 'node:path';
19
+ import { resolveSessionsDir } from '@zelari/core/session';
20
+ import { readHarnessState } from '../harnessState.js';
21
+ /** Emit the final `harness_state` NDJSON event for a closed session (best-effort). */
22
+ export async function emitHarnessStateEvent(opts) {
23
+ if (opts.output !== 'json')
24
+ return;
25
+ try {
26
+ const sessionsDir = resolveSessionsDir({ workspaceRoot: opts.workspaceRoot });
27
+ const state = await readHarnessState(path.join(sessionsDir, opts.spine.sessionId));
28
+ opts.emitEvent({ type: 'harness_state', ...state });
29
+ }
30
+ catch (err) {
31
+ const msg = err instanceof Error ? err.message : String(err);
32
+ try {
33
+ process.stderr.write(`[zelari-code --headless] harness_state unavailable: ${msg}\n`);
34
+ }
35
+ catch { /* stderr gone — nothing more to do */ }
36
+ }
37
+ }
38
+ //# sourceMappingURL=harnessStateEmit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harnessStateEmit.js","sourceRoot":"","sources":["../../../src/cli/headless/harnessStateEmit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAatD,sFAAsF;AACtF,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAAkC;IAC5E,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO;IACnC,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,kBAAkB,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9E,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QACnF,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uDAAuD,GAAG,IAAI,CAAC,CAAC;QACvF,CAAC;QAAC,MAAM,CAAC,CAAC,sCAAsC,CAAC,CAAC;IACpD,CAAC;AACH,CAAC"}
@@ -70,8 +70,11 @@ export function reportPolicyLoadBlocked(block, output) {
70
70
  * On-disk evidence: open (or resume) the session spine and record the BLOCK
71
71
  * outcome in the same log other blocked outcomes use, then close it as an
72
72
  * errored session. Missions additionally get their `mission.phase` marker,
73
- * mirroring mission-strict-blocked. Best-effort by contract a spine
74
- * failure NEVER changes the exit path (degrade-and-stop like every host).
73
+ * mirroring mission-strict-blocked. The spine opens under `opts.workspace`
74
+ * (fall back to `process.cwd()` only when the caller has none headless
75
+ * callers resolve `opts.cwd` instead, never `chdir`). Best-effort by
76
+ * contract — a spine failure NEVER changes the exit path (degrade-and-stop
77
+ * like every host).
75
78
  */
76
79
  export async function recordPolicyLoadBlockedOnSpine(block, opts = {}) {
77
80
  try {
@@ -81,7 +84,7 @@ export async function recordPolicyLoadBlockedOnSpine(block, opts = {}) {
81
84
  sessionId,
82
85
  ...(opts.mode ? { mode: opts.mode } : {}),
83
86
  ...(opts.profile ? { profile: opts.profile } : {}),
84
- workspace: process.cwd(),
87
+ workspace: opts.workspace ?? process.cwd(),
85
88
  });
86
89
  if (opts.mode === 'zelari') {
87
90
  spine.missionPhase('dispatch', block.reason);
@@ -1 +1 @@
1
- {"version":3,"file":"policyGate.js","sourceRoot":"","sources":["../../../src/cli/headless/policyGate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policyGate.js","sourceRoot":"","sources":["../../../src/cli/headless/policyGate.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,8 @@ import { buildKrakenRepairPrompt } from '../kraken/completionGate.js';
24
24
  import { krakenSelectionPlaybook } from '../kraken/selectionPlaybook.js';
25
25
  import { krakenDelegationPlaybook, resolveDelegationPolicyForRun } from '../kraken/delegationPolicy.js';
26
26
  import { spineOrchestrationNote } from '../orchestration/facts.js';
27
+ // W2: memory telemetry onto the session spine (late-binding holder seam).
28
+ import { memorySinkFor } from '../memory/spineTelemetry.js';
27
29
  import { emitEvent, resolveHeadlessCwd, resolveHeadlessKey } from '../headless.js';
28
30
  import { isKrakenMode } from '../mode.js';
29
31
  import { buildSystemPromptSplit, systemMessagesFromSplit, getAllTools, KRAKEN_IDENTITY_MODULE, KRAKEN_LEAD_PLAYBOOK_MODULE, buildLanguagePolicyModuleFor } from '@zelari/core/skills';
@@ -31,7 +33,7 @@ import { envNumber } from '../utils/envNumber.js';
31
33
  import { createStreamScrubber } from '../utils/streamScrub.js';
32
34
  import { promises as fs } from 'node:fs';
33
35
  import path from 'node:path';
34
- import { evaluateStrictBuildGate, strictGateEventPayload, strictGateExitCode } from '../kraken/verificationBridge.js';
36
+ import { evaluateStrictBuildGate, strictEnvOverlay, strictGateEventPayload, strictGateExitCode } from '../kraken/verificationBridge.js';
35
37
  import { writeCompletionProofDetailed } from '../kraken/completionProof.js';
36
38
  import { enforceRequiredProofPersistence } from '../kraken/completionProofPersist.js';
37
39
  import { nativePackEnabled } from '../kraken/nativeVerification.js';
@@ -39,6 +41,9 @@ import { runAdvisoryVerifierReview } from '../kraken/verifierLifecycle.js';
39
41
  import { buildModelContext, resourceStatusTail } from '../budget/modelContextBuilder.js';
40
42
  import { recordCompactionMetrics } from '../metrics.js';
41
43
  import { openHeadlessSpine, seedHeadlessModelHistory, sessionStartedEvent } from '../headlessSpine.js';
44
+ // HarnessState inc.3: shared final-NDJSON read-model emitter (ADR-0023 lens)
45
+ // for this host + council/mission/kraken-graph (H1 inc.2 → inc.3).
46
+ import { emitHarnessStateEvent } from './harnessStateEmit.js';
42
47
  import { RuntimeControlQueue } from '@zelari/core/runtime';
43
48
  import { attachControlPlane } from './controlBridge.js';
44
49
  import { controlAppliedEvent, protocolInfoEvent } from './protocol.js';
@@ -118,12 +123,18 @@ export async function writeProofSafe(gate, meta, baseDir = process.cwd()) {
118
123
  process.stderr.write(`[zelari-code --headless] required completion proof not persisted: ${outcome.requiredBlockReason}\n`);
119
124
  }
120
125
  }
121
- export async function runOneTurn(opts, provider, model, providerStream) {
126
+ export async function runOneTurn(opts, provider, model, providerStream, extras) {
122
127
  const sessionId = crypto.randomUUID();
123
128
  const cwd = resolveHeadlessCwd(opts);
124
129
  const memoryFactory = await import('../memory/serviceFactory.js');
130
+ // W2: memory events are projected onto the session spine as state-only
131
+ // `note`s. The spine opens below, so telemetry flows through a late-binding
132
+ // holder — events before assignment are dropped (advisory, never blocking).
133
+ const spineHolder = {};
125
134
  const nativeMemory = memoryFactory.isMemoryV2Enabled()
126
- ? await memoryFactory.getMemoryService(cwd, process.env)
135
+ ? await memoryFactory.getMemoryService(cwd, process.env, {
136
+ onEvent: memorySinkFor(spineHolder),
137
+ })
127
138
  : undefined;
128
139
  const memoryAutoWrite = memoryFactory.isMemoryAutoWriteEnabled();
129
140
  // PHASE 2 (§22, §35): bidirectional headless control plane. Attach only
@@ -248,6 +259,10 @@ export async function runOneTurn(opts, provider, model, providerStream) {
248
259
  ...(nativeMemory ? { memoryService: nativeMemory } : {}),
249
260
  memoryAutoWrite,
250
261
  ...(extensionRuntime ? { extensions: extensionRuntime } : {}),
262
+ // t37: serve-harness threads the kernel-owned workspace LspManager here
263
+ // (TurnExtras). undefined keeps the shared per-root fallback — which is
264
+ // itself one-manager-per-root since t37, so no cross-workspace thrash.
265
+ ...(extras?.lspProvider ? { lspProvider: extras.lspProvider } : {}),
251
266
  });
252
267
  // Parity with TUI: project MCP tools must be available from Desktop/headless.
253
268
  await registerHeadlessMcp(toolRegistry, opts);
@@ -259,6 +274,8 @@ export async function runOneTurn(opts, provider, model, providerStream) {
259
274
  // 2.6.1 (plan §7): deep specs from THIS run’s registry.
260
275
  toolSpecs: typeof toolRegistry.fingerprints === 'function' ? toolRegistry.fingerprints() : undefined,
261
276
  });
277
+ // W2: bind the memory telemetry sink to the now-open spine.
278
+ spineHolder.current = spine;
262
279
  // Exit-1/E1.2: the session spine is the model-context source of truth.
263
280
  // Legacy `--history` is imported one-shot into a fresh log; prior turns
264
281
  // are then derived from events. The 1.x rolling history no longer feeds
@@ -625,6 +642,10 @@ export async function runOneTurn(opts, provider, model, providerStream) {
625
642
  },
626
643
  emit: (input) => spine.appendEvent(input),
627
644
  };
645
+ // H10-fix1: per-invocation env overlay for the strict knobs (strictDone /
646
+ // missionStrict). NEVER a process.env write — the sidecar dispatches turns
647
+ // concurrently (serve/harnessServer) and a global write would be a race.
648
+ const strictEnv = strictEnvOverlay(opts);
628
649
  // Fase 8 (ADR-0020 × 2.1 T6): completion gate — a BUILD turn that used
629
650
  // selection OR enabled the native criteria pack (ZELARI_VERIFY_PACK)
630
651
  // cannot cleanly finish while required checks are unresolved (fail OR
@@ -636,7 +657,7 @@ export async function runOneTurn(opts, provider, model, providerStream) {
636
657
  isKrakenMode(opts.mode) &&
637
658
  (isKrakenSelectionEnabled() || nativePackEnabled()) &&
638
659
  !planModeFromOpts(opts)) {
639
- const strictGate = await evaluateStrictBuildGate('build', { emit: (input) => spine.appendEvent(input), cwd });
660
+ const strictGate = await evaluateStrictBuildGate('build', { emit: (input) => spine.appendEvent(input), cwd, env: strictEnv });
640
661
  // 2.1 T4: opt-in advisory verifier review (dedicated model configured in
641
662
  // provider.json, or ZELARI_VERIFIER_REVIEW=1). Advisory only — it can
642
663
  // neither un-block nor block the turn; it lands in the verification.run
@@ -678,7 +699,7 @@ export async function runOneTurn(opts, provider, model, providerStream) {
678
699
  successfulWrites: pass.successfulWrites + repair.successfulWrites,
679
700
  emittedWrites: pass.emittedWrites + repair.emittedWrites,
680
701
  };
681
- const after = await evaluateStrictBuildGate('build', { emit: (input) => spine.appendEvent(input), cwd });
702
+ const after = await evaluateStrictBuildGate('build', { emit: (input) => spine.appendEvent(input), cwd, env: strictEnv });
682
703
  await runAdvisoryVerifierReview(after, verifierReviewDeps).catch(() => undefined);
683
704
  const afterPayload = strictGateEventPayload(after);
684
705
  spine.verificationRun(afterPayload);
@@ -723,6 +744,9 @@ export async function runOneTurn(opts, provider, model, providerStream) {
723
744
  await spine.close(closeStatus);
724
745
  }
725
746
  catch { /* spine never fails the run */ }
747
+ // HarnessState inc.3: final read-model event for JSON hosts (best-effort),
748
+ // via the ONE shared helper also used by council/mission/kraken-graph.
749
+ await emitHarnessStateEvent({ spine, workspaceRoot: cwd, output: opts.output, emitEvent });
726
750
  if (opts.exportSessionPath) {
727
751
  try {
728
752
  const json = await spine.exportJson();