@tacuchi/agent-workflow-cli 25.1.2 → 25.2.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 (92) hide show
  1. package/README.md +2 -1
  2. package/dist/adapters/node-process.js +35 -0
  3. package/dist/adapters/node-process.js.map +1 -1
  4. package/dist/application/amend-service.js +393 -0
  5. package/dist/application/amend-service.js.map +1 -0
  6. package/dist/application/doctor/actions.js +158 -0
  7. package/dist/application/doctor/actions.js.map +1 -0
  8. package/dist/application/doctor/apply.js +399 -0
  9. package/dist/application/doctor/apply.js.map +1 -0
  10. package/dist/application/doctor/auth-dsn.js +143 -0
  11. package/dist/application/doctor/auth-dsn.js.map +1 -0
  12. package/dist/application/doctor/auth-flow.js +28 -0
  13. package/dist/application/doctor/auth-flow.js.map +1 -0
  14. package/dist/application/doctor/auth-registry.js +12 -0
  15. package/dist/application/doctor/auth-registry.js.map +1 -0
  16. package/dist/application/doctor/hosts.js +41 -0
  17. package/dist/application/doctor/hosts.js.map +1 -0
  18. package/dist/application/doctor/native-host-state.js +211 -0
  19. package/dist/application/doctor/native-host-state.js.map +1 -0
  20. package/dist/application/doctor/prepare.js +262 -0
  21. package/dist/application/doctor/prepare.js.map +1 -0
  22. package/dist/application/doctor/provider-installation.js +124 -0
  23. package/dist/application/doctor/provider-installation.js.map +1 -0
  24. package/dist/application/doctor/provider-mcps.js +650 -0
  25. package/dist/application/doctor/provider-mcps.js.map +1 -0
  26. package/dist/application/doctor/provider-plugins-hooks.js +112 -0
  27. package/dist/application/doctor/provider-plugins-hooks.js.map +1 -0
  28. package/dist/application/doctor/provider-skills.js +212 -0
  29. package/dist/application/doctor/provider-skills.js.map +1 -0
  30. package/dist/application/doctor/provider-tools-auth.js +201 -0
  31. package/dist/application/doctor/provider-tools-auth.js.map +1 -0
  32. package/dist/application/doctor/provider-visibility.js +149 -0
  33. package/dist/application/doctor/provider-visibility.js.map +1 -0
  34. package/dist/application/doctor/repair-runner.js +169 -0
  35. package/dist/application/doctor/repair-runner.js.map +1 -0
  36. package/dist/application/doctor/report.js +155 -0
  37. package/dist/application/doctor/report.js.map +1 -0
  38. package/dist/application/doctor/types.js +5 -0
  39. package/dist/application/doctor/types.js.map +1 -0
  40. package/dist/application/flow/advance.js +62 -9
  41. package/dist/application/flow/advance.js.map +1 -1
  42. package/dist/application/flow/flow-service.js +18 -7
  43. package/dist/application/flow/flow-service.js.map +1 -1
  44. package/dist/application/flow/run-projection.js +6 -1
  45. package/dist/application/flow/run-projection.js.map +1 -1
  46. package/dist/application/flow/submit.js +143 -3
  47. package/dist/application/flow/submit.js.map +1 -1
  48. package/dist/application/mcp-doctor-service.js +1 -1
  49. package/dist/application/mcp-doctor-service.js.map +1 -1
  50. package/dist/application/mcp-host-reader.js +134 -26
  51. package/dist/application/mcp-host-reader.js.map +1 -1
  52. package/dist/application/mcp-host-receipt-service.js +9 -7
  53. package/dist/application/mcp-host-receipt-service.js.map +1 -1
  54. package/dist/application/self/install-skill.js +10 -2
  55. package/dist/application/self/install-skill.js.map +1 -1
  56. package/dist/application/self/mcp-config.js +1 -1
  57. package/dist/application/self/mcp-config.js.map +1 -1
  58. package/dist/application/session-narrative.js +15 -0
  59. package/dist/application/session-narrative.js.map +1 -1
  60. package/dist/application/source-boundary-policy.js +87 -6
  61. package/dist/application/source-boundary-policy.js.map +1 -1
  62. package/dist/cli/commands/amend.js +122 -0
  63. package/dist/cli/commands/amend.js.map +1 -0
  64. package/dist/cli/commands/doctor.js +300 -0
  65. package/dist/cli/commands/doctor.js.map +1 -0
  66. package/dist/cli/commands/index.js +4 -0
  67. package/dist/cli/commands/index.js.map +1 -1
  68. package/dist/cli/dispatch-plan.js +47 -0
  69. package/dist/cli/dispatch-plan.js.map +1 -0
  70. package/dist/cli/help-groups.js +8 -0
  71. package/dist/cli/help-groups.js.map +1 -1
  72. package/dist/cli/main.js +54 -10
  73. package/dist/cli/main.js.map +1 -1
  74. package/dist/cli/parser.js +20 -0
  75. package/dist/cli/parser.js.map +1 -1
  76. package/dist/domain/doctor/auth.js +65 -0
  77. package/dist/domain/doctor/auth.js.map +1 -0
  78. package/dist/domain/doctor/model.js +82 -0
  79. package/dist/domain/doctor/model.js.map +1 -0
  80. package/dist/domain/doctor/operations.js +114 -0
  81. package/dist/domain/doctor/operations.js.map +1 -0
  82. package/dist/domain/flow/authority.js +8 -0
  83. package/dist/domain/flow/authority.js.map +1 -1
  84. package/dist/domain/flow/run-state.js +181 -25
  85. package/dist/domain/flow/run-state.js.map +1 -1
  86. package/dist/domain/redaction.js +40 -0
  87. package/dist/domain/redaction.js.map +1 -1
  88. package/package.json +1 -1
  89. package/skills/w/SKILL.md +2 -1
  90. package/skills/w/commands/README.md +2 -1
  91. package/skills/w/commands/doctor.md +31 -0
  92. package/skills/w/context/MANIFEST.json +4 -0
