@zhuk/spego 0.6.2 → 0.7.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.7.0] - 2026-05-14
4
+
5
+ ### Changed
6
+ - **CLI output modes**: every command now emits pretty human-friendly output by default and JSON when the global `--json` flag is supplied. Human output uses bordered boxes (`╭─ ─╮`), aligned tables, single-emoji section headers (`📦 📄 🛠️ 🧭 📚 ✅`), and `────` dividers. Errors render as `⚠️ [CODE] message` in human mode and as the existing `{ error: { code, message, details } }` envelope in JSON mode.
7
+ - **`spego commands` and `spego workflows` default-mode flip**: these commands used to print JSON unconditionally; they now print human output by default. Agents and scripts that pipe their stdout MUST pass `--json` to keep getting JSON.
8
+ - **`spego regenerate` → `spego skills`**: renamed for clarity. `spego regenerate` remains as a hidden alias for one minor release with a deprecation warning. Running `spego skills` also cleans up any legacy `spego-regenerate` generated paths.
9
+
10
+ ### Deprecated
11
+ - **`spego view --format <fmt>`**: superseded by the global `--json` flag. Continues to work for one minor release; emits a single `deprecated:` warning line to stderr in human mode. Will be removed in the next minor release.
12
+ - **`spego regenerate`**: renamed to `spego skills`. The hidden alias continues to work for one minor release and emits a deprecation warning in human mode. Will be removed in the next minor release.
13
+
3
14
  ## [0.6.2] - 2026-05-14
4
15
 
5
16
  ### Fixed
package/README.md CHANGED
@@ -22,14 +22,25 @@ spego init --agents claude --demo false
22
22
  | `spego delete --id <uuid>` | Soft-delete (preserves history) |
23
23
  | `spego list` | List artifacts |
24
24
  | `spego view` | Export bundle as markdown or JSON |
25
- | `spego commands` | List command metadata (JSON) |
26
- | `spego workflows` | List workflow skills metadata (JSON) |
27
- | `spego regenerate` | Regenerate agent skill files |
25
+ | `spego commands` | List command metadata |
26
+ | `spego workflows` | List workflow skills metadata |
27
+ | `spego skills` | Regenerate agent skill files |
28
28
  | `spego epics` | List delivery epics |
29
29
  | `spego tasks --change <name>` | List tasks for a change |
30
30
  | `spego index rebuild` | Rebuild SQLite index from files |
31
31
 
32
- All commands accept `--json` for structured output and `--cwd <dir>` to set the project root.
32
+ All commands accept `--cwd <dir>` to set the project root.
33
+
34
+ ### Output modes
35
+
36
+ Every spego command speaks two output modes:
37
+
38
+ - **Human (default)** — pretty, scannable output for terminals. Section headers use a single emoji prefix (`📦 📄 🛠️ 🧭 📚 ✅`), summaries render as bordered boxes (`╭─ … ─╮`), lists render as aligned tables, and `view` separates artifacts with `────` dividers. Errors print as `⚠️ [CODE] message` to stderr.
39
+ - **JSON (opt-in)** — pass the global `--json` flag to get deterministic, decoration-free JSON on stdout. Errors come back as `{ "error": { "code", "message", "details" } }` on stderr.
40
+
41
+ Agents calling spego MUST pass `--json` so they get parseable output. Humans normally do not.
42
+
43
+ The legacy `spego view --format markdown|json` flag is **deprecated** and will be removed in the next minor release. Use the global `--json` flag instead. The old flag still works during the deprecation window and prints a single `deprecated:` warning line to stderr.
33
44
 
34
45
  ## Architecture
35
46
 
@@ -68,7 +79,7 @@ For Claude agent targets, `spego init` generates:
68
79
  - `.claude/skills/spego-<command>/SKILL.md` — skill definitions following Claude Code conventions
69
80
  - `.claude/commands/spego/` — slash command wrappers
70
81
 
71
- Run `spego regenerate` to update generated files without reinitializing the workspace.
82
+ Run `spego skills` to update generated files without reinitializing the workspace.
72
83
 
73
84
  ## Workflow Skills
74
85
 
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Pretty-rendering primitives for the spego CLI human output mode.
3
+ *
4
+ * All functions are pure: string in, string out. They MUST NOT read
5
+ * `process.env`, MUST NOT detect TTY, and MUST NOT emit ANSI color codes.
6
+ * Output is plain text plus a small fixed set of Unicode box-drawing and
7
+ * arrow characters so it stays scannable, copy-pasteable, and stable across
8
+ * terminals.
9
+ */
10
+ /** Truncate `value` to fit within `width` characters, appending `…` when cut. */
11
+ export declare function truncate(value: string, width: number): string;
12
+ /** Right-pad `value` with spaces to `width` characters. Strings longer than `width` are returned unchanged. */
13
+ export declare function padRight(value: string, width: number): string;
14
+ /**
15
+ * Render a bordered key/value summary box using rounded box-drawing characters.
16
+ *
17
+ * ```
18
+ * ╭─ Workspace ─────────────────────────╮
19
+ * │ root /tmp/proj │
20
+ * │ agents claude │
21
+ * ╰─────────────────────────────────────╯
22
+ * ```
23
+ */
24
+ export declare function renderBox(title: string, rows: Array<[string, string]>): string;
25
+ /**
26
+ * Render an aligned table with a header row separated from data rows by `─`.
27
+ *
28
+ * ```
29
+ * type/slug rev title
30
+ * ───────────── ─── ──────────────
31
+ * prd/test-prd 1 Test PRD
32
+ * ```
33
+ *
34
+ * `opts.maxWidth` caps each column width and truncates longer cells with `…`
35
+ * (default 60). An empty `rows` array still renders the header and divider
36
+ * so callers can prepend a "no rows" hint above if they choose.
37
+ */
38
+ export declare function renderTable(columns: string[], rows: string[][], opts?: {
39
+ maxWidth?: number;
40
+ }): string;
41
+ /** Render a single-line section header prefixed by an emoji. */
42
+ export declare function renderHeader(emoji: string, label: string): string;
43
+ /** Render a `─` divider of the given width (default 60). */
44
+ export declare function renderDivider(width?: number): string;
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Pretty-rendering primitives for the spego CLI human output mode.
3
+ *
4
+ * All functions are pure: string in, string out. They MUST NOT read
5
+ * `process.env`, MUST NOT detect TTY, and MUST NOT emit ANSI color codes.
6
+ * Output is plain text plus a small fixed set of Unicode box-drawing and
7
+ * arrow characters so it stays scannable, copy-pasteable, and stable across
8
+ * terminals.
9
+ */
10
+ const DEFAULT_TABLE_MAX_WIDTH = 60;
11
+ /** Truncate `value` to fit within `width` characters, appending `…` when cut. */
12
+ export function truncate(value, width) {
13
+ if (width <= 0)
14
+ return '';
15
+ if (value.length <= width)
16
+ return value;
17
+ if (width === 1)
18
+ return '…';
19
+ return value.slice(0, width - 1) + '…';
20
+ }
21
+ /** Right-pad `value` with spaces to `width` characters. Strings longer than `width` are returned unchanged. */
22
+ export function padRight(value, width) {
23
+ if (value.length >= width)
24
+ return value;
25
+ return value + ' '.repeat(width - value.length);
26
+ }
27
+ /**
28
+ * Render a bordered key/value summary box using rounded box-drawing characters.
29
+ *
30
+ * ```
31
+ * ╭─ Workspace ─────────────────────────╮
32
+ * │ root /tmp/proj │
33
+ * │ agents claude │
34
+ * ╰─────────────────────────────────────╯
35
+ * ```
36
+ */
37
+ export function renderBox(title, rows) {
38
+ const keyWidth = rows.reduce((m, [k]) => Math.max(m, k.length), 0);
39
+ const valueWidth = rows.reduce((m, [, v]) => Math.max(m, v.length), 0);
40
+ // Inner content width: key + 2 spaces + value
41
+ const contentWidth = Math.max(keyWidth + 2 + valueWidth, title.length + 4);
42
+ const innerWidth = contentWidth + 2; // 1 space padding on each side
43
+ // Title row: `╭─ <title> <N×─>╮`. Body row width is `contentWidth + 4`
44
+ // (`│ ` + content + ` │`); title row width is `5 + title.length + N`,
45
+ // so N = contentWidth - title.length - 1 to keep both rows equal.
46
+ const titleLine = `╭─ ${title} ${'─'.repeat(Math.max(0, contentWidth - title.length - 1))}╮`;
47
+ const bottom = `╰${'─'.repeat(innerWidth)}╯`;
48
+ const body = rows
49
+ .map(([k, v]) => {
50
+ const line = `${padRight(k, keyWidth)} ${v}`;
51
+ return `│ ${padRight(line, contentWidth)} │`;
52
+ })
53
+ .join('\n');
54
+ return rows.length === 0 ? `${titleLine}\n${bottom}` : `${titleLine}\n${body}\n${bottom}`;
55
+ }
56
+ /**
57
+ * Render an aligned table with a header row separated from data rows by `─`.
58
+ *
59
+ * ```
60
+ * type/slug rev title
61
+ * ───────────── ─── ──────────────
62
+ * prd/test-prd 1 Test PRD
63
+ * ```
64
+ *
65
+ * `opts.maxWidth` caps each column width and truncates longer cells with `…`
66
+ * (default 60). An empty `rows` array still renders the header and divider
67
+ * so callers can prepend a "no rows" hint above if they choose.
68
+ */
69
+ export function renderTable(columns, rows, opts = {}) {
70
+ const maxWidth = opts.maxWidth ?? DEFAULT_TABLE_MAX_WIDTH;
71
+ const widths = columns.map((col, i) => {
72
+ const dataMax = rows.reduce((m, r) => Math.max(m, (r[i] ?? '').length), 0);
73
+ const target = Math.max(col.length, dataMax);
74
+ return Math.min(target, maxWidth);
75
+ });
76
+ const formatRow = (cells) => widths.map((w, i) => padRight(truncate(cells[i] ?? '', w), w)).join(' ').trimEnd();
77
+ const header = formatRow(columns);
78
+ const divider = widths.map((w) => '─'.repeat(w)).join(' ').trimEnd();
79
+ const body = rows.map(formatRow).join('\n');
80
+ return rows.length === 0 ? `${header}\n${divider}` : `${header}\n${divider}\n${body}`;
81
+ }
82
+ /** Render a single-line section header prefixed by an emoji. */
83
+ export function renderHeader(emoji, label) {
84
+ return `${emoji} ${label}`;
85
+ }
86
+ /** Render a `─` divider of the given width (default 60). */
87
+ export function renderDivider(width = 60) {
88
+ return '─'.repeat(Math.max(1, width));
89
+ }
90
+ //# sourceMappingURL=render.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/cli/render.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAEnC,iFAAiF;AACjF,MAAM,UAAU,QAAQ,CAAC,KAAa,EAAE,KAAa;IACnD,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAC1B,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IACxC,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IAC5B,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;AACzC,CAAC;AAED,+GAA+G;AAC/G,MAAM,UAAU,QAAQ,CAAC,KAAa,EAAE,KAAa;IACnD,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IACxC,OAAO,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAC,KAAa,EAAE,IAA6B;IACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACnE,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACvE,8CAA8C;IAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,GAAG,UAAU,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3E,MAAM,UAAU,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,+BAA+B;IAEpE,uEAAuE;IACvE,sEAAsE;IACtE,kEAAkE;IAClE,MAAM,SAAS,GAAG,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7F,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC;IAE7C,MAAM,IAAI,GAAG,IAAI;SACd,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;QACd,MAAM,IAAI,GAAG,GAAG,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9C,OAAO,KAAK,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC;IAC/C,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,IAAI,KAAK,MAAM,EAAE,CAAC;AAC5F,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,WAAW,CACzB,OAAiB,EACjB,IAAgB,EAChB,OAA8B,EAAE;IAEhC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,uBAAuB,CAAC;IAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,CAAC,KAAe,EAAU,EAAE,CAC5C,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IAEtF,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IACtE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE5C,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,OAAO,KAAK,IAAI,EAAE,CAAC;AACxF,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,YAAY,CAAC,KAAa,EAAE,KAAa;IACvD,OAAO,GAAG,KAAK,IAAI,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,aAAa,CAAC,QAAgB,EAAE;IAC9C,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AACxC,CAAC"}
package/dist/cli.js CHANGED
@@ -13,16 +13,26 @@ import { generateAll } from './generator/index.js';
13
13
  import { resolveWorkspacePaths } from './workspace/paths.js';
