@archmax-ai/harness 0.5.0 → 0.6.1

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 (66) hide show
  1. package/README.md +6 -2
  2. package/dist/assembly/compose.js +3 -2
  3. package/dist/assembly/compose.js.map +1 -1
  4. package/dist/authoring-skill/archmax-harness/references/backend-integration.md +28 -8
  5. package/dist/authoring-skill/archmax-harness/references/hook-and-test-scripts.md +3 -1
  6. package/dist/authoring-skill/archmax-harness/references/workflow-schema.md +32 -12
  7. package/dist/core/binary-read.d.ts +20 -4
  8. package/dist/core/binary-read.js +36 -5
  9. package/dist/core/binary-read.js.map +1 -1
  10. package/dist/core/events.d.ts +6 -0
  11. package/dist/core/events.js.map +1 -1
  12. package/dist/core/frontmatter.d.ts +11 -0
  13. package/dist/core/frontmatter.js +29 -3
  14. package/dist/core/frontmatter.js.map +1 -1
  15. package/dist/core/mount-prompt.d.ts +2 -1
  16. package/dist/core/mount-prompt.js +4 -2
  17. package/dist/core/mount-prompt.js.map +1 -1
  18. package/dist/core/session-id.d.ts +12 -2
  19. package/dist/core/session-id.js +30 -2
  20. package/dist/core/session-id.js.map +1 -1
  21. package/dist/core/tool-context.d.ts +13 -2
  22. package/dist/core/tool-context.js +2 -1
  23. package/dist/core/tool-context.js.map +1 -1
  24. package/dist/core/workspace-router.js +5 -3
  25. package/dist/core/workspace-router.js.map +1 -1
  26. package/dist/index.d.ts +1 -1
  27. package/dist/index.js +1 -1
  28. package/dist/index.js.map +1 -1
  29. package/dist/kernel/kernel.js +8 -4
  30. package/dist/kernel/kernel.js.map +1 -1
  31. package/dist/machine/lint-spec.js +8 -4
  32. package/dist/machine/lint-spec.js.map +1 -1
  33. package/dist/machine/machine.d.ts +26 -7
  34. package/dist/machine/machine.js +41 -10
  35. package/dist/machine/machine.js.map +1 -1
  36. package/dist/machine/mount-grants.d.ts +3 -2
  37. package/dist/machine/mount-grants.js.map +1 -1
  38. package/dist/public/spec.d.ts +5 -3
  39. package/dist/public/spec.js +5 -3
  40. package/dist/public/spec.js.map +1 -1
  41. package/dist/sessions/resume.d.ts +5 -1
  42. package/dist/sessions/resume.js.map +1 -1
  43. package/dist/sessions/scope.d.ts +18 -11
  44. package/dist/sessions/scope.js +21 -23
  45. package/dist/sessions/scope.js.map +1 -1
  46. package/dist/workflow/agent-tools.d.ts +2 -1
  47. package/dist/workflow/agent-tools.js +8 -7
  48. package/dist/workflow/agent-tools.js.map +1 -1
  49. package/dist/workflow/governance.d.ts +6 -0
  50. package/dist/workflow/governance.js +69 -1
  51. package/dist/workflow/governance.js.map +1 -1
  52. package/dist/workflow/middleware.js +9 -0
  53. package/dist/workflow/middleware.js.map +1 -1
  54. package/dist/workflow/state.d.ts +7 -0
  55. package/dist/workflow/state.js +14 -1
  56. package/dist/workflow/state.js.map +1 -1
  57. package/dist/workflow/sub-workflow.d.ts +17 -0
  58. package/dist/workflow/sub-workflow.js +29 -6
  59. package/dist/workflow/sub-workflow.js.map +1 -1
  60. package/dist/workflow/tool-service.d.ts +1 -1
  61. package/dist/workflow/tool-service.js +4 -1
  62. package/dist/workflow/tool-service.js.map +1 -1
  63. package/package.json +1 -1
  64. package/skills/archmax-harness/references/backend-integration.md +28 -8
  65. package/skills/archmax-harness/references/hook-and-test-scripts.md +3 -1
  66. package/skills/archmax-harness/references/workflow-schema.md +32 -12
