@tacuchi/agent-workflow-cli 25.1.2 → 25.3.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 (133) hide show
  1. package/README.md +3 -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/decision-note-service.js +20 -3
  7. package/dist/application/decision-note-service.js.map +1 -1
  8. package/dist/application/doctor/actions.js +158 -0
  9. package/dist/application/doctor/actions.js.map +1 -0
  10. package/dist/application/doctor/apply.js +399 -0
  11. package/dist/application/doctor/apply.js.map +1 -0
  12. package/dist/application/doctor/auth-dsn.js +143 -0
  13. package/dist/application/doctor/auth-dsn.js.map +1 -0
  14. package/dist/application/doctor/auth-flow.js +28 -0
  15. package/dist/application/doctor/auth-flow.js.map +1 -0
  16. package/dist/application/doctor/auth-registry.js +12 -0
  17. package/dist/application/doctor/auth-registry.js.map +1 -0
  18. package/dist/application/doctor/hosts.js +41 -0
  19. package/dist/application/doctor/hosts.js.map +1 -0
  20. package/dist/application/doctor/native-host-state.js +211 -0
  21. package/dist/application/doctor/native-host-state.js.map +1 -0
  22. package/dist/application/doctor/prepare.js +262 -0
  23. package/dist/application/doctor/prepare.js.map +1 -0
  24. package/dist/application/doctor/provider-installation.js +124 -0
  25. package/dist/application/doctor/provider-installation.js.map +1 -0
  26. package/dist/application/doctor/provider-mcps.js +650 -0
  27. package/dist/application/doctor/provider-mcps.js.map +1 -0
  28. package/dist/application/doctor/provider-plugins-hooks.js +112 -0
  29. package/dist/application/doctor/provider-plugins-hooks.js.map +1 -0
  30. package/dist/application/doctor/provider-skills.js +212 -0
  31. package/dist/application/doctor/provider-skills.js.map +1 -0
  32. package/dist/application/doctor/provider-tools-auth.js +201 -0
  33. package/dist/application/doctor/provider-tools-auth.js.map +1 -0
  34. package/dist/application/doctor/provider-visibility.js +149 -0
  35. package/dist/application/doctor/provider-visibility.js.map +1 -0
  36. package/dist/application/doctor/repair-runner.js +169 -0
  37. package/dist/application/doctor/repair-runner.js.map +1 -0
  38. package/dist/application/doctor/report.js +155 -0
  39. package/dist/application/doctor/report.js.map +1 -0
  40. package/dist/application/doctor/types.js +5 -0
  41. package/dist/application/doctor/types.js.map +1 -0
  42. package/dist/application/flow/advance.js +152 -13
  43. package/dist/application/flow/advance.js.map +1 -1
  44. package/dist/application/flow/flow-service.js +18 -7
  45. package/dist/application/flow/flow-service.js.map +1 -1
  46. package/dist/application/flow/internal-actions.js +167 -7
  47. package/dist/application/flow/internal-actions.js.map +1 -1
  48. package/dist/application/flow/run-projection.js +6 -1
  49. package/dist/application/flow/run-projection.js.map +1 -1
  50. package/dist/application/flow/submit.js +330 -7
  51. package/dist/application/flow/submit.js.map +1 -1
  52. package/dist/application/mcp-doctor-service.js +1 -1
  53. package/dist/application/mcp-doctor-service.js.map +1 -1
  54. package/dist/application/mcp-host-reader.js +134 -26
  55. package/dist/application/mcp-host-reader.js.map +1 -1
  56. package/dist/application/mcp-host-receipt-service.js +9 -7
  57. package/dist/application/mcp-host-receipt-service.js.map +1 -1
  58. package/dist/application/plan-current-point.js +54 -0
  59. package/dist/application/plan-current-point.js.map +1 -0
  60. package/dist/application/plan-exec-decision-service.js +143 -4
  61. package/dist/application/plan-exec-decision-service.js.map +1 -1
  62. package/dist/application/plan-locator.js +78 -0
  63. package/dist/application/plan-locator.js.map +1 -0
  64. package/dist/application/plan-open-run.js +129 -0
  65. package/dist/application/plan-open-run.js.map +1 -0
  66. package/dist/application/reseal-service.js +14 -44
  67. package/dist/application/reseal-service.js.map +1 -1
  68. package/dist/application/resume-service.js +9 -3
  69. package/dist/application/resume-service.js.map +1 -1
  70. package/dist/application/self/install-skill.js +10 -2
  71. package/dist/application/self/install-skill.js.map +1 -1
  72. package/dist/application/self/mcp-config.js +1 -1
  73. package/dist/application/self/mcp-config.js.map +1 -1
  74. package/dist/application/session-narrative.js +15 -0
  75. package/dist/application/session-narrative.js.map +1 -1
  76. package/dist/application/settle-service.js +442 -0
  77. package/dist/application/settle-service.js.map +1 -0
  78. package/dist/application/source-boundary-policy.js +87 -6
  79. package/dist/application/source-boundary-policy.js.map +1 -1
  80. package/dist/application/workline-index-service.js +165 -62
  81. package/dist/application/workline-index-service.js.map +1 -1
  82. package/dist/cli/commands/amend.js +122 -0
  83. package/dist/cli/commands/amend.js.map +1 -0
  84. package/dist/cli/commands/doctor.js +300 -0
  85. package/dist/cli/commands/doctor.js.map +1 -0
  86. package/dist/cli/commands/index.js +6 -0
  87. package/dist/cli/commands/index.js.map +1 -1
  88. package/dist/cli/commands/settle.js +197 -0
  89. package/dist/cli/commands/settle.js.map +1 -0
  90. package/dist/cli/commands/status.js +2 -0
  91. package/dist/cli/commands/status.js.map +1 -1
  92. package/dist/cli/dispatch-plan.js +47 -0
  93. package/dist/cli/dispatch-plan.js.map +1 -0
  94. package/dist/cli/help-groups.js +15 -0
  95. package/dist/cli/help-groups.js.map +1 -1
  96. package/dist/cli/main.js +54 -10
  97. package/dist/cli/main.js.map +1 -1
  98. package/dist/cli/parser.js +26 -0
  99. package/dist/cli/parser.js.map +1 -1
  100. package/dist/domain/decision-note.js +166 -3
  101. package/dist/domain/decision-note.js.map +1 -1
  102. package/dist/domain/decision-preview.js.map +1 -1
  103. package/dist/domain/doctor/auth.js +65 -0
  104. package/dist/domain/doctor/auth.js.map +1 -0
  105. package/dist/domain/doctor/model.js +82 -0
  106. package/dist/domain/doctor/model.js.map +1 -0
  107. package/dist/domain/doctor/operations.js +114 -0
  108. package/dist/domain/doctor/operations.js.map +1 -0
  109. package/dist/domain/effective-contract.js +4 -3
  110. package/dist/domain/effective-contract.js.map +1 -1
  111. package/dist/domain/flow/answer.js +10 -0
  112. package/dist/domain/flow/answer.js.map +1 -1
  113. package/dist/domain/flow/authority.js +124 -0
  114. package/dist/domain/flow/authority.js.map +1 -1
  115. package/dist/domain/flow/directive.js +8 -1
  116. package/dist/domain/flow/directive.js.map +1 -1
  117. package/dist/domain/flow/run-state.js +276 -34
  118. package/dist/domain/flow/run-state.js.map +1 -1
  119. package/dist/domain/obligation-correspondence.js +95 -0
  120. package/dist/domain/obligation-correspondence.js.map +1 -0
  121. package/dist/domain/reconciliation.js +142 -25
  122. package/dist/domain/reconciliation.js.map +1 -1
  123. package/dist/domain/redaction.js +40 -0
  124. package/dist/domain/redaction.js.map +1 -1
  125. package/dist/domain/settlement.js +129 -0
  126. package/dist/domain/settlement.js.map +1 -0
  127. package/package.json +1 -1
  128. package/skills/w/SKILL.md +2 -1
  129. package/skills/w/commands/README.md +2 -1
  130. package/skills/w/commands/doctor.md +31 -0
  131. package/skills/w/commands/resume.md +2 -2
  132. package/skills/w/context/MANIFEST.json +4 -0
  133. package/skills/w/loops/plan-exec-loop/LOOP.md +31 -0