@@ -1 +1 @@
1
- {"version":3,"file":"source-boundary-policy.js","sourceRoot":"","sources":["../../src/application/source-boundary-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAM/D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAElE,OAAO,EACL,uBAAuB,GAIxB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,CAAC,MAAM,0BAA0B,GAAqB,UAAU,CAAC;AAsCvE,MAAM,aAAa,GAAG,OAAO,CAAC;AAC9B,MAAM,aAAa,GAAG,8BAA8B,CAAC;AACrD,MAAM,YAAY,GAAG,mEAAmE,CAAC;AACzF,MAAM,YAAY,GAAG,2BAA2B,CAAC;AACjD,MAAM,SAAS,GAAG,8BAA8B,CAAC;AACjD,MAAM,YAAY,GAAG,iCAAiC,CAAC;AAUvD,gFAAgF;AAChF,8EAA8E;AAC9E,uEAAuE;AACvE,MAAM,eAAe,GAAG,8CAA8C,CAAC;AACvE,MAAM,mBAAmB,GAAG,iCAAiC,CAAC;AAC9D,MAAM,qBAAqB,GACzB,2FAA2F,CAAC;AAC9F,MAAM,eAAe,GACnB,oGAAoG,CAAC;AACvG,8EAA8E;AAC9E,+EAA+E;AAC/E,qBAAqB;AACrB,MAAM,cAAc,GAClB,wGAAwG,CAAC;AAC3G,gFAAgF;AAChF,4EAA4E;AAC5E,MAAM,2BAA2B,GAAG,mCAAmC,CAAC;AACxE,8EAA8E;AAC9E,6EAA6E;AAC7E,iFAAiF;AACjF,MAAM,WAAW,GACf,+PAA+P,CAAC;AAElQ;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,MAAM,MAAM,GAAuB,EAAE,CAAC;IACtC,IAAI,OAAO,GAA4B,IAAI,CAAC;IAC5C,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,OAAO,GAA4B,IAAI,CAAC;IAC5C,IAAI,WAAW,GAA2B,IAAI,CAAC;IAC/C,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAEpC,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QACpD,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,SAAS;QACrC,MAAM,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC;QACvB,MAAM,OAAO,GAAG,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAC3D,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAChC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACf,OAAO,GAAG,KAAK,KAAK,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC;gBACnE,OAAO,GAAG,IAAI,CAAC;gBACf,WAAW,GAAG,IAAI,CAAC;gBACnB,SAAS;YACX,CAAC;YACD,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC9D,IAAI,OAAO,KAAK,IAAI;oBAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC3C,WAAW,GAAG,IAAI,CAAC;gBACnB,SAAS;YACX,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QACnD,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACxD,OAAO,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,SAAS;QACX,CAAC;QAED,IAAI,OAAO,KAAK,IAAI;YAAE,SAAS;QAC/B,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAClD,IAAI,WAAW,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YACrD,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACpD,SAAS;QACX,CAAC;QACD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,WAAW,GAAG;gBACZ,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBAC3B,IAAI;gBACJ,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACnE,CAAC;YACF,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAChC,SAAS;QACX,CAAC;QACD,sEAAsE;QACtE,0EAA0E;QAC1E,0EAA0E;QAC1E,sCAAsC;QACtC,IACE,WAAW,KAAK,IAAI;YACpB,WAAW,CAAC,OAAO,KAAK,IAAI;YAC5B,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;YACrB,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACrB,CAAC;YACD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,QAAQ,KAAK,IAAI;gBAAE,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9E,CAAC;aAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CACxC,IAAY,EACZ,eAAkC;IAElC,MAAM,MAAM,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,IAAI,MAAM,CAAC,iBAAiB,KAAK,0BAA0B,EAAE,CAAC;QAC5D,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,8BAA8B;YACpC,OAAO,EAAE,mFAAmF;SAC7F,CAAC,CAAC;IACL,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,8BAA8B;YACpC,OAAO,EAAE,wDAAwD;SAClE,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC;IACzD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzD,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE,IAAI,KAAK,CAAC,CAAC,0BAA0B;gBAC9C,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAClD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvD,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,8BAA8B;oBACpC,OAAO,EAAE,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,8BAA8B;oBAC5D,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1F,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3E,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,gCAAgC;oBACtC,OAAO,EAAE,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,6BAA6B,KAAK,CAAC,CAAC,EAAE;oBAClG,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,GAAG,8BAA8B,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAAY;IACzD,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,KAAK,MAAM,MAAM,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,8BAA8B;gBACpC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,OAAO,EAAE,GAAG,mBAAmB,CAAC,MAAM,CAAC,sCAAsC,MAAM,GAAG;aACvF,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IACE,CAAC,MAAM,CAAC,IAAI,KAAK,kBAAkB,IAAI,MAAM,CAAC,IAAI,KAAK,iBAAiB,CAAC;YACzE,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAC9B,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,iCAAiC;gBACvC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,OAAO,EAAE,GAAG,mBAAmB,CAAC,MAAM,CAAC,yCAAyC;aACjF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY;IACxC,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACtF,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,MAAM,GAA0B,IAAI,CAAC;IAEzC,MAAM,GAAG,GAAG,CAAC,IAAwB,EAAE,IAAY,EAAE,KAAa,EAAkB,EAAE;QACpF,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC9D,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,GAAG,IAAI,CAAC;YACd,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;gBACvB,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACzC,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACjD,OAAO,GAAG,MAAM,KAAK,aAAa,CAAC;gBACnC,OAAO,GAAG,KAAK,CAAC;YAClB,CAAC;iBAAM,IAAI,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;gBAC/B,OAAO,GAAG,OAAO,IAAI,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC;YAC3E,CAAC;YACD,MAAM,GAAG,IAAI,CAAC;YACd,SAAS;QACX,CAAC;QACD,IAAI,SAAS;YAAE,SAAS;QAExB,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,OAAO,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAClD,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC;YACnE,SAAS;QACX,CAAC;QACD,IAAI,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,GAAG,GAAG,CAAC,kBAAkB,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YACjD,SAAS;QACX,CAAC;QACD,IAAI,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,CAAC,YAAY,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YAC3C,SAAS;QACX,CAAC;QACD,IAAI,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACpE,MAAM,GAAG,GAAG,CAAC,iBAAiB,EAAE,KAAK,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC;YAC5E,SAAS;QACX,CAAC;QACD,uEAAuE;QACvE,iEAAiE;QACjE,IAAI,MAAM,KAAK,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;QAC5C,CAAC;aAAM,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IACnC,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC;IAC1C,OAAO,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC;AACjF,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAsB;IACjD,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,MAAM;YACT,OAAO,qBAAqB,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5C,KAAK,kBAAkB;YACrB,OAAO,kCAAkC,MAAM,CAAC,IAAI,EAAE,CAAC;QACzD,KAAK,YAAY;YACf,OAAO,mCAAmC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC1D,KAAK,iBAAiB;YACpB,OAAO,kCAAkC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,KAAK,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACzD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,SAAS;YAC/B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACjB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,cAAc,CAAC,KAO9B;IACC,OAAO,cAAc,CAAC;QACpB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,aAAa,EAAE,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE;QAC9C,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;KACjD,CAAC,CAAC;AACL,CAAC;AAoBD,qFAAqF;AACrF,SAAS,eAAe,CAAC,MAAgC;IACvD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,YAAY,CAAC,OAAsB;IAC1C,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,GAAG,CAAC;IAClE,IAAI,OAAO,CAAC,YAAY,KAAK,KAAK,EAAE,CAAC;QACnC,OAAO;YACL,mBAAmB,OAAO,CAAC,MAAM,IAAI,EAAE,yCAAyC;YAChF,sFAAsF;SACvF,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,CAAC;IACD,OAAO;QACL,iBAAiB,OAAO,CAAC,MAAM,IAAI,EAAE,iDAAiD;QACtF,qFAAqF;QACrF,mFAAmF;KACpF,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAgC,EAChC,MAAuC;IAEvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,iEAAiE;SAC3E,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACjC,8EAA8E;IAC9E,8EAA8E;IAC9E,yCAAyC;IACzC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;IACtE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EACL,gCAAgC,KAAK,CAAC,MAAM,yBAAyB;gBACrE,kCAAkC,eAAe,CAAC,MAAM,CAAC,GAAG;SAC/D,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,eAAe,EAAE,CAAC;QAC7C,OAAO;YACL,IAAI,EAAE,+BAA+B;YACrC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC;SAC/B,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,6BAA6B,CAAC,KAAc;IAC1D,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC7F,IACE,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;QACpC,OAAO,KAAK,CAAC,cAAc,KAAK,QAAQ;QACxC,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;QACrC,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,EACvC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IACE,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QACpC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QACxC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QACrC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EACvC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,aAAa,EAAE,KAAK,CAAC,aAAa;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa,EAAE,IAAY;IACnD,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/C,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AACjE,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK;SACT,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;SACpC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;SACpB,IAAI,EAAE;SACN,WAAW,EAAE,CAAC;AACnB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa;IACzC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,0BAA0B;QAC9D,CAAC,CAAC,0BAA0B;QAC5B,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK;SACT,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,cAAc,CACrB,OAA0B,EAC1B,KAA0B,EAC1B,IAAY,EACZ,KAAa;IAEb,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,OAAO;QACL;YACE,IAAI,EAAE,qBAAqB;YAC3B,OAAO,EAAE,GAAG,KAAK,yDAAyD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC9F,IAAI;SACL;KACF,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAoB;IACxC,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClF,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,4DAA4D;SACtE,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,GAAG,KAAK,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAClG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,iBAAiB,KAAK,CAAC,YAAY,6CAA6C;SAC1F,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAoB;IAC/C,IAAI,CAAC,CAAC,SAAS,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QACrC,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,yDAAyD;SACnE,CAAC;IACJ,CAAC;IACD,IACE,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAC5C,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;QACrC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,EAC9D,CAAC;QACD,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,0DAA0D;SACpE,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IACrF,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO;QACL,IAAI,EAAE,iCAAiC;QACvC,OAAO,EAAE,8DAA8D,MAAM,GAAG;KACjF,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAoB;IAClD,IAAI,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QACtC,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,+DAA+D;SACzE,CAAC;IACJ,CAAC;IACD,IACE,OAAO,KAAK,CAAC,UAAU,CAAC,QAAQ,KAAK,QAAQ;QAC7C,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAC7C,CAAC;QACD,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,iDAAiD;SAC3D,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,aAAa,KAAK,CAAC,UAAU,CAAC,QAAQ,6CAA6C;SAC7F,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,iEAAiE,MAAM,GAAG;SACpF,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,6FAA6F;AAC7F,SAAS,eAAe,CAAC,MAAyB;IAChD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC;IAC5C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
1
+ {"version":3,"file":"source-boundary-policy.js","sourceRoot":"","sources":["../../src/application/source-boundary-policy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,122 @@
1
+ /**
2
+ * `aw amend`: the direct correction of a closed document's wording.
3
+ *
4
+ * A CROSS-CUTTING command, like `reseal` and the retirement pair: it opens no
5
+ * WorklineFlow and creates no session. There is nothing for a run to direct —
6
+ * one act reads, checks, writes and records — and giving it a journey would cost
7
+ * the bundle a document per invocation for a change nobody disagrees about.
8
+ *
9
+ * What it does NOT do is decide that a correction is editorial. The declaration
10
+ * is recorded, and the structural guards refuse what moves the contract: a spec's
11
+ * functional digest, or a plan's header, graph, closing clauses and batches. The
12
+ * refinement stays the human's act, and this command never starts one — it only
13
+ * names it when it refuses.
14
+ */
15
+ import { amendDocument, amendmentsOf, revertAmendment, } from "../../application/amend-service.js";
16
+ import { failSemantic } from "../render.js";
17
+ const ACTIONS = new Set(["apply", "revert", "list"]);
18
+ const USAGE = "uso: amend apply <spec|plan> --de <texto> --a <texto> --declaracion <motivo> | amend revert <id> | amend list [documento]";
19
+ function refuse(code, message, action) {
20
+ return failSemantic({ code, message, action });
21
+ }
22
+ export const amendCommand = {
23
+ name: "amend",
24
+ describe: "Correct the WORDING of an already closed spec or plan, in one act, without opening a refinement. " +
25
+ "Cross-cutting: it opens no flow and creates no session. It demands an explicit declaration that the correction changes no scope, criteria or rules, " +
26
+ "writes under the workspace lock with the document's own digest as the compare-and-swap base, and records the exact pre-image in an append-only ledger. " +
27
+ "It refuses structurally what does touch the contract — a spec's functional content, or a plan's header, phase/task graph, closing clauses or batches — and names the refinement instead. " +
28
+ "`revert` undoes one recorded correction. Usage: aw amend apply <documento> --de <texto> --a <texto> --declaracion <motivo> | aw amend revert <id> | aw amend list [documento].",
29
+ async execute(args, ctx) {
30
+ const action = args.rest[0];
31
+ if (action === undefined || !ACTIONS.has(action))
32
+ return refuse("INVALID_INPUT", USAGE, USAGE);
33
+ if (action === "list") {
34
+ const document = args.rest[1];
35
+ const events = await amendmentsOf(ctx.fs, ctx.paths, document);
36
+ return {
37
+ ok: true,
38
+ data: { action: "list", document: document ?? null, events },
39
+ exitCode: 0,
40
+ };
41
+ }
42
+ if (action === "revert") {
43
+ const id = args.rest[1];
44
+ if (id === undefined)
45
+ return refuse("INVALID_INPUT", USAGE, USAGE);
46
+ const reverted = await revertAmendment(ctx.fs, ctx.env, ctx.paths, id);
47
+ if (reverted.status === "failed") {
48
+ return refuse(reverted.failure.code, reverted.failure.message, reverted.failure.action);
49
+ }
50
+ return {
51
+ ok: true,
52
+ data: {
53
+ action: "revert",
54
+ status: "reverted",
55
+ amendment: reverted.amendment,
56
+ written: reverted.written,
57
+ },
58
+ exitCode: 0,
59
+ };
60
+ }
61
+ const target = args.rest[1];
62
+ const from = args.values.get("de");
63
+ const to = args.values.get("a");
64
+ const declaration = args.values.get("declaracion") ?? args.values.get("declaration");
65
+ if (target === undefined || from === undefined || to === undefined) {
66
+ return refuse("INVALID_INPUT", USAGE, USAGE);
67
+ }
68
+ const applied = await amendDocument(ctx.fs, ctx.env, ctx.paths, {
69
+ target,
70
+ from,
71
+ to,
72
+ declaration: declaration ?? "",
73
+ });
74
+ if (applied.status === "failed") {
75
+ return refuse(applied.failure.code, applied.failure.message, applied.failure.action);
76
+ }
77
+ return {
78
+ ok: true,
79
+ data: {
80
+ action: "apply",
81
+ status: "applied",
82
+ amendment: applied.amendment,
83
+ written: applied.written,
84
+ },
85
+ exitCode: 0,
86
+ };
87
+ },
88
+ renderHuman(result) {
89
+ if (!result.ok || result.data === undefined)
90
+ return "";
91
+ const data = result.data;
92
+ if (data.action === "list")
93
+ return renderList(data);
94
+ const verb = data.action === "apply" ? "Corregido" : "Revertido";
95
+ return [
96
+ `${verb} ${data.amendment.document} · corrección ${data.amendment.id}`,
97
+ ` de: ${preview(data.amendment.from)}`,
98
+ ` a: ${preview(data.amendment.to)}`,
99
+ `Declaración: ${data.amendment.declaration}`,
100
+ `Escrito: ${data.written.join(", ")}`,
101
+ data.action === "apply"
102
+ ? `Para deshacerlo:\n aw amend revert ${data.amendment.id}`
103
+ : "La reversión quedó registrada como su propio evento.",
104
+ ].join("\n");
105
+ },
106
+ };
107
+ function renderList(data) {
108
+ const scope = data.document === null ? "el workspace" : data.document;
109
+ if (data.events.length === 0)
110
+ return `Sin correcciones directas registradas en ${scope}.`;
111
+ const rows = data.events.map((event) => {
112
+ const mark = event.event === "reverted" ? "revertida" : "vigente";
113
+ return ` ${event.amendment.id} ${event.at} ${mark} ${event.amendment.document}\n de: ${preview(event.amendment.from)}\n a: ${preview(event.amendment.to)}\n declaración: ${event.amendment.declaration}`;
114
+ });
115
+ return [`Correcciones directas de ${scope} (origen: directo, no refinamiento):`, ...rows].join("\n");
116
+ }
117
+ /** One line of a fragment, so a long correction stays readable in a terminal. */
118
+ function preview(text) {
119
+ const flat = text.replace(/\s+/g, " ").trim();
120
+ return flat.length <= 96 ? flat : `${flat.slice(0, 93)}…`;
121
+ }
122
+ //# sourceMappingURL=amend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"amend.js","sourceRoot":"","sources":["../../../src/cli/commands/amend.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,300 @@
1
+ /**
2
+ * `aw doctor` — one contextual diagnosis over every host this machine has.
3
+ *
4
+ * The output convention here is `plugin-doctor`'s and not `mcp doctor`'s, on
5
+ * purpose: the runtime never calls `renderHuman` when a result is `ok: false`
6
+ * (`main.ts`), so a doctor that reported blocking as a failed result would print
7
+ * one error line exactly when the person most needs the whole report. So the
8
+ * result is always `ok: true`, and THE EXIT CODE CARRIES THE VERDICT — with the
9
+ * verdict repeated inside `data` so the JSON is self-sufficient.
10
+ */
11
+ import { applyDoctorBatch } from "../../application/doctor/apply.js";
12
+ import { prepareDoctorBatch, } from "../../application/doctor/prepare.js";
13
+ import { runDoctor } from "../../application/doctor/report.js";
14
+ import { DOCTOR_CATEGORIES } from "../../domain/doctor/model.js";
15
+ import { flagValue } from "../parser.js";
16
+ const STATE_MARK = {
17
+ healthy: "✔",
18
+ warning: "!",
19
+ blocking: "✘",
20
+ unverified: "?",
21
+ };
22
+ const COVERAGE_LABEL = {
23
+ checked: "comprobada",
24
+ "not-applicable": "no aplica",
25
+ skipped: "omitida",
26
+ unavailable: "no disponible",
27
+ };
28
+ /**
29
+ * Quién es dueño del recurso y qué clase de arreglo admite el hallazgo.
30
+ *
31
+ * Se imprimen SIEMPRE porque son las dos cosas que el JSON dice y el texto se
32
+ * callaba: sin la clase, una remediación `manual` cuyo `guidance` viene vacío se
33
+ * renderizaba renglón por renglón igual que una `none`, y la persona leía «acá
34
+ * no hay nada que hacer» sobre un hallazgo que el resumen cuenta como
35
+ * accionable (AC-03). Sin la propiedad, la distinción propio/ajeno —el eje de
36
+ * AC-08— sólo se adivinaba de la prosa del resumen.
37
+ */
38
+ const OWNERSHIP_LABEL = {
39
+ ours: "de Workline",
40
+ foreign: "ajena",
41
+ ambiguous: "ambigua",
42
+ "n/a": "no aplica",
43
+ };
44
+ const REMEDIATION_LABEL = {
45
+ supported: "automatizable",
46
+ manual: "manual",
47
+ none: "sin acción segura",
48
+ };
49
+ /** Los subverbos se distinguen por su propio `kind`; el informe no lo lleva. */
50
+ function isSubverb(data) {
51
+ return "kind" in data;
52
+ }
53
+ export const doctorCommand = {
54
+ name: "doctor",
55
+ describe: "aw doctor: diagnóstico contextual de la instalación y los recursos de Workline en los hosts detectados, con cobertura por categoría y veredicto en el código de salida. Con --verify-connection autorizás verificar las credenciales contra su servicio.",
56
+ async execute(args, ctx) {
57
+ const options = {
58
+ host: flagValue(args, "host") ?? null,
59
+ only: onlyHosts(args),
60
+ skipNative: args.flags.has("--skip-native"),
61
+ // El flag ES la autorización de red, y no hay ceremonia extra a propósito:
62
+ // nombra exactamente el efecto, lo tipeó la persona, y lo único que habilita
63
+ // es un `SELECT 1` de sólo lectura.
64
+ //
65
+ // Sin el flag se pide verificar IGUAL, con la lista de clases vacía. No es
66
+ // lo mismo que no pedir nada: pedir con las manos vacías es lo que hace que
67
+ // cada proveedor degrade su verificación profunda y lo DIGA en su evidencia,
68
+ // en vez de que el informe afirme una salud que nadie comprobó. Sin esto la
69
+ // rama que lo declara era inalcanzable desde acá, y una credencial presente
70
+ // contra un servicio caído salía «resuelta» sin una línea que lo matizara.
71
+ verify: args.flags.has("--verify-connection") ? ["network_external"] : [],
72
+ };
73
+ if (args.rest[0] === "prepare")
74
+ return await runPrepare(args, ctx, options);
75
+ if (args.rest[0] === "apply")
76
+ return await runApply(args, ctx, options);
77
+ const report = await runDoctor(ctx, options);
78
+ return { ok: true, data: report, exitCode: report.verdict.exit_code };
79
+ },
80
+ renderHuman(result, _context) {
81
+ const data = result.data;
82
+ if (data === undefined)
83
+ return "el diagnóstico no produjo informe.";
84
+ if (isSubverb(data)) {
85
+ if (data.kind === "applied")
86
+ return appliedLines(data);
87
+ return data.kind === "prepare-sealed" ? sealedLines(data) : listingLines(data);
88
+ }
89
+ return [
90
+ ...hostLines(data),
91
+ "",
92
+ ...coverageLines(data),
93
+ "",
94
+ ...findingLines(data),
95
+ "",
96
+ ...summaryLines(data),
97
+ ].join("\n");
98
+ },
99
+ };
100
+ async function runPrepare(args, ctx, options) {
101
+ const outcome = await prepareDoctorBatch(ctx, {
102
+ ...options,
103
+ select: args.valuesMulti.get("select") ?? selectOne(args),
104
+ });
105
+ if (!outcome.ok) {
106
+ return {
107
+ ok: false,
108
+ // Los `candidates` y la acción de salida VIAJAN: el punto de este rechazo
109
+ // es nombrar los ids concretos, y un error que sólo dice «selección
110
+ // inválida» obliga a la persona a adivinar cuál de los que escribió falla.
111
+ error: {
112
+ code: outcome.rejection.code,
113
+ message: outcome.rejection.message,
114
+ details: {
115
+ candidates: outcome.rejection.candidates,
116
+ action: outcome.rejection.action,
117
+ },
118
+ },
119
+ exitCode: 1,
120
+ };
121
+ }
122
+ if (outcome.kind === "listing") {
123
+ return { ok: true, data: { kind: "prepare-listing", ...outcome.listing }, exitCode: 0 };
124
+ }
125
+ return { ok: true, data: { kind: "prepare-sealed", ...outcome.proposal }, exitCode: 0 };
126
+ }
127
+ /** `--only` puede repetirse; `--host` nunca. Uno lee una lista, el otro un nombre. */
128
+ function onlyHosts(args) {
129
+ const multi = args.valuesMulti.get("only");
130
+ if (multi !== undefined)
131
+ return multi;
132
+ const single = flagValue(args, "only");
133
+ return single === undefined ? [] : [single];
134
+ }
135
+ async function runApply(args, ctx, options) {
136
+ const outcome = await applyDoctorBatch(ctx, {
137
+ ...options,
138
+ select: args.valuesMulti.get("select") ?? selectOne(args),
139
+ ...(flagValue(args, "approval") === undefined
140
+ ? {}
141
+ : { approval: flagValue(args, "approval") }),
142
+ });
143
+ if (!outcome.ok) {
144
+ return {
145
+ ok: false,
146
+ error: {
147
+ code: outcome.rejection.code,
148
+ message: outcome.rejection.message,
149
+ details: {
150
+ candidates: outcome.rejection.candidates,
151
+ action: outcome.rejection.action,
152
+ },
153
+ },
154
+ exitCode: 1,
155
+ };
156
+ }
157
+ // La misma convención que el informe: `ok:true` con el exit code como
158
+ // veredicto, para que la proyección humana se renderice también cuando el lote
159
+ // salió parcial — que es justo cuando la persona necesita ver acción por
160
+ // acción hasta dónde llegó.
161
+ return {
162
+ ok: true,
163
+ data: { kind: "applied", ...outcome.result },
164
+ exitCode: outcome.result.exit_code,
165
+ };
166
+ }
167
+ /** El resultado del lote: acción por acción, con su recomprobación. */
168
+ function appliedLines(data) {
169
+ const mark = {
170
+ applied: "✔",
171
+ failed: "✘",
172
+ skipped: "·",
173
+ blocked: "⊘",
174
+ };
175
+ const lines = [`Lote ${data.status} — ${flat(data.reason)}`, ""];
176
+ for (const action of data.actions) {
177
+ lines.push(` ${mark[action.status] ?? "·"} ${flat(action.finding_id)} · ${action.op}`);
178
+ if (action.reason !== null)
179
+ lines.push(` motivo: ${flat(action.reason)}`);
180
+ lines.push(` recomprobación: ${action.recheck} — ${flat(action.recheck_detail)}`);
181
+ }
182
+ const { applied, failed, skipped, blocked, resolved } = data.summary;
183
+ lines.push("");
184
+ lines.push(`Resumen: ${applied} aplicada(s) · ${failed} fallida(s) · ${skipped} omitida(s) · ${blocked} bloqueada(s) · ${resolved} resuelta(s)`);
185
+ lines.push(`Salida ${data.exit_code} · digest aprobado ${data.digest}`);
186
+ return lines.join("\n");
187
+ }
188
+ /** `--select` puede repetirse; una sola vez llega por `values`. */
189
+ function selectOne(args) {
190
+ const single = flagValue(args, "select");
191
+ return single === undefined ? [] : [single];
192
+ }
193
+ /** El listado: qué se PODRÍA reparar. No sella nada y no aprueba nada. */
194
+ function listingLines(data) {
195
+ if (data.actionable.length === 0) {
196
+ return "No hay ningún hallazgo con reparación automatizable en este informe.";
197
+ }
198
+ const lines = [`${data.actionable.length} hallazgo(s) con reparación automatizable:`];
199
+ for (const action of data.actionable) {
200
+ lines.push(` ${flat(action.finding_id)}`);
201
+ lines.push(` ${flat(action.summary)} — ${flat(action.resource)} (${action.host})`);
202
+ lines.push(` comando equivalente: ${flat(action.verb)}`);
203
+ lines.push(` efectos: ${action.effects.join(", ")}`);
204
+ }
205
+ lines.push("");
206
+ lines.push("Seleccioná con: aw doctor prepare --select <id> [--select <id> …]");
207
+ return lines.join("\n");
208
+ }
209
+ /** La propuesta sellada: exactamente lo que `apply` va a hacer, y su digest. */
210
+ function sealedLines(data) {
211
+ return [...data.preview.map(flat), "", `siguiente: ${flat(data.next)}`].join("\n");
212
+ }
213
+ function hostLines(report) {
214
+ const lines = ["Hosts"];
215
+ for (const host of report.hosts) {
216
+ const mark = host.current ? "→" : " ";
217
+ const version = host.runtime.version === null ? "" : ` ${host.runtime.version}`;
218
+ lines.push(`${mark} ${host.label} · ${host.status} · runtime ${host.runtime.state}${version} · Workline ${host.workline_installed ? "instalado" : "ausente"}`);
219
+ }
220
+ if (report.hosts_absent.length > 0) {
221
+ lines.push(` sin rastro en esta máquina: ${report.hosts_absent.join(", ")}`);
222
+ }
223
+ return lines;
224
+ }
225
+ function coverageLines(report) {
226
+ const lines = ["Cobertura"];
227
+ for (const category of DOCTOR_CATEGORIES) {
228
+ const entries = report.coverage.filter((entry) => entry.category === category);
229
+ lines.push(` ${category}`);
230
+ // Una categoría sin filas se DECLARA, no se saltea: hacerla desaparecer del
231
+ // texto es cómo un informe que no miró instalación ni MCPs se lee como si
232
+ // los hubiera aprobado (AC-02, AC-15).
233
+ if (entries.length === 0) {
234
+ lines.push(" (sin cobertura declarada en esta corrida)");
235
+ continue;
236
+ }
237
+ for (const entry of entries) {
238
+ const reason = entry.reason === null ? "" : ` — ${entry.reason}`;
239
+ lines.push(` ${entry.host}: ${COVERAGE_LABEL[entry.state] ?? entry.state}${reason}`);
240
+ }
241
+ }
242
+ return lines;
243
+ }
244
+ /**
245
+ * Una línea del informe, aplanada.
246
+ *
247
+ * Es la última defensa de la PROYECCIÓN, y hace falta porque casi todo lo que se
248
+ * imprime acá nació en un archivo que escribió otra persona: el nombre de una
249
+ * entrada MCP ajena, el motivo que el host reportó, la URL de una skill. Una
250
+ * clave JSON admite saltos de línea, y sin aplanarlos una entrada llamada
251
+ * `"inocente\n ✔ claude-code/mcps/x — todo sano"` forja renglones de hallazgo
252
+ * que nadie puede rastrear al informe.
253
+ *
254
+ * Va acá y no en el id: la identidad tiene que seguir siendo única (dos nombres
255
+ * distintos no pueden colapsar en una fila), y lo que hay que neutralizar es el
256
+ * texto en el momento de dibujarlo.
257
+ */
258
+ function flat(text) {
259
+ // La sangría del principio SE CONSERVA: es la estructura del informe y no
260
+ // contenido ajeno. Aplanar la línea entera dejaba la vista previa sin
261
+ // jerarquía —todas las acciones al mismo margen— y lo que hay que neutralizar
262
+ // son los saltos y los controles de ADENTRO, no el formato de afuera.
263
+ const indent = /^ */.exec(text)?.[0] ?? "";
264
+ return (indent +
265
+ text
266
+ .slice(indent.length)
267
+ // biome-ignore lint/suspicious/noControlCharactersInRegex: es exactamente lo que hay que sacar
268
+ .replace(/[\u0000-\u001f\u007f-\u009f\u2028\u2029]+/g, " ")
269
+ .replace(/\s+/g, " ")
270
+ .trim());
271
+ }
272
+ function findingLines(report) {
273
+ const lines = ["Hallazgos"];
274
+ if (report.findings.length === 0) {
275
+ lines.push(" ninguno dentro de la cobertura comprobada");
276
+ return lines;
277
+ }
278
+ for (const finding of report.findings) {
279
+ lines.push(` ${STATE_MARK[finding.state] ?? "·"} ${flat(finding.id)} — ${flat(finding.summary)}`);
280
+ lines.push(` impacto: ${flat(finding.impact)}`);
281
+ for (const evidence of finding.evidence)
282
+ lines.push(` evidencia: ${flat(evidence)}`);
283
+ lines.push(` propiedad: ${OWNERSHIP_LABEL[finding.ownership] ?? finding.ownership} · remediación: ${REMEDIATION_LABEL[finding.remediation.kind] ?? finding.remediation.kind}`);
284
+ if (finding.remediation.kind === "supported" && finding.remediation.action !== null) {
285
+ lines.push(` acción: ${flat(finding.remediation.action.op)}`);
286
+ }
287
+ for (const guidance of finding.remediation.guidance) {
288
+ lines.push(` guía: ${flat(guidance)}`);
289
+ }
290
+ }
291
+ return lines;
292
+ }
293
+ function summaryLines(report) {
294
+ const { healthy, warning, blocking, unverified, actionable } = report.summary;
295
+ return [
296
+ `Resumen: ${healthy} sano · ${warning} advertencia · ${blocking} bloqueo · ${unverified} no verificado · ${actionable} accionable`,
297
+ `Veredicto: salida ${report.verdict.exit_code} — ${report.verdict.reason}`,
298
+ ];
299
+ }
300
+ //# sourceMappingURL=doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@
3
3
  // a real home in help-groups.ts (none fall into the catch-all "Other"), the
4
4
  // global-help describe map is built from it, and `main.ts` registers this array
5
5
  // directly (order here = order in the grouped `--help` listing).
6
+ import { amendCommand } from "./amend.js";
6
7
  import { capabilityCommand } from "./capability.js";
7
8
  import { checkBranchCommand } from "./check-branch.js";
8
9
  import { checkpointReadCommand } from "./checkpoint-read.js";
@@ -13,6 +14,7 @@ import { contextBudgetCommand } from "./context-budget.js";
13
14
  import { contextPlanCommand } from "./context-plan.js";
14
15
  import { designsCommand } from "./designs.js";
15
16
  import { harnessCommand, logsCommand, nextNumberCommand, profilesCommand } from "./dev-only.js";
17
+ import { doctorCommand } from "./doctor.js";
16
18
  import { exportDiagramsCommand, exportManualsCommand, exportReportsCommand, exportScriptsCommand, } from "./export.js";
17
19
  import { fixGitCommand } from "./fix-git.js";
18
20
  import { flowCommand } from "./flow.js";
@@ -105,10 +107,12 @@ export const ALL_COMMANDS = [
105
107
  // review concluded it still holds, instead of walking a whole plan-refine to
106
108
  // make the publication recompute one line.
107
109
  resealCommand,
110
+ amendCommand,
108
111
  codeScanCommand,
109
112
  pluginCacheCommand,
110
113
  pluginDoctorCommand,
111
114
  hostDoctorCommand,
115
+ doctorCommand,
112
116
  releaseDataCommand,
113
117
  attachMultirootCommand,
114
118
  detachMultirootCommand,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * What an invocation dispatches to — the whole decision, as data.
3
+ *
4
+ * It lives apart from `main.ts` because that module runs the CLI on import, so
5
+ * anything decided inside it can only be read as text. The precedence between
6
+ * the global alias and the interactive menu is the part that matters: with no
7
+ * command and a TTY the menu opens, so a flag consulted AFTER that check would
8
+ * never fire on the surface people actually type it on. Encoding the order here
9
+ * means the order is something a test can exercise instead of something a
10
+ * reader has to trust — and it leaves the dispatcher with no ordering of its
11
+ * own to get wrong.
12
+ */
13
+ import { shouldShowInteractiveMenu } from "./interactive-menu.js";
14
+ /**
15
+ * The global flags that ARE a command when nothing else is in front of them.
16
+ *
17
+ * A table rather than a chain of ifs, so adding one is a row and the precedence
18
+ * against the menu stays a single fact. The flag is spelled with its dashes
19
+ * because that is how the parser stores a boolean flag.
20
+ */
21
+ const GLOBAL_ALIASES = new Map([["--doctor", "doctor"]]);
22
+ export function planDispatch(input) {
23
+ const alias = resolveGlobalAlias(input);
24
+ if (alias !== undefined)
25
+ return { kind: "command", name: alias, help: input.hasHelp };
26
+ if (shouldShowInteractiveMenu(input))
27
+ return { kind: "menu" };
28
+ if (input.command === undefined)
29
+ return { kind: "global-help" };
30
+ return { kind: "command", name: input.command, help: input.hasHelp };
31
+ }
32
+ /**
33
+ * The alias a bare invocation carries, or `undefined`.
34
+ *
35
+ * With an explicit command in front it is NOT an alias: it stays an unknown flag
36
+ * of that command, which is what the commands calling `reviewFlags` report.
37
+ */
38
+ export function resolveGlobalAlias(input) {
39
+ if (input.command !== undefined)
40
+ return undefined;
41
+ for (const [flag, command] of GLOBAL_ALIASES) {
42
+ if (input.flags.has(flag))
43
+ return command;
44
+ }
45
+ return undefined;
46
+ }
47
+ //# sourceMappingURL=dispatch-plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dispatch-plan.js","sourceRoot":"","sources":["../../src/cli/dispatch-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAiBlE;;;;;;GAMG;AACH,MAAM,cAAc,GAAgC,IAAI,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AAEtF,MAAM,UAAU,YAAY,CAAC,KAAoB;IAC/C,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;IACtF,IAAI,yBAAyB,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC9D,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;IAChE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;AACvE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAoB;IACrD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAClD,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,cAAc,EAAE,CAAC;QAC7C,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,OAAO,CAAC;IAC5C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}