@@ -1 +1 @@
1
- {"version":3,"file":"tool-service.js","sourceRoot":"","sources":["../../src/workflow/tool-service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAK/C,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAsB,MAAM,yBAAyB,CAAC;AAE7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,OAAO,EACP,UAAU,EACV,kBAAkB,EAClB,mBAAmB,EACnB,SAAS,GACV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,iBAAiB,GAIlB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAA8B,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAwB1D;;;;;;;;;GASG;AACH,SAAS,QAAQ,CAAC,KAAc;IAC9B,MAAM,QAAQ,GAAI,KAA8C,EAAE,QAAQ,CAAC;IAC3E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QAAE,OAAO,GAAG,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAwC,CAAC;QAC/D,MAAM,KAAK,GAAG,GAAG,EAAE,UAAU,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAC1D,OAAO,OAAO,GAAG,EAAE,EAAE,KAAK,QAAQ,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;IAChF,CAAC;IACD,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,QAAgB,EAAE,UAAkB,EAAE,QAAgB;IAClF,OAAO,OAAO,CACZ,QAAQ,EACR,UAAU,EACV,GAAG,QAAQ,sEAAsE;QAC/E,UAAU,QAAQ,0DAA0D;QAC5E,0BAA0B,CAC7B,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,SAAS,CAAC,IAA6B,EAAE,KAAc,EAAE,QAAgB;IAChF,IAAI,CAAC;QACH,OAAO,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,kHAAkH;AAClH,MAAM,UAAU,cAAc,CAAC,QAAgB,EAAE,UAAkB,EAAE,OAAe;IAClF,OAAO,IAAI,WAAW,CAAC;QACrB,OAAO;QACP,YAAY,EAAE,UAAU;QACxB,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,OAAO;QACf,iBAAiB,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAChD,CAAC,CAAC;AACL,CAAC;AAED,kGAAkG;AAClG,SAAS,cAAc,CAAC,MAAe;IACrC,IAAI,MAAM,YAAY,WAAW;QAAE,OAAO,MAAM,CAAC;IACjD,MAAM,MAAM,GAAI,MAA4D,EAAE,MAAM,CAAC;IACrF,OAAO,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,WAAW,CAA4B,CAAC;AAC5F,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,GAAuB;IACvD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC;IAEtE,SAAS,cAAc,CAAC,KAAa,EAAE,QAAgB,EAAE,MAAc,EAAE,IAA6B;QACpG,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACpG,CAAC;IAED,6GAA6G;IAC7G,KAAK,UAAU,gBAAgB,CAC7B,IAAkB,EAClB,IAA6B,EAC7B,MAA4B,EAC5B,QAAwC;QAExC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACjD,cAAc,CAAC,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,CAAC,MAAsB,EAAE,OAA+C,EAAE,EAAE,CACzF,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;QACtI,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,MAAM,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC/C,MAAM,CACJ,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAC1E,iBAAiB,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAC7C,CAAC;YACF,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,OAAO,EAAE,iBAAiB,CAAE,GAAa,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC3E,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,WAAW,GAAG,IAAI,GAAG,EAAwC,CAAC;IAEpE;;;;;OAKG;IACH,MAAM,eAAe,GAAG,IAAI,GAAG,EAA8C,CAAC;IAE9E;;;;OAIG;IACH,SAAS,aAAa,CAAC,SAAiB,EAAE,aAAqB;QAC7D,OAAO,CAAC,YAAY,EAAE,eAAe,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAClE,EAAE,EAAE,aAAa;YACjB,IAAI,EAAE,cAAuB;YAC7B,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;SACf,CAAC,CAAC,CAAC;IACN,CAAC;IAED,SAAS,iBAAiB,CAAC,MAA6B,EAAE,KAAkB;QAC1E,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC;QACtC,IAAI,MAAM,YAAY,WAAW,EAAE,CAAC;YAClC,OAAO,IAAI,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,MAAM,MAAM,GAAI,MAA+C,CAAC,MAAM,IAAI,EAAE,CAAC;QAC7E,OAAO,IAAI,OAAO,CAAC;YACjB,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,CAAC,GAAG,CAAE,MAAM,CAAC,UAAsC,IAAI,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE;SACzG,CAAC,CAAC;IACL,CAAC;IAED,gFAAgF;IAChF,SAAS,UAAU,CAAC,SAAiB,EAAE,KAA2D;QAChG,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/C,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,mGAAmG;IACnG,KAAK,UAAU,iBAAiB,CAC9B,OAAgC,EAChC,UAAiC,EACjC,IAAkB,EAClB,IAA6B;QAE7B,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QACxE,MAAM,QAAQ,GAAG,wBAAwB,CAAC,QAAQ,CAAE,CAAC;QACrD,MAAM,aAAa,GAAG;YACpB,QAAQ;YACR,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC;YACvC,MAAM,EAAE,mBAAmB,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;YAClD,KAAK,EAAE,aAAa;YACpB,UAAU,EAAE,MAAM;SACnB,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACxD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5G,OAAO,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,EAAE;YAC5D,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;gBAC9E,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC;oBAC7B,OAAO,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;oBACrE,YAAY,EAAE,UAAU;oBACxB,IAAI,EAAE,QAAQ;iBACf,CAAC,CAAC;gBACH,mEAAmE;gBACnE,qEAAqE;gBACrE,0EAA0E;gBAC1E,qEAAqE;gBACrE,qEAAqE;gBACrE,0CAA0C;gBAC1C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACrC,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC/C,MAAM,KAAK,GAAG,OAAO,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,EAAU,CAAC;gBACvE,MAAM,SAAS,GAAG,kBAAkB,CAClC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,iBAAiB,IAAI,EAAE,EACxD,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EACnF,KAAK,CACN,CAAC;gBACF,IAAI,CAAC,SAAS;oBAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;gBAC3C,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBACxB,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;gBACrD,OAAO;oBACL,OAAO,EAAE,IAAI,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;iBACzG,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,0EAA0E;gBAC1E,uEAAuE;gBACvE,uDAAuD;gBACvD,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBACtC,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,QAAQ,GAAG,MAAM,CAAC,QAA2B,CAAC;oBACpD,OAAO;wBACL,OAAO,EAAE,IAAI,OAAO,CAAC;4BACnB,MAAM,EAAE;gCACN,kBAAkB,EAAE;oCAClB;wCACE,KAAK,EAAE,aAAa;wCACpB,QAAQ;wCACR,UAAU;wCACV,QAAQ,EAAE,MAAM,CAAC,QAAQ;wCACzB,UAAU,EAAE,MAAM,CAAC,UAAU;wCAC7B,QAAQ;qCACT;iCACF;gCACD,QAAQ,EAAE;oCACR,IAAI,WAAW,CAAC;wCACd,OAAO,EACL,QAAQ,QAAQ,6CAA6C;4CAC7D,IAAI,QAAQ,EAAE,KAAK,qCAAqC;4CACxD,uDAAuD;wCACzD,YAAY,EAAE,UAAU;wCACxB,IAAI,EAAE,QAAQ;qCACf,CAAC;iCACH;6BACF;yBACF,CAAC;qBACH,CAAC;gBACJ,CAAC;gBACD,wEAAwE;gBACxE,yEAAyE;gBACzE,qEAAqE;gBACrE,8CAA8C;gBAC9C,MAAM,OAAO,GAAI,GAAa,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;gBACvD,MAAM,OAAO,GAAsB;oBACjC,EAAE,EAAE,MAAM;oBACV,KAAK,EAAE,aAAa;oBACpB,QAAQ;oBACR,KAAK,EAAE,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;oBAC/C,MAAM,EAAE,OAAO;iBAChB,CAAC;gBACF,OAAO;oBACL,OAAO,EAAE,IAAI,OAAO,CAAC;wBACnB,MAAM,EAAE,EAAE,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,EAAE;qBAC7F,CAAC;iBACH,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,yEAAyE;IACzE,KAAK,UAAU,kBAAkB,CAC/B,OAAgC,EAChC,IAAkB,EAClB,IAA6B;QAE7B,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QACxE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC7B,6EAA6E;QAC7E,4EAA4E;QAC5E,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,cAAc,GAAG,OAAO,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,MAAM,SAAS,GAAG,CAAC,KAA4D,EAAE,EAAE;YACjF,IAAI,CAAC,KAAK;gBAAE,OAAO;YACnB,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YACnD,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC/B,CAAC,CAAC;QACF,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,IAAI,cAAc;oBAAE,OAAO,oBAAoB,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;gBACtF,MAAM,OAAO,GAAG,MAAM,gBAAgB,CACpC,IAAI,EACJ,IAAI,EACJ,GAAG,EAAE,CACH,aAAa,CACX,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,EACrC,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,IAAI,EAAE,CAAC,EAAE,CACpG;gBACH,kGAAkG;gBAClG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAC5C,CAAC;gBACF,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACzB,OAAO,OAAO,CAAC,OAAO,CAAC;YACzB,CAAC;YACD,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,IAAI,cAAc;oBAAE,OAAO,oBAAoB,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;gBACtF,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC5G,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACzB,OAAO,OAAO,CAAC,OAAO,CAAC;YACzB,CAAC;YACD,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC3G,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACjB,IAAI,CAAC;wBACH,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,aAAa;wBACpB,SAAS;wBACT,QAAQ,EAAE,OAAO;wBACjB,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM;wBAC3B,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrE,MAAM;qBACP,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,OAAO,CAAC,OAAO,CAAC;YACzB,CAAC;YACD,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC5G,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;oBACxC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;oBAChF,0FAA0F;oBAC1F,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;gBAC3E,CAAC;gBACD,OAAO,OAAO,CAAC,OAAO,CAAC;YACzB,CAAC;YACD,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;oBACxD,OAAO,EAAE,kBAAkB,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;iBACzD,CAAC,CAAC,CAAC;gBACJ,OAAO,OAAO,CAAC,OAAO,CAAC;YACzB,CAAC;YACD,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK;oBACrB,CAAC,CAAC,MAAM,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;oBAChG,CAAC,CAAC,SAAS,CAAC;gBACd,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;oBACtD,MAAM,OAAO,GAAG,kBAAkB,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;oBAChF,0FAA0F;oBAC1F,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;wBACpB,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;wBACvH,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC;wBACrD,IAAI,OAAO,KAAK,KAAK,QAAQ;4BAAE,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC;oBAClG,CAAC;oBACD,OAAO,EAAE,OAAO,EAAE,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,CAAC,CAAC,CAAC;gBACH,OAAO,OAAO,CAAC,OAAO,CAAC;YACzB,CAAC;YACD;gBACE,OAAO,SAAS,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO;QACL,cAAc;QACd,aAAa;QACb,iBAAiB;QACjB,UAAU;QACV,iBAAiB;QACjB,kBAAkB;QAClB,cAAc,CAAC,SAAiB;YAC9B,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC9B,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"tool-service.js","sourceRoot":"","sources":["../../src/workflow/tool-service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@archmax-ai/harness",
3
- "version": "0.5.0",
3
+ "version": "0.6.1",
4
4
  "type": "module",
5
5
  "description": "Agents can't reliably follow a process. archmax harness makes them: a governed layer over LangChain Deep Agents that enforces a declarative workflow state machine on every step.",
6
6
  "keywords": [
@@ -96,7 +96,7 @@ All optional (`CreateAgentParams`, `src/assembly/index.ts`):
96
96
  | `model` | `BaseChatModel` | Defaults to the env-configured OpenAI-compatible model. Inject your own to bypass env. |
97
97
  | `backend` | `BackendProtocolV2` | Serves the authored workspace. Defaults to a `FilesystemBackend` over `rootDir`. |
98
98
  | `authoring` | `BackendProtocolV2` | Serves the **authoring plane** — `workflows/**` (machine specs including the rubrics their states declare, `WORKFLOW.md`, `hooks/`, `tests/`) — to the runtime only. Never a route in the agent's workspace, so no tool call or PTC call can reach it. Defaults to `backend` when you supply one, else a `FilesystemBackend` over the resolved root. Handing it to a **writable** mount throws `AuthoringBackendExposedError`; a read-only mount may share it. |
99
- | `mounts` | `Record<string, MountSpec>` | Authored mounts as a `CompositeBackend` route table: key → backend, or `{ backend, readOnly, governed, searchable }`. Trailing slash = directory mount; no slash = exact-path file mount (`"/AGENTS.md"`). Read-only unless declared otherwise. `governed: true` hands the spec's `mounts` block the decision of **which states** may reach it (closed by default, like a skill bundle) and whether each may write there; a mount not so declared is visible in every state exactly as today, so a table that marks nothing behaves unchanged. `readOnly` is a **ceiling** the spec cannot lift: a grant may narrow a writable mount to reads in a state, never open a read-only one. A key may be several segments deep (`"/catalogs/eu/"`); its **first** segment is what is reserved, so `/workflows/x/` fails as `/workflows/` does. Omitted on the default backend: `defaultMounts(rootDir)` (the conventional table — `/skills/`, `/.platform/`, `/AGENTS.md`, none governed — extend with `{ ...defaultMounts(root), "/templates/": … }`). Omitted with a custom `backend`: nothing authored is served; expose subtrees with `mountSubtree(backend, "skills")`. A key colliding with a run area — or naming the authoring-plane prefix (`/workflows/`) — throws `MountCollisionError`. `searchable: false` declares a mount the runtime never searches on its own initiative: a root-wide `grep`/`glob` fans out over the other mounts only, while a search the agent addresses at the mount (or a path inside it) still reaches its backend and returns the backend's own answer — matches or `{ error }` — verbatim. Use it for a backend that must refuse searches (a remote folder served live). Listing and reading are unchanged, the prompt marks it "browse only", names arrive as `MountPrefixes.unsearchable`, and it is ignored on a file mount. |
99
+ | `mounts` | `Record<string, MountSpec>` | Authored mounts as a `CompositeBackend` route table: key → backend, or `{ backend, readOnly, governed, searchable }`. Trailing slash = directory mount; no slash = exact-path file mount (`"/AGENTS.md"`). Read-only unless declared otherwise. `governed: true` hands the spec's `mounts` block the decision of **which states** may reach it (closed by default, like a skill bundle) and whether each may write there; a mount not so declared is visible in every state exactly as today, so a table that marks nothing behaves unchanged. `readOnly` is a **ceiling** the spec cannot lift: a governed writable mount is written only by a workflow whose own grants ask `access: read_write` (a bare grant reads it, so serving one route writable for one workflow in a delegation tree opens it to no other), and a grant may narrow a writable mount to reads in a state, never open a read-only one. A key may be several segments deep (`"/catalogs/eu/"`); its **first** segment is what is reserved, so `/workflows/x/` fails as `/workflows/` does. Omitted on the default backend: `defaultMounts(rootDir)` (the conventional table — `/skills/`, `/.platform/`, `/AGENTS.md`, none governed — extend with `{ ...defaultMounts(root), "/templates/": … }`). Omitted with a custom `backend`: nothing authored is served; expose subtrees with `mountSubtree(backend, "skills")`. A key colliding with a run area — or naming the authoring-plane prefix (`/workflows/`) — throws `MountCollisionError`. `searchable: false` declares a mount the runtime never searches on its own initiative: a root-wide `grep`/`glob` fans out over the other mounts only, while a search the agent addresses at the mount (or a path inside it) still reaches its backend and returns the backend's own answer — matches or `{ error }` — verbatim. Use it for a backend that must refuse searches (a remote folder served live). Listing and reading are unchanged, the prompt marks it "browse only", names arrive as `MountPrefixes.unsearchable`, and it is ignored on a file mount. |
100
100
  | `sessionStore` | `SessionStore` | Physical storage for run state (checkpoints, artifacts, the per-session `scratchpad/`). Zero-config default: `createFilesystemSessionStore({ dir: "<rootDir>/sessions" })`. Required with a custom `backend` (else `SessionStoreRequiredError`). Build with `createBackendSessionStore({ backend, prefix? })` for S3-style storage or `createMemorySessionStore()` for ephemeral runs. |
101
101
  | `systemPrompt` | `string` | Appended after workspace `AGENTS.md`. |
102
102
  | `tools` | `StructuredTool[]` | Host tools, granted per state by `tools.allow`. Build them with `toolsFromMap` — see [host tools](#host-tools). A name starting `archmax_`, or naming a runtime file operation (`copy_file`, `move_file`, `remove_file`), throws `ReservedToolNameError`. |
@@ -616,6 +616,15 @@ A custom `backend` **requires** an explicit `sessionStore` — assembly throws
616
616
  Persisting the session zone off-box (an S3-backed session store) is how you share run
617
617
  state across a worker fleet and an API.
618
618
 
619
+ A session's files are stored under `<sessionId>/` in the store (beneath its
620
+ `prefix`): the agent's `scratchpad/x.txt` in session `s1` is `s1/scratchpad/x.txt`.
621
+ That address is a contract, so a host may read or write a session's files through
622
+ its own handle on the store (ranged reads, recursive listings, presigned URLs). A
623
+ host tool keys them by `ToolContext.sessionId`, which inside a sub-workflow is the
624
+ child's id, never the session the turn was sent to. `sessionIdRejection` refuses an
625
+ id holding `~` in any shape but a child's (`<parent>~<n>`): mint top-level ids
626
+ without it.
627
+
619
628
  `downloadFiles`, `uploadFiles` and `delete` are optional in the protocol and stay
620
629
  optional in the workspace: a store with only the required methods serves skills,
621
630
  reads and text copies. `downloadFiles` is always present and reads a store without
@@ -660,7 +669,8 @@ const agent = await createAgent({ tools, essentialTools: ["get_markdown"] });
660
669
  - `paths` declares the arguments that name workspace paths and how the call
661
670
  uses each. Every path rule binds them: the read-only zone, the runtime's own
662
671
  areas, the skills and mounts the state was given (`mount.not-allowed`,
663
- `skill.not-allowed`), a mount's `access: read` (`mount.read-only` for a
672
+ `skill.not-allowed`), a mount's `access: read` or a governed mount no grant
673
+ of the workflow asks `read_write` for (`mount.read-only` for a
664
674
  `write` or `remove`), inherited denials and `paths:` guards. A refused call
665
675
  never runs the handler. No declaration, no path rules. An argument may hold a
666
676
  list of paths (`files: string[]`), each governed; any other shape is refused.
@@ -669,8 +679,13 @@ const agent = await createAgent({ tools, essentialTools: ["get_markdown"] });
669
679
  - `context.workspace` is the turn's workspace, bound to the session — the
670
680
  instance `read_file` uses — with `downloadFiles`, `uploadFiles` (when the
671
681
  session store has it) and `delete` besides the text methods. The plain agent
672
- hands the same context. Outside a turn, reading it throws; the property is
673
- non-enumerable there, so comparing or logging the context does not.
682
+ hands the same context.
683
+ - `context.sessionId` is the session the call is made in: inside a sub-workflow,
684
+ the child's own id (`<parent>~<n>`), for the model's call and a script's alike.
685
+ Key any session file your host stores itself by it (`<sessionId>/<path>` in the
686
+ session store), never by the session you sent the turn to.
687
+ - Outside a turn, reading either throws; both are non-enumerable there, so
688
+ comparing or logging the context does not.
674
689
 
675
690
  ## Cases against your agent
676
691
 
@@ -736,10 +751,15 @@ never delegated to is never loaded, and one delegated from many places is
736
751
  composed once. A child whose spec is broken surfaces as a *dispatch* failure, not
737
752
  an assembly failure — a parent still assembles.
738
753
 
739
- The child runs as a **separate session**, `<parent>~<state>:<workflow>:<n>`, in
740
- the same session store, with its own checkpoints, its own token accounting and its
741
- own file space: its `scratchpad/` is not its caller's, so it can neither read nor
742
- overwrite a file of its caller's. `sessions.list()` reports it beside its caller
754
+ The child runs as a **separate session**, `<parent>~<n>`, in the same session
755
+ store, with its own checkpoints, its own token accounting and its own file space:
756
+ its `scratchpad/` is not its caller's, so it can neither read nor overwrite a file
757
+ of its caller's. `n` is the dispatch's number in the calling session, counted from 1
758
+ across all its turns in its checkpointed state, so an agent built per turn never
759
+ reuses one; a grandchild is `<parent>~<n>~<m>`. The `sub-workflow-*` events and a
760
+ pending delegation name it by its `dispatchId`, the id below the root session (`1`,
761
+ `1~1`). A host tool called in the child gets the child's id as
762
+ `ToolContext.sessionId`, and its file work belongs to the child. `sessions.list()` reports it beside its caller
743
763
  with `parentSessionId` naming the caller, and `sessions.delete` removes it by its
744
764
  own id. The only files that cross are the runtime's copies of declared `file` arguments and
745
765
  `file` returns. `capabilities.subWorkflows` is stamped `true` for a governed
@@ -236,7 +236,9 @@ A **binary file** is not a refusal and does not throw: reads are text only, so
236
236
  file whose content holds a NUL byte (an archive, an Office document), resolves to
237
237
  the notice `Error: '<path>' is a binary file (<type>, <size>) and was not read;
238
238
  read_file returns text files only.` instead of content — an image too, even when
239
- the host turned on `images`, which shows images to the model only. A missing file reads as
239
+ the host turned on `images`, which shows images to the model only. XML and JSON
240
+ are text even when the store labels them `application/xml` or a `+xml`/`+json`
241
+ type, so an Office document's unpacked `word/document.xml` reads as text. A missing file reads as
240
242
  an `Error: …` string the same way. A script that parses what it read checks
241
243
  first:
242
244
 
@@ -196,7 +196,10 @@ mounts?:
196
196
  # workflow reaches no governed mount; validate says so
197
197
  # ONCE, naming them — write `allow_always: []` to mean it.
198
198
  # An entry is a NAME, or `{ mount: <name>, access: read |
199
- # read_write }` to say what this level gives. The host's
199
+ # read_write }` to say what this level gives. A bare NAME
200
+ # asks for NO write: a governed mount is written only
201
+ # where some grant of THIS workflow says `read_write`
202
+ # (a child's or caller's grant never counts). The host's
200
203
  # readOnly is a CEILING: `read_write` on a read-only mount
201
204
  # opens nothing (validate warns); `read` NARROWS a
202
205
  # writable one, and no narrower level widens it back.
@@ -368,7 +371,9 @@ states:
368
371
  # warns about one that reads like it) — `forbid` is.
369
372
  # An entry may name its access:
370
373
  # allow: [{ mount: shared, access: read }]
371
- # reads a writable mount without writing it here. The
374
+ # reads a writable mount without writing it here, and
375
+ # allow: [{ mount: shared, access: read_write }]
376
+ # asks to write it — which a bare name never does. The
372
377
  # host's posture is the ceiling — `read_write` cannot
373
378
  # open a read-only mount — and a `read` at either level
374
379
  # holds, so a state never widens what the workflow
@@ -921,13 +926,13 @@ error.
921
926
 
922
927
  ### Read or read/write
923
928
 
924
- A grant entry is either a bare mount name — taking the posture the host wired — or
925
- a mapping naming the access this level gives:
929
+ A grant entry is either a bare mount name, which asks for no write, or a mapping
930
+ naming the access this level gives:
926
931
 
927
932
  ```yaml
928
933
  mounts:
929
934
  allow_always:
930
- - reference # the host's posture
935
+ - reference # read; written only if a grant below asks
931
936
  - { mount: shared, access: read_write } # writable where the host allows it
932
937
 
933
938
  states:
@@ -936,6 +941,17 @@ states:
936
941
  allow: [{ mount: shared, access: read }] # reads it, cannot write it here
937
942
  ```
938
943
 
944
+ **A workflow writes a governed mount only where its own grants ask to.** It is
945
+ writable in a state when the host serves it writable, some grant of *this*
946
+ workflow says `access: read_write` (in `allow_always` or any state's `allow`), and
947
+ no grant applicable in the state says `access: read`. So a bare grant in one state
948
+ and a `read_write` grant in another both write. One mount table serves a session
949
+ and every child it dispatches, and the host serves a route writable when any
950
+ workflow in that tree asks; a mount still belongs to the workflow that grants it,
951
+ so a caller's `read_write` never lets its child write through a bare grant, nor the
952
+ other way round. An ungoverned mount takes the host's posture: it has no grant to
953
+ ask with.
954
+
939
955
  The host's `readOnly` is a **ceiling**, not a default to argue with:
940
956
 
941
957
  - `access: read_write` on a mount the workspace serves read-only opens nothing,
@@ -949,7 +965,8 @@ The host's `readOnly` is a **ceiling**, not a default to argue with:
949
965
 
950
966
  Two refusals, because they are two different edits: a write into a mount the
951
967
  **host** serves read-only is `zone.read-only` (fix the wiring), and a write into
952
- one a **grant** narrowed is `mount.read-only` (fix the spec).
968
+ one a **grant** narrowed, or one no grant of the workflow asks to write, is
969
+ `mount.read-only` (fix the spec; the refusal says which).
953
970
 
954
971
  ### What the agent sees
955
972
 
@@ -985,7 +1002,8 @@ so `AGENTS.md.bak` is not captured.
985
1002
  everywhere already — use `forbid` to take one away);
986
1003
  - an `access: read_write` on a mount the host serves **read-only**;
987
1004
  - a name in both `allow_always` and a state's `allow` (unless the state entry
988
- narrows the access, which does real work);
1005
+ narrows the access to `read`, or asks `read_write` of a mount the root grants
1006
+ bare: both do real work);
989
1007
  - a state's `allow: []` beside a non-empty `allow_always`;