@@ -1 +1 @@
1
- {"version":3,"file":"workline-index-service.js","sourceRoot":"","sources":["../../src/application/workline-index-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workline-index-service.js","sourceRoot":"","sources":["../../src/application/workline-index-service.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":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAGL,aAAa,EACb,YAAY,EACZ,eAAe,GAChB,MAAM,oCAAoC,CAAC;AAI5C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAK5C,MAAM,OAAO,GAAG,IAAI,GAAG,CAAS,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AAE7D,MAAM,KAAK,GACT,2HAA2H,CAAC;AAwB9H,SAAS,MAAM,CAAC,IAAY,EAAE,OAAe,EAAE,MAAc;IAC3D,OAAO,YAAY,CAAc,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAA4B;IACnD,IAAI,EAAE,OAAO;IACb,QAAQ,EACN,mGAAmG;QACnG,sJAAsJ;QACtJ,yJAAyJ;QACzJ,2LAA2L;QAC3L,gLAAgL;IAElL,KAAK,CAAC,OAAO,CAAC,IAAgB,EAAE,GAAe;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAuB,CAAC;QAClD,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAE/F,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9B,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC/D,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI,EAAE,MAAM,EAAE;gBAC5D,QAAQ,EAAE,CAAC;aACZ,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,EAAE,KAAK,SAAS;gBAAE,OAAO,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;YACnE,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACvE,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACjC,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC1F,CAAC;YACD,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE;oBACJ,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,UAAU;oBAClB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,OAAO,EAAE,QAAQ,CAAC,OAAO;iBAC1B;gBACD,QAAQ,EAAE,CAAC;aACZ,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACrF,IAAI,MAAM,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACnE,OAAO,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,EAAE;YAC9D,MAAM;YACN,IAAI;YACJ,EAAE;YACF,WAAW,EAAE,WAAW,IAAI,EAAE;SAC/B,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAChC,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvF,CAAC;QACD,OAAO;YACL,EAAE,EAAE,IAAI;YACR,IAAI,EAAE;gBACJ,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,SAAS;gBACjB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB;YACD,QAAQ,EAAE,CAAC;SACZ,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,MAAM;QAChB,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;YAAE,OAAO,EAAE,CAAC;QACvD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;YAAE,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;QACjE,OAAO;YACL,GAAG,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,iBAAiB,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE;YACtE,SAAS,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACvC,SAAS,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE;YACrC,gBAAgB,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;YAC5C,YAAY,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACrC,IAAI,CAAC,MAAM,KAAK,OAAO;gBACrB,CAAC,CAAC,uCAAuC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE;gBAC5D,CAAC,CAAC,sDAAsD;SAC3D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;CACF,CAAC;AAEF,SAAS,UAAU,CAAC,IAAqB;IACvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IACtE,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,4CAA4C,KAAK,GAAG,CAAC;IAC1F,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACrC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;QAClE,OAAO,KAAK,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,KAAK,IAAI,KAAK,KAAK,CAAC,SAAS,CAAC,QAAQ,aAAa,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,sBAAsB,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;IACzN,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,4BAA4B,KAAK,sCAAsC,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAC5F,IAAI,CACL,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,SAAS,OAAO,CAAC,IAAY;IAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,OAAO,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;AAC5D,CAAC"}
@@ -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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"}