14
14
  import { readConfig } from './workspace/config.js';
15
15
  import { resolveAdapter } from './delivery/index.js';
16
+ import { renderBox, renderTable, renderHeader, renderDivider } from './cli/render.js';
16
17
  import pkg from '../package.json' with { type: 'json' };
18
+ // ---------- output helpers ----------
19
+ function emitJson(payload) {
20
+ process.stdout.write(`${JSON.stringify(payload, null, 2)}\n`);
21
+ }
22
+ function emitHuman(text) {
23
+ process.stdout.write(text.endsWith('\n') ? text : `${text}\n`);
24
+ }
17
25
  function output(json, payload, human) {
18
26
  if (json) {
19
- process.stdout.write(`${JSON.stringify(payload, null, 2)}\n`);
20
- }
21
- else if (human) {
22
- process.stdout.write(`${human()}\n`);
27
+ emitJson(payload);
23
28
  }
24
29
  else {
25
- process.stdout.write(`${JSON.stringify(payload, null, 2)}\n`);
30
+ emitHuman(human());
31
+ }
32
+ }
33
+ function deprecate(json, message) {
34
+ if (!json) {
35
+ process.stderr.write(`deprecated: ${message}\n`);
26
36
  }
27
37
  }
28
38
  async function readBodyOption(opts) {
@@ -30,21 +40,71 @@ async function readBodyOption(opts) {
30
40
  return fs.readFile(opts.bodyFile, 'utf8');
31
41
  return opts.body;
32
42
  }
33
- function renderEpic(epic) {
34
- const progress = epic.taskCount != null ? ` (${epic.tasksDone ?? 0}/${epic.taskCount} tasks)` : '';
35
- return `- **${epic.externalId}** [${epic.status}]${progress}\n title: ${epic.title}\n source: ${epic.sourcePath}`;
43
+ // ---------- per-domain renderers ----------
44
+ function renderEpicRow(epic) {
45
+ const progress = epic.taskCount != null ? `${epic.tasksDone ?? 0}/${epic.taskCount}` : '—';
46
+ return [epic.externalId, epic.status, progress, epic.title];
47
+ }
48
+ function renderTaskRow(task) {
49
+ return [task.status === 'done' ? '[x]' : '[ ]', task.title];
50
+ }
51
+ function renderArtifactHeader(fm) {
52
+ return `📄 ${fm.type}/${fm.slug} rev ${fm.revision} (${fm.id})`;
53
+ }
54
+ /**
55
+ * Insert `─` dividers between consecutive artifact sections in a markdown
56
+ * bundle. We mark a section by `## ` at the start of a line; the first
57
+ * occurrence is preserved as-is, every subsequent occurrence is prefixed
58
+ * with `\n<divider>\n\n`.
59
+ */
60
+ function intersperseBundleDividers(markdown) {
61
+ const lines = markdown.split('\n');
62
+ const out = [];
63
+ let seenFirstSection = false;
64
+ const divider = renderDivider();
65
+ for (const line of lines) {
66
+ if (line.startsWith('## ')) {
67
+ if (seenFirstSection) {
68
+ out.push('', divider, '');
69
+ }
70
+ seenFirstSection = true;
71
+ }
72
+ out.push(line);
73
+ }
74
+ return out.join('\n');
75
+ }
76
+ function renderCommandsHuman() {
77
+ const order = ['workspace', 'artifact', 'view', 'planning'];
78
+ const titles = {
79
+ workspace: 'Workspace',
80
+ artifact: 'Artifacts',
81
+ view: 'View',
82
+ planning: 'Planning',
83
+ };
84
+ const sections = order
85
+ .map((cat) => {
86
+ const items = COMMAND_REGISTRY.filter((c) => c.category === cat);
87
+ if (items.length === 0)
88
+ return '';
89
+ const table = renderTable(['name', 'description'], items.map((c) => [c.name, c.description]));
90
+ return `${titles[cat]}\n${table}`;
91
+ })
92
+ .filter((s) => s.length > 0);
93
+ return [renderHeader('🛠️', 'Commands'), '', sections.join('\n\n')].join('\n');
36
94
  }
37
- function renderTask(task) {
38
- const check = task.status === 'done' ? 'x' : ' ';
39
- return `- [${check}] ${task.title}`;
95
+ function renderWorkflowsHuman() {
96
+ const rows = WORKFLOW_REGISTRY.map((w) => [w.name, String(w.phases.length), w.description]);
97
+ const table = renderTable(['name', 'phases', 'description'], rows, { maxWidth: 80 });
98
+ return [renderHeader('🧭', 'Workflows'), '', table].join('\n');
40
99
  }
100
+ // ---------- error rendering ----------
41
101
  function fail(err, json) {
42
102
  if (err instanceof SpegoError) {
43
103
  if (json) {
44
104
  process.stderr.write(`${JSON.stringify({ error: err.toJSON() }, null, 2)}\n`);
45
105
  }
46
106
  else {
47
- process.stderr.write(`error: [${err.code}] ${err.message}\n`);
107
+ process.stderr.write(`⚠️ [${err.code}] ${err.message}\n`);
48
108
  }
49
109
  process.exit(2);
50
110
  }
@@ -52,7 +112,7 @@ function fail(err, json) {
52
112
  process.stderr.write(`${JSON.stringify({ error: { code: 'INTERNAL', message: err.message } }, null, 2)}\n`);
53
113
  }
54
114
  else {
55
- process.stderr.write(`error: ${err.message}\n`);
115
+ process.stderr.write(`⚠️ [INTERNAL] ${err.message}\n`);
56
116
  }
57
117
  process.exit(1);
58
118
  }
@@ -61,7 +121,7 @@ export function buildProgram() {
61
121
  program
62
122
  .name('spego')
63
123
  .description('Agent-first product orchestration: artifact engine')
64
- .option('--json', 'emit JSON output', false)
124
+ .option('--json', 'emit JSON output (deterministic, decoration-free)', false)
65
125
  .version(pkg.version);
66
126
  program.configureOutput({
67
127
  writeErr: (str) => {
@@ -76,18 +136,25 @@ export function buildProgram() {
76
136
  if (json) {
77
137
  process.stderr.write(`${JSON.stringify({ error: { code: 'VALIDATION_FAILED', message: err.message } }, null, 2)}\n`);
78
138
  }
139
+ else {
140
+ process.stderr.write(`⚠️ [VALIDATION_FAILED] ${err.message}\n`);
141
+ }
79
142
  process.exit(2);
80
143
  });
144
+ // ---------- meta: commands ----------
81
145
  program
82
146
  .command('commands')
83
- .description('List available spego commands with metadata (JSON)')
147
+ .description('List available spego commands with metadata')
84
148
  .action(() => {
85
- process.stdout.write(JSON.stringify(COMMAND_REGISTRY, null, 2) + '\n');
149
+ const json = program.opts().json;
150
+ output(json, COMMAND_REGISTRY, renderCommandsHuman);
86
151
  });
152
+ // ---------- meta: workflows ----------
87
153
  program
88
154
  .command('workflows')
89
- .description('List available workflow skills (JSON)')
155
+ .description('List available workflow skills')
90
156
  .action(() => {
157
+ const json = program.opts().json;
91
158
  const entries = WORKFLOW_REGISTRY.map((w) => ({
92
159
  name: w.name,
93
160
  description: w.description,
@@ -96,7 +163,7 @@ export function buildProgram() {
96
163
  inputs: w.inputs,
97
164
  outputs: w.outputs,
98
165
  }));
99
- process.stdout.write(JSON.stringify(entries, null, 2) + '\n');
166
+ output(json, entries, renderWorkflowsHuman);
100
167
  });
101
168
  // ---------- init ----------
102
169
  program
@@ -115,15 +182,19 @@ export function buildProgram() {
115
182
  demo: opts.demo === 'true',
116
183
  force: opts.force,
117
184
  });
118
- output(json, summary, () => [
119
- summary.alreadyInitialized
120
- ? `Workspace already initialized at ${summary.workspaceRoot}`
121
- : `Initialized spego workspace at ${summary.workspaceRoot}`,
122
- ` config: ${summary.configPath}`,
123
- ` artifacts: ${summary.artifactsRoot}`,
124
- ` index: ${summary.indexPath}`,
125
- ` agents: ${summary.config.agents.join(', ')}`,
126
- ].join('\n'));
185
+ output(json, summary, () => {
186
+ const headerLabel = summary.alreadyInitialized
187
+ ? 'Workspace already initialized'
188
+ : 'Initialized spego workspace';
189
+ const box = renderBox('Workspace', [
190
+ ['root', summary.workspaceRoot],
191
+ ['config', summary.configPath],
192
+ ['artifacts', summary.artifactsRoot],
193
+ ['index', summary.indexPath],
194
+ ['agents', summary.config.agents.join(', ')],
195
+ ]);
196
+ return `${renderHeader('📦', headerLabel)}\n${box}`;
197
+ });
127
198
  }
128
199
  catch (err) {
129
200
  fail(err, json);
@@ -138,9 +209,18 @@ export function buildProgram() {
138
209
  const json = program.opts().json;
139
210
  try {
140
211
  const status = await workspaceStatus(opts.cwd);
141
- output(json, status, () => status.initialized
142
- ? `Workspace ready at ${status.workspaceRoot}\n agents: ${status.agents?.join(', ') ?? '(none)'}`
143
- : `No spego workspace found in ${status.projectRoot}.\nRun: ${status.initCommand}`);
212
+ output(json, status, () => {
213
+ if (!status.initialized) {
214
+ return `No spego workspace; run: spego init`;
215
+ }
216
+ const box = renderBox('Workspace status', [
217
+ ['root', status.workspaceRoot ?? ''],
218
+ ['agents', status.agents?.join(', ') ?? '(none)'],
219
+ ['artifacts', status.artifactsRoot ?? ''],
220
+ ['index', status.indexPath ?? ''],
221
+ ]);
222
+ return `${renderHeader('📦', 'Workspace ready')}\n${box}`;
223
+ });
144
224
  }
145
225
  catch (err) {
146
226
  fail(err, json);
@@ -185,7 +265,7 @@ export function buildProgram() {
185
265
  revision: record.frontmatter.revision,
186
266
  path: record.path,
187
267
  markdown: renderArtifactFile(record.frontmatter, record.body),
188
- }, () => `Created ${record.frontmatter.type}/${record.frontmatter.slug} (${record.frontmatter.id})\n path: ${record.path}`);
268
+ }, () => `✨ Created ${record.frontmatter.type}/${record.frontmatter.slug} rev ${record.frontmatter.revision}\n path: ${record.path}`);
189
269
  }
190
270
  catch (err) {
191
271
  fail(err, json);
@@ -210,9 +290,10 @@ export function buildProgram() {
210
290
  try {
211
291
  let record;
212
292
  if (opts.id) {
213
- record = opts.revision !== undefined
214
- ? await engine.readRevision(opts.id, Number(opts.revision))
215
- : await engine.readById(opts.id);
293
+ record =
294
+ opts.revision !== undefined
295
+ ? await engine.readRevision(opts.id, Number(opts.revision))
296
+ : await engine.readById(opts.id);
216
297
  }
217
298
  else if (opts.type && opts.slug) {
218
299
  record = await engine.readByTypeSlug(opts.type, opts.slug);
@@ -223,11 +304,7 @@ export function buildProgram() {
223
304
  else {
224
305
  throw new SpegoError('VALIDATION_FAILED', 'Provide --id, --type and --slug, or --path');
225
306
  }
226
- output(json, {
227
- frontmatter: record.frontmatter,
228
- body: record.body,
229
- path: record.path,
230
- }, () => `# ${record.frontmatter.title}\n\n${record.body}`);
307
+ output(json, { frontmatter: record.frontmatter, body: record.body, path: record.path }, () => `${renderArtifactHeader(record.frontmatter)}\n${renderDivider()}\n${record.body}`);
231
308
  }
232
309
  catch (err) {
233
310
  fail(err, json);
@@ -262,11 +339,7 @@ export function buildProgram() {
262
339
  if (opts.expectedRevision !== undefined)
263
340
  patch.expectedRevision = Number(opts.expectedRevision);
264
341
  const record = await engine.update(opts.id, patch);
265
- output(json, {
266
- id: record.frontmatter.id,
267
- revision: record.frontmatter.revision,
268
- path: record.path,
269
- }, () => `# ${record.frontmatter.title}\n\n${record.body}`);
342
+ output(json, { id: record.frontmatter.id, revision: record.frontmatter.revision, path: record.path }, () => `${renderArtifactHeader(record.frontmatter)}\n${renderDivider()}\n${record.body}`);
270
343
  }
271
344
  catch (err) {
272
345
  fail(err, json);
@@ -290,7 +363,7 @@ export function buildProgram() {
290
363
  id: record.frontmatter.id,
291
364
  deletedAt: record.frontmatter.deletedAt,
292
365
  revision: record.frontmatter.revision,
293
- }, () => `Deleted ${record.frontmatter.id} at ${record.frontmatter.deletedAt}`);
366
+ }, () => `🗑 Deleted ${record.frontmatter.id} at ${record.frontmatter.deletedAt}`);
294
367
  }
295
368
  catch (err) {
296
369
  fail(err, json);
@@ -311,11 +384,19 @@ export function buildProgram() {
311
384
  const engine = await ArtifactEngine.open({ projectRoot: opts.cwd }).catch((err) => fail(err, json));
312
385
  try {
313
386
  const items = engine.list({ type: opts.type, includeDeleted: opts.includeDeleted });
314
- output(json, items, () => items.length === 0
315
- ? 'No artifacts.'
316
- : items
317
- .map((a) => `${a.type}/${a.slug} rev ${a.revision} ${a.deletedAt ? '[deleted] ' : ''}${a.title} (${a.id})`)
318
- .join('\n'));
387
+ output(json, items, () => {
388
+ if (items.length === 0)
389
+ return 'No artifacts.';
390
+ const rows = items.map((a) => [
391
+ `${a.type}/${a.slug}`,
392
+ String(a.revision),
393
+ a.deletedAt ? 'deleted' : 'active',
394
+ a.title,
395
+ a.id,
396
+ ]);
397
+ const table = renderTable(['type/slug', 'rev', 'status', 'title', 'id'], rows);
398
+ return `${renderHeader('📦', 'Artifacts')}\n${table}`;
399
+ });
319
400
  }
320
401
  catch (err) {
321
402
  fail(err, json);
@@ -327,16 +408,21 @@ export function buildProgram() {
327
408
  // ---------- view ----------
328
409
  program
329
410
  .command('view')
330
- .description('Export artifact bundle as markdown (default) or JSON')
411
+ .description('Export artifact bundle as markdown (default) or JSON via --json')
331
412
  .option('--type <type>', 'filter by type')
332
413
  .option('--id <id>', 'limit to a single artifact')
333
414
  .option('--revision <n>', 'specific revision (requires --id)')
334
415
  .option('--include-deleted', 'include soft-deleted artifacts', false)
335
- .option('--format <fmt>', 'markdown | json', 'markdown')
416
+ .option('--format <fmt>', '[deprecated] markdown | json — use the global --json flag instead')
336
417
  .option('--cwd <dir>', 'project root')
337
418
  .action(async (opts) => {
338
- const json = program.opts().json || opts.format === 'json';
339
- const engine = await ArtifactEngine.open({ projectRoot: opts.cwd }).catch((err) => fail(err, json));
419
+ const globalJson = program.opts().json;
420
+ // Deprecation: --format is still honored but warns in human mode.
421
+ if (opts.format !== undefined) {
422
+ deprecate(globalJson, "--format is deprecated; use the global --json flag");
423
+ }
424
+ const wantJson = globalJson || opts.format === 'json';
425
+ const engine = await ArtifactEngine.open({ projectRoot: opts.cwd }).catch((err) => fail(err, wantJson));
340
426
  try {
341
427
  const view = await viewArtifacts(engine, {
342
428
  type: opts.type,
@@ -344,15 +430,16 @@ export function buildProgram() {
344
430
  revision: opts.revision !== undefined ? Number(opts.revision) : undefined,
345
431
  includeDeleted: opts.includeDeleted,
346
432
  });
347
- if (opts.format === 'json' || program.opts().json) {
348
- process.stdout.write(`${JSON.stringify(view.json, null, 2)}\n`);
433
+ if (wantJson) {
434
+ emitJson(view.json);
349
435
  }
350
436
  else {
351
- process.stdout.write(view.markdown.content);
437
+ const body = intersperseBundleDividers(view.markdown.content);
438
+ process.stdout.write(`${renderHeader('📦', 'Artifact bundle')}\n${body}`);
352
439
  }
353
440
  }
354
441
  catch (err) {
355
- fail(err, json);
442
+ fail(err, wantJson);
356
443
  }
357
444
  finally {
358
445
  engine.close();
@@ -360,21 +447,45 @@ export function buildProgram() {
360
447
  });
361
448
  // ---------- index rebuild ----------
362
449
  const indexCmd = program.command('index').description('Index maintenance');
363
- // ---------- regenerate ----------
450
+ // ---------- skills ----------
451
+ async function runSkillsCommand(json, cwd) {
452
+ const projectRoot = path.resolve(cwd ?? process.cwd());
453
+ const wsPaths = resolveWorkspacePaths(projectRoot);
454
+ const config = await readConfig(wsPaths.configPath);
455
+ const reports = await generateAll(projectRoot, config.agents);
456
+ output(json, reports, () => {
457
+ const lines = [renderHeader('🛠️', 'Skill regeneration'), ''];
458
+ for (const r of reports) {
459
+ lines.push(`[${r.target}]`);
460
+ for (const f of r.files) {
461
+ lines.push(` ${f.action} ${f.path}`);
462
+ }
463
+ }
464
+ return lines.join('\n');
465
+ });
466
+ }
364
467
  program
365
- .command('regenerate')
468
+ .command('skills')
366
469
  .description('Regenerate agent skill and command files')
367
470
  .option('--cwd <dir>', 'project root')
368
471
  .action(async (opts) => {
369
472
  const json = program.opts().json;
370
473
  try {
371
- const projectRoot = path.resolve(opts.cwd ?? process.cwd());
372
- const wsPaths = resolveWorkspacePaths(projectRoot);
373
- const config = await readConfig(wsPaths.configPath);
374
- const reports = await generateAll(projectRoot, config.agents);
375
- output(json, reports, () => reports
376
- .flatMap((r) => r.files.map((f) => `[${r.target}] ${f.action}: ${f.path}`))
377
- .join('\n'));
474
+ await runSkillsCommand(json, opts.cwd);
475
+ }
476
+ catch (err) {
477
+ fail(err, json);
478
+ }
479
+ });
480
+ program
481
+ .command('regenerate', { hidden: true })
482
+ .description('Regenerate agent skill and command files')
483
+ .option('--cwd <dir>', 'project root')
484
+ .action(async (opts) => {
485
+ const json = program.opts().json;
486
+ deprecate(json, "'spego regenerate' is now 'spego skills'");
487
+ try {
488
+ await runSkillsCommand(json, opts.cwd);
378
489
  }
379
490
  catch (err) {
380
491
  fail(err, json);
@@ -399,13 +510,19 @@ export function buildProgram() {
399
510
  const adapter = resolveAdapter(projectRoot, config);
400
511
  if (opts.change) {
401
512
  const epic = await adapter.getEpic(opts.change);
402
- output(json, epic, () => renderEpic(epic));
513
+ output(json, epic, () => {
514
+ const table = renderTable(['id', 'status', 'progress', 'title'], [renderEpicRow(epic)]);
515
+ return `${renderHeader('📚', `Epic (${adapter.name})`)}\n${table}`;
516
+ });
403
517
  }
404
518
  else {
405
519
  const epics = await adapter.listEpics();
406
- output(json, epics, () => epics.length === 0
407
- ? 'No epics.'
408
- : `## Epics (${adapter.name})\n\n` + epics.map(renderEpic).join('\n\n'));
520
+ output(json, epics, () => {
521
+ if (epics.length === 0)
522
+ return 'No epics.';
523
+ const table = renderTable(['id', 'status', 'progress', 'title'], epics.map(renderEpicRow));
524
+ return `${renderHeader('📚', `Epics (${adapter.name})`)}\n${table}`;
525
+ });
409
526
  }
410
527
  }
411
528
  catch (err) {
@@ -432,13 +549,19 @@ export function buildProgram() {
432
549
  const adapter = resolveAdapter(projectRoot, config);
433
550
  if (opts.task) {
434
551
  const task = await adapter.getTask(opts.change, opts.task);
435
- output(json, task, () => renderTask(task));
552
+ output(json, task, () => {
553
+ const table = renderTable(['done', 'title'], [renderTaskRow(task)]);
554
+ return `${renderHeader('✅', `Task: ${opts.change} (${adapter.name})`)}\n${table}`;
555
+ });
436
556
  }
437
557
  else {
438
558
  const tasks = await adapter.listTasks(opts.change);
439
- output(json, tasks, () => tasks.length === 0
440
- ? `No tasks for ${opts.change}.`
441
- : `## Tasks: ${opts.change} (${adapter.name})\n\n` + tasks.map(renderTask).join('\n'));
559
+ output(json, tasks, () => {
560
+ if (tasks.length === 0)
561
+ return `No tasks for ${opts.change}.`;
562
+ const table = renderTable(['done', 'title'], tasks.map(renderTaskRow));
563
+ return `${renderHeader('✅', `Tasks: ${opts.change} (${adapter.name})`)}\n${table}`;
564
+ });
442
565
  }
443
566
  }
444
567
  catch (err) {
@@ -454,12 +577,17 @@ export function buildProgram() {
454
577
  const engine = await ArtifactEngine.open({ projectRoot: opts.cwd }).catch((err) => fail(err, json));
455
578
  try {
456
579
  const report = await engine.rebuildIndex();
457
- output(json, report, () => [
458
- `Scanned ${report.scannedFiles} file(s); indexed ${report.indexedArtifacts}.`,
459
- ...(report.invalidFiles.length
460
- ? ['Invalid files:', ...report.invalidFiles.map((i) => ` ${i.path}: ${i.error}`)]
461
- : []),
462
- ].join('\n'));
580
+ output(json, report, () => {
581
+ const summary = renderBox('Index rebuild', [
582
+ ['scanned', String(report.scannedFiles)],
583
+ ['indexed', String(report.indexedArtifacts)],
584
+ ['invalid', String(report.invalidFiles.length)],
585
+ ]);
586
+ if (report.invalidFiles.length === 0)
587
+ return summary;
588
+ const table = renderTable(['path', 'error'], report.invalidFiles.map((i) => [i.path, i.error]), { maxWidth: 80 });
589
+ return `${summary}\n\nInvalid files:\n${table}`;
590
+ });
463
591
  }
464
592
  catch (err) {
465
593
  fail(err, json);
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,GAAG,MAAM,iBAAiB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAExD,uCAAuC;AAEvC,SAAS,QAAQ,CAAC,OAAgB;IAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,MAAM,CAAC,IAAa,EAAE,OAAgB,EAAE,KAAmB;IAClE,IAAI,IAAI,EAAE,CAAC;QACT,QAAQ,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAa,EAAE,OAAe;IAC/C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,OAAO,IAAI,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,IAG7B;IACC,IAAI,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC7D,OAAO,IAAI,CAAC,IAAI,CAAC;AACnB,CAAC;AAED,6CAA6C;AAE7C,SAAS,aAAa,CAAC,IAAsB;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3F,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,aAAa,CAAC,IAAyB;IAC9C,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,oBAAoB,CAAC,EAAgE;IAC5F,OAAO,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,QAAQ,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC;AACpE,CAAC;AAED;;;;;GAKG;AACH,SAAS,yBAAyB,CAAC,QAAgB;IACjD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,IAAI,gBAAgB,EAAE,CAAC;gBACrB,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;YAC5B,CAAC;YACD,gBAAgB,GAAG,IAAI,CAAC;QAC1B,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,mBAAmB;IAC1B,MAAM,KAAK,GAAmC,CAAC,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAC5F,MAAM,MAAM,GAA4C;QACtD,SAAS,EAAE,WAAW;QACtB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,UAAU;KACrB,CAAC;IACF,MAAM,QAAQ,GAAG,KAAK;SACnB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACX,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC;QACjE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC9F,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC;IACpC,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/B,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,oBAAoB;IAC3B,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IAC5F,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IACrF,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjE,CAAC;AAED,wCAAwC;AAExC,SAAS,IAAI,CAAC,GAAY,EAAE,IAAa;IACvC,IAAI,GAAG,YAAY,UAAU,EAAE,CAAC;QAC9B,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QAChF,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAG,GAAa,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CACjG,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAmB,GAAa,CAAC,OAAO,IAAI,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,OAAO;SACJ,IAAI,CAAC,OAAO,CAAC;SACb,WAAW,CAAC,oDAAoD,CAAC;SACjE,MAAM,CAAC,QAAQ,EAAE,mDAAmD,EAAE,KAAK,CAAC;SAC5E,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAExB,OAAO,CAAC,eAAe,CAAC;QACtB,QAAQ,EAAE,CAAC,GAAW,EAAE,EAAE;YACxB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;YAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE;QAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAC/F,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,uCAAuC;IACvC,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,6CAA6C,CAAC;SAC1D,MAAM,CAAC,GAAG,EAAE;QACX,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEL,wCAAwC;IACxC,OAAO;SACJ,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,gCAAgC,CAAC;SAC7C,MAAM,CAAC,GAAG,EAAE;QACX,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5C,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,OAAO,EAAE,CAAC,CAAC,OAAO;SACnB,CAAC,CAAC,CAAC;QACJ,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,oBAAoB,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEL,6BAA6B;IAC7B,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,iBAAiB,EAAE,0CAA0C,EAAE,QAAQ,CAAC;SAC/E,MAAM,CAAC,eAAe,EAAE,kCAAkC,EAAE,OAAO,CAAC;SACpE,MAAM,CAAC,SAAS,EAAE,8CAA8C,EAAE,KAAK,CAAC;SACxE,MAAM,CAAC,aAAa,EAAE,8CAA8C,CAAC;SACrE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC;gBAClC,WAAW,EAAE,IAAI,CAAC,GAAG;gBACrB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC3E,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,MAAM;gBAC1B,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;gBACzB,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB;oBAC5C,CAAC,CAAC,+BAA+B;oBACjC,CAAC,CAAC,6BAA6B,CAAC;gBAClC,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,EAAE;oBACjC,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC;oBAC/B,CAAC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC;oBAC9B,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC;oBACpC,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC;oBAC5B,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC7C,CAAC,CAAC;gBACH,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,KAAK,GAAG,EAAE,CAAC;YACtD,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,+BAA+B;IAC/B,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,yBAAyB,CAAC;SACtC,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE;gBACxB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;oBACxB,OAAO,qCAAqC,CAAC;gBAC/C,CAAC;gBACD,MAAM,GAAG,GAAG,SAAS,CAAC,kBAAkB,EAAE;oBACxC,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC;oBACpC,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC;oBACjD,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC;oBACzC,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;iBAClC,CAAC,CAAC;gBACH,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,iBAAiB,CAAC,KAAK,GAAG,EAAE,CAAC;YAC5D,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,+BAA+B;IAC/B,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,oBAAoB,CAAC;SACjC,cAAc,CAAC,eAAe,EAAE,0CAA0C,CAAC;SAC3E,cAAc,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;SACnD,MAAM,CAAC,eAAe,EAAE,wBAAwB,CAAC;SACjD,MAAM,CAAC,eAAe,EAAE,sBAAsB,CAAC;SAC/C,MAAM,CAAC,oBAAoB,EAAE,kDAAkD,CAAC;SAChF,MAAM,CAAC,eAAe,EAAE,yBAAyB,EAAE,IAAI,CAAC;SACxD,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAChF,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAChB,CAAC;QACF,IAAI,CAAC;YACH,MAAM,IAAI,GACR,IAAI,CAAC,QAAQ,KAAK,GAAG;gBACnB,CAAC,CAAC,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC5C,IAAI,GAAG,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;oBAClC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC;oBACpD,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC5C,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBACpC,CAAC,CAAC;gBACJ,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACzC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI;gBACJ,IAAI;aACL,CAAC,CAAC;YACH,MAAM,CACJ,IAAI,EACJ;gBACE,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE;gBACzB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI;gBAC7B,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI;gBAC7B,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ;gBACrC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ,EAAE,kBAAkB,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC;aAC9D,EACD,GAAG,EAAE,CACH,aAAa,MAAM,CAAC,WAAW,CAAC,IAAI,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,SAAS,MAAM,CAAC,WAAW,CAAC,QAAQ,cAAc,MAAM,CAAC,IAAI,EAAE,CACjI,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,6BAA6B;IAC7B,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,qCAAqC,CAAC;SAClD,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC;SAClC,MAAM,CAAC,eAAe,EAAE,6BAA6B,CAAC;SACtD,MAAM,CAAC,eAAe,EAAE,6BAA6B,CAAC;SACtD,MAAM,CAAC,eAAe,EAAE,qCAAqC,CAAC;SAC9D,MAAM,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;SACpD,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAChF,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAChB,CAAC;QACF,IAAI,CAAC;YACH,IAAI,MAAM,CAAC;YACX,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;gBACZ,MAAM;oBACJ,IAAI,CAAC,QAAQ,KAAK,SAAS;wBACzB,CAAC,CAAC,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAC3D,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvC,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBAClC,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7D,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACrB,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,UAAU,CAAC,mBAAmB,EAAE,4CAA4C,CAAC,CAAC;YAC1F,CAAC;YACD,MAAM,CACJ,IAAI,EACJ,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EACzE,GAAG,EAAE,CAAC,GAAG,oBAAoB,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,aAAa,EAAE,KAAK,MAAM,CAAC,IAAI,EAAE,CACxF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,+BAA+B;IAC/B,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,kCAAkC,CAAC;SAC/C,cAAc,CAAC,WAAW,EAAE,aAAa,CAAC;SAC1C,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC;SACtC,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC;SAC5C,MAAM,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;SACnD,MAAM,CAAC,eAAe,EAAE,gCAAgC,CAAC;SACzD,MAAM,CAAC,yBAAyB,EAAE,oDAAoD,CAAC;SACvF,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAChF,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAChB,CAAC;QACF,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,KAAK,GAA4B,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;gBAAE,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACvD,IAAI,IAAI,KAAK,SAAS;gBAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;gBAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChE,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;gBACrC,KAAK,CAAC,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACnD,MAAM,CACJ,IAAI,EACJ,EAAE,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EACvF,GAAG,EAAE,CAAC,GAAG,oBAAoB,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,aAAa,EAAE,KAAK,MAAM,CAAC,IAAI,EAAE,CACxF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,+BAA+B;IAC/B,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,yBAAyB,CAAC;SACtC,cAAc,CAAC,WAAW,EAAE,aAAa,CAAC;SAC1C,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAChF,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAChB,CAAC;QACF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,CACJ,IAAI,EACJ;gBACE,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE;gBACzB,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,SAAS;gBACvC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ;aACtC,EACD,GAAG,EAAE,CAAC,eAAe,MAAM,CAAC,WAAW,CAAC,EAAE,OAAO,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,CAChF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,6BAA6B;IAC7B,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,gBAAgB,CAAC;SAC7B,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC;SACzC,MAAM,CAAC,mBAAmB,EAAE,gCAAgC,EAAE,KAAK,CAAC;SACpE,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAChF,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAChB,CAAC;QACF,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;YACpF,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,eAAe,CAAC;gBAC/C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;oBAC5B,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE;oBACrB,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;oBAClB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;oBAClC,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC,EAAE;iBACL,CAAC,CAAC;gBACH,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;gBAC/E,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,KAAK,KAAK,EAAE,CAAC;YACxD,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,6BAA6B;IAC7B,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,iEAAiE,CAAC;SAC9E,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC;SACzC,MAAM,CAAC,WAAW,EAAE,4BAA4B,CAAC;SACjD,MAAM,CAAC,gBAAgB,EAAE,mCAAmC,CAAC;SAC7D,MAAM,CAAC,mBAAmB,EAAE,gCAAgC,EAAE,KAAK,CAAC;SACpE,MAAM,CAAC,gBAAgB,EAAE,mEAAmE,CAAC;SAC7F,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAClD,kEAAkE;QAClE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,SAAS,CAAC,UAAU,EAAE,oDAAoD,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,QAAQ,GAAG,UAAU,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAChF,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CACpB,CAAC;QACF,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE;gBACvC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;gBACzE,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CAAC,CAAC;YACH,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,yBAAyB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAC9D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,iBAAiB,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACtB,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,sCAAsC;IACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;IAE3E,+BAA+B;IAC/B,KAAK,UAAU,gBAAgB,CAAC,IAAa,EAAE,GAAY;QACzD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;YACzB,MAAM,KAAK,GAAa,CAAC,YAAY,CAAC,KAAK,EAAE,oBAAoB,CAAC,EAAE,EAAE,CAAC,CAAC;YACxE,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC5B,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,0CAA0C,CAAC;SACvD,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,IAAI,CAAC;YACH,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;SACvC,WAAW,CAAC,0CAA0C,CAAC;SACvD,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,SAAS,CAAC,IAAI,EAAE,0CAA0C,CAAC,CAAC;QAC5D,IAAI,CAAC;YACH,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IACL,8BAA8B;IAC9B,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,iCAAiC,CAAC;SAC9C,QAAQ,CAAC,UAAU,EAAE,uBAAuB,CAAC;SAC7C,MAAM,CAAC,iBAAiB,EAAE,2BAA2B,CAAC;SACtD,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;QAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,IAAI,CAAC;YACH,IAAI,MAAM,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChD,MAAM,IAAI,UAAU,CAClB,oBAAoB,EACpB,WAAW,MAAM,8EAA8E,EAC/F,EAAE,eAAe,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,CACvD,CAAC;YACJ,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACpD,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAEpD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAChD,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;oBACtB,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACxF,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,SAAS,OAAO,CAAC,IAAI,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC;gBACrE,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC;gBACxC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;oBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,WAAW,CAAC;oBAC3C,MAAM,KAAK,GAAG,WAAW,CACvB,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,EACrC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CACzB,CAAC;oBACF,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,UAAU,OAAO,CAAC,IAAI,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC;gBACtE,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,8BAA8B;IAC9B,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,8CAA8C,CAAC;SAC3D,QAAQ,CAAC,UAAU,EAAE,uBAAuB,CAAC;SAC7C,cAAc,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;SACzD,MAAM,CAAC,aAAa,EAAE,yBAAyB,CAAC;SAChD,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;QAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,IAAI,CAAC;YACH,IAAI,MAAM,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChD,MAAM,IAAI,UAAU,CAClB,oBAAoB,EACpB,WAAW,MAAM,8EAA8E,EAC/F,EAAE,eAAe,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,CACvD,CAAC;YACJ,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACpD,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAEpD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3D,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;oBACtB,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACpE,OAAO,GAAG,YAAY,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC;gBACpF,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnD,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;oBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,gBAAgB,IAAI,CAAC,MAAM,GAAG,CAAC;oBAC9D,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;oBACvE,OAAO,GAAG,YAAY,CAAC,GAAG,EAAE,UAAU,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC;gBACrF,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,QAAQ;SACL,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,8CAA8C,CAAC;SAC3D,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAChF,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAChB,CAAC;QACF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,EAAE,CAAC;YAC3C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE;gBACxB,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,EAAE;oBACzC,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;oBACxC,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;oBAC5C,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;iBAChD,CAAC,CAAC;gBACH,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,OAAO,CAAC;gBACrD,MAAM,KAAK,GAAG,WAAW,CACvB,CAAC,MAAM,EAAE,OAAO,CAAC,EACjB,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EACjD,EAAE,QAAQ,EAAE,EAAE,EAAE,CACjB,CAAC;gBACF,OAAO,GAAG,OAAO,uBAAuB,KAAK,EAAE,CAAC;YAClD,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IAC7C,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,IAAe,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC"}
@@ -10,7 +10,7 @@ export const COMMAND_REGISTRY = [
10
10
  force: { name: 'force', type: 'boolean', required: false, description: 'Overwrite config without deleting artifacts' },
11
11
  demo: { name: 'demo', type: 'boolean', required: false, description: 'Seed demo artifacts' },
12
12
  },
13
- outputModes: ['json'],
13
+ outputModes: ['markdown', 'json'],
14
14
  },
15
15
  {
16
16
  name: 'create',
@@ -104,6 +104,16 @@ export const COMMAND_REGISTRY = [
104
104
  inputSchema: {},
105
105
  outputModes: ['markdown', 'json'],
106
106
  },
107
+ {
108
+ name: 'skills',
109
+ description: 'Regenerate agent skill and command files',
110
+ slashName: '/spego:skills',
111
+ category: 'workspace',
112
+ inputSchema: {
113
+ cwd: { name: 'cwd', type: 'string', required: false, description: 'Project root' },
114
+ },
115
+ outputModes: ['markdown', 'json'],
116
+ },
107
117
  {
108
118
  name: 'epics',
109
119
  description: 'List epics',
@@ -128,7 +138,7 @@ export const COMMAND_REGISTRY = [
128
138
  slashName: '/spego:workflows',
129
139
  category: 'planning',
130
140
  inputSchema: {},
131
- outputModes: ['json'],
141
+ outputModes: ['markdown', 'json'],
132
142
  },
133
143
  ];
134
144
  export function getCommandByName(name) {
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/commands/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/commands/registry.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,5 @@ import type { TargetGenerator, GenerationReport } from './types.js';
2
2
  export declare class ClaudeGenerator implements TargetGenerator {
3
3
  readonly targetName = "claude";
4
4
  generate(projectRoot: string): Promise<GenerationReport>;
5
+ private cleanupLegacyRegeneratePaths;
5
6
  }
@@ -4,7 +4,7 @@ import { COMMAND_REGISTRY } from '../commands/registry.js';
4
4
  import { WORKFLOW_REGISTRY } from '../workflows/registry.js';
5
5
  import { writeGeneratedFile } from './write.js';
6
6
  import { GENERATOR_VERSION } from './types.js';
7
- import { isLegacySpegoGenerated } from './markers.js';
7
+ import { isLegacySpegoGenerated, isSpegoGenerated } from './markers.js';
8
8
  function toKebab(name) {
9
9
  return name.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`);
10
10
  }
@@ -20,12 +20,12 @@ function renderSkillTemplate(cmd) {
20
20
  `description: ${cmd.description}. Use when the user asks to ${lowerDesc} or mentions "spego ${cmd.name}".`,
21
21
  '---',
22
22
  '',
23
- `Use \`spego ${cmd.name}\` to ${lowerDesc}.`,
23
+ `Use \`spego ${cmd.name} --json\` to ${lowerDesc}. Always pass \`--json\` so the output is parseable.`,
24
24
  '',
25
25
  '## Usage',
26
26
  '',
27
27
  '```bash',
28
- `spego ${cmd.name} [options]`,
28
+ `spego ${cmd.name} --json [options]`,
29
29
  '```',
30
30
  '',
31
31
  '## Options',
@@ -34,7 +34,7 @@ function renderSkillTemplate(cmd) {
34
34
  '',
35
35
  '## Output',
36
36
  '',
37
- `Formats: ${cmd.outputModes.join(', ')}`,
37
+ `Formats: ${cmd.outputModes.join(', ')}. Default is human-readable. Agents MUST pass \`--json\` for parseable output.`,
38
38
  '',
39
39
  '## Safety',
40
40
  '',
@@ -63,7 +63,7 @@ function renderCommandTemplate(cmd) {
63
63
  'Run the following command:',
64
64
  '',
65
65
  '```bash',
66
- `spego ${cmd.name} $ARGUMENTS`,
66
+ `spego ${cmd.name} --json $ARGUMENTS`,
67
67
  '```',
68
68
  '',
69
69
  ].join('\n');
@@ -134,7 +134,7 @@ async function cleanupLegacyFlatSkills(skillsDir) {
134
134
  const content = await fs.readFile(filePath, 'utf8');
135
135
  if (isLegacySpegoGenerated(content)) {
136
136
  await fs.unlink(filePath);
137
- cleaned.push({ path: filePath, action: 'cleaned' });
137
+ cleaned.push({ path: filePath, action: 'removed' });
138
138
  }
139
139
  }
140
140
  return cleaned;
@@ -147,6 +147,8 @@ export class ClaudeGenerator {
147
147
  const commandsDir = path.join(projectRoot, '.claude', 'commands', 'spego');
148
148
  const cleaned = await cleanupLegacyFlatSkills(skillsDir);
149
149
  files.push(...cleaned);
150
+ const legacyCleaned = await this.cleanupLegacyRegeneratePaths(skillsDir, commandsDir);
151
+ files.push(...legacyCleaned);
150
152
  for (const cmd of COMMAND_REGISTRY) {
151
153
  const skillDir = path.join(skillsDir, `spego-${cmd.name}`);
152
154
  const skillPath = path.join(skillDir, 'SKILL.md');
@@ -167,5 +169,29 @@ export class ClaudeGenerator {
167
169
  }
168
170
  return { target: this.targetName, files, version: GENERATOR_VERSION };
169
171
  }
172
+ async cleanupLegacyRegeneratePaths(skillsDir, commandsDir) {
173
+ const cleaned = [];
174
+ const legacyPaths = [
175
+ path.join(skillsDir, 'spego-regenerate', 'SKILL.md'),
176
+ path.join(commandsDir, 'regenerate.md'),
177
+ ];
178
+ for (const filePath of legacyPaths) {
179
+ let content;
180
+ try {
181
+ content = await fs.readFile(filePath, 'utf8');
182
+ }
183
+ catch {
184
+ continue;
185
+ }
186
+ if (isSpegoGenerated(content)) {
187
+ await fs.unlink(filePath);
188
+ cleaned.push({ path: filePath, action: 'removed' });
189
+ }
190
+ else {
191
+ cleaned.push({ path: filePath, action: 'skipped' });
192
+ }
193
+ }
194
+ return cleaned;
195
+ }
170
196
  }
171
197
  //# sourceMappingURL=claude.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/generator/claude.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/generator/claude.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export declare const GENERATOR_VERSION = 1;
2
- export type FileAction = 'created' | 'updated' | 'unchanged' | 'skipped' | 'cleaned';
2
+ export type FileAction = 'created' | 'updated' | 'unchanged' | 'skipped' | 'removed';
3
3
  export interface GeneratedFile {
4
4
  path: string;
5
5
  action: FileAction;
@@ -14,7 +14,7 @@ const BRAINSTORM_PARTY = {
14
14
  { name: 'diverge', instruction: 'Each persona generates at least 5 distinct ideas or perspectives related to the topic. No criticism yet — only expansion. Number each idea for later reference.' },
15
15
  { name: 'challenge', instruction: 'Personas cross-examine each other\'s ideas. The Skeptic leads by attacking the strongest ideas. Each persona must challenge at least one idea from another persona.' },
16
16
  { name: 'converge', instruction: 'Synthesize the strongest ideas into a ranked shortlist. Group related ideas. Eliminate those that don\'t survive challenge. Produce a top-3 to top-5 ranked list with brief rationale for each.' },
17
- { name: 'record', instruction: 'Persist the brainstorm results by running: spego create --type brainstorm --title "<topic> brainstorm" --body "<converged output as markdown>". Optionally follow up with spego create --type prd or spego create --type design for the top-ranked idea.' },
17
+ { name: 'record', instruction: 'Persist the brainstorm results by running: spego --json create --type brainstorm --title "<topic> brainstorm" --body "<converged output as markdown>". Optionally follow up with spego --json create --type prd or spego --json create --type design for the top-ranked idea. Capture the returned `id` so you can chain follow-ups.' },
18
18
  ],
19
19
  inputs: [
20
20
  { name: 'topic', required: true, description: 'The topic or question to brainstorm.' },
@@ -42,11 +42,11 @@ const REVIEW_ADVERSARIAL = {
42
42
  { name: 'Cost', role: 'Cost Analyst', angle: 'Hidden compute/storage costs, over-engineering, unnecessary complexity, cheaper alternatives.' },
43
43
  ],
44
44
  phases: [
45
- { name: 'read', instruction: 'Read the source artifact by running: spego read --id <artifactRef> (or spego read --type <type> --slug <slug>). Every persona reads the full content silently before attacking.' },
45
+ { name: 'read', instruction: 'Read the source artifact by running: spego --json read --id <artifactRef> (or spego --json read --type <type> --slug <slug>). Every persona reads the full content silently before attacking.' },
46
46
  { name: 'attack', instruction: 'Each persona attacks the artifact from their angle. List specific issues with line/section references. Severity-rate each finding: CRITICAL, HIGH, MEDIUM, LOW. No issue is too small — surface everything.' },
47
47
  { name: 'gap-find', instruction: 'Identify unstated assumptions, implicit requirements, and missing sections. For each gap, describe what\'s missing and what could go wrong without it. Check for contradictions between sections.' },
48
48
  { name: 'prioritize', instruction: 'Rank all findings by severity and impact. Group related issues. Produce a prioritized list with: issue, severity, persona who raised it, recommended fix, and estimated effort (S/M/L).' },
49
- { name: 'record', instruction: 'Persist the review results by running: spego create --type qa --title "<artifact name> review" --body "<prioritized findings>" OR spego create --type risk --title "<artifact name> risks" --body "<risk findings>". Optionally follow up with spego create --type decision or spego create --type retro.' },
49
+ { name: 'record', instruction: 'Persist the review results by running: spego --json create --type qa --title "<artifact name> review" --body "<prioritized findings>" OR spego --json create --type risk --title "<artifact name> risks" --body "<risk findings>". Optionally follow up with spego --json create --type decision or spego --json create --type retro. Capture the returned `id` so you can chain follow-ups.' },
50
50
  ],
51
51
  inputs: [
52
52
  { name: 'artifactRef', required: true, description: 'Artifact id, or type:slug reference, of the artifact to review.' },
@@ -73,11 +73,11 @@ const REVIEW_EDGE_CASES = {
73
73
  { name: 'Concurrency-skeptic', role: 'Concurrency Analyst', angle: 'Flags race conditions, missing locks, stale-read scenarios, timeout gaps, and ordering dependencies.' },
74
74
  ],
75
75
  phases: [
76
- { name: 'read', instruction: 'Read the source artifact by running: spego read --id <artifactRef> (or spego read --type <type> --slug <slug>). Every persona reads the full content silently before analysis.' },
76
+ { name: 'read', instruction: 'Read the source artifact by running: spego --json read --id <artifactRef> (or spego --json read --type <type> --slug <slug>). Every persona reads the full content silently before analysis.' },
77
77
  { name: 'enumerate-paths', instruction: 'The Path-tracer systematically traces every branching path in the artifact. For each conditional, switch, or decision point: list the explicit branches AND the implicit "none of the above" branch. Number every path for reference.' },
78
78
  { name: 'derive-edge-classes', instruction: 'For each enumerated path, derive edge classes mechanically: (1) off-by-one: index/counter boundary errors, (2) unguarded input: missing validation or sanitization, (3) missing else/default: unhandled fallthrough, (4) race condition: concurrent access without synchronization, (5) timeout gap: missing or incorrect timeout handling. Tag each path with its applicable edge classes.' },
79
79
  { name: 'filter-handled', instruction: 'Test each edge class against existing guards in the artifact. If the artifact already handles a case (explicit guard, validation, fallback), silently discard it. Report ONLY unhandled cases — this is critical, do not include already-handled paths.' },
80
- { name: 'record', instruction: 'Persist findings by running: spego create --type qa --title "<artifact name> edge-case review" --body "<markdown containing a fenced json block>". The JSON block must be an array of findings, each with fields: location (section/line reference), trigger_condition (what causes this path), guard_snippet (existing guard if any, or "none"), and potential_consequence (what goes wrong). Only include unhandled cases.' },
80
+ { name: 'record', instruction: 'Persist findings by running: spego --json create --type qa --title "<artifact name> edge-case review" --body "<markdown containing a fenced json block>". The JSON block must be an array of findings, each with fields: location (section/line reference), trigger_condition (what causes this path), guard_snippet (existing guard if any, or "none"), and potential_consequence (what goes wrong). Only include unhandled cases.' },
81
81
  ],
82
82
  inputs: [
83
83
  { name: 'artifactRef', required: true, description: 'Artifact id, or type:slug reference, of the artifact to review.' },
@@ -99,10 +99,10 @@ const EDITORIAL_PROSE = {
99
99
  { name: 'Copy-editor', role: 'Clinical Copy Editor', angle: 'Improves clarity, removes ambiguity, tightens prose, fixes grammar, and ensures consistent terminology. Does not question the ideas — only how they are expressed.' },
100
100
  ],
101
101
  phases: [
102
- { name: 'read', instruction: 'Read the source artifact by running: spego read --id <artifactRef> (or spego read --type <type> --slug <slug>). The Copy-editor reads the full content silently.' },
102
+ { name: 'read', instruction: 'Read the source artifact by running: spego --json read --id <artifactRef> (or spego --json read --type <type> --slug <slug>). The Copy-editor reads the full content silently.' },
103
103
  { name: 'clarity-pass', instruction: 'For each paragraph or section, identify: (1) sentences that are ambiguous or could be read multiple ways, (2) unnecessary jargon that could be replaced with plain language, (3) sentences longer than 25 words that could be split, (4) passive voice that could be made active, (5) redundant phrases. List each proposed edit as a diff: show the original text, the proposed replacement, and a one-line reason.' },
104
- { name: 'apply-or-recommend', instruction: 'For each proposed edit: (a) present the diff to the user with the reason, (b) ask for confirmation, (c) if confirmed, apply it by running: spego update --id <source artifact id> --expected-revision <current revision> --body "<updated content>". If the user declines or is unsure, mark it as "recommended only". Always pass --expected-revision to catch concurrent edits. Record both applied and recommended-only edits.' },
105
- { name: 'record', instruction: 'Persist the edit summary by running: spego create --type qa --title "<artifact name> prose edit summary" --body "<markdown listing all edits: applied edits with their diffs and recommended-only edits with their diffs>". This creates a traceable record of what changed and what was recommended but not applied.' },
104
+ { name: 'apply-or-recommend', instruction: 'For each proposed edit: (a) present the diff to the user with the reason, (b) ask for confirmation, (c) if confirmed, apply it by running: spego --json update --id <source artifact id> --expected-revision <current revision> --body "<updated content>". If the user declines or is unsure, mark it as "recommended only". Always pass --expected-revision to catch concurrent edits. Capture the new `revision` from the JSON response for the next edit. Record both applied and recommended-only edits.' },
105
+ { name: 'record', instruction: 'Persist the edit summary by running: spego --json create --type qa --title "<artifact name> prose edit summary" --body "<markdown listing all edits: applied edits with their diffs and recommended-only edits with their diffs>". This creates a traceable record of what changed and what was recommended but not applied.' },
106
106
  ],
107
107
  inputs: [
108
108
  { name: 'artifactRef', required: true, description: 'Artifact id, or type:slug reference, of the artifact to copy-edit.' },
@@ -126,11 +126,11 @@ const EDITORIAL_STRUCTURE = {
126
126
  { name: 'Structural editor', role: 'Structural Editor', angle: 'Evaluates document organization, section ordering, redundancy, missing sections, length balance, and logical flow. Proposes reorganization without rewriting prose.' },
127
127
  ],
128
128
  phases: [
129
- { name: 'read', instruction: 'Read the source artifact by running: spego read --id <artifactRef> (or spego read --type <type> --slug <slug>). The Structural editor reads the full content silently.' },
129
+ { name: 'read', instruction: 'Read the source artifact by running: spego --json read --id <artifactRef> (or spego --json read --type <type> --slug <slug>). The Structural editor reads the full content silently.' },
130
130
  { name: 'outline', instruction: 'Produce a structural outline of the artifact: list every section and subsection heading in order with a one-sentence summary of its content. Note the approximate length of each section. Flag sections that overlap in scope or seem out of logical order.' },
131
131
  { name: 'propose-restructuring', instruction: 'For each structural issue found: (1) propose a specific action (cut, merge, reorder, split, or add missing section), (2) explain why the current structure is suboptimal, (3) describe the improved structure after the change, (4) estimate impact (high/medium/low). This workflow does NOT mutate the source artifact — all proposals go into the qa output.' },
132
132
  { name: 'prioritize', instruction: 'Rank all restructuring proposals by impact and ease of application. Group related proposals. Produce a prioritized list with: proposal, action type (cut/merge/reorder/split/add), impact, effort (S/M/L), and dependencies on other proposals.' },
133
- { name: 'record', instruction: 'Persist the restructuring recommendations by running: spego create --type qa --title "<artifact name> structural review" --body "<prioritized restructuring proposals as markdown>". This workflow does not mutate the source artifact — it only produces recommendations.' },
133
+ { name: 'record', instruction: 'Persist the restructuring recommendations by running: spego --json create --type qa --title "<artifact name> structural review" --body "<prioritized restructuring proposals as markdown>". This workflow does not mutate the source artifact — it only produces recommendations.' },
134
134
  ],
135
135
  inputs: [
136
136
  { name: 'artifactRef', required: true, description: 'Artifact id, or type:slug reference, of the artifact to structurally review.' },
@@ -178,10 +178,10 @@ const BRAINSTORM_DEEP = {
178
178
  { name: 'Ideator', role: 'Focused Ideator', angle: 'Generates a high volume of ideas in a single voice. Targets 50-100 ideas, then prunes to the strongest. No debate or multi-perspective analysis — just raw throughput and quality filtering.' },
179
179
  ],
180
180
  phases: [
181
- { name: 'frame', instruction: 'State the topic clearly. Define scope, constraints, and what counts as a valid idea. If a `seedArtifactId` was provided, run `spego read --id <seedArtifactId>` and extract relevant context to frame the brainstorm. Set the target idea count (default: 50, or the user-specified `target_count`).' },
181
+ { name: 'frame', instruction: 'State the topic clearly. Define scope, constraints, and what counts as a valid idea. If a `seedArtifactId` was provided, run `spego --json read --id <seedArtifactId>` and extract relevant context to frame the brainstorm. Set the target idea count (default: 50, or the user-specified `target_count`).' },
182
182
  { name: 'expand', instruction: 'Generate ideas continuously in a single voice. Do NOT critique, debate, or evaluate — only produce. Aim for the target count. Number each idea. Techniques to maintain volume:\n- Break the topic into sub-topics and generate ideas for each.\n- Apply "what if", "how might we", and "reverse assumption" prompts.\n- For each strong idea, generate 2-3 variants.\n- If you slow down, switch to a different sub-topic.\nContinue until you reach the target count or exhaust genuinely distinct ideas.' },
183
183
  { name: 'prune', instruction: 'Post-generation cleanup:\n1. **Cluster**: Group related ideas together. Label each cluster.\n2. **Deduplicate**: Remove ideas that say the same thing in different words. Keep the clearest formulation.\n3. **Rank**: Within each cluster, rank by impact and feasibility. Mark the top idea in each cluster.\n4. **Select**: Produce a final ranked top-10 list with one-line rationale for each.\nReport: total generated, after deduplication, clusters formed, and final top-10.' },
184
- { name: 'record', instruction: 'Persist the brainstorm results by running:\n```\nspego create --type brainstorm --title "<topic> brainstorm" --body "<full output: raw ideas, clusters, and top-10 ranking>"\n```\nOptionally follow up with `spego create --type prd` for the top-ranked idea.' },
184
+ { name: 'record', instruction: 'Persist the brainstorm results by running:\n```\nspego --json create --type brainstorm --title "<topic> brainstorm" --body "<full output: raw ideas, clusters, and top-10 ranking>"\n```\nOptionally follow up with `spego --json create --type prd` for the top-ranked idea. Capture the returned `id` from each call.' },
185
185
  ],
186
186
  inputs: [
187
187
  { name: 'topic', required: true, description: 'The focused topic or question to brainstorm.' },
@@ -204,12 +204,12 @@ const ELICIT = {
204
204
  { name: 'Refiner', role: 'Iterative Refiner', angle: 'Applies structured refinement methods to improve an artifact. Each cycle is focused, confirmed, and committed. Stops after 5 cycles or when the user declares completion.' },
205
205
  ],
206
206
  phases: [
207
- { name: 'read', instruction: 'Read the source artifact by running:\n```\nspego read --id <artifactRef>\n```\n(or `spego read --type <type> --slug <slug>`).\n\nNote the current revision number — you will need it for `--expected-revision` during the apply phase.\n\nAvailable refinement methods:\n- **clarify**: Remove ambiguity. Make vague statements precise.\n- **sharpen**: Tighten logic. Strengthen causal chains and remove hedging.\n- **generalize**: Broaden applicability. Find patterns that apply beyond the immediate context.\n- **specialize**: Add concrete details. Replace abstract statements with specific examples or data.\n- **stress-test**: Challenge claims. Add conditions, exceptions, and failure modes.\n- **contextualize**: Connect to broader context. Add references to related work, dependencies, or constraints.\n- **simplify**: Remove unnecessary complexity. Merge redundant sections, shorten explanations.\n- **formalize**: Add structure. Introduce definitions, invariants, contracts, or specifications.' },
207
+ { name: 'read', instruction: 'Read the source artifact by running:\n```\nspego --json read --id <artifactRef>\n```\n(or `spego --json read --type <type> --slug <slug>`).\n\nNote the current revision number from the JSON `frontmatter.revision` field — you will need it for `--expected-revision` during the apply phase.\n\nAvailable refinement methods:\n- **clarify**: Remove ambiguity. Make vague statements precise.\n- **sharpen**: Tighten logic. Strengthen causal chains and remove hedging.\n- **generalize**: Broaden applicability. Find patterns that apply beyond the immediate context.\n- **specialize**: Add concrete details. Replace abstract statements with specific examples or data.\n- **stress-test**: Challenge claims. Add conditions, exceptions, and failure modes.\n- **contextualize**: Connect to broader context. Add references to related work, dependencies, or constraints.\n- **simplify**: Remove unnecessary complexity. Merge redundant sections, shorten explanations.\n- **formalize**: Add structure. Introduce definitions, invariants, contracts, or specifications.' },
208
208
  { name: 'select-method', instruction: 'Based on the artifact content and the user\'s goal (or `target_audience`), select the most impactful refinement method from the list. If the user specified a `methods` subset, only pick from those. Present your choice with a brief rationale: "I will apply [method] because [reason]."' },
209
209
  { name: 'propose', instruction: 'Apply the selected method to the artifact. Produce a concrete diff: show the exact text to change, the proposed replacement, and why. Be specific — "change X to Y" not "make X better". If the method produces no meaningful improvement, skip it and select a different one.' },
210
210
  { name: 'confirm', instruction: 'Present the proposed change to the user. Ask: "Apply this change? [y/n/skip]". Wait for explicit confirmation. If declined, mark it as skipped and select a different method. If accepted, proceed to apply.' },
211
- { name: 'apply', instruction: 'Apply the confirmed change by running:\n```\nspego update --id <source artifact id> --expected-revision <current revision> --body "<updated content>"\n```\n\n**MANDATORY**: Always pass `--expected-revision`. This is non-negotiable — it prevents concurrent edits from being silently overwritten.\n\nAfter applying, note the new revision number for the next cycle. Increment the cycle counter. If this was cycle 5, force transition to the summarize phase regardless of remaining methods.' },
212
- { name: 'summarize', instruction: 'Summarize all applied and skipped refinements:\n\n## Refinement Summary\n\n- Cycle 1: [method] — applied/skipped — one-line description of the change.\n- Cycle 2: ...\n\nTotal: N cycles, M changes applied, K skipped.\n\nOptionally create a QA summary artifact:\n```\nspego create --type qa --title "<artifact name> elicitation summary" --body "<refinement summary>"\n```' },
211
+ { name: 'apply', instruction: 'Apply the confirmed change by running:\n```\nspego --json update --id <source artifact id> --expected-revision <current revision> --body "<updated content>"\n```\n\n**MANDATORY**: Always pass `--expected-revision`. This is non-negotiable — it prevents concurrent edits from being silently overwritten.\n\nAfter applying, read the new `revision` from the JSON response and use it for the next cycle. Increment the cycle counter. If this was cycle 5, force transition to the summarize phase regardless of remaining methods.' },
212
+ { name: 'summarize', instruction: 'Summarize all applied and skipped refinements:\n\n## Refinement Summary\n\n- Cycle 1: [method] — applied/skipped — one-line description of the change.\n- Cycle 2: ...\n\nTotal: N cycles, M changes applied, K skipped.\n\nOptionally create a QA summary artifact:\n```\nspego --json create --type qa --title "<artifact name> elicitation summary" --body "<refinement summary>"\n```' },
213
213
  ],
214
214
  inputs: [
215
215
  { name: 'artifactRef', required: true, description: 'Artifact id, or type:slug reference, of the artifact to refine.' },
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/workflows/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/workflows/registry.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhuk/spego",
3
- "version": "0.6.2",
3
+ "version": "0.7.0",
4
4
  "description": "Agent-first product orchestration: markdown-first artifact engine with SQLite indexing.",
5
5
  "type": "module",
6
6
  "bin": {