990
1008
  - a `forbid` naming a governed mount nothing would have enabled there;
991
1009
  - a `forbid_always` name some `allow` list also grants;
@@ -1416,8 +1434,8 @@ enrich:
1416
1434
  in `<!-- top-level-only -->` … `<!-- /top-level-only -->` lines.
1417
1435
  - **Same agent, isolated context, own session.** Same model, backend, host
1418
1436
  tools; its **own** grading rubrics, from its own spec; a fresh transcript; the child's *own* per-state
1419
- `tools.allow`. It is a separate session (`<parent>~<state>:<workflow>:<n>`)
1420
- with its own checkpoints and its own `scratchpad/`: a path it reads or writes
1437
+ `tools.allow`. It is a separate session (`<parent>~<n>`, `n` the dispatch's
1438
+ number in the caller, counted across its turns) with its own checkpoints and its own `scratchpad/`: a path it reads or writes
1421
1439
  resolves inside its own session, so it can neither see nor overwrite a file of
1422
1440
  its caller's, and concurrent sub-runs cannot collide on a path.
1423
1441
  - **Nothing crosses implicitly.** Down: only the arguments the call passed —
@@ -1753,9 +1771,11 @@ single-segment one is, and a sibling under the same first segment (`catalogs/uk`
1753
1771
  is not.
1754
1772
 
1755
1773
  A mount the host mounted **writable** is not a read-only zone — its paths are
1756
- governed like ordinary run paths — but a state may still be given it read-only,
1757
- with `mounts: { allow: [{ mount: <name>, access: read }] }`. A write refused by
1758
- that grant is `mount.read-only`; one refused by the wiring is `zone.read-only`.
1774
+ governed like ordinary run paths — but a governed one is written only where a grant
1775
+ of the workflow says `access: read_write`, and a state may still be given it
1776
+ read-only, with `mounts: { allow: [{ mount: <name>, access: read }] }`. A write
1777
+ refused by a grant is `mount.read-only`; one refused by the wiring is
1778
+ `zone.read-only`.
1759
1779
  See [Mount governance](#mount-governance).
1760
1780
 
1761
1781
  The run root is writable, and it has exactly one named working area: