wicked-crew 0.7.8 → 0.7.9

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 (119) hide show
  1. package/dist/api/audit.d.ts +9 -1
  2. package/dist/api/audit.d.ts.map +1 -1
  3. package/dist/api/audit.js +11 -3
  4. package/dist/api/audit.js.map +1 -1
  5. package/dist/api/delivery-index.d.ts +94 -7
  6. package/dist/api/delivery-index.d.ts.map +1 -1
  7. package/dist/api/delivery-index.js +182 -4
  8. package/dist/api/delivery-index.js.map +1 -1
  9. package/dist/api/elicitation-cache.d.ts +10 -0
  10. package/dist/api/elicitation-cache.d.ts.map +1 -1
  11. package/dist/api/elicitation-cache.js +18 -0
  12. package/dist/api/elicitation-cache.js.map +1 -1
  13. package/dist/api/governance-steering.d.ts +8 -0
  14. package/dist/api/governance-steering.d.ts.map +1 -1
  15. package/dist/api/governance-steering.js +36 -12
  16. package/dist/api/governance-steering.js.map +1 -1
  17. package/dist/api/post-hoc-deliver.d.ts +38 -0
  18. package/dist/api/post-hoc-deliver.d.ts.map +1 -0
  19. package/dist/api/post-hoc-deliver.js +57 -0
  20. package/dist/api/post-hoc-deliver.js.map +1 -0
  21. package/dist/api/routes.d.ts +34 -7
  22. package/dist/api/routes.d.ts.map +1 -1
  23. package/dist/api/routes.js +314 -35
  24. package/dist/api/routes.js.map +1 -1
  25. package/dist/api/seat-signin.d.ts +18 -2
  26. package/dist/api/seat-signin.d.ts.map +1 -1
  27. package/dist/api/seat-signin.js +21 -2
  28. package/dist/api/seat-signin.js.map +1 -1
  29. package/dist/api/server.d.ts +22 -7
  30. package/dist/api/server.d.ts.map +1 -1
  31. package/dist/api/server.js +131 -22
  32. package/dist/api/server.js.map +1 -1
  33. package/dist/api/stall-watchdog.d.ts +46 -21
  34. package/dist/api/stall-watchdog.d.ts.map +1 -1
  35. package/dist/api/stall-watchdog.js +193 -19
  36. package/dist/api/stall-watchdog.js.map +1 -1
  37. package/dist/api/steering-landing.d.ts +130 -0
  38. package/dist/api/steering-landing.d.ts.map +1 -0
  39. package/dist/api/steering-landing.js +367 -0
  40. package/dist/api/steering-landing.js.map +1 -0
  41. package/dist/api/testing.d.ts +3 -0
  42. package/dist/api/testing.d.ts.map +1 -1
  43. package/dist/api/testing.js +146 -18
  44. package/dist/api/testing.js.map +1 -1
  45. package/dist/api/unit-output.d.ts.map +1 -1
  46. package/dist/api/unit-output.js +7 -1
  47. package/dist/api/unit-output.js.map +1 -1
  48. package/dist/campaigns/plan.d.ts +46 -0
  49. package/dist/campaigns/plan.d.ts.map +1 -1
  50. package/dist/campaigns/plan.js +80 -0
  51. package/dist/campaigns/plan.js.map +1 -1
  52. package/dist/campaigns/routes.d.ts +2 -2
  53. package/dist/campaigns/worktrees.d.ts +39 -0
  54. package/dist/campaigns/worktrees.d.ts.map +1 -0
  55. package/dist/campaigns/worktrees.js +95 -0
  56. package/dist/campaigns/worktrees.js.map +1 -0
  57. package/dist/cli/index.js +46 -13
  58. package/dist/cli/index.js.map +1 -1
  59. package/dist/core/adapter.d.ts +65 -13
  60. package/dist/core/adapter.d.ts.map +1 -1
  61. package/dist/core/adapter.js +148 -31
  62. package/dist/core/adapter.js.map +1 -1
  63. package/dist/core/bridge-reaper.d.ts +54 -9
  64. package/dist/core/bridge-reaper.d.ts.map +1 -1
  65. package/dist/core/bridge-reaper.js +116 -11
  66. package/dist/core/bridge-reaper.js.map +1 -1
  67. package/dist/core/types.d.ts +25 -12
  68. package/dist/core/types.d.ts.map +1 -1
  69. package/dist/core/types.js +14 -0
  70. package/dist/core/types.js.map +1 -1
  71. package/dist/interactive/chat-events.d.ts.map +1 -1
  72. package/dist/interactive/chat-events.js +5 -2
  73. package/dist/interactive/chat-events.js.map +1 -1
  74. package/dist/interactive/demo-events.d.ts.map +1 -1
  75. package/dist/interactive/demo-events.js +5 -2
  76. package/dist/interactive/demo-events.js.map +1 -1
  77. package/dist/interactive/doc-delete-routes.d.ts +69 -0
  78. package/dist/interactive/doc-delete-routes.d.ts.map +1 -0
  79. package/dist/interactive/doc-delete-routes.js +240 -0
  80. package/dist/interactive/doc-delete-routes.js.map +1 -0
  81. package/dist/interactive/doc-ledger-sweep.d.ts +53 -0
  82. package/dist/interactive/doc-ledger-sweep.d.ts.map +1 -0
  83. package/dist/interactive/doc-ledger-sweep.js +45 -0
  84. package/dist/interactive/doc-ledger-sweep.js.map +1 -0
  85. package/dist/interactive/draft-events.d.ts.map +1 -1
  86. package/dist/interactive/draft-events.js +5 -2
  87. package/dist/interactive/draft-events.js.map +1 -1
  88. package/dist/interactive/edit-events.d.ts.map +1 -1
  89. package/dist/interactive/edit-events.js +5 -2
  90. package/dist/interactive/edit-events.js.map +1 -1
  91. package/dist/interactive/ledger.d.ts +20 -0
  92. package/dist/interactive/ledger.d.ts.map +1 -1
  93. package/dist/interactive/ledger.js +32 -0
  94. package/dist/interactive/ledger.js.map +1 -1
  95. package/dist/interactive/ws-relay.d.ts +10 -0
  96. package/dist/interactive/ws-relay.d.ts.map +1 -1
  97. package/dist/interactive/ws-relay.js +16 -0
  98. package/dist/interactive/ws-relay.js.map +1 -1
  99. package/dist/projects/graph-paths.d.ts +7 -22
  100. package/dist/projects/graph-paths.d.ts.map +1 -1
  101. package/dist/projects/graph-paths.js +10 -37
  102. package/dist/projects/graph-paths.js.map +1 -1
  103. package/dist/projects/settings.d.ts +32 -2
  104. package/dist/projects/settings.d.ts.map +1 -1
  105. package/dist/projects/settings.js +48 -6
  106. package/dist/projects/settings.js.map +1 -1
  107. package/dist/projects/state-home.d.ts +42 -0
  108. package/dist/projects/state-home.d.ts.map +1 -0
  109. package/dist/projects/state-home.js +55 -0
  110. package/dist/projects/state-home.js.map +1 -0
  111. package/dist/qe/acceptance.d.ts +9 -0
  112. package/dist/qe/acceptance.d.ts.map +1 -1
  113. package/dist/qe/acceptance.js +21 -1
  114. package/dist/qe/acceptance.js.map +1 -1
  115. package/dist/studio/assets/{index-BdQQv2hz.js → index-gtE6scX0.js} +98 -98
  116. package/dist/studio/index.html +1 -1
  117. package/dist/studio/testid-inventory.json +70 -4
  118. package/endpoint-manifest.json +28 -2
  119. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"testing.js","sourceRoot":"","sources":["../../src/api/testing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testing.js","sourceRoot":"","sources":["../../src/api/testing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,+BAA+B,EAC/B,wBAAwB,GAEzB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACnF,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAInF,MAAM,CAAC,GAAG,UAAU,CAAC;AAErB,SAAS,OAAO,CAAC,GAAY;IAC3B,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED;2FAC2F;AAC3F,SAAS,WAAW,CAAC,GAAe,EAAE,IAAY;IAChD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1F,MAAM,KAAK,GACT,OAAO,CAAC,MAAM,GAAG,CAAC;QAChB,CAAC,CAAC,GAAG,IAAI,kBAAkB,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,OAAO;aAC9D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;aACtB,IAAI,CAAC,IAAI,CAAC,oCACX,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAChC,kBAAkB,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,8CAA8C;QACpG,CAAC,CAAC,IAAI,CAAC;IACX,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;AACxC,CAAC;AAED,2FAA2F;AAC3F,uFAAuF;AACvF,+FAA+F;AAC/F,2FAA2F;AAC3F,2EAA2E;AAC3E,MAAM,iBAAiB,GAAG,CAAC;KACxB,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACrC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,gBAAgB,GAAG,CAAC;KACvB,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC7B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAChC,OAAO,EAAE,iBAAiB;CAC3B,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE;IAC7C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACrC,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC;KACpC,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1C,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,gGAAgG;AAChG,+FAA+F;AAC/F,6FAA6F;AAC7F,8FAA8F;AAC9F,+FAA+F;AAC/F,0FAA0F;AAC1F,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SACxB,GAAG,CAAC,CAAC,EAAE,4FAA4F,CAAC;SACpG,QAAQ,EAAE;IACb,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAChC,CAAC;KACD,MAAM,EAAE,CAAC;AAYZ,MAAM,UAAU,qBAAqB,CACnC,GAAoB,EACpB,OAAoB,EACpB,IAAuB;IAEvB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAEhC,gFAAgF;IAChF,4FAA4F;IAC5F,oFAAoF;IACpF,oFAAoF;IACpF,GAAG,CAAC,IAAI,CACN,GAAG,CAAC,oBAAoB,EACxB;QACE,MAAM,EAAE;YACN,QAAQ,EAAE;gBACR,WAAW,EAAE,wBAAwB;gBACrC,YAAY,EAAE,sBAAsB;gBACpC,uFAAuF;gBACvF,yDAAyD;gBACzD,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;aAClC;SACF;KACF,EACD,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QACnB,wEAAwE;QACxE,MAAM,MAAM,GAAG,wBAAwB,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,CAAC;YACH,oFAAoF;YACpF,oFAAoF;YACpF,wFAAwF;YACxF,OAAO,MAAM,OAAO,CAAC,kBAAkB,CAAC;gBACtC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5E,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,+BAA+B,EAAE,CAAC;gBACnD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACtD,CAAC;YACD,kFAAkF;YAClF,4BAA4B;YAC5B,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,gFAAgF;IAChF,0FAA0F;IAC1F,yFAAyF;IACzF,uDAAuD;IACvD,GAAG,CAAC,IAAI,CACN,GAAG,CAAC,yBAAyB,EAC7B;QACE,MAAM,EAAE;YACN,QAAQ,EAAE;gBACR,WAAW,EAAE,sBAAsB;gBACnC,YAAY,EAAE,0BAA0B;gBACxC,iFAAiF;gBACjF,oFAAoF;gBACpF,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;aAClC;SACF;KACF,EACD,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,4BAA4B,CAAC,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,sBAAsB,CACjD,MAAM,CAAC,IAAI,CAAC,IAAI,EAChB,MAAM,CAAC,IAAI,CAAC,OAAiC,CAC9C,CAAC;YACF,KAAK,CAAC,MAAM,CAAC,yBAAyB,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE;gBACpD,MAAM,EAAE;oBACN,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;oBACtB,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM;oBACnC,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;iBAC1B;aACF,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,+BAA+B,EAAE,CAAC;gBACnD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACtD,CAAC;YACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,gFAAgF;IAChF,2FAA2F;IAC3F,+FAA+F;IAC/F,6FAA6F;IAC7F,4FAA4F;IAC5F,8FAA8F;IAC9F,2FAA2F;IAC3F,2FAA2F;IAC3F,8FAA8F;IAC9F,4FAA4F;IAC5F,yFAAyF;IACzF,GAAG,CAAC,IAAI,CACN,GAAG,CAAC,gBAAgB,EACpB;QACE,MAAM,EAAE;YACN,QAAQ,EAAE;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,YAAY,EAAE,sBAAsB;gBACpC,oFAAoF;gBACpF,+EAA+E;gBAC/E,2DAA2D;gBAC3D,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;aAC5C;SACF;KACF,EACD,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;QACtB,IAAI,KAAK,CAAC;QACV,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE;gBACvC,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;aACrB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,wBAAwB,EAAE,CAAC;gBAC5C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACtD,CAAC;YACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/D,CAAC;QACD,0FAA0F;QAC1F,qFAAqF;QACrF,MAAM,QAAQ,GAAG,SAAS,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAChF,0FAA0F;QAC1F,yFAAyF;QACzF,yFAAyF;QACzF,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC;QACnE,4DAA4D;QAC5D,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9E;6EACqE;QACrE,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,UAAkB,EAAQ,EAAE;YAClE,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;gBAAE,OAAO;YACrE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CACrB,mBAAmB,EACnB;gBACE,UAAU,EAAE,CAAC,CAAC,SAAS;gBACvB,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE;gBACxC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE;aACvB,EACD,qBAAqB,CAAC,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,CAClE,CAAC;QACJ,CAAC,CAAC;QAEF,0FAA0F;QAC1F,wFAAwF;QACxF,0FAA0F;QAC1F,0FAA0F;QAC1F,kFAAkF;QAClF,oFAAoF;QACpF,gFAAgF;QAChF,uFAAuF;QACvF,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,OAAO,CAAC,kBAAkB,EAAE,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC5F,MAAM,KAAK,GAAG,kBAAkB,CAAC;gBAC/B,EAAE,EAAE,QAAQ;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE;gBACnB,OAAO,EAAE,CAAC,CAAC,OAAO,KAAK,IAAI;aAC5B,CAAC,CAAC;YACH,mFAAmF;YACnF,sFAAsF;YACtF,qFAAqF;YACrF,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACpF,IAAI,iBAAsC,CAAC;YAC3C,IAAI,CAAC;gBACH,iBAAiB,GAAG,MAAM,OAAO,CAAC,0BAA0B,CAC1D,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBACvB,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAClC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC3B,+EAA+E;wBAC/E,gEAAgE;wBAChE,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,yCAAyC,CAAC,CAAC;oBAC1E,CAAC;oBACD,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAE,EAAE,QAAQ,EAAE,CAAC;gBAC/C,CAAC,CAAC,CACH,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACvD,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC1C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,qFAAqF;gBACrF,mFAAmF;gBACnF,iFAAiF;gBACjF,6DAA6D;gBAC7D,MAAM,iBAAiB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAC1C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;gBACzB,MAAM,IAAI,GAAG,iDAAiD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YAC3D,CAAC;YACD,KAAK,CAAC,MAAM,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE;gBAC9C,MAAM,EAAE;oBACN,UAAU,EAAE,QAAQ;oBACpB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM;oBAC7B,KAAK,EAAE,CAAC;oBACR,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM;oBACxB,cAAc,EAAE,KAAK,CAAC,GAAG,CAAC,eAAe;oBACzC,KAAK,EAAE,IAAI;oBACX,GAAG,UAAU;oBACb,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChE,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACvC;aACF,CAAC,CAAC;YACH,gFAAgF;YAChF,gFAAgF;YAChF,wFAAwF;YACxF,qFAAqF;YACrF,wFAAwF;YACxF,IAAI,kBAAsC,CAAC;YAC3C,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;gBAChD,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oBAC9B,IAAI,CAAC;wBACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAClD,CAAC,CAAC,SAAS,EACX,UAAU,EACV,KAAK,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EACzB,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAChB,CAAC;wBACF,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;oBAC7C,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,4EAA4E;wBAC5E,6EAA6E;wBAC7E,qEAAqE;wBACrE,kBAAkB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;wBACpC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,EAAE,4BAA4B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC9F,CAAC;gBACH,CAAC;gBACD,gFAAgF;gBAChF,mFAAmF;gBACnF,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE;oBACzC,KAAK;oBACL,MAAM,EAAE;wBACN,QAAQ;wBACR,KAAK,EAAE,IAAI;wBACX,GAAG,UAAU;wBACb,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,EAAE;wBAC3B,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACjE;iBACF,CAAC,CAAC;YACL,CAAC;YACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBAC1B,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAE;gBACvB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,QAAQ;gBACR,kBAAkB,EAAE,IAAI;gBACxB,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACpE,CAAC,CAAC;QACL,CAAC;QAED,0FAA0F;QAC1F,uFAAuF;QACvF,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAmB;gBAC5B,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACvC,oFAAoF;gBACpF,oEAAoE;gBACpE,YAAY,EAAE,IAAI;aACnB,CAAC;YACF,IAAI,MAAM,KAAK,IAAI;gBAAE,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC9B,sFAAsF;gBACtF,wFAAwF;gBACxF,sEAAsE;gBACtE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;gBAC9B,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;gBACpF,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI;oBAAE,KAAK,CAAC,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC;gBACrE,GAAG,CAAC,GAAG,CAAC,IAAI,CACV,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,IAAI,EAAE,EAC9D,OAAO,KAAK,KAAK,QAAQ,CAAC,MAAM,EAAE,CACnC,CAAC;YACJ,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACjC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;gBACzB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,+EAA+E;oBAC/E,wEAAwE;oBACxE,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBAC1B,KAAK,EACH,iCAAiC,MAAM,EAAE,EAAE,IAAI,YAAY,UAAU;4BACrE,GAAG,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE;wBAC5C,MAAM;wBACN,QAAQ;wBACR,kBAAkB,EAAE,KAAK;qBAC1B,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,GAAG,YAAY,wBAAwB,EAAE,CAAC;oBAC5C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC9C,CAAC;gBACD,MAAM,IAAI,GAAG,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YAC3D,CAAC;YACD,sFAAsF;YACtF,uFAAuF;YACvF,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE;gBACzC,KAAK;gBACL,MAAM,EAAE;oBACN,QAAQ;oBACR,KAAK,EAAE,IAAI;oBACX,GAAG,UAAU;oBACb,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClD,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACjE;aACF,CAAC,CAAC;YACH,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QACD,oFAAoF;QACpF,yFAAyF;QACzF,yFAAyF;QACzF,sFAAsF;QACtF,4DAA4D;QAC5D,OAAO,KAAK;aACT,IAAI,CAAC,GAAG,CAAC;aACT,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9E,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"unit-output.d.ts","sourceRoot":"","sources":["../../src/api/unit-output.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG9D;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAW9E;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,EAAE,CAKtD;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAsC9D"}
1
+ {"version":3,"file":"unit-output.d.ts","sourceRoot":"","sources":["../../src/api/unit-output.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG9D;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAW9E;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,EAAE,CAKtD;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CA4C9D"}
@@ -87,11 +87,17 @@ export function outputUnavailableReason(unit) {
87
87
  // deny AND a worker step failure — and only `denial_reason` distinguishes them (core prefixes
88
88
  // it "Governance DENIED unit N …" or "Worker FAILED on unit N (triage: …)"). Naming one cause
89
89
  // for both would be this endpoint committing the FINDING-050 error while fixing FINDING-006.
90
+ //
91
+ // `${where}` is placed BEFORE `${why}` (crew#322): a step-failure denial_reason carries
92
+ // core's bounded head+tail excerpt, which contains embedded newlines. Any line-based
93
+ // consumer (log forwarder, UI card, shell head -1) that stops at the first newline would
94
+ // silently drop everything after it — including the evidence pointer. Putting the pointer
95
+ // first guarantees it survives regardless of how long or how multi-line denial_reason is.
90
96
  return (`Unit ${unit.ord} was REJECTED, so wicked-core stored no transcript for it: a work_output ` +
91
97
  `record is written only for a unit whose phase resolved approved, and this one's did not. ` +
92
98
  `That is the deny-dominates rule holding, not a lost or unreadable record — and the text ` +
93
99
  `the unit streamed is not retained anywhere else, so this is the whole of what survives. ` +
94
- `Why it was rejected: ${why}. ${where}`);
100
+ `${where} Why it was rejected: ${why}`);
95
101
  }
96
102
  if (unit.status === 'pending' || unit.status === 'distributed') {
97
103
  return (`Unit ${unit.ord} has not finished (status: ${unit.status}). wicked-core writes a unit's ` +
@@ -1 +1 @@
1
- {"version":3,"file":"unit-output.js","sourceRoot":"","sources":["../../src/api/unit-output.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,WAAW,CAAC,GAAgB,EAAE,OAAe;IAC3D,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC;IAC3B,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IACrD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACpC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,OAAO,CAAC,CAAC;IACzG,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IAC5C,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,OAAO,CAAC,CAAC;IAC9D,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,CAAC;IAC/D,OAAO,KAAK,IAAI,IAAI,CAAC;AACvB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,GAAgB;IAC1C,MAAM,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC;IACpC,OAAO,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;SAClB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC;SAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAc;IACpD,MAAM,KAAK,GACT,0DAA0D,UAAU,SAAS,IAAI,CAAC,UAAU,YAAY,CAAC;IAE3G,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,GAAG,GACP,IAAI,CAAC,aAAa,KAAK,IAAI,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,IAAI,CAAC,aAAa,KAAK,EAAE;YAC1F,CAAC,CAAC,6CAA6C;YAC/C,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;QACzB,6FAA6F;QAC7F,8FAA8F;QAC9F,8FAA8F;QAC9F,6FAA6F;QAC7F,OAAO,CACL,QAAQ,IAAI,CAAC,GAAG,2EAA2E;YAC3F,2FAA2F;YAC3F,0FAA0F;YAC1F,0FAA0F;YAC1F,wBAAwB,GAAG,KAAK,KAAK,EAAE,CACxC,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;QAC/D,OAAO,CACL,QAAQ,IAAI,CAAC,GAAG,8BAA8B,IAAI,CAAC,MAAM,iCAAiC;YAC1F,oFAAoF;YACpF,4FAA4F,CAC7F,CAAC;IACJ,CAAC;IAED,gGAAgG;IAChG,4FAA4F;IAC5F,yDAAyD;IACzD,OAAO,CACL,QAAQ,IAAI,CAAC,GAAG,mBAAmB,IAAI,CAAC,MAAM,2CAA2C;QACzF,+DAA+D,IAAI,CAAC,EAAE,sBAAsB;QAC5F,+EAA+E,KAAK,EAAE,CACvF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"unit-output.js","sourceRoot":"","sources":["../../src/api/unit-output.ts"],"names":[],"mappings":"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"}
@@ -78,6 +78,52 @@ export interface FannedScenarios {
78
78
  * the {@link MAX_SCENARIO_ID} cap or collide with an id the caller already used.
79
79
  */
80
80
  export declare function fanScenarios(scenarios: CampaignScenario[], repos: FanRepo[]): FannedScenarios;
81
+ /** The intake gate every recon sibling pauses at (engine serde shape of `HumanConfirm::Before(1)`):
82
+ * pause before unit 1 — the plan is on the table, nothing has run. The same posture as the
83
+ * studio composer's shipped default (`before:1` on the launch wire). */
84
+ export declare const RECON_INTAKE_GATE: {
85
+ readonly before: 1;
86
+ };
87
+ /** The `LaunchRunInput.humanConfirm` wire token for the same gate — the per-run fan path
88
+ * (single repo / unscoped / no campaign bindings) must pause at the identical seam. */
89
+ export declare const RECON_INTAKE_GATE_TOKEN = "before:1";
90
+ export interface ReconCampaignInput {
91
+ /** Campaign id = the shared recon label (`recon-<ts36>-<hex8>` — {@link SAFE_ID}-safe by
92
+ * construction, and what `TestingReconResponse.campaign` already carries). */
93
+ id: string;
94
+ /** The operator's brief, VERBATIM — each sibling node's Run decomposes exactly this, the same
95
+ * text the per-run fan passed to `launchRun`. Deliberately NOT held to the 1022-byte inline
96
+ * rule: that rule stops scenario BODIES being smuggled into argv/label slots, whereas this IS
97
+ * the run's problem statement — the same field a plain `POST /runs` launch carries uncapped. */
98
+ problem: string;
99
+ /** The resolved fan targets, in the caller's resolved order (≥ 2 — a smaller scope stays on
100
+ * the per-run path so the single-repo/unscoped recon keeps today's shape). */
101
+ repos: FanRepo[];
102
+ /** The parsed council roster every sibling convenes. */
103
+ clis: unknown[];
104
+ /** `true` = the caller EXPLICITLY asked for an unattended fan (`ungated: true` on the wire —
105
+ * never a silent default): nodes carry no gate. `false` = the intake gate per sibling. */
106
+ ungated: boolean;
107
+ }
108
+ /** A built recon fan: the engine def plus the attempt-0 node run ids in repo order — the
109
+ * `runIds` the route answers with (`{campaign}:{node}:a0`, the engine's documented scheme). */
110
+ export interface ReconCampaign {
111
+ def: CampaignDef;
112
+ runIds: string[];
113
+ }
114
+ /**
115
+ * Build the recon fan-out's `CampaignDef`: one AGENT node per resolved repo — no edges (siblings
116
+ * are independent, exactly as the per-run fan launched them), `continue_independent` (one honest
117
+ * failure never cancels the others), and `max_concurrency` = the fan width capped at 64 (the
118
+ * per-run fan launched everything at once; the campaign must not silently serialize it, but an
119
+ * unbounded fan must not exhaust the host either). Each node's
120
+ * run_spec carries the caller's brief, the shared roster, its repo, and — unless the caller
121
+ * explicitly said `ungated` — the {@link RECON_INTAKE_GATE}.
122
+ *
123
+ * Throws a plain `Error` (the route's 500 — the inputs are daemon-resolved, not caller text)
124
+ * when called with fewer than 2 repos or a label that breaks the campaign-id rule.
125
+ */
126
+ export declare function buildReconCampaign(input: ReconCampaignInput): ReconCampaign;
81
127
  /**
82
128
  * Map a `POST /campaigns` body onto the engine's `CampaignDef` + the per-node workflows to arm.
83
129
  *
@@ -1 +1 @@
1
- {"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../src/campaigns/plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EACV,WAAW,EAGX,gBAAgB,EAChB,kBAAkB,EAElB,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAE1B;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,OAAO,CAAC;AASrC;;qEAEqE;AACrE,eAAO,MAAM,wBAAwB,cAAc,CAAC;AAEpD,oEAAoE;AACpE,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEjF;AAED;gEACgE;AAChE,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,WAAW,CAAC;IACjB,SAAS,EAAE,WAAW,EAAE,CAAC;CAC1B;AAWD,8FAA8F;AAC9F,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,2FAA2F;AAC3F,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAOD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,eAAe,CA+E7F;AAiDD;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,aAAa,CAwD7F"}
1
+ {"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../src/campaigns/plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EACV,WAAW,EAGX,gBAAgB,EAChB,kBAAkB,EAElB,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAE1B;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,OAAO,CAAC;AASrC;;qEAEqE;AACrE,eAAO,MAAM,wBAAwB,cAAc,CAAC;AAEpD,oEAAoE;AACpE,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEjF;AAED;gEACgE;AAChE,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,WAAW,CAAC;IACjB,SAAS,EAAE,WAAW,EAAE,CAAC;CAC1B;AAWD,8FAA8F;AAC9F,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,2FAA2F;AAC3F,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAOD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,eAAe,CA+E7F;AAWD;;yEAEyE;AACzE,eAAO,MAAM,iBAAiB;;CAAyB,CAAC;AAExD;wFACwF;AACxF,eAAO,MAAM,uBAAuB,aAAa,CAAC;AAElD,MAAM,WAAW,kBAAkB;IACjC;mFAC+E;IAC/E,EAAE,EAAE,MAAM,CAAC;IACX;;;qGAGiG;IACjG,OAAO,EAAE,MAAM,CAAC;IAChB;mFAC+E;IAC/E,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,wDAAwD;IACxD,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB;+FAC2F;IAC3F,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;gGACgG;AAChG,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,WAAW,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAeD;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,GAAG,aAAa,CA2C3E;AAiDD;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,aAAa,CAwD7F"}
@@ -134,6 +134,86 @@ export function fanScenarios(scenarios, repos) {
134
134
  }
135
135
  return { scenarios: out, runOrder };
136
136
  }
137
+ // ── The recon fan-out's campaign (crew#390/#391) ─────────────────────────────────────────────
138
+ //
139
+ // `POST /testing/recon` over ≥ 2 resolved repos used to launch N independent runs under a
140
+ // LABEL-ONLY campaign — invisible to `GET /campaigns` (crew#390) and, worse, launched with
141
+ // `human_confirm: none` while the launch banner promised a per-sibling intake gate (crew#391).
142
+ // This builder converges the fan with the campaign-launch path: ONE engine `CampaignDef` whose
143
+ // nodes are the siblings, so the engine schedules, persists, and reports the fan like any other
144
+ // campaign, and every sibling carries the gate the banner advertises.
145
+ /** The intake gate every recon sibling pauses at (engine serde shape of `HumanConfirm::Before(1)`):
146
+ * pause before unit 1 — the plan is on the table, nothing has run. The same posture as the
147
+ * studio composer's shipped default (`before:1` on the launch wire). */
148
+ export const RECON_INTAKE_GATE = { before: 1 };
149
+ /** The `LaunchRunInput.humanConfirm` wire token for the same gate — the per-run fan path
150
+ * (single repo / unscoped / no campaign bindings) must pause at the identical seam. */
151
+ export const RECON_INTAKE_GATE_TOKEN = 'before:1';
152
+ /** One repo's node id: the repo NAME squeezed into the {@link SAFE_ID} alphabet (readable in
153
+ * run ids and on the campaign detail), deduped by repo position when two names collide. */
154
+ function reconNodeId(name, index, taken) {
155
+ const base = name
156
+ .replace(/[^a-zA-Z0-9._-]+/g, '-')
157
+ .replace(/^[^a-zA-Z0-9]+/, '')
158
+ .slice(0, 40) || `r${index + 1}`;
159
+ const id = taken.has(base) ? `${base}-r${index + 1}` : base;
160
+ taken.add(id);
161
+ return id;
162
+ }
163
+ /**
164
+ * Build the recon fan-out's `CampaignDef`: one AGENT node per resolved repo — no edges (siblings
165
+ * are independent, exactly as the per-run fan launched them), `continue_independent` (one honest
166
+ * failure never cancels the others), and `max_concurrency` = the fan width capped at 64 (the
167
+ * per-run fan launched everything at once; the campaign must not silently serialize it, but an
168
+ * unbounded fan must not exhaust the host either). Each node's
169
+ * run_spec carries the caller's brief, the shared roster, its repo, and — unless the caller
170
+ * explicitly said `ungated` — the {@link RECON_INTAKE_GATE}.
171
+ *
172
+ * Throws a plain `Error` (the route's 500 — the inputs are daemon-resolved, not caller text)
173
+ * when called with fewer than 2 repos or a label that breaks the campaign-id rule.
174
+ */
175
+ export function buildReconCampaign(input) {
176
+ if (input.repos.length < 2) {
177
+ throw new Error(`buildReconCampaign needs at least 2 resolved repos (got ${input.repos.length}) — ` +
178
+ 'a single-repo or unscoped recon stays on the per-run launch path');
179
+ }
180
+ if (!SAFE_ID.test(input.id) || input.id.length > MAX_CAMPAIGN_ID) {
181
+ throw new Error(`recon campaign label '${input.id}' breaks the campaign-id rule`);
182
+ }
183
+ const taken = new Set();
184
+ const nodes = [];
185
+ const runIds = [];
186
+ for (const [i, repo] of input.repos.entries()) {
187
+ const nodeId = reconNodeId(repo.name, i, taken);
188
+ nodes.push({
189
+ node_id: nodeId,
190
+ run_spec: {
191
+ problem: input.problem,
192
+ clis: input.clis,
193
+ entity_mode: 'shared',
194
+ // Absent = the engine's `HumanConfirm::None` — the EXPLICITLY requested unattended fan.
195
+ ...(input.ungated ? {} : { human_confirm: RECON_INTAKE_GATE }),
196
+ repo_ref: repo.id,
197
+ },
198
+ });
199
+ runIds.push(`${input.id}:${nodeId}:a0`);
200
+ }
201
+ // The campaign NAME is the brief's first line (what the dashboard card shows), the label as
202
+ // the fallback for an all-whitespace first line.
203
+ const firstLine = input.problem.split('\n', 1)[0].trim();
204
+ const name = firstLine === '' ? input.id : firstLine.slice(0, 140);
205
+ return {
206
+ def: {
207
+ id: input.id,
208
+ name,
209
+ nodes,
210
+ edges: [],
211
+ policy: 'continue_independent',
212
+ max_concurrency: Math.min(input.repos.length, 64),
213
+ },
214
+ runIds,
215
+ };
216
+ }
137
217
  /** Throw with the scenario + token named when an inline string breaks the single-line /
138
218
  * byte-ceiling rule. One spelling of the rule for both scenario shapes. */
139
219
  function assertInline(scenarioId, what, value) {
@@ -1 +1 @@
1
- {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../src/campaigns/plan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../src/campaigns/plan.ts"],"names":[],"mappings":"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"}
@@ -94,7 +94,7 @@ export declare const LaunchCampaignSchema: z.ZodObject<{
94
94
  name?: string | undefined;
95
95
  projectId?: string | undefined;
96
96
  repoRefs?: string[] | undefined;
97
- policy?: "fail_fast" | "continue_independent" | "human_gate_on_failure" | undefined;
97
+ policy?: "continue_independent" | "fail_fast" | "human_gate_on_failure" | undefined;
98
98
  maxConcurrency?: number | undefined;
99
99
  clisJson?: string | undefined;
100
100
  }, {
@@ -116,7 +116,7 @@ export declare const LaunchCampaignSchema: z.ZodObject<{
116
116
  name?: string | undefined;
117
117
  projectId?: string | undefined;
118
118
  repoRefs?: string[] | undefined;
119
- policy?: "fail_fast" | "continue_independent" | "human_gate_on_failure" | undefined;
119
+ policy?: "continue_independent" | "fail_fast" | "human_gate_on_failure" | undefined;
120
120
  maxConcurrency?: number | undefined;
121
121
  clisJson?: string | undefined;
122
122
  }>;
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Pre-provisioned campaign-node worktrees — the daemon-side workaround for an ENGINE defect
3
+ * (found while landing crew#390): the engine names every run's worktree branch
4
+ * `wicked/{run_id}` VERBATIM (`wicked-core src/repo.rs create_worktree`), and a campaign node's
5
+ * run id is `{campaign}:{node}:a{attempt}` — a string git REFUSES as a branch name (':' is
6
+ * illegal in a ref). Every repo-scoped campaign node therefore fails at dispatch with
7
+ * "git worktree add failed: … is not a valid branch name" before a single unit runs, on every
8
+ * released engine.
9
+ *
10
+ * The workaround rides the same function's DOCUMENTED contract: `create_worktree` is
11
+ * "idempotent for a genuine resume: a live worktree already at the path is reused". So the
12
+ * daemon creates each node's worktree FIRST — at the engine's own layout
13
+ * (`<repo_root>/wicked-worktrees/<run_id>`, the crew#276 non-dotted root every engine this
14
+ * daemon can install uses: `wicked-core-ts` floor ^0.7.6) — on a branch-SAFE name
15
+ * (`wicked/<run_id with ':' → '-'>`), and the engine's dispatch finds and reuses it instead of
16
+ * minting the illegal branch. When the engine later sanitizes its branch names natively, these
17
+ * pre-created worktrees keep reading as the same legitimate resume state.
18
+ *
19
+ * Fail-closed and atomic-ish: provisioning happens BEFORE the campaign launches, so a git
20
+ * failure aborts the whole request with nothing scheduled; the returned rollback lets the
21
+ * caller reclaim the worktrees when the launch itself is then refused. NOTE: the run-id path
22
+ * carries ':' — legal on macOS/Linux, ILLEGAL on Windows filesystems — so callers must keep a
23
+ * non-campaign fallback on win32 (the recon route does).
24
+ */
25
+ /** One node's provisioning target: the engine-derived run id and its repo's root checkout. */
26
+ export interface WorktreeTarget {
27
+ runId: string;
28
+ repoRoot: string;
29
+ }
30
+ /** The branch-safe spelling of a campaign-node run id (':' is illegal in a git ref). */
31
+ export declare function branchSafe(runId: string): string;
32
+ /**
33
+ * Create one live worktree per target at the engine's layout, on a branch-safe branch.
34
+ * Throws (after removing whatever it already created) when any `git worktree add` refuses —
35
+ * the caller aborts the launch with nothing scheduled. Returns a best-effort rollback for the
36
+ * caller's own abort paths (e.g. the engine then refusing the campaign def).
37
+ */
38
+ export declare function provisionCampaignWorktrees(targets: WorktreeTarget[]): Promise<() => Promise<void>>;
39
+ //# sourceMappingURL=worktrees.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worktrees.d.ts","sourceRoot":"","sources":["../../src/campaigns/worktrees.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAMH,8FAA8F;AAC9F,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wFAAwF;AACxF,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AAsBD;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,cAAc,EAAE,GACxB,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAoC9B"}
@@ -0,0 +1,95 @@
1
+ /**
2
+ * Pre-provisioned campaign-node worktrees — the daemon-side workaround for an ENGINE defect
3
+ * (found while landing crew#390): the engine names every run's worktree branch
4
+ * `wicked/{run_id}` VERBATIM (`wicked-core src/repo.rs create_worktree`), and a campaign node's
5
+ * run id is `{campaign}:{node}:a{attempt}` — a string git REFUSES as a branch name (':' is
6
+ * illegal in a ref). Every repo-scoped campaign node therefore fails at dispatch with
7
+ * "git worktree add failed: … is not a valid branch name" before a single unit runs, on every
8
+ * released engine.
9
+ *
10
+ * The workaround rides the same function's DOCUMENTED contract: `create_worktree` is
11
+ * "idempotent for a genuine resume: a live worktree already at the path is reused". So the
12
+ * daemon creates each node's worktree FIRST — at the engine's own layout
13
+ * (`<repo_root>/wicked-worktrees/<run_id>`, the crew#276 non-dotted root every engine this
14
+ * daemon can install uses: `wicked-core-ts` floor ^0.7.6) — on a branch-SAFE name
15
+ * (`wicked/<run_id with ':' → '-'>`), and the engine's dispatch finds and reuses it instead of
16
+ * minting the illegal branch. When the engine later sanitizes its branch names natively, these
17
+ * pre-created worktrees keep reading as the same legitimate resume state.
18
+ *
19
+ * Fail-closed and atomic-ish: provisioning happens BEFORE the campaign launches, so a git
20
+ * failure aborts the whole request with nothing scheduled; the returned rollback lets the
21
+ * caller reclaim the worktrees when the launch itself is then refused. NOTE: the run-id path
22
+ * carries ':' — legal on macOS/Linux, ILLEGAL on Windows filesystems — so callers must keep a
23
+ * non-campaign fallback on win32 (the recon route does).
24
+ */
25
+ import { join } from 'node:path';
26
+ import { mkdir, readFile, writeFile } from 'node:fs/promises';
27
+ import { execCapped } from '../core/exec.js';
28
+ /** The branch-safe spelling of a campaign-node run id (':' is illegal in a git ref). */
29
+ export function branchSafe(runId) {
30
+ return runId.replaceAll(':', '-');
31
+ }
32
+ async function git(repoRoot, args) {
33
+ await execCapped('git', ['-C', repoRoot, ...args], { windowsHide: true });
34
+ }
35
+ /** Mirror of the engine's `ensure_worktrees_excluded` (repo-local `.git/info/exclude`) — the
36
+ * engine only writes it on the mint path, which the reuse contract skips. Best-effort. */
37
+ async function ensureExcluded(repoRoot) {
38
+ const ENTRY = 'wicked-worktrees/';
39
+ const exclude = join(repoRoot, '.git', 'info', 'exclude');
40
+ try {
41
+ const existing = await readFile(exclude, 'utf8').catch(() => '');
42
+ if (existing.split('\n').some((l) => l.trim() === ENTRY))
43
+ return;
44
+ const body = existing === '' || existing.endsWith('\n') ? existing : `${existing}\n`;
45
+ await mkdir(join(repoRoot, '.git', 'info'), { recursive: true });
46
+ await writeFile(exclude, `${body}${ENTRY}\n`, 'utf8');
47
+ }
48
+ catch {
49
+ /* cosmetic — a dirty `git status` in the parent checkout, never a failed run */
50
+ }
51
+ }
52
+ /**
53
+ * Create one live worktree per target at the engine's layout, on a branch-safe branch.
54
+ * Throws (after removing whatever it already created) when any `git worktree add` refuses —
55
+ * the caller aborts the launch with nothing scheduled. Returns a best-effort rollback for the
56
+ * caller's own abort paths (e.g. the engine then refusing the campaign def).
57
+ */
58
+ export async function provisionCampaignWorktrees(targets) {
59
+ const created = [];
60
+ const rollback = async () => {
61
+ for (const t of created) {
62
+ const wt = join(t.repoRoot, 'wicked-worktrees', t.runId);
63
+ // Forced remove is correct here: the run never started, so there is no work to preserve.
64
+ await execCapped('git', ['-C', t.repoRoot, 'worktree', 'remove', '--force', wt], {
65
+ windowsHide: true,
66
+ }).catch(() => { });
67
+ await execCapped('git', ['-C', t.repoRoot, 'branch', '-D', `wicked/${branchSafe(t.runId)}`], {
68
+ windowsHide: true,
69
+ }).catch(() => { });
70
+ }
71
+ };
72
+ for (const t of targets) {
73
+ const wt = join(t.repoRoot, 'wicked-worktrees', t.runId);
74
+ const branch = `wicked/${branchSafe(t.runId)}`;
75
+ try {
76
+ await mkdir(join(t.repoRoot, 'wicked-worktrees'), { recursive: true });
77
+ try {
78
+ await git(t.repoRoot, ['worktree', 'add', wt, '-b', branch]);
79
+ }
80
+ catch {
81
+ // The engine's own retry idiom: a stale branch from a prior attempt blocks `-b` — reuse it.
82
+ await git(t.repoRoot, ['worktree', 'add', wt, branch]);
83
+ }
84
+ await ensureExcluded(t.repoRoot);
85
+ created.push(t);
86
+ }
87
+ catch (err) {
88
+ await rollback();
89
+ throw new Error(`pre-provisioning the campaign worktree for run '${t.runId}' failed in ` +
90
+ `'${t.repoRoot}': ${err instanceof Error ? err.message : String(err)}`);
91
+ }
92
+ }
93
+ return rollback;
94
+ }
95
+ //# sourceMappingURL=worktrees.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worktrees.js","sourceRoot":"","sources":["../../src/campaigns/worktrees.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -1,15 +1,14 @@
1
1
  #!/usr/bin/env node
2
2
  import { performance } from 'node:perf_hooks';
3
- import { homedir } from 'node:os';
4
3
  import { join } from 'node:path';
5
4
  import { mkdirSync } from 'node:fs';
6
5
  import { randomUUID } from 'node:crypto';
7
6
  import { CoreAdapter } from '../core/adapter.js';
8
7
  import { ensureBridgesOnPath } from '../core/bridge-path.js';
9
- import { bridgeReaper, reapOrphansAtBoot } from '../core/bridge-reaper.js';
8
+ import { bridgeReaper, reapOrphansAtBoot, startOrphanSweep } from '../core/bridge-reaper.js';
10
9
  import { startServer } from '../api/server.js';
11
10
  import { resolveAuthMode } from '../api/auth.js';
12
- import { setProjectGraphStateHome, stateHomeOfDb } from '../projects/graph-paths.js';
11
+ import { crewStateHome, setCrewStateHome, stateHomeOfDb } from '../projects/state-home.js';
13
12
  import { runMcpServer } from './mcp.js';
14
13
  const [, , command, ...argv] = process.argv;
15
14
  function flag(args, name) {
@@ -27,10 +26,13 @@ function isFalsy(val) {
27
26
  const v = val.trim().toLowerCase();
28
27
  return v === '' || v === '0' || v === 'false' || v === 'no' || v === 'off';
29
28
  }
30
- /** Durable state home (~/.wicked-crew) — runs/evidence must survive a reboot, which the
31
- * OS temp dir explicitly does not. Created on demand; --db/--bus-db still override. */
29
+ /** Durable DEFAULT state home (~/.wicked-crew) — runs/evidence must survive a reboot, which the
30
+ * OS temp dir explicitly does not. Created on demand, and ONLY on the default path: `??` keeps
31
+ * this call out of a `--db` boot entirely (crew#353's E2E gate — an isolated daemon must not even
32
+ * `mkdir` the operator's real `~/.wicked-crew`). Resolves through the shared state-home seam;
33
+ * at parse time no `--db` has been threaded yet, so this IS the homedir default. */
32
34
  function stateHome() {
33
- const dir = join(homedir(), '.wicked-crew');
35
+ const dir = crewStateHome();
34
36
  mkdirSync(dir, { recursive: true });
35
37
  return dir;
36
38
  }
@@ -43,9 +45,15 @@ function parseBootstrap(args) {
43
45
  // `--engine-exec` flag or WICKED_BUS_EXEC env turns it on; `--bus-db` / WICKED_BUS_DB sets the bus db.
44
46
  const engineExec = hasFlag(args, '--engine-exec') ||
45
47
  (process.env['WICKED_BUS_EXEC'] !== undefined && process.env['WICKED_BUS_EXEC'] !== '');
48
+ // The exec seam's bus db follows the SAME state home as the core db (crew#353): with `--db`
49
+ // given, the old `stateHome()` fallback both pointed the bus at the developer's real
50
+ // `~/.wicked-crew/bus.db` AND eagerly `mkdir`ed that directory on every boot — the isolated
51
+ // daemon's first write into a home it was told to stay out of. `stateHomeOfDb(dbPath)` is
52
+ // byte-identical without `--db` (the default dbPath's parent IS `~/.wicked-crew`, already
53
+ // created by `stateHome()` above).
46
54
  const busDbPath = flag(args, '--bus-db') ??
47
55
  process.env['WICKED_BUS_DB'] ??
48
- join(stateHome(), 'bus.db');
56
+ join(stateHomeOfDb(dbPath), 'bus.db');
49
57
  // OPT-IN (Phase 6a, same shape as --engine-exec): consume the QE gate's bus
50
58
  // events (`wicked.qe.gate.*` + `wicked.qe.deploy.completed`) into the
51
59
  // acceptance freshness cache. Default OFF → the acceptance route lazy-reads
@@ -101,11 +109,13 @@ async function bootstrap(opts) {
101
109
  // environment. Makes a plain `npm install` deployment fully self-contained (no
102
110
  // global installs, no hand-made symlinks).
103
111
  ensureBridgesOnPath();
104
- // Project graphs follow the SAME state home as the core db (crew#330): a daemon isolated with
105
- // `--db $SCRATCH/core.db` must not write 40+ MB graphs into the developer's real
106
- // ~/.wicked-crew. Without --db the resolved parent IS ~/.wicked-crew, so the default daemon
107
- // is byte-identical; an explicit WICKED_CREW_PROJECT_GRAPH_ROOT still outranks this.
108
- setProjectGraphStateHome(stateHomeOfDb(opts.dbPath));
112
+ // Every crew-side durable store follows the SAME state home as the core db (crew#330 for the
113
+ // project graphs, crew#353 for the project settings): a daemon isolated with
114
+ // `--db $SCRATCH/core.db` must not write 40+ MB graphs — or the operator's project settings —
115
+ // into the developer's real ~/.wicked-crew. Without --db the resolved parent IS ~/.wicked-crew,
116
+ // so the default daemon is byte-identical; the explicit per-store env overrides
117
+ // (WICKED_CREW_PROJECT_GRAPH_ROOT, WICKED_CREW_PROJECT_SETTINGS) still outrank this.
118
+ setCrewStateHome(stateHomeOfDb(opts.dbPath));
109
119
  const adapter = new CoreAdapter({
110
120
  dbPath: opts.dbPath,
111
121
  stub: opts.stub,
@@ -221,6 +231,25 @@ function printReady(fields) {
221
231
  async function main() {
222
232
  const t0 = performance.now();
223
233
  if (command === 'serve') {
234
+ if (hasFlag(argv, '--help') || hasFlag(argv, '-h')) {
235
+ console.log('Usage: wicked-crew serve [options]\n' +
236
+ '\n' +
237
+ 'Start the wicked-crew daemon.\n' +
238
+ '\n' +
239
+ 'Options:\n' +
240
+ ' --port <n> Port to listen on (default: 7701, env: CREW_PORT)\n' +
241
+ ' --db <path> Core database path (default: ~/.wicked-crew/core.db)\n' +
242
+ ' --bus-db <path> Bus database path (default: ~/.wicked-crew/bus.db, env: WICKED_BUS_DB)\n' +
243
+ ' --stub Use stub engine (env: WICKED_CORE_STUB=1)\n' +
244
+ ' --engine-exec Arm event-driven execution seam (env: WICKED_BUS_EXEC)\n' +
245
+ ' --qe-gate-events Consume QE gate bus events (env: WICKED_QE_GATE_EVENTS)\n' +
246
+ ' --no-interactive-draft-events Disable interactive draft answering (env: WICKED_INTERACTIVE_DRAFT_EVENTS=0)\n' +
247
+ ' --no-interactive-edit-events Disable interactive edit answering (env: WICKED_INTERACTIVE_EDIT_EVENTS=0)\n' +
248
+ ' --no-interactive-chat-events Disable interactive chat answering (env: WICKED_INTERACTIVE_CHAT_EVENTS=0)\n' +
249
+ ' --no-interactive-demo-events Disable interactive demo answering (env: WICKED_INTERACTIVE_DEMO_EVENTS=0)\n' +
250
+ ' -h, --help Print this help');
251
+ process.exit(0);
252
+ }
224
253
  const opts = parseBootstrap(argv);
225
254
  // Boot sweep (crew#285): bridges orphaned by a PRIOR daemon generation are
226
255
  // reparented to init and would otherwise live forever — shutdown-path reaping
@@ -228,7 +257,11 @@ async function main() {
228
257
  // daemon's bridges are untouched.
229
258
  const orphans = reapOrphansAtBoot();
230
259
  if (orphans.length > 0)
231
- console.warn(`[bridge-reaper] reaped ${orphans.length} orphaned bridge(s) from a previous daemon: ${orphans.join(', ')}`);
260
+ console.warn(`[bridge-reaper] reaped ${orphans.length} orphaned bridge/worker process(es) from a previous daemon: ${orphans.join(', ')}`);
261
+ // Live sweep (crew#340): kill -9 on a bridge mid-run orphans its worker CLI NOW, and
262
+ // that orphan holds the shared worker config home hostage until reaped — the boot
263
+ // sweep only helps the NEXT daemon. Unref'd timer; SIGTERM, then SIGKILL a tick later.
264
+ startOrphanSweep();
232
265
  const { adapter, port } = await bootstrap(opts);
233
266
  printReady({
234
267
  mode: 'serve',