@ashlr/hub 2.2.0 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/CHANGELOG.md +73 -0
  2. package/README.md +95 -8
  3. package/dist/api/plugin.d.ts +1 -0
  4. package/dist/cli/backlog.js +2 -0
  5. package/dist/cli/backlog.js.map +1 -1
  6. package/dist/cli/digest.d.ts +6 -0
  7. package/dist/cli/digest.js +127 -2
  8. package/dist/cli/digest.js.map +1 -1
  9. package/dist/cli/eval-fixtures.d.ts +18 -0
  10. package/dist/cli/eval-fixtures.js +38 -0
  11. package/dist/cli/eval-fixtures.js.map +1 -0
  12. package/dist/cli/eval.d.ts +56 -0
  13. package/dist/cli/eval.js +283 -0
  14. package/dist/cli/eval.js.map +1 -0
  15. package/dist/cli/fleet.d.ts +27 -0
  16. package/dist/cli/fleet.js +222 -0
  17. package/dist/cli/fleet.js.map +1 -0
  18. package/dist/cli/goal.d.ts +15 -0
  19. package/dist/cli/goal.js +91 -0
  20. package/dist/cli/goal.js.map +1 -0
  21. package/dist/cli/help.js +10 -3
  22. package/dist/cli/help.js.map +1 -1
  23. package/dist/cli/inbox.d.ts +6 -0
  24. package/dist/cli/inbox.js +183 -8
  25. package/dist/cli/inbox.js.map +1 -1
  26. package/dist/cli/index.js +50 -0
  27. package/dist/cli/index.js.map +1 -1
  28. package/dist/cli/loop.d.ts +16 -0
  29. package/dist/cli/loop.js +66 -0
  30. package/dist/cli/loop.js.map +1 -0
  31. package/dist/cli/mcp.d.ts +12 -0
  32. package/dist/cli/mcp.js +148 -0
  33. package/dist/cli/mcp.js.map +1 -1
  34. package/dist/cli/onboard.d.ts +16 -0
  35. package/dist/cli/onboard.js +71 -0
  36. package/dist/cli/onboard.js.map +1 -1
  37. package/dist/cli/plugins.js +9 -8
  38. package/dist/cli/plugins.js.map +1 -1
  39. package/dist/cli/pulse.d.ts +10 -0
  40. package/dist/cli/pulse.js +261 -0
  41. package/dist/cli/pulse.js.map +1 -1
  42. package/dist/cli/run.js +21 -3
  43. package/dist/cli/run.js.map +1 -1
  44. package/dist/cli/stack.d.ts +34 -0
  45. package/dist/cli/stack.js +221 -0
  46. package/dist/cli/stack.js.map +1 -0
  47. package/dist/cli/update.js +12 -5
  48. package/dist/cli/update.js.map +1 -1
  49. package/dist/core/daemon/loop.d.ts +10 -5
  50. package/dist/core/daemon/loop.js +167 -37
  51. package/dist/core/daemon/loop.js.map +1 -1
  52. package/dist/core/env-bridge.js +3 -2
  53. package/dist/core/env-bridge.js.map +1 -1
  54. package/dist/core/fleet/automerge-pass.d.ts +33 -0
  55. package/dist/core/fleet/automerge-pass.js +61 -0
  56. package/dist/core/fleet/automerge-pass.js.map +1 -0
  57. package/dist/core/fleet/quota.d.ts +70 -0
  58. package/dist/core/fleet/quota.js +198 -0
  59. package/dist/core/fleet/quota.js.map +1 -0
  60. package/dist/core/fleet/router.d.ts +46 -0
  61. package/dist/core/fleet/router.js +121 -0
  62. package/dist/core/fleet/router.js.map +1 -0
  63. package/dist/core/fleet/self.d.ts +58 -0
  64. package/dist/core/fleet/self.js +187 -0
  65. package/dist/core/fleet/self.js.map +1 -0
  66. package/dist/core/fleet/status.d.ts +54 -0
  67. package/dist/core/fleet/status.js +157 -0
  68. package/dist/core/fleet/status.js.map +1 -0
  69. package/dist/core/foundry/provenance.d.ts +78 -0
  70. package/dist/core/foundry/provenance.js +172 -0
  71. package/dist/core/foundry/provenance.js.map +1 -0
  72. package/dist/core/git.d.ts +13 -0
  73. package/dist/core/git.js +26 -0
  74. package/dist/core/git.js.map +1 -1
  75. package/dist/core/inbox/merge.d.ts +151 -0
  76. package/dist/core/inbox/merge.js +858 -0
  77. package/dist/core/inbox/merge.js.map +1 -0
  78. package/dist/core/inbox/store.js +10 -1
  79. package/dist/core/inbox/store.js.map +1 -1
  80. package/dist/core/integrations/markdown.d.ts +66 -0
  81. package/dist/core/integrations/markdown.js +132 -0
  82. package/dist/core/integrations/markdown.js.map +1 -0
  83. package/dist/core/integrations/secrets.d.ts +37 -0
  84. package/dist/core/integrations/secrets.js +67 -0
  85. package/dist/core/integrations/secrets.js.map +1 -0
  86. package/dist/core/integrations/stack.d.ts +47 -0
  87. package/dist/core/integrations/stack.js +107 -0
  88. package/dist/core/integrations/stack.js.map +1 -0
  89. package/dist/core/mcp-native-engineer.d.ts +123 -0
  90. package/dist/core/mcp-native-engineer.js +936 -0
  91. package/dist/core/mcp-native-engineer.js.map +1 -0
  92. package/dist/core/mcp-native.js +20 -42
  93. package/dist/core/mcp-native.js.map +1 -1
  94. package/dist/core/mcp-registry.js +2 -0
  95. package/dist/core/mcp-registry.js.map +1 -1
  96. package/dist/core/observability/codex-source.d.ts +53 -0
  97. package/dist/core/observability/codex-source.js +390 -0
  98. package/dist/core/observability/codex-source.js.map +1 -0
  99. package/dist/core/observability/estimate.d.ts +12 -0
  100. package/dist/core/observability/estimate.js +26 -0
  101. package/dist/core/observability/estimate.js.map +1 -1
  102. package/dist/core/observability/limits.d.ts +52 -0
  103. package/dist/core/observability/limits.js +316 -0
  104. package/dist/core/observability/limits.js.map +1 -0
  105. package/dist/core/observability/usage-source.js +3 -1
  106. package/dist/core/observability/usage-source.js.map +1 -1
  107. package/dist/core/portfolio/scanners.d.ts +1 -0
  108. package/dist/core/portfolio/scanners.js +40 -1
  109. package/dist/core/portfolio/scanners.js.map +1 -1
  110. package/dist/core/providers.js +4 -0
  111. package/dist/core/providers.js.map +1 -1
  112. package/dist/core/quality/health.js +1 -0
  113. package/dist/core/quality/health.js.map +1 -1
  114. package/dist/core/run/agent-loop.d.ts +8 -0
  115. package/dist/core/run/agent-loop.js +24 -14
  116. package/dist/core/run/agent-loop.js.map +1 -1
  117. package/dist/core/run/engine-registry.d.ts +48 -0
  118. package/dist/core/run/engine-registry.js +190 -0
  119. package/dist/core/run/engine-registry.js.map +1 -0
  120. package/dist/core/run/engines.d.ts +17 -3
  121. package/dist/core/run/engines.js +63 -44
  122. package/dist/core/run/engines.js.map +1 -1
  123. package/dist/core/run/learned-router.d.ts +121 -0
  124. package/dist/core/run/learned-router.js +374 -0
  125. package/dist/core/run/learned-router.js.map +1 -0
  126. package/dist/core/run/model-manager.js +3 -3
  127. package/dist/core/run/model-manager.js.map +1 -1
  128. package/dist/core/run/model-profile.d.ts +67 -0
  129. package/dist/core/run/model-profile.js +132 -0
  130. package/dist/core/run/model-profile.js.map +1 -0
  131. package/dist/core/run/orchestrator.d.ts +1 -1
  132. package/dist/core/run/orchestrator.js +642 -510
  133. package/dist/core/run/orchestrator.js.map +1 -1
  134. package/dist/core/run/prompts/budget.d.ts +25 -0
  135. package/dist/core/run/prompts/budget.js +51 -0
  136. package/dist/core/run/prompts/budget.js.map +1 -0
  137. package/dist/core/run/prompts/index.d.ts +14 -0
  138. package/dist/core/run/prompts/index.js +59 -0
  139. package/dist/core/run/prompts/index.js.map +1 -0
  140. package/dist/core/run/prompts/layers.d.ts +26 -0
  141. package/dist/core/run/prompts/layers.js +73 -0
  142. package/dist/core/run/prompts/layers.js.map +1 -0
  143. package/dist/core/run/prompts/roles.d.ts +23 -0
  144. package/dist/core/run/prompts/roles.js +48 -0
  145. package/dist/core/run/prompts/roles.js.map +1 -0
  146. package/dist/core/run/prompts/types.d.ts +38 -0
  147. package/dist/core/run/prompts/types.js +5 -0
  148. package/dist/core/run/prompts/types.js.map +1 -0
  149. package/dist/core/run/provider-client.d.ts +6 -24
  150. package/dist/core/run/provider-client.js +125 -61
  151. package/dist/core/run/provider-client.js.map +1 -1
  152. package/dist/core/run/router.js +8 -0
  153. package/dist/core/run/router.js.map +1 -1
  154. package/dist/core/run/sandboxed-engine.d.ts +66 -0
  155. package/dist/core/run/sandboxed-engine.js +262 -0
  156. package/dist/core/run/sandboxed-engine.js.map +1 -0
  157. package/dist/core/run/verify-commands.d.ts +83 -0
  158. package/dist/core/run/verify-commands.js +234 -0
  159. package/dist/core/run/verify-commands.js.map +1 -0
  160. package/dist/core/run/verify.d.ts +31 -1
  161. package/dist/core/run/verify.js +48 -0
  162. package/dist/core/run/verify.js.map +1 -1
  163. package/dist/core/sandbox/audit.d.ts +27 -0
  164. package/dist/core/sandbox/audit.js +34 -0
  165. package/dist/core/sandbox/audit.js.map +1 -1
  166. package/dist/core/sandbox/confine.d.ts +134 -0
  167. package/dist/core/sandbox/confine.js +370 -0
  168. package/dist/core/sandbox/confine.js.map +1 -0
  169. package/dist/core/types.d.ts +227 -5
  170. package/dist/core/web/api.js +77 -28
  171. package/dist/core/web/api.js.map +1 -1
  172. package/dist/core/web/control.d.ts +116 -0
  173. package/dist/core/web/control.js +307 -0
  174. package/dist/core/web/control.js.map +1 -0
  175. package/dist/core/web/public/app.js +512 -6
  176. package/dist/core/web/public/styles.css +468 -0
  177. package/package.json +3 -2
@@ -0,0 +1,15 @@
1
+ /**
2
+ * goal.ts — M55 (v5 Open Fleet): the `ashlr goal` conductor.
3
+ *
4
+ * One polished front door to the goal machinery: `ashlr goal "<objective>"`
5
+ * creates a goal, plans it into milestones, and advances the next one — routed
6
+ * across the polyglot roster (M50/M51/M53), sandboxed, PROPOSAL-FIRST. It is a
7
+ * thin convenience wrapper over the PROVEN, gated `ashlr goals` subcommands
8
+ * (add → plan → advance); it adds NO new dispatch or mutation path. The
9
+ * proposal-only + enrollment + kill-switch gates all live in core advanceGoal.
10
+ *
11
+ * SAFETY: this module imports no outward-mutation primitive — it never applies
12
+ * proposals, opens pull requests, pushes a remote, or deploys. It only sequences
13
+ * the already-gated goals flow.
14
+ */
15
+ export declare function cmdGoal(args: string[]): Promise<number>;
@@ -0,0 +1,91 @@
1
+ /**
2
+ * goal.ts — M55 (v5 Open Fleet): the `ashlr goal` conductor.
3
+ *
4
+ * One polished front door to the goal machinery: `ashlr goal "<objective>"`
5
+ * creates a goal, plans it into milestones, and advances the next one — routed
6
+ * across the polyglot roster (M50/M51/M53), sandboxed, PROPOSAL-FIRST. It is a
7
+ * thin convenience wrapper over the PROVEN, gated `ashlr goals` subcommands
8
+ * (add → plan → advance); it adds NO new dispatch or mutation path. The
9
+ * proposal-only + enrollment + kill-switch gates all live in core advanceGoal.
10
+ *
11
+ * SAFETY: this module imports no outward-mutation primitive — it never applies
12
+ * proposals, opens pull requests, pushes a remote, or deploys. It only sequences
13
+ * the already-gated goals flow.
14
+ */
15
+ import { makeColors } from './ui.js';
16
+ function parseArgs(args) {
17
+ const positional = [];
18
+ let project;
19
+ let allowCloud = false;
20
+ let planOnly = false;
21
+ let help = false;
22
+ for (let i = 0; i < args.length; i++) {
23
+ const a = args[i];
24
+ if (a === '--project' || a === '-p')
25
+ project = args[++i];
26
+ else if (a === '--allow-cloud')
27
+ allowCloud = true;
28
+ else if (a === '--plan-only')
29
+ planOnly = true;
30
+ else if (a === '--help' || a === '-h')
31
+ help = true;
32
+ else if (!a.startsWith('-'))
33
+ positional.push(a);
34
+ }
35
+ return { objective: positional.join(' ').trim(), project, allowCloud, planOnly, help };
36
+ }
37
+ const USAGE = 'Usage: ashlr goal "<objective>" [--project <repo>] [--allow-cloud] [--plan-only]\n' +
38
+ '\n' +
39
+ ' Create a goal, plan it into milestones, and advance the next one as a\n' +
40
+ ' sandboxed, PROPOSAL-ONLY run (review it via `ashlr inbox`). Routed across\n' +
41
+ ' the polyglot backend roster by capability + trust tier.';
42
+ export async function cmdGoal(args) {
43
+ const tty = process.stdout.isTTY === true;
44
+ const col = makeColors(tty);
45
+ const parsed = parseArgs(args);
46
+ if (parsed.help || !parsed.objective) {
47
+ console.log(parsed.help ? USAGE : col.red('error: ') + 'an objective is required\n\n' + USAGE);
48
+ return parsed.help ? 0 : 2;
49
+ }
50
+ // Reuse the proven, gated `ashlr goals` flow. cmdGoals routes advance through
51
+ // core advanceGoal (sandboxed + proposal-only + enrollment/kill gated).
52
+ const { cmdGoals } = await import('./goals.js');
53
+ const { listGoals } = await import('../core/goals/store.js');
54
+ console.log('');
55
+ console.log(col.bold(' ashlr goal') + col.dim(' — objective → milestones → proposal'));
56
+ console.log(' ' + col.cyan(parsed.objective));
57
+ console.log('');
58
+ // 1) Create the goal.
59
+ const addArgs = ['add', parsed.objective];
60
+ if (parsed.project)
61
+ addArgs.push('--project', parsed.project);
62
+ const addRc = await cmdGoals(addArgs);
63
+ if (addRc !== 0)
64
+ return addRc;
65
+ // Resolve the goal we just created (newest matching objective).
66
+ const mine = listGoals().filter((g) => g.objective === parsed.objective);
67
+ const goal = mine.sort((a, b) => (a.createdAt < b.createdAt ? 1 : -1))[0];
68
+ if (!goal) {
69
+ console.error(col.red('error: ') + 'could not resolve the created goal');
70
+ return 1;
71
+ }
72
+ // 2) Plan it into milestones.
73
+ const planRc = await cmdGoals(['plan', goal.id]);
74
+ if (planRc !== 0)
75
+ return planRc;
76
+ if (parsed.planOnly) {
77
+ console.log(col.dim(' planned only — run `ashlr goal` again or `ashlr goals advance ' + goal.id + '` to proceed.'));
78
+ return 0;
79
+ }
80
+ // 3) Advance the next milestone — sandboxed, proposal-only.
81
+ const advArgs = ['advance', goal.id];
82
+ if (parsed.allowCloud)
83
+ advArgs.push('--allow-cloud');
84
+ const advRc = await cmdGoals(advArgs);
85
+ if (advRc === 0) {
86
+ console.log('');
87
+ console.log(col.green(' ✓ ') + col.dim('proposal filed — review with `ashlr inbox`. Nothing was applied.'));
88
+ }
89
+ return advRc;
90
+ }
91
+ //# sourceMappingURL=goal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goal.js","sourceRoot":"","sources":["../../src/cli/goal.ts"],"names":[],"mappings":"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"}
package/dist/cli/help.js CHANGED
@@ -247,6 +247,9 @@ export const HELP_ENTRIES = [
247
247
  { cmd: 'daemon start --once --dry-run', desc: 'Plan only: which backlog items WOULD be worked (no swarm/proposal).', topic: 'autonomy' },
248
248
  { cmd: 'daemon stop', desc: 'Halt the daemon: set kill switch + clear running state.', topic: 'autonomy' },
249
249
  { cmd: 'daemon status', desc: "Daemon roll-up: running?, today's spend vs cap, pending proposals.", topic: 'autonomy' },
250
+ { cmd: 'fleet status [--json]', desc: 'Read-only fleet snapshot: daemon, per-backend dispatches+quota, queue, proposals, merges, paused state.', topic: 'autonomy' },
251
+ { cmd: 'fleet pause', desc: 'Pause the fleet: engage the global kill switch (idempotent).', topic: 'autonomy' },
252
+ { cmd: 'fleet resume', desc: 'Resume the fleet: release the global kill switch (idempotent).', topic: 'autonomy' },
250
253
  { cmd: 'goals add <objective>', desc: 'Register a high-level OBJECTIVE (goal); decomposed into ordered milestones (local, no LLM by default).', topic: 'autonomy' },
251
254
  { cmd: 'goals plan <id>', desc: 'Decompose a goal into ordered milestones + author/link each milestone spec (LOCAL-FIRST; --allow-cloud to use cloud).', topic: 'autonomy' },
252
255
  { cmd: 'goals advance <id>', desc: 'Advance the next actionable milestone via a SANDBOXED, proposal-only swarm (ENROLLED repos only; emits a PENDING proposal).', topic: 'autonomy' },
@@ -338,9 +341,13 @@ function renderEntries(entries) {
338
341
  const w = Math.max(...entries.map((e) => e.cmd.length));
339
342
  return entries.map((e) => ` ${c.cyan(pad(e.cmd, w))} ${e.desc}`).join('\n');
340
343
  }
344
+ /** All command entries tagged with a given topic (single source of truth). */
345
+ function entriesForTopic(topic) {
346
+ return HELP_ENTRIES.filter((e) => e.topic === topic);
347
+ }
341
348
  function renderTopic(topic) {
342
349
  const c = makeColors(isTty());
343
- const entries = HELP_ENTRIES.filter((e) => e.topic === topic);
350
+ const entries = entriesForTopic(topic);
344
351
  console.log('');
345
352
  console.log(' ' + c.bold(TOPIC_LABELS[topic]));
346
353
  console.log('');
@@ -366,7 +373,7 @@ function renderSummary() {
366
373
  console.log(c.bold(' ashlr') + c.dim(' — local-first command center for agentic engineers'));
367
374
  console.log('');
368
375
  for (const topic of TOPICS) {
369
- const entries = HELP_ENTRIES.filter((e) => e.topic === topic);
376
+ const entries = entriesForTopic(topic);
370
377
  const headliners = entries.slice(0, 3).map((e) => e.cmd.split(' ')[0]);
371
378
  const unique = [...new Set(headliners)].join(', ');
372
379
  console.log(` ${c.cyan(pad(topic, 14))} ${TOPIC_LABELS[topic]} ${c.dim(`(${unique}, …)`)}`);
@@ -385,7 +392,7 @@ function renderAll() {
385
392
  for (const topic of TOPICS) {
386
393
  console.log('');
387
394
  console.log(' ' + c.bold(TOPIC_LABELS[topic]));
388
- console.log(renderEntries(HELP_ENTRIES.filter((e) => e.topic === topic)));
395
+ console.log(renderEntries(entriesForTopic(topic)));
389
396
  }
390
397
  console.log('');
391
398
  for (const [t, lines] of Object.entries(FLAG_LINES)) {
@@ -1 +1 @@
1
- {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAejD;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC/C;QACE,KAAK,EAAE,qCAAqC;QAC5C,WAAW,EAAE,iHAAiH;QAC9H,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,cAAc;KAC1B;IACD;QACE,KAAK,EAAE,iCAAiC;QACxC,WAAW,EAAE,qGAAqG;QAClH,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,WAAW;KACvB;IACD;QACE,KAAK,EAAE,iCAAiC;QACxC,WAAW,EAAE,wEAAwE;QACrF,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,aAAa;KACzB;IACD;QACE,KAAK,EAAE,6DAA6D;QACpE,WAAW,EAAE,8EAA8E;QAC3F,MAAM,EAAE,QAAQ;QAChB,SAAS,EAAE,uBAAuB;KACnC;IACD;QACE,KAAK,EAAE,kDAAkD;QACzD,WAAW,EAAE,sGAAsG;QACnH,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,SAAS;KACrB;IACD;QACE,KAAK,EAAE,8BAA8B;QACrC,WAAW,EAAE,oGAAoG;QACjH,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,4BAA4B;KACxC;IACD;QACE,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,yDAAyD;QACtE,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,qCAAqC;KACjD;IACD;QACE,KAAK,EAAE,0CAA0C;QACjD,WAAW,EAAE,4EAA4E;QACzF,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,cAAc;KAC1B;IACD;QACE,KAAK,EAAE,yCAAyC;QAChD,WAAW,EAAE,qEAAqE;QAClF,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,gBAAgB;KAC5B;IACD;QACE,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,+FAA+F;QAC5G,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,YAAY;KACxB;IACD;QACE,KAAK,EAAE,iCAAiC;QACxC,WAAW,EAAE,oGAAoG;QACjH,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,aAAa;KACzB;CACF,CAAC;AAEF,sEAAsE;AACtE,MAAM,UAAU,aAAa;IAC3B,MAAM,KAAK,GAAa;QACtB,sCAAsC;QACtC,EAAE;QACF,8EAA8E;QAC9E,0EAA0E;QAC1E,4EAA4E;QAC5E,8DAA8D;QAC9D,EAAE;QACF,6EAA6E;QAC7E,8EAA8E;QAC9E,0DAA0D;QAC1D,EAAE;KACH,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,YAAY,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QACzD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;IAChF,KAAK,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;IACjF,KAAK,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;IACzE,KAAK,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IAC7E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,eAAe;IAC7B,OAAO;QACL,qCAAqC;QACrC,EAAE;QACF,uEAAuE;QACvE,6BAA6B;QAC7B,EAAE;QACF,6EAA6E;QAC7E,8EAA8E;QAC9E,oFAAoF;QACpF,gEAAgE;QAChE,oEAAoE;QACpE,gEAAgE;QAChE,wDAAwD;QACxD,4EAA4E;QAC5E,qBAAqB;QACrB,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,aAAa;IACpB,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC,CAAC;IACnF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,gDAAgD,CAAC,EAAE,CAAC,CAAC;IACvH,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;IAClG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,qCAAqC,CAAC,EAAE,CAAC,CAAC;IAC5G,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAAc;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAEvC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QACzE,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QACnF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;IACtC,OAAO,CAAC,CAAC;AACX,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,gBAAgB;IAC9B,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACjE,OAAO,cAAc;SAClB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;SACxF,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAgBD,MAAM,YAAY,GAA8B;IAC9C,IAAI,EAAE,mCAAmC;IACzC,GAAG,EAAE,8BAA8B;IACnC,KAAK,EAAE,oCAAoC;IAC3C,MAAM,EAAE,wBAAwB;IAChC,SAAS,EAAE,mCAAmC;IAC9C,QAAQ,EAAE,sDAAsD;IAChE,aAAa,EAAE,wCAAwC;IACvD,YAAY,EAAE,6CAA6C;IAC3D,MAAM,EAAE,4CAA4C;IACpD,GAAG,EAAE,gCAAgC;IACrC,QAAQ,EAAE,oCAAoC;CAC/C,CAAC;AAEF,6EAA6E;AAC7E,MAAM,CAAC,MAAM,YAAY,GAAgB;IACvC,EAAE,GAAG,EAAE,mBAAmB,EAAa,IAAI,EAAE,8DAA8D,EAAE,KAAK,EAAE,MAAM,EAAE;IAC5H,EAAE,GAAG,EAAE,0BAA0B,EAAM,IAAI,EAAE,2EAA2E,EAAE,KAAK,EAAE,MAAM,EAAE;IACzI,EAAE,GAAG,EAAE,QAAQ,EAAwB,IAAI,EAAE,uEAAuE,EAAE,KAAK,EAAE,MAAM,EAAE;IACrI,EAAE,GAAG,EAAE,eAAe,EAAiB,IAAI,EAAE,0DAA0D,EAAE,KAAK,EAAE,MAAM,EAAE;IACxH,EAAE,GAAG,EAAE,cAAc,EAAkB,IAAI,EAAE,2EAA2E,EAAE,KAAK,EAAE,MAAM,EAAE;IACzI,EAAE,GAAG,EAAE,gBAAgB,EAAgB,IAAI,EAAE,qDAAqD,EAAE,KAAK,EAAE,MAAM,EAAE;IACnH,EAAE,GAAG,EAAE,8BAA8B,EAAE,IAAI,EAAE,sDAAsD,EAAE,KAAK,EAAE,MAAM,EAAE;IACpH,EAAE,GAAG,EAAE,2BAA2B,EAAK,IAAI,EAAE,uDAAuD,EAAE,KAAK,EAAE,MAAM,EAAE;IACrH,EAAE,GAAG,EAAE,aAAa,EAAmB,IAAI,EAAE,gCAAgC,EAAE,KAAK,EAAE,MAAM,EAAE;IAC9F,EAAE,GAAG,EAAE,QAAQ,EAAwB,IAAI,EAAE,iEAAiE,EAAE,KAAK,EAAE,MAAM,EAAE;IAC/H,EAAE,GAAG,EAAE,cAAc,EAAkB,IAAI,EAAE,4EAA4E,EAAE,KAAK,EAAE,MAAM,EAAE;IAC1I,EAAE,GAAG,EAAE,2BAA2B,EAAK,IAAI,EAAE,uEAAuE,EAAE,KAAK,EAAE,MAAM,EAAE;IACrI,EAAE,GAAG,EAAE,8BAA8B,EAAE,IAAI,EAAE,gGAAgG,EAAE,KAAK,EAAE,MAAM,EAAE;IAC9J,EAAE,GAAG,EAAE,uBAAuB,EAAS,IAAI,EAAE,oFAAoF,EAAE,KAAK,EAAE,MAAM,EAAE;IAClJ,EAAE,GAAG,EAAE,sBAAsB,EAAU,IAAI,EAAE,4CAA4C,EAAE,KAAK,EAAE,MAAM,EAAE;IAC1G,EAAE,GAAG,EAAE,uCAAuC,EAAE,IAAI,EAAE,+GAA+G,EAAE,KAAK,EAAE,MAAM,EAAE;IACtL,EAAE,GAAG,EAAE,oBAAoB,EAAY,IAAI,EAAE,kCAAkC,EAAE,KAAK,EAAE,MAAM,EAAE;IAChG,EAAE,GAAG,EAAE,wBAAwB,EAAQ,IAAI,EAAE,0EAA0E,EAAE,KAAK,EAAE,MAAM,EAAE;IAExI,EAAE,GAAG,EAAE,qBAAqB,EAAW,IAAI,EAAE,wEAAwE,EAAE,KAAK,EAAE,KAAK,EAAE;IACrI,EAAE,GAAG,EAAE,eAAe,EAAiB,IAAI,EAAE,6BAA6B,EAAE,KAAK,EAAE,KAAK,EAAE;IAC1F,EAAE,GAAG,EAAE,eAAe,EAAiB,IAAI,EAAE,gCAAgC,EAAE,KAAK,EAAE,KAAK,EAAE;IAC7F,EAAE,GAAG,EAAE,iBAAiB,EAAe,IAAI,EAAE,6DAA6D,EAAE,KAAK,EAAE,KAAK,EAAE;IAC1H,EAAE,GAAG,EAAE,4BAA4B,EAAI,IAAI,EAAE,kEAAkE,EAAE,KAAK,EAAE,KAAK,EAAE;IAC/H,EAAE,GAAG,EAAE,cAAc,EAAkB,IAAI,EAAE,iEAAiE,EAAE,KAAK,EAAE,KAAK,EAAE;IAE9H,EAAE,GAAG,EAAE,+BAA+B,EAAE,IAAI,EAAE,iEAAiE,EAAE,KAAK,EAAE,OAAO,EAAE;IACjI,EAAE,GAAG,EAAE,8BAA8B,EAAE,IAAI,EAAE,mDAAmD,EAAE,KAAK,EAAE,OAAO,EAAE;IAClH,EAAE,GAAG,EAAE,gBAAgB,EAAgB,IAAI,EAAE,gCAAgC,EAAE,KAAK,EAAE,OAAO,EAAE;IAC/F,EAAE,GAAG,EAAE,2BAA2B,EAAK,IAAI,EAAE,yDAAyD,EAAE,KAAK,EAAE,OAAO,EAAE;IACxH,EAAE,GAAG,EAAE,uBAAuB,EAAS,IAAI,EAAE,mEAAmE,EAAE,KAAK,EAAE,OAAO,EAAE;IAClI,EAAE,GAAG,EAAE,uBAAuB,EAAS,IAAI,EAAE,gDAAgD,EAAE,KAAK,EAAE,OAAO,EAAE;IAC/G,EAAE,GAAG,EAAE,iBAAiB,EAAe,IAAI,EAAE,mCAAmC,EAAE,KAAK,EAAE,OAAO,EAAE;IAClG,EAAE,GAAG,EAAE,iBAAiB,EAAe,IAAI,EAAE,sCAAsC,EAAE,KAAK,EAAE,OAAO,EAAE;IAErG,EAAE,GAAG,EAAE,kBAAkB,EAAc,IAAI,EAAE,uEAAuE,EAAE,KAAK,EAAE,QAAQ,EAAE;IACvI,EAAE,GAAG,EAAE,uBAAuB,EAAS,IAAI,EAAE,mEAAmE,EAAE,KAAK,EAAE,QAAQ,EAAE;IACnI,EAAE,GAAG,EAAE,QAAQ,EAAwB,IAAI,EAAE,kEAAkE,EAAE,KAAK,EAAE,QAAQ,EAAE;IAElI,EAAE,GAAG,EAAE,iBAAiB,EAAe,IAAI,EAAE,8EAA8E,EAAE,KAAK,EAAE,WAAW,EAAE;IACjJ,EAAE,GAAG,EAAE,kBAAkB,EAAc,IAAI,EAAE,qFAAqF,EAAE,KAAK,EAAE,WAAW,EAAE;IACxJ,EAAE,GAAG,EAAE,2BAA2B,EAAK,IAAI,EAAE,iFAAiF,EAAE,KAAK,EAAE,WAAW,EAAE;IACpJ,EAAE,GAAG,EAAE,iBAAiB,EAAe,IAAI,EAAE,iFAAiF,EAAE,KAAK,EAAE,WAAW,EAAE;IAEpJ,EAAE,GAAG,EAAE,aAAa,EAAmB,IAAI,EAAE,0CAA0C,EAAE,KAAK,EAAE,UAAU,EAAE;IAC5G,EAAE,GAAG,EAAE,mBAAmB,EAAa,IAAI,EAAE,oCAAoC,EAAE,KAAK,EAAE,UAAU,EAAE;IACtG,EAAE,GAAG,EAAE,sBAAsB,EAAU,IAAI,EAAE,6CAA6C,EAAE,KAAK,EAAE,UAAU,EAAE;IAC/G,EAAE,GAAG,EAAE,oBAAoB,EAAY,IAAI,EAAE,2CAA2C,EAAE,KAAK,EAAE,UAAU,EAAE;IAC7G,EAAE,GAAG,EAAE,SAAS,EAAuB,IAAI,EAAE,gFAAgF,EAAE,KAAK,EAAE,UAAU,EAAE;IAClJ,EAAE,GAAG,EAAE,iBAAiB,EAAe,IAAI,EAAE,qDAAqD,EAAE,KAAK,EAAE,UAAU,EAAE;IACvH,EAAE,GAAG,EAAE,wBAAwB,EAAQ,IAAI,EAAE,6DAA6D,EAAE,KAAK,EAAE,UAAU,EAAE;IAC/H,EAAE,GAAG,EAAE,uBAAuB,EAAS,IAAI,EAAE,6CAA6C,EAAE,KAAK,EAAE,UAAU,EAAE;IAC/G,EAAE,GAAG,EAAE,qBAAqB,EAAW,IAAI,EAAE,4BAA4B,EAAE,KAAK,EAAE,UAAU,EAAE;IAC9F,EAAE,GAAG,EAAE,gBAAgB,EAAgB,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,UAAU,EAAE;IAC1F,EAAE,GAAG,EAAE,OAAO,EAAyB,IAAI,EAAE,mEAAmE,EAAE,KAAK,EAAE,UAAU,EAAE;IACrI,EAAE,GAAG,EAAE,iBAAiB,EAAe,IAAI,EAAE,mDAAmD,EAAE,KAAK,EAAE,UAAU,EAAE;IACrH,EAAE,GAAG,EAAE,oBAAoB,EAAY,IAAI,EAAE,+DAA+D,EAAE,KAAK,EAAE,UAAU,EAAE;IACjI,EAAE,GAAG,EAAE,0BAA0B,EAAM,IAAI,EAAE,oDAAoD,EAAE,KAAK,EAAE,UAAU,EAAE;IACtH,EAAE,GAAG,EAAE,mBAAmB,EAAa,IAAI,EAAE,8CAA8C,EAAE,KAAK,EAAE,UAAU,EAAE;IAChH,EAAE,GAAG,EAAE,cAAc,EAAkB,IAAI,EAAE,uDAAuD,EAAE,KAAK,EAAE,UAAU,EAAE;IACzH,EAAE,GAAG,EAAE,qBAAqB,EAAW,IAAI,EAAE,0EAA0E,EAAE,KAAK,EAAE,UAAU,EAAE;IAC5I,EAAE,GAAG,EAAE,+BAA+B,EAAE,IAAI,EAAE,qEAAqE,EAAE,KAAK,EAAE,UAAU,EAAE;IACxI,EAAE,GAAG,EAAE,aAAa,EAAmB,IAAI,EAAE,yDAAyD,EAAE,KAAK,EAAE,UAAU,EAAE;IAC3H,EAAE,GAAG,EAAE,eAAe,EAAiB,IAAI,EAAE,oEAAoE,EAAE,KAAK,EAAE,UAAU,EAAE;IACtI,EAAE,GAAG,EAAE,uBAAuB,EAAS,IAAI,EAAE,wGAAwG,EAAE,KAAK,EAAE,UAAU,EAAE;IAC1K,EAAE,GAAG,EAAE,iBAAiB,EAAe,IAAI,EAAE,uHAAuH,EAAE,KAAK,EAAE,UAAU,EAAE;IACzL,EAAE,GAAG,EAAE,oBAAoB,EAAY,IAAI,EAAE,6HAA6H,EAAE,KAAK,EAAE,UAAU,EAAE;IAC/L,EAAE,GAAG,EAAE,mBAAmB,EAAa,IAAI,EAAE,+FAA+F,EAAE,KAAK,EAAE,UAAU,EAAE;IACjK,EAAE,GAAG,EAAE,wBAAwB,EAAQ,IAAI,EAAE,wFAAwF,EAAE,KAAK,EAAE,UAAU,EAAE;IAC1J,EAAE,GAAG,EAAE,+BAA+B,EAAE,IAAI,EAAE,mGAAmG,EAAE,KAAK,EAAE,UAAU,EAAE;IACtK,EAAE,GAAG,EAAE,iBAAiB,EAAe,IAAI,EAAE,gGAAgG,EAAE,KAAK,EAAE,UAAU,EAAE;IAClK,EAAE,GAAG,EAAE,QAAQ,EAAwB,IAAI,EAAE,yGAAyG,EAAE,KAAK,EAAE,UAAU,EAAE;IAC3K,EAAE,GAAG,EAAE,eAAe,EAAiB,IAAI,EAAE,4FAA4F,EAAE,KAAK,EAAE,UAAU,EAAE;IAC9J,EAAE,GAAG,EAAE,gBAAgB,EAAgB,IAAI,EAAE,yFAAyF,EAAE,KAAK,EAAE,UAAU,EAAE;IAC3J,EAAE,GAAG,EAAE,QAAQ,EAAwB,IAAI,EAAE,mHAAmH,EAAE,KAAK,EAAE,UAAU,EAAE;IACrL,EAAE,GAAG,EAAE,iBAAiB,EAAe,IAAI,EAAE,mGAAmG,EAAE,KAAK,EAAE,UAAU,EAAE;IAErK,EAAE,GAAG,EAAE,4BAA4B,EAAI,IAAI,EAAE,iEAAiE,EAAE,KAAK,EAAE,eAAe,EAAE;IACxI,EAAE,GAAG,EAAE,cAAc,EAAkB,IAAI,EAAE,mFAAmF,EAAE,KAAK,EAAE,eAAe,EAAE;IAC1J,EAAE,GAAG,EAAE,wBAAwB,EAAQ,IAAI,EAAE,4CAA4C,EAAE,KAAK,EAAE,eAAe,EAAE;IACnH,EAAE,GAAG,EAAE,oBAAoB,EAAY,IAAI,EAAE,gFAAgF,EAAE,KAAK,EAAE,eAAe,EAAE;IACvJ,EAAE,GAAG,EAAE,gBAAgB,EAAgB,IAAI,EAAE,2DAA2D,EAAE,KAAK,EAAE,eAAe,EAAE;IAClI,EAAE,GAAG,EAAE,sEAAsE,EAAE,IAAI,EAAE,6FAA6F,EAAE,KAAK,EAAE,eAAe,EAAE;IAE5M,EAAE,GAAG,EAAE,KAAK,EAA2B,IAAI,EAAE,oGAAoG,EAAE,KAAK,EAAE,cAAc,EAAE;IAC1K,EAAE,GAAG,EAAE,UAAU,EAAsB,IAAI,EAAE,+EAA+E,EAAE,KAAK,EAAE,cAAc,EAAE;IACrJ,EAAE,GAAG,EAAE,YAAY,EAAoB,IAAI,EAAE,uDAAuD,EAAE,KAAK,EAAE,cAAc,EAAE;IAC7H,EAAE,GAAG,EAAE,gCAAgC,EAAE,IAAI,EAAE,uEAAuE,EAAE,KAAK,EAAE,cAAc,EAAE;IAC/I,EAAE,GAAG,EAAE,kBAAkB,EAAc,IAAI,EAAE,8EAA8E,EAAE,KAAK,EAAE,cAAc,EAAE;IACpJ,EAAE,GAAG,EAAE,cAAc,EAAkB,IAAI,EAAE,2EAA2E,EAAE,KAAK,EAAE,cAAc,EAAE;IACjJ,EAAE,GAAG,EAAE,kBAAkB,EAAc,IAAI,EAAE,kEAAkE,EAAE,KAAK,EAAE,cAAc,EAAE;IACxI,EAAE,GAAG,EAAE,gCAAgC,EAAE,IAAI,EAAE,6EAA6E,EAAE,KAAK,EAAE,cAAc,EAAE;IACrJ,EAAE,GAAG,EAAE,kBAAkB,EAAc,IAAI,EAAE,kFAAkF,EAAE,KAAK,EAAE,cAAc,EAAE;IACxJ,EAAE,GAAG,EAAE,aAAa,EAAmB,IAAI,EAAE,uEAAuE,EAAE,KAAK,EAAE,cAAc,EAAE;IAE7I,EAAE,GAAG,EAAE,cAAc,EAAkB,IAAI,EAAE,6DAA6D,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC7H,EAAE,GAAG,EAAE,mBAAmB,EAAa,IAAI,EAAE,0CAA0C,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC1G,EAAE,GAAG,EAAE,sBAAsB,EAAU,IAAI,EAAE,+CAA+C,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC/G,EAAE,GAAG,EAAE,YAAY,EAAoB,IAAI,EAAE,0GAA0G,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC1K,EAAE,GAAG,EAAE,OAAO,EAAyB,IAAI,EAAE,qFAAqF,EAAE,KAAK,EAAE,QAAQ,EAAE;IACrJ,EAAE,GAAG,EAAE,cAAc,EAAkB,IAAI,EAAE,uFAAuF,EAAE,KAAK,EAAE,QAAQ,EAAE;IACvJ,EAAE,GAAG,EAAE,eAAe,EAAiB,IAAI,EAAE,uHAAuH,EAAE,KAAK,EAAE,QAAQ,EAAE;IACvL,EAAE,GAAG,EAAE,oBAAoB,EAAY,IAAI,EAAE,iKAAiK,EAAE,KAAK,EAAE,QAAQ,EAAE;IACjO,EAAE,GAAG,EAAE,SAAS,EAAuB,IAAI,EAAE,+JAA+J,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC/N,EAAE,GAAG,EAAE,2BAA2B,EAAK,IAAI,EAAE,+HAA+H,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC/L,EAAE,GAAG,EAAE,8BAA8B,EAAE,IAAI,EAAE,qKAAqK,EAAE,KAAK,EAAE,QAAQ,EAAE;IAErO,EAAE,GAAG,EAAE,cAAc,EAAkB,IAAI,EAAE,mFAAmF,EAAE,KAAK,EAAE,KAAK,EAAE;IAChJ,EAAE,GAAG,EAAE,kBAAkB,EAAc,IAAI,EAAE,wEAAwE,EAAE,KAAK,EAAE,KAAK,EAAE;IACrI,EAAE,GAAG,EAAE,cAAc,EAAkB,IAAI,EAAE,iDAAiD,EAAE,KAAK,EAAE,KAAK,EAAE;IAC9G,EAAE,GAAG,EAAE,wBAAwB,EAAQ,IAAI,EAAE,iFAAiF,EAAE,KAAK,EAAE,KAAK,EAAE;IAE9I,EAAE,GAAG,EAAE,mBAAmB,EAAa,IAAI,EAAE,+EAA+E,EAAE,KAAK,EAAE,UAAU,EAAE;IACjJ,EAAE,GAAG,EAAE,oBAAoB,EAAY,IAAI,EAAE,kEAAkE,EAAE,KAAK,EAAE,UAAU,EAAE;CACrI,CAAC;AAEF,2EAA2E;AAC3E,MAAM,cAAc,GAAyC;IAC3D,GAAG,EAAE;QACH,sDAAsD;QACtD,kEAAkE;QAClE,sEAAsE;QACtE,mEAAmE;QACnE,4EAA4E;KAC7E;IACD,KAAK,EAAE;QACL,uDAAuD;QACvD,kEAAkE;QAClE,qDAAqD;QACrD,iEAAiE;KAClE;IACD,MAAM,EAAE;QACN,+CAA+C;QAC/C,qEAAqE;QACrE,+DAA+D;KAChE;IACD,QAAQ,EAAE;QACR,sCAAsC;QACtC,4DAA4D;QAC5D,2EAA2E;KAC5E;IACD,QAAQ,EAAE;QACR,0DAA0D;QAC1D,kEAAkE;QAClE,yCAAyC;KAC1C;CACF,CAAC;AAEF,kFAAkF;AAClF,MAAM,UAAU,GAAyC;IACvD,GAAG,EAAE,CAAC,kKAAkK,CAAC;IACzK,KAAK,EAAE,CAAC,iJAAiJ,CAAC;CAC3J,CAAC;AAEF,MAAM,MAAM,GAAgB;IAC1B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU;IACzD,eAAe,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU;CAC7D,CAAC;AAEF,SAAS,aAAa,CAAC,OAAoB;IACzC,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACxD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,WAAW,CAAC,KAAgB;IACnC,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9B,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/E,CAAC;IACD,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACvC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QACxC,KAAK,MAAM,EAAE,IAAI,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,aAAa;IACpB,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC,CAAC;IAC9F,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QAC9D,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,MAAM,CAAC,EAAE,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,GAAG,gCAAgC,CAAC,CAAC;IACnF,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,yBAAyB,CAAC,GAAG,4BAA4B,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,+CAA+C,CAAC,CAAC;IAChG,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,GAAG,sCAAsC,CAAC,CAAC;IACzF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,SAAS;IAChB,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC3D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACpD,KAAK,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE;YAAE,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,qGAAqG;AACrG,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAAc;IAC1C,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;IAE9B,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,SAAS,EAAE,CAAC;QACZ,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACvD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC,CAAC;YACxD,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAC9B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CACjF,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,wBAAwB,IAAI,8BAA8B,CAAC,CAAC,CAAC;QACjF,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACtD,IAAI,QAAQ,EAAE,CAAC;QACb,IAAK,MAAmB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5C,WAAW,CAAC,QAAqB,CAAC,CAAC;YACnC,OAAO,CAAC,CAAC;QACX,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,oBAAoB,QAAQ,eAAe,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACnF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,aAAa,EAAE,CAAC;IAChB,OAAO,CAAC,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,12 @@
20
20
  * Non-TTY: approve without --yes refuses (no auto-approve, ever).
21
21
  * READ-ONLY except for approve (which routes through the single applyProposal gate).
22
22
  */
23
+ import type { Proposal } from '../core/types.js';
24
+ /**
25
+ * Build a clean Markdown document for a proposal.
26
+ * Pure function — no side effects, safe to unit-test directly.
27
+ */
28
+ export declare function buildProposalMarkdown(p: Proposal): string;
23
29
  /**
24
30
  * `ashlr inbox [show|approve|reject] [id] [--yes] [--json]`
25
31
  *
package/dist/cli/inbox.js CHANGED
@@ -21,11 +21,71 @@
21
21
  * READ-ONLY except for approve (which routes through the single applyProposal gate).
22
22
  */
23
23
  import { makeColors, pad } from './ui.js';
24
+ let _presentMarkdown;
25
+ async function loadMarkdownModule() {
26
+ if (_presentMarkdown === undefined) {
27
+ try {
28
+ const mod = await import('../core/integrations/markdown.js');
29
+ _presentMarkdown = mod.presentMarkdown;
30
+ }
31
+ catch {
32
+ _presentMarkdown = null;
33
+ }
34
+ }
35
+ return _presentMarkdown ?? null;
36
+ }
37
+ /**
38
+ * Build a clean Markdown document for a proposal.
39
+ * Pure function — no side effects, safe to unit-test directly.
40
+ */
41
+ export function buildProposalMarkdown(p) {
42
+ const lines = [];
43
+ lines.push(`## Metadata\n`);
44
+ lines.push(`| Field | Value |`);
45
+ lines.push(`|-------|-------|`);
46
+ lines.push(`| **Title** | ${p.title} |`);
47
+ lines.push(`| **ID** | \`${p.id}\` |`);
48
+ lines.push(`| **Kind** | ${p.kind} |`);
49
+ lines.push(`| **Status** | ${p.status} |`);
50
+ lines.push(`| **Origin** | ${p.origin} |`);
51
+ if (p.repo)
52
+ lines.push(`| **Repo** | ${p.repo} |`);
53
+ const pRec = p;
54
+ if (pRec['engineModel']) {
55
+ lines.push(`| **Engine** | ${pRec['engineModel']} |`);
56
+ }
57
+ if (pRec['engineTier']) {
58
+ lines.push(`| **Tier** | ${pRec['engineTier']} |`);
59
+ }
60
+ lines.push(`| **Created** | ${p.createdAt} |`);
61
+ if (p.decidedAt)
62
+ lines.push(`| **Decided** | ${p.decidedAt} |`);
63
+ if (p.sandboxId)
64
+ lines.push(`| **Sandbox** | \`${p.sandboxId}\` |`);
65
+ lines.push(``);
66
+ lines.push(`## Summary\n`);
67
+ lines.push(p.summary);
68
+ if (p.diff) {
69
+ lines.push(``);
70
+ lines.push(`## Diff\n`);
71
+ lines.push('```diff');
72
+ lines.push(p.diff);
73
+ lines.push('```');
74
+ }
75
+ if (p.status === 'pending') {
76
+ lines.push(``);
77
+ lines.push(`## Actions\n`);
78
+ lines.push(`- Approve: \`ashlr inbox approve ${p.id.slice(0, 12)}\``);
79
+ lines.push(`- Reject: \`ashlr inbox reject ${p.id.slice(0, 12)}\``);
80
+ }
81
+ return lines.join('\n');
82
+ }
24
83
  let _listProposals;
25
84
  let _loadProposal;
26
85
  let _setStatus;
27
86
  let _pendingCount;
28
87
  let _applyProposal;
88
+ let _autoMerge;
29
89
  async function loadStoreModule() {
30
90
  if (_listProposals === undefined) {
31
91
  try {
@@ -56,6 +116,18 @@ async function loadApplyModule() {
56
116
  }
57
117
  return _applyProposal !== null;
58
118
  }
119
+ async function loadMergeModule() {
120
+ if (_autoMerge === undefined) {
121
+ try {
122
+ const mod = await import('../core/inbox/merge.js');
123
+ _autoMerge = mod.autoMergeProposal;
124
+ }
125
+ catch {
126
+ _autoMerge = null;
127
+ }
128
+ }
129
+ return _autoMerge !== null;
130
+ }
59
131
  // ---------------------------------------------------------------------------
60
132
  // Formatting helpers
61
133
  // ---------------------------------------------------------------------------
@@ -234,7 +306,7 @@ async function cmdInboxList(jsonMode) {
234
306
  }
235
307
  printTable(pending, tty);
236
308
  printStatusCounts(all, tty);
237
- console.log(col.dim(' Use `ashlr inbox show <id>` for full detail.'));
309
+ console.log(col.dim(' Use `ashlr inbox show <id>` for full detail. Add --open to view in ashlr-md.'));
238
310
  console.log(col.dim(' Use `ashlr inbox approve <id>` to approve and apply.'));
239
311
  console.log(col.dim(' Use `ashlr inbox reject <id>` to discard.'));
240
312
  console.log('');
@@ -252,7 +324,7 @@ function buildCounts(proposals) {
252
324
  // ---------------------------------------------------------------------------
253
325
  // Subcommand: show <id>
254
326
  // ---------------------------------------------------------------------------
255
- async function cmdInboxShow(id, jsonMode) {
327
+ async function cmdInboxShow(id, jsonMode, openMd) {
256
328
  const tty = process.stdout.isTTY === true;
257
329
  const col = makeColors(tty);
258
330
  const storeOk = await loadStoreModule();
@@ -261,10 +333,11 @@ async function cmdInboxShow(id, jsonMode) {
261
333
  return 1;
262
334
  }
263
335
  if (!id) {
264
- console.error(col.red('error: ') + 'Usage: ashlr inbox show <id>');
336
+ console.error(col.red('error: ') + 'Usage: ashlr inbox show <id> [--open]');
265
337
  return 2;
266
338
  }
267
- const p = _loadProposal(id);
339
+ // Resolve by prefix (mirrors approve/reject)
340
+ const p = resolveProposal(id);
268
341
  if (!p) {
269
342
  console.error(col.red('error: ') + `Proposal not found: ${id}`);
270
343
  return 1;
@@ -273,6 +346,20 @@ async function cmdInboxShow(id, jsonMode) {
273
346
  console.log(JSON.stringify(p, null, 2));
274
347
  return 0;
275
348
  }
349
+ // ── M70: open in ashlr-md viewer when --open / --md is set ──────────────
350
+ if (openMd) {
351
+ const presentFn = await loadMarkdownModule();
352
+ if (presentFn) {
353
+ const mdBody = buildProposalMarkdown(p);
354
+ const result = presentFn(p.title, mdBody);
355
+ if (result.rendered && result.path) {
356
+ console.log(col.cyan(' opened in ashlr-md: ') + result.path);
357
+ return 0;
358
+ }
359
+ // rendered:false → fall through to terminal rendering below
360
+ }
361
+ // markdown module unavailable or viewer not installed → terminal fallback
362
+ }
276
363
  const kindColor = KIND_COLORS[p.kind] ?? 'cyan';
277
364
  const statColor = STATUS_COLORS[p.status] ?? 'dim';
278
365
  const kindFn = col[kindColor];
@@ -504,6 +591,87 @@ async function cmdInboxReject(id, jsonMode) {
504
591
  return 0;
505
592
  }
506
593
  // ---------------------------------------------------------------------------
594
+ // Subcommand: automerge <id> (M47 — tiered-trust merge-to-main gate)
595
+ // ---------------------------------------------------------------------------
596
+ /**
597
+ * `ashlr inbox automerge <id>` — attempt an autonomous merge of a frontier
598
+ * proposal to the default branch. This is a thin shell: every safety gate
599
+ * (enabled, frontier merge-authority, risk ≤ maxRisk, full verification, kill
600
+ * switch, enrollment) is enforced inside autoMergeProposal, which NEVER throws
601
+ * and mutates NOTHING on any refusal. No bypass flag is offered here.
602
+ */
603
+ async function cmdInboxAutoMerge(id, jsonMode) {
604
+ const tty = process.stdout.isTTY === true;
605
+ const col = makeColors(tty);
606
+ if (!id) {
607
+ console.error(col.red('error: ') + 'Usage: ashlr inbox automerge <id> [--json]');
608
+ return 2;
609
+ }
610
+ const storeOk = await loadStoreModule();
611
+ if (!storeOk || !_loadProposal || !_listProposals) {
612
+ console.error(col.red('error: ') + 'inbox requires src/core/inbox/store.ts (M23 module not yet built).');
613
+ return 1;
614
+ }
615
+ const p = resolveProposal(id);
616
+ if (!p) {
617
+ if (jsonMode) {
618
+ console.log(JSON.stringify({ ok: false, error: `Proposal not found: ${id}` }));
619
+ }
620
+ else {
621
+ console.error(col.red('error: ') + `Proposal not found: ${id}`);
622
+ }
623
+ return 1;
624
+ }
625
+ const mergeOk = await loadMergeModule();
626
+ if (!mergeOk || !_autoMerge) {
627
+ const msg = 'inbox/merge.ts not yet built (M47 module unavailable).';
628
+ if (jsonMode) {
629
+ console.log(JSON.stringify({ ok: false, error: msg }));
630
+ }
631
+ else {
632
+ console.error(col.red('error: ') + msg);
633
+ }
634
+ return 1;
635
+ }
636
+ // Load the active config so the gate can read cfg.foundry.autoMerge / mergeAuthority.
637
+ let cfg;
638
+ try {
639
+ const { loadConfig } = await import('../core/config.js');
640
+ cfg = loadConfig();
641
+ }
642
+ catch {
643
+ const msg = 'could not load config (src/core/config.ts).';
644
+ if (jsonMode) {
645
+ console.log(JSON.stringify({ ok: false, error: msg }));
646
+ }
647
+ else {
648
+ console.error(col.red('error: ') + msg);
649
+ }
650
+ return 1;
651
+ }
652
+ if (!jsonMode) {
653
+ process.stdout.write(col.dim(' Evaluating auto-merge gates…') + (tty ? '\r' : '\n'));
654
+ }
655
+ const result = await _autoMerge(p.id, cfg);
656
+ if (tty && !jsonMode) {
657
+ process.stdout.write('\x1b[2K\r');
658
+ }
659
+ if (jsonMode) {
660
+ console.log(JSON.stringify(result, null, 2));
661
+ return result.ok ? 0 : 1;
662
+ }
663
+ if (result.merged) {
664
+ console.log(col.green(' ✓ Auto-merged: ') + result.reason);
665
+ if (result.prUrl)
666
+ console.log(col.dim(' PR: ') + result.prUrl);
667
+ console.log('');
668
+ return 0;
669
+ }
670
+ console.error(col.yellow(' ✗ Not merged: ') + result.reason);
671
+ console.log('');
672
+ return 1;
673
+ }
674
+ // ---------------------------------------------------------------------------
507
675
  // ID resolution — accept full id or an unambiguous prefix
508
676
  // ---------------------------------------------------------------------------
509
677
  function resolveProposal(idOrPrefix) {
@@ -541,6 +709,7 @@ export async function cmdInbox(args) {
541
709
  let targetId = '';
542
710
  let yes = false;
543
711
  let jsonMode = false;
712
+ let openMd = false;
544
713
  const positionals = [];
545
714
  for (let i = 0; i < args.length; i++) {
546
715
  const a = args[i];
@@ -550,9 +719,13 @@ export async function cmdInbox(args) {
550
719
  else if (a === '--json') {
551
720
  jsonMode = true;
552
721
  }
722
+ else if (a === '--open' || a === '--md') {
723
+ // M70: open proposal in ashlr-md viewer (show subcommand only)
724
+ openMd = true;
725
+ }
553
726
  else if (a?.startsWith('-')) {
554
727
  console.error(col.red('error: ') + `Unknown flag: ${a}`);
555
- console.error(col.dim('Usage: ashlr inbox [show|approve|reject] [<id>] [--yes] [--json]'));
728
+ console.error(col.dim('Usage: ashlr inbox [show|approve|reject|automerge] [<id>] [--yes] [--json] [--open]'));
556
729
  return 2;
557
730
  }
558
731
  else {
@@ -561,7 +734,7 @@ export async function cmdInbox(args) {
561
734
  }
562
735
  if (positionals.length > 0) {
563
736
  const first = positionals[0];
564
- if (first === 'show' || first === 'approve' || first === 'reject') {
737
+ if (first === 'show' || first === 'approve' || first === 'reject' || first === 'automerge') {
565
738
  subcmd = first;
566
739
  targetId = positionals[1] ?? '';
567
740
  }
@@ -575,14 +748,16 @@ export async function cmdInbox(args) {
575
748
  case 'list':
576
749
  return cmdInboxList(jsonMode);
577
750
  case 'show':
578
- return cmdInboxShow(targetId, jsonMode);
751
+ return cmdInboxShow(targetId, jsonMode, openMd);
579
752
  case 'approve':
580
753
  return cmdInboxApprove(targetId, yes, jsonMode);
581
754
  case 'reject':
582
755
  return cmdInboxReject(targetId, jsonMode);
756
+ case 'automerge':
757
+ return cmdInboxAutoMerge(targetId, jsonMode);
583
758
  default:
584
759
  console.error(col.red('error: ') + `Unknown inbox subcommand: ${subcmd}`);
585
- console.error(col.dim('Usage: ashlr inbox [show|approve|reject] [<id>] [--yes] [--json]'));
760
+ console.error(col.dim('Usage: ashlr inbox [show|approve|reject|automerge] [<id>] [--yes] [--json] [--open]'));
586
761
  return 2;
587
762
  }
588
763
  }