@specship/specship-win32-arm64 0.25.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. package/bin/specship.cmd +31 -1
  2. package/lib/dist/activation/cheatsheet.d.ts +17 -1
  3. package/lib/dist/activation/cheatsheet.d.ts.map +1 -1
  4. package/lib/dist/activation/cheatsheet.js +47 -3
  5. package/lib/dist/activation/cheatsheet.js.map +1 -1
  6. package/lib/dist/activation/hook-output.d.ts +80 -0
  7. package/lib/dist/activation/hook-output.d.ts.map +1 -0
  8. package/lib/dist/activation/hook-output.js +103 -0
  9. package/lib/dist/activation/hook-output.js.map +1 -0
  10. package/lib/dist/activation/search-intercept.d.ts +60 -29
  11. package/lib/dist/activation/search-intercept.d.ts.map +1 -1
  12. package/lib/dist/activation/search-intercept.js +159 -55
  13. package/lib/dist/activation/search-intercept.js.map +1 -1
  14. package/lib/dist/activation/steering.d.ts +8 -10
  15. package/lib/dist/activation/steering.d.ts.map +1 -1
  16. package/lib/dist/activation/steering.js +21 -6
  17. package/lib/dist/activation/steering.js.map +1 -1
  18. package/lib/dist/behaviour/behaviour-surface.d.ts +47 -0
  19. package/lib/dist/behaviour/behaviour-surface.d.ts.map +1 -1
  20. package/lib/dist/behaviour/behaviour-surface.js +108 -2
  21. package/lib/dist/behaviour/behaviour-surface.js.map +1 -1
  22. package/lib/dist/bin/node-version-check.d.ts +22 -7
  23. package/lib/dist/bin/node-version-check.d.ts.map +1 -1
  24. package/lib/dist/bin/node-version-check.js +39 -9
  25. package/lib/dist/bin/node-version-check.js.map +1 -1
  26. package/lib/dist/bin/specship.js +762 -81
  27. package/lib/dist/bin/specship.js.map +1 -1
  28. package/lib/dist/commands/specship/learn.md +22 -0
  29. package/lib/dist/commands/specship/spec.md +12 -0
  30. package/lib/dist/db/sqlite-adapter.d.ts +7 -5
  31. package/lib/dist/db/sqlite-adapter.d.ts.map +1 -1
  32. package/lib/dist/db/sqlite-adapter.js +11 -9
  33. package/lib/dist/db/sqlite-adapter.js.map +1 -1
  34. package/lib/dist/enforce/changed-files.d.ts +11 -0
  35. package/lib/dist/enforce/changed-files.d.ts.map +1 -1
  36. package/lib/dist/enforce/changed-files.js +42 -0
  37. package/lib/dist/enforce/changed-files.js.map +1 -1
  38. package/lib/dist/enforce/enforce.d.ts +25 -1
  39. package/lib/dist/enforce/enforce.d.ts.map +1 -1
  40. package/lib/dist/enforce/enforce.js +58 -3
  41. package/lib/dist/enforce/enforce.js.map +1 -1
  42. package/lib/dist/enforce/mutation.d.ts +46 -0
  43. package/lib/dist/enforce/mutation.d.ts.map +1 -0
  44. package/lib/dist/enforce/mutation.js +104 -0
  45. package/lib/dist/enforce/mutation.js.map +1 -0
  46. package/lib/dist/enforce/suppressions.d.ts +33 -0
  47. package/lib/dist/enforce/suppressions.d.ts.map +1 -0
  48. package/lib/dist/enforce/suppressions.js +159 -0
  49. package/lib/dist/enforce/suppressions.js.map +1 -0
  50. package/lib/dist/extraction/specs/markdown-spec-extractor.d.ts.map +1 -1
  51. package/lib/dist/extraction/specs/markdown-spec-extractor.js +16 -2
  52. package/lib/dist/extraction/specs/markdown-spec-extractor.js.map +1 -1
  53. package/lib/dist/graph/spec-coverage.d.ts +57 -1
  54. package/lib/dist/graph/spec-coverage.d.ts.map +1 -1
  55. package/lib/dist/graph/spec-coverage.js +129 -5
  56. package/lib/dist/graph/spec-coverage.js.map +1 -1
  57. package/lib/dist/health/smoke-check.js +2 -2
  58. package/lib/dist/health/smoke-check.js.map +1 -1
  59. package/lib/dist/index.d.ts +8 -3
  60. package/lib/dist/index.d.ts.map +1 -1
  61. package/lib/dist/index.js +65 -9
  62. package/lib/dist/index.js.map +1 -1
  63. package/lib/dist/installer/gemini-commands.d.ts +107 -0
  64. package/lib/dist/installer/gemini-commands.d.ts.map +1 -0
  65. package/lib/dist/installer/gemini-commands.js +264 -0
  66. package/lib/dist/installer/gemini-commands.js.map +1 -0
  67. package/lib/dist/installer/index.d.ts +23 -1
  68. package/lib/dist/installer/index.d.ts.map +1 -1
  69. package/lib/dist/installer/index.js +22 -3
  70. package/lib/dist/installer/index.js.map +1 -1
  71. package/lib/dist/installer/install-defaults.d.ts +19 -0
  72. package/lib/dist/installer/install-defaults.d.ts.map +1 -1
  73. package/lib/dist/installer/install-defaults.js +28 -0
  74. package/lib/dist/installer/install-defaults.js.map +1 -1
  75. package/lib/dist/installer/instructions-template.d.ts +22 -0
  76. package/lib/dist/installer/instructions-template.d.ts.map +1 -1
  77. package/lib/dist/installer/instructions-template.js +37 -1
  78. package/lib/dist/installer/instructions-template.js.map +1 -1
  79. package/lib/dist/installer/targets/claude.d.ts +4 -0
  80. package/lib/dist/installer/targets/claude.d.ts.map +1 -1
  81. package/lib/dist/installer/targets/claude.js +8 -25
  82. package/lib/dist/installer/targets/claude.js.map +1 -1
  83. package/lib/dist/installer/targets/gemini.d.ts +85 -12
  84. package/lib/dist/installer/targets/gemini.d.ts.map +1 -1
  85. package/lib/dist/installer/targets/gemini.js +527 -30
  86. package/lib/dist/installer/targets/gemini.js.map +1 -1
  87. package/lib/dist/installer/targets/shared.d.ts +13 -0
  88. package/lib/dist/installer/targets/shared.d.ts.map +1 -1
  89. package/lib/dist/installer/targets/shared.js +18 -0
  90. package/lib/dist/installer/targets/shared.js.map +1 -1
  91. package/lib/dist/installer/targets/types.d.ts +12 -0
  92. package/lib/dist/installer/targets/types.d.ts.map +1 -1
  93. package/lib/dist/jira/auto-publish.d.ts +71 -4
  94. package/lib/dist/jira/auto-publish.d.ts.map +1 -1
  95. package/lib/dist/jira/auto-publish.js +186 -17
  96. package/lib/dist/jira/auto-publish.js.map +1 -1
  97. package/lib/dist/jira/reconcile.d.ts +24 -1
  98. package/lib/dist/jira/reconcile.d.ts.map +1 -1
  99. package/lib/dist/jira/reconcile.js +46 -2
  100. package/lib/dist/jira/reconcile.js.map +1 -1
  101. package/lib/dist/jira/repo-config.d.ts +9 -0
  102. package/lib/dist/jira/repo-config.d.ts.map +1 -1
  103. package/lib/dist/jira/repo-config.js +11 -0
  104. package/lib/dist/jira/repo-config.js.map +1 -1
  105. package/lib/dist/jira/types.d.ts +7 -0
  106. package/lib/dist/jira/types.d.ts.map +1 -1
  107. package/lib/dist/jira/types.js.map +1 -1
  108. package/lib/dist/knowledge/enforce.d.ts +75 -0
  109. package/lib/dist/knowledge/enforce.d.ts.map +1 -0
  110. package/lib/dist/knowledge/enforce.js +250 -0
  111. package/lib/dist/knowledge/enforce.js.map +1 -0
  112. package/lib/dist/knowledge/facts.d.ts +33 -0
  113. package/lib/dist/knowledge/facts.d.ts.map +1 -0
  114. package/lib/dist/knowledge/facts.js +117 -0
  115. package/lib/dist/knowledge/facts.js.map +1 -0
  116. package/lib/dist/knowledge/proposals.d.ts +88 -0
  117. package/lib/dist/knowledge/proposals.d.ts.map +1 -0
  118. package/lib/dist/knowledge/proposals.js +360 -0
  119. package/lib/dist/knowledge/proposals.js.map +1 -0
  120. package/lib/dist/knowledge/stale.d.ts +64 -0
  121. package/lib/dist/knowledge/stale.d.ts.map +1 -0
  122. package/lib/dist/knowledge/stale.js +174 -0
  123. package/lib/dist/knowledge/stale.js.map +1 -0
  124. package/lib/dist/mcp/gemini-session.d.ts +50 -0
  125. package/lib/dist/mcp/gemini-session.d.ts.map +1 -0
  126. package/lib/dist/mcp/gemini-session.js +159 -0
  127. package/lib/dist/mcp/gemini-session.js.map +1 -0
  128. package/lib/dist/mcp/jira-tools.d.ts.map +1 -1
  129. package/lib/dist/mcp/jira-tools.js +25 -0
  130. package/lib/dist/mcp/jira-tools.js.map +1 -1
  131. package/lib/dist/mcp/model-context.d.ts +22 -9
  132. package/lib/dist/mcp/model-context.d.ts.map +1 -1
  133. package/lib/dist/mcp/model-context.js +35 -13
  134. package/lib/dist/mcp/model-context.js.map +1 -1
  135. package/lib/dist/mcp/proxy.js +1 -1
  136. package/lib/dist/mcp/proxy.js.map +1 -1
  137. package/lib/dist/mcp/server-instructions.d.ts +16 -15
  138. package/lib/dist/mcp/server-instructions.d.ts.map +1 -1
  139. package/lib/dist/mcp/server-instructions.js +67 -1
  140. package/lib/dist/mcp/server-instructions.js.map +1 -1
  141. package/lib/dist/mcp/session.js +1 -1
  142. package/lib/dist/mcp/session.js.map +1 -1
  143. package/lib/dist/mcp/spec-tools.d.ts +9 -1
  144. package/lib/dist/mcp/spec-tools.d.ts.map +1 -1
  145. package/lib/dist/mcp/spec-tools.js +69 -21
  146. package/lib/dist/mcp/spec-tools.js.map +1 -1
  147. package/lib/dist/mcp/tools.d.ts +37 -1
  148. package/lib/dist/mcp/tools.d.ts.map +1 -1
  149. package/lib/dist/mcp/tools.js +120 -9
  150. package/lib/dist/mcp/tools.js.map +1 -1
  151. package/lib/dist/pulse/pulse.d.ts +93 -0
  152. package/lib/dist/pulse/pulse.d.ts.map +1 -0
  153. package/lib/dist/pulse/pulse.js +401 -0
  154. package/lib/dist/pulse/pulse.js.map +1 -0
  155. package/lib/dist/reflect/apply.d.ts.map +1 -1
  156. package/lib/dist/reflect/apply.js +38 -3
  157. package/lib/dist/reflect/apply.js.map +1 -1
  158. package/lib/dist/reflect/auto-sweep.d.ts +26 -0
  159. package/lib/dist/reflect/auto-sweep.d.ts.map +1 -0
  160. package/lib/dist/reflect/auto-sweep.js +90 -0
  161. package/lib/dist/reflect/auto-sweep.js.map +1 -0
  162. package/lib/dist/reflect/cli.d.ts +62 -0
  163. package/lib/dist/reflect/cli.d.ts.map +1 -0
  164. package/lib/dist/reflect/cli.js +163 -0
  165. package/lib/dist/reflect/cli.js.map +1 -0
  166. package/lib/dist/reflect/miner.d.ts.map +1 -1
  167. package/lib/dist/reflect/miner.js +119 -0
  168. package/lib/dist/reflect/miner.js.map +1 -1
  169. package/lib/dist/reflect/sweep.d.ts +1 -0
  170. package/lib/dist/reflect/sweep.d.ts.map +1 -1
  171. package/lib/dist/reflect/sweep.js +62 -13
  172. package/lib/dist/reflect/sweep.js.map +1 -1
  173. package/lib/dist/reflect/targets.d.ts +2 -0
  174. package/lib/dist/reflect/targets.d.ts.map +1 -1
  175. package/lib/dist/reflect/targets.js +33 -0
  176. package/lib/dist/reflect/targets.js.map +1 -1
  177. package/lib/dist/reflect/types.d.ts +19 -2
  178. package/lib/dist/reflect/types.d.ts.map +1 -1
  179. package/lib/dist/resolution/test-title-links.d.ts.map +1 -1
  180. package/lib/dist/resolution/test-title-links.js +3 -14
  181. package/lib/dist/resolution/test-title-links.js.map +1 -1
  182. package/lib/dist/server/routes/claude.js +15 -7
  183. package/lib/dist/server/routes/knowledge.js +118 -0
  184. package/lib/dist/server/server.js +2 -0
  185. package/lib/dist/spec-lint/lint.d.ts +1 -1
  186. package/lib/dist/spec-lint/lint.d.ts.map +1 -1
  187. package/lib/dist/spec-lint/lint.js +63 -2
  188. package/lib/dist/spec-lint/lint.js.map +1 -1
  189. package/lib/dist/spec-quality/criterion-ids.d.ts +13 -0
  190. package/lib/dist/spec-quality/criterion-ids.d.ts.map +1 -0
  191. package/lib/dist/spec-quality/criterion-ids.js +38 -0
  192. package/lib/dist/spec-quality/criterion-ids.js.map +1 -0
  193. package/lib/dist/spec-quality/evidence-kind.d.ts +54 -0
  194. package/lib/dist/spec-quality/evidence-kind.d.ts.map +1 -0
  195. package/lib/dist/spec-quality/evidence-kind.js +183 -0
  196. package/lib/dist/spec-quality/evidence-kind.js.map +1 -0
  197. package/lib/dist/spec-quality/link-persist.d.ts +65 -0
  198. package/lib/dist/spec-quality/link-persist.d.ts.map +1 -0
  199. package/lib/dist/spec-quality/link-persist.js +249 -0
  200. package/lib/dist/spec-quality/link-persist.js.map +1 -0
  201. package/lib/dist/spec-quality/plan-scope.d.ts +38 -0
  202. package/lib/dist/spec-quality/plan-scope.d.ts.map +1 -0
  203. package/lib/dist/spec-quality/plan-scope.js +129 -0
  204. package/lib/dist/spec-quality/plan-scope.js.map +1 -0
  205. package/lib/dist/spec-quality/postcheck.d.ts +85 -0
  206. package/lib/dist/spec-quality/postcheck.d.ts.map +1 -0
  207. package/lib/dist/spec-quality/postcheck.js +390 -0
  208. package/lib/dist/spec-quality/postcheck.js.map +1 -0
  209. package/lib/dist/spec-quality/readiness.d.ts +72 -0
  210. package/lib/dist/spec-quality/readiness.d.ts.map +1 -0
  211. package/lib/dist/spec-quality/readiness.js +226 -0
  212. package/lib/dist/spec-quality/readiness.js.map +1 -0
  213. package/lib/dist/workflows/agents/claude.d.ts +16 -0
  214. package/lib/dist/workflows/agents/claude.d.ts.map +1 -0
  215. package/lib/dist/workflows/agents/claude.js +82 -0
  216. package/lib/dist/workflows/agents/claude.js.map +1 -0
  217. package/lib/dist/workflows/agents/gemini.d.ts +21 -0
  218. package/lib/dist/workflows/agents/gemini.d.ts.map +1 -0
  219. package/lib/dist/workflows/agents/gemini.js +124 -0
  220. package/lib/dist/workflows/agents/gemini.js.map +1 -0
  221. package/lib/dist/workflows/agents/index.d.ts +28 -0
  222. package/lib/dist/workflows/agents/index.d.ts.map +1 -0
  223. package/lib/dist/workflows/agents/index.js +104 -0
  224. package/lib/dist/workflows/agents/index.js.map +1 -0
  225. package/lib/dist/workflows/agents/types.d.ts +55 -0
  226. package/lib/dist/workflows/agents/types.d.ts.map +1 -0
  227. package/lib/dist/workflows/agents/types.js +46 -0
  228. package/lib/dist/workflows/agents/types.js.map +1 -0
  229. package/lib/dist/workflows/batch.d.ts +63 -0
  230. package/lib/dist/workflows/batch.d.ts.map +1 -0
  231. package/lib/dist/workflows/batch.js +151 -0
  232. package/lib/dist/workflows/batch.js.map +1 -0
  233. package/lib/dist/workflows/defaults/claude-design-implement.yaml +3 -4
  234. package/lib/dist/workflows/defaults/spec-author.yaml +11 -9
  235. package/lib/dist/workflows/defaults/spec-implement-mixed.yaml +21 -436
  236. package/lib/dist/workflows/defaults/spec-implement.yaml +465 -46
  237. package/lib/dist/workflows/discovery.d.ts +13 -0
  238. package/lib/dist/workflows/discovery.d.ts.map +1 -1
  239. package/lib/dist/workflows/discovery.js +79 -17
  240. package/lib/dist/workflows/discovery.js.map +1 -1
  241. package/lib/dist/workflows/executor.d.ts +18 -0
  242. package/lib/dist/workflows/executor.d.ts.map +1 -1
  243. package/lib/dist/workflows/executor.js +130 -33
  244. package/lib/dist/workflows/executor.js.map +1 -1
  245. package/lib/dist/workflows/gc.d.ts +50 -0
  246. package/lib/dist/workflows/gc.d.ts.map +1 -0
  247. package/lib/dist/workflows/gc.js +120 -0
  248. package/lib/dist/workflows/gc.js.map +1 -0
  249. package/lib/dist/workflows/merge-queue.d.ts +64 -0
  250. package/lib/dist/workflows/merge-queue.d.ts.map +1 -0
  251. package/lib/dist/workflows/merge-queue.js +162 -0
  252. package/lib/dist/workflows/merge-queue.js.map +1 -0
  253. package/lib/dist/workflows/runners/approval.d.ts +1 -1
  254. package/lib/dist/workflows/runners/approval.d.ts.map +1 -1
  255. package/lib/dist/workflows/runners/approval.js +11 -2
  256. package/lib/dist/workflows/runners/approval.js.map +1 -1
  257. package/lib/dist/workflows/runners/bash.d.ts +15 -0
  258. package/lib/dist/workflows/runners/bash.d.ts.map +1 -1
  259. package/lib/dist/workflows/runners/bash.js +50 -1
  260. package/lib/dist/workflows/runners/bash.js.map +1 -1
  261. package/lib/dist/workflows/runners/prompt.d.ts +16 -41
  262. package/lib/dist/workflows/runners/prompt.d.ts.map +1 -1
  263. package/lib/dist/workflows/runners/prompt.js +55 -120
  264. package/lib/dist/workflows/runners/prompt.js.map +1 -1
  265. package/lib/dist/workflows/runners/types.d.ts +12 -0
  266. package/lib/dist/workflows/runners/types.d.ts.map +1 -1
  267. package/lib/dist/workflows/schemas/workflow.d.ts +17 -0
  268. package/lib/dist/workflows/schemas/workflow.d.ts.map +1 -1
  269. package/lib/dist/workflows/schemas/workflow.js +27 -0
  270. package/lib/dist/workflows/schemas/workflow.js.map +1 -1
  271. package/lib/node_modules/.package-lock.json +1 -1
  272. package/lib/package.json +2 -2
  273. package/package.json +5 -3
  274. package/node.exe +0 -4
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Gemini CLI slash-command renderer (REQ-GEMINI-005).
3
+ *
4
+ * Two renderers, ONE source: the Claude target copies `commands/specship/*.md`
5
+ * verbatim; this module renders the very same files into Gemini CLI's
6
+ * custom-command TOML, so editing a source command changes both surfaces and
7
+ * the two cannot drift. Pure string work — nothing here touches the user's
8
+ * config dirs; `targets/gemini.ts` owns where the output lands.
9
+ *
10
+ * Format provenance (house rule: verified from the installed package, never
11
+ * from memory) — `@google/gemini-cli` **0.28.0**:
12
+ *
13
+ * - `dist/src/services/FileCommandLoader.js`: globs `**\/*.toml` under each
14
+ * commands dir; validates with `TomlCommandDefSchema` = `{ prompt: string
15
+ * (required), description?: string }` (any other key is ignored); the
16
+ * command name is the path relative to the commands dir minus `.toml`,
17
+ * segments joined with `:` — so `commands/specship/spec.toml` is invoked
18
+ * as `/specship:spec`, the same name Claude Code gives
19
+ * `commands/specship/spec.md`. Parsed with `@iarna/toml` (TOML 0.5).
20
+ * A project-scope dir is skipped entirely when folder trust is enabled
21
+ * and the folder is untrusted.
22
+ * - Commands dirs (`gemini-cli-core` `dist/src/config/storage.js`):
23
+ * global `Storage.getUserCommandsDir()` = `~/.gemini/commands`, project
24
+ * `storage.getProjectCommandsDir()` = `<project>/.gemini/commands`.
25
+ * - Arguments (`prompt-processors/types.js`, `shellProcessor.js`,
26
+ * `argumentProcessor.js`): `{{args}}` (SHORTHAND_ARGS_PLACEHOLDER) is
27
+ * replaced with the raw argument string outside `!{…}`; when a prompt has
28
+ * NO `{{args}}`, the whole raw invocation is appended instead. So Claude's
29
+ * `$ARGUMENTS` maps 1:1 onto `{{args}}`.
30
+ * - Injection triggers: `!{…}` runs a shell command and `@{…}` inlines a
31
+ * file before the prompt is sent. A source body containing either would
32
+ * execute on Gemini but not on Claude, so such a command is EXCLUDED.
33
+ * - Built-in tool names (`gemini-cli-core` `dist/src/tools/tool-names.js`):
34
+ * `read_file`, `write_file`, `replace` (edit), `run_shell_command`,
35
+ * `ask_user` (registered unconditionally in `config.js`). MCP tools are
36
+ * exposed to the model under their bare server tool name.
37
+ *
38
+ * Per-command decisions (the REQ-GEMINI-005 `[needs review]` question): the
39
+ * Gemini set is exactly the Claude installer's set (`RETRIEVAL_TIER_COMMANDS`
40
+ * + `GOVERNANCE_TIER_COMMANDS` in `targets/claude.ts`), each passed through
41
+ * the rewrites below and then the Claude-only guard:
42
+ *
43
+ * - `explore` — INCLUDED. Pure MCP-tool routing; only `mcp__specship__*`
44
+ * names + `$ARGUMENTS` need rewriting. (No body dispatches the
45
+ * `specship-explorer` subagent; the guard would exclude one that did.)
46
+ * - `spec` — INCLUDED, degraded inline: `Write`/`Edit`/`Read` tool names
47
+ * → Gemini's; the `designer-loop` skill (a `~/.claude/skills` asset
48
+ * Gemini doesn't get) → "run the taste loop inline" (the body already
49
+ * spells the loop out); `claude mcp add` → `gemini mcp add` (verified:
50
+ * `commands/mcp/add.js` takes `--transport http <name> <url>`). Its
51
+ * `specship workflow run …` launches are SpecShip CLI calls, host-neutral
52
+ * from the command's point of view.
53
+ * - `check` — INCLUDED. CLI + MCP routing only.
54
+ * - `learn` — INCLUDED. Drives the `specship reflect --capture` CLI only.
55
+ * - `day` — INCLUDED. JIRA MCP tools (present when installed
56
+ * `--with-jira`, same as on Claude).
57
+ * - `jira` — NOT RENDERED: the Claude installer doesn't ship it either
58
+ * (plugin-only), so rendering it would widen Gemini past parity.
59
+ *
60
+ * Anything a future source edit introduces that these rewrites don't cover
61
+ * trips `CLAUDE_ONLY_MARKERS`, and that command is excluded with a note —
62
+ * never shipped broken.
63
+ */
64
+ /** First line of every TOML we write — uninstall/overwrite only touch files carrying it. */
65
+ export declare const GEMINI_COMMAND_HEADER_MARKER = "# Generated by specship install \u2014 REQ-GEMINI-005.";
66
+ /** Gemini's argument placeholder (gemini-cli 0.28.0 SHORTHAND_ARGS_PLACEHOLDER). */
67
+ export declare const GEMINI_ARGS_PLACEHOLDER = "{{args}}";
68
+ /** Thrown when a source command cannot be rendered faithfully for Gemini. */
69
+ export declare class GeminiCommandUnsupported extends Error {
70
+ readonly reason: string;
71
+ constructor(reason: string);
72
+ }
73
+ /** Split `---\nkey: value\n---\nbody` into a flat frontmatter map and the body. */
74
+ export declare function parseCommandMarkdown(source: string): {
75
+ meta: Record<string, string>;
76
+ body: string;
77
+ };
78
+ /** Encode a prompt body as a TOML multi-line string value. */
79
+ export declare function tomlMultiline(body: string): string;
80
+ /** Apply the Claude → Gemini rewrites to a command body. */
81
+ export declare function rewriteForGemini(body: string): string;
82
+ /**
83
+ * Render one Claude command markdown file into Gemini CLI TOML. Throws
84
+ * `GeminiCommandUnsupported` when the body still depends on Claude-only
85
+ * machinery after the rewrites.
86
+ */
87
+ export declare function renderGeminiCommand(markdownSource: string, sourceName?: string): string;
88
+ /** One entry of the rendered command set. */
89
+ export interface GeminiCommandRender {
90
+ /** Source path relative to the commands dir, e.g. `specship/spec.md`. */
91
+ source: string;
92
+ /** Destination path relative to Gemini's commands dir, e.g. `specship/spec.toml`. */
93
+ target: string;
94
+ /** The TOML file body — absent when the command was excluded. */
95
+ toml?: string;
96
+ /** Why the command was excluded (absent when rendered). */
97
+ excluded?: string;
98
+ }
99
+ /** `specship/spec.md` → `specship/spec.toml`. */
100
+ export declare function geminiCommandTarget(source: string): string;
101
+ /**
102
+ * Render each named source command under `commandsDir` (the same dir the
103
+ * Claude target copies from). Never throws for an unsupported command — it
104
+ * comes back with `excluded` set so the caller can surface a note.
105
+ */
106
+ export declare function geminiCommandSet(commandsDir: string, names: readonly string[]): GeminiCommandRender[];
107
+ //# sourceMappingURL=gemini-commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini-commands.d.ts","sourceRoot":"","sources":["../../src/installer/gemini-commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AAKH,4FAA4F;AAC5F,eAAO,MAAM,4BAA4B,2DAAsD,CAAC;AAEhG,oFAAoF;AACpF,eAAO,MAAM,uBAAuB,aAAa,CAAC;AA2ClD,6EAA6E;AAC7E,qBAAa,wBAAyB,SAAQ,KAAK;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBACZ,MAAM,EAAE,MAAM;CAI3B;AAED,mFAAmF;AACnF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAenG;AAwBD,8DAA8D;AAC9D,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOlD;AAED,4DAA4D;AAC5D,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,SAAY,GAAG,MAAM,CAc1F;AAED,6CAA6C;AAC7C,MAAM,WAAW,mBAAmB;IAClC,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,qFAAqF;IACrF,MAAM,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,iDAAiD;AACjD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,mBAAmB,EAAE,CAWrG"}
@@ -0,0 +1,264 @@
1
+ "use strict";
2
+ /**
3
+ * Gemini CLI slash-command renderer (REQ-GEMINI-005).
4
+ *
5
+ * Two renderers, ONE source: the Claude target copies `commands/specship/*.md`
6
+ * verbatim; this module renders the very same files into Gemini CLI's
7
+ * custom-command TOML, so editing a source command changes both surfaces and
8
+ * the two cannot drift. Pure string work — nothing here touches the user's
9
+ * config dirs; `targets/gemini.ts` owns where the output lands.
10
+ *
11
+ * Format provenance (house rule: verified from the installed package, never
12
+ * from memory) — `@google/gemini-cli` **0.28.0**:
13
+ *
14
+ * - `dist/src/services/FileCommandLoader.js`: globs `**\/*.toml` under each
15
+ * commands dir; validates with `TomlCommandDefSchema` = `{ prompt: string
16
+ * (required), description?: string }` (any other key is ignored); the
17
+ * command name is the path relative to the commands dir minus `.toml`,
18
+ * segments joined with `:` — so `commands/specship/spec.toml` is invoked
19
+ * as `/specship:spec`, the same name Claude Code gives
20
+ * `commands/specship/spec.md`. Parsed with `@iarna/toml` (TOML 0.5).
21
+ * A project-scope dir is skipped entirely when folder trust is enabled
22
+ * and the folder is untrusted.
23
+ * - Commands dirs (`gemini-cli-core` `dist/src/config/storage.js`):
24
+ * global `Storage.getUserCommandsDir()` = `~/.gemini/commands`, project
25
+ * `storage.getProjectCommandsDir()` = `<project>/.gemini/commands`.
26
+ * - Arguments (`prompt-processors/types.js`, `shellProcessor.js`,
27
+ * `argumentProcessor.js`): `{{args}}` (SHORTHAND_ARGS_PLACEHOLDER) is
28
+ * replaced with the raw argument string outside `!{…}`; when a prompt has
29
+ * NO `{{args}}`, the whole raw invocation is appended instead. So Claude's
30
+ * `$ARGUMENTS` maps 1:1 onto `{{args}}`.
31
+ * - Injection triggers: `!{…}` runs a shell command and `@{…}` inlines a
32
+ * file before the prompt is sent. A source body containing either would
33
+ * execute on Gemini but not on Claude, so such a command is EXCLUDED.
34
+ * - Built-in tool names (`gemini-cli-core` `dist/src/tools/tool-names.js`):
35
+ * `read_file`, `write_file`, `replace` (edit), `run_shell_command`,
36
+ * `ask_user` (registered unconditionally in `config.js`). MCP tools are
37
+ * exposed to the model under their bare server tool name.
38
+ *
39
+ * Per-command decisions (the REQ-GEMINI-005 `[needs review]` question): the
40
+ * Gemini set is exactly the Claude installer's set (`RETRIEVAL_TIER_COMMANDS`
41
+ * + `GOVERNANCE_TIER_COMMANDS` in `targets/claude.ts`), each passed through
42
+ * the rewrites below and then the Claude-only guard:
43
+ *
44
+ * - `explore` — INCLUDED. Pure MCP-tool routing; only `mcp__specship__*`
45
+ * names + `$ARGUMENTS` need rewriting. (No body dispatches the
46
+ * `specship-explorer` subagent; the guard would exclude one that did.)
47
+ * - `spec` — INCLUDED, degraded inline: `Write`/`Edit`/`Read` tool names
48
+ * → Gemini's; the `designer-loop` skill (a `~/.claude/skills` asset
49
+ * Gemini doesn't get) → "run the taste loop inline" (the body already
50
+ * spells the loop out); `claude mcp add` → `gemini mcp add` (verified:
51
+ * `commands/mcp/add.js` takes `--transport http <name> <url>`). Its
52
+ * `specship workflow run …` launches are SpecShip CLI calls, host-neutral
53
+ * from the command's point of view.
54
+ * - `check` — INCLUDED. CLI + MCP routing only.
55
+ * - `learn` — INCLUDED. Drives the `specship reflect --capture` CLI only.
56
+ * - `day` — INCLUDED. JIRA MCP tools (present when installed
57
+ * `--with-jira`, same as on Claude).
58
+ * - `jira` — NOT RENDERED: the Claude installer doesn't ship it either
59
+ * (plugin-only), so rendering it would widen Gemini past parity.
60
+ *
61
+ * Anything a future source edit introduces that these rewrites don't cover
62
+ * trips `CLAUDE_ONLY_MARKERS`, and that command is excluded with a note —
63
+ * never shipped broken.
64
+ */
65
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
66
+ if (k2 === undefined) k2 = k;
67
+ var desc = Object.getOwnPropertyDescriptor(m, k);
68
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
69
+ desc = { enumerable: true, get: function() { return m[k]; } };
70
+ }
71
+ Object.defineProperty(o, k2, desc);
72
+ }) : (function(o, m, k, k2) {
73
+ if (k2 === undefined) k2 = k;
74
+ o[k2] = m[k];
75
+ }));
76
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
77
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
78
+ }) : function(o, v) {
79
+ o["default"] = v;
80
+ });
81
+ var __importStar = (this && this.__importStar) || (function () {
82
+ var ownKeys = function(o) {
83
+ ownKeys = Object.getOwnPropertyNames || function (o) {
84
+ var ar = [];
85
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
86
+ return ar;
87
+ };
88
+ return ownKeys(o);
89
+ };
90
+ return function (mod) {
91
+ if (mod && mod.__esModule) return mod;
92
+ var result = {};
93
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
94
+ __setModuleDefault(result, mod);
95
+ return result;
96
+ };
97
+ })();
98
+ Object.defineProperty(exports, "__esModule", { value: true });
99
+ exports.GeminiCommandUnsupported = exports.GEMINI_ARGS_PLACEHOLDER = exports.GEMINI_COMMAND_HEADER_MARKER = void 0;
100
+ exports.parseCommandMarkdown = parseCommandMarkdown;
101
+ exports.tomlMultiline = tomlMultiline;
102
+ exports.rewriteForGemini = rewriteForGemini;
103
+ exports.renderGeminiCommand = renderGeminiCommand;
104
+ exports.geminiCommandTarget = geminiCommandTarget;
105
+ exports.geminiCommandSet = geminiCommandSet;
106
+ const fs = __importStar(require("fs"));
107
+ const path = __importStar(require("path"));
108
+ /** First line of every TOML we write — uninstall/overwrite only touch files carrying it. */
109
+ exports.GEMINI_COMMAND_HEADER_MARKER = '# Generated by specship install — REQ-GEMINI-005.';
110
+ /** Gemini's argument placeholder (gemini-cli 0.28.0 SHORTHAND_ARGS_PLACEHOLDER). */
111
+ exports.GEMINI_ARGS_PLACEHOLDER = '{{args}}';
112
+ /**
113
+ * Claude → Gemini rewrites, applied in order to the command body. Each maps a
114
+ * Claude-only construct onto its verified Gemini equivalent.
115
+ */
116
+ const REWRITES = [
117
+ // Claude's argument placeholder → Gemini's.
118
+ [/\$ARGUMENTS\b/g, exports.GEMINI_ARGS_PLACEHOLDER],
119
+ // Gemini exposes MCP tools by bare name.
120
+ [/\bmcp__specship__(\w+)/g, '$1'],
121
+ // Claude built-in tool names → Gemini built-in tool names.
122
+ [/`AskUserQuestion`/g, 'the `ask_user` tool'],
123
+ [/`Write`/g, '`write_file`'],
124
+ [/`Edit`/g, '`replace`'],
125
+ [/`Read`/g, '`read_file`'],
126
+ // The designer-loop skill is a Claude skills-dir asset; the spec body
127
+ // already inlines the loop, so point at that instead.
128
+ [/ and the `designer-loop` skill rather than re-explaining either/g, ' rather than re-explaining it'],
129
+ [
130
+ /Follow the \*\*`designer-loop` skill\*\* \(`~\/\.claude\/skills\/designer-loop\/SKILL\.md`\)\s*—\s*it is the authority\. In brief:/g,
131
+ 'Run the taste loop inline:',
132
+ ],
133
+ // `claude mcp add` → the verified Gemini equivalent.
134
+ [/\bclaude mcp add\b/g, 'gemini mcp add'],
135
+ ];
136
+ /**
137
+ * Constructs that have no Gemini equivalent (or that Gemini would interpret
138
+ * differently). Checked AFTER the rewrites; any hit excludes the command.
139
+ */
140
+ const CLAUDE_ONLY_MARKERS = [
141
+ [/\bmcp__\w+__/, 'a Claude-prefixed MCP tool name'],
142
+ [/specship-explorer/, 'the specship-explorer subagent'],
143
+ [/\bsubagent_type\b|`Task`|`Agent`|\bTask tool\b/, 'Claude subagent dispatch'],
144
+ [/\bAskUserQuestion\b|\bTodoWrite\b/, 'a Claude-only built-in tool'],
145
+ [/\.claude\/(skills|agents|commands)\b|`[\w-]+` skill\b/, 'a Claude skill/agent asset'],
146
+ [/\bclaude mcp\b/, 'the `claude mcp` CLI'],
147
+ [/\$ARGUMENTS\b/, 'an unrewritten $ARGUMENTS'],
148
+ [/!\{/, "Gemini's `!{…}` shell-injection trigger"],
149
+ [/@\{/, "Gemini's `@{…}` file-injection trigger"],
150
+ ];
151
+ /** Thrown when a source command cannot be rendered faithfully for Gemini. */
152
+ class GeminiCommandUnsupported extends Error {
153
+ reason;
154
+ constructor(reason) {
155
+ super(`depends on ${reason}, which Gemini CLI has no equivalent for`);
156
+ this.reason = reason;
157
+ }
158
+ }
159
+ exports.GeminiCommandUnsupported = GeminiCommandUnsupported;
160
+ /** Split `---\nkey: value\n---\nbody` into a flat frontmatter map and the body. */
161
+ function parseCommandMarkdown(source) {
162
+ const text = source.replace(/\r\n/g, '\n');
163
+ const match = /^---\n([\s\S]*?)\n---\n?/.exec(text);
164
+ if (!match)
165
+ return { meta: {}, body: text };
166
+ const meta = {};
167
+ for (const line of (match[1] ?? '').split('\n')) {
168
+ const kv = /^([\w-]+):\s*(.*)$/.exec(line);
169
+ if (!kv || kv[1] === undefined)
170
+ continue;
171
+ let value = (kv[2] ?? '').trim();
172
+ if (value.length >= 2 && ((value.startsWith('"') && value.endsWith('"')) || (value.startsWith("'") && value.endsWith("'")))) {
173
+ value = value.slice(1, -1);
174
+ }
175
+ meta[kv[1]] = value;
176
+ }
177
+ return { meta, body: text.slice(match[0].length).replace(/^\n+/, '') };
178
+ }
179
+ /** TOML basic-string escaping (shared by `"…"` and `"""…"""`). */
180
+ function escapeTomlBasic(s, multiline) {
181
+ let out = '';
182
+ for (const ch of s) {
183
+ const code = ch.codePointAt(0);
184
+ if (ch === '\\')
185
+ out += '\\\\';
186
+ else if (ch === '"')
187
+ out += '\\"';
188
+ else if (ch === '\n')
189
+ out += multiline ? '\n' : '\\n';
190
+ else if (ch === '\t')
191
+ out += multiline ? '\t' : '\\t';
192
+ else if (code < 0x20 || code === 0x7f)
193
+ out += `\\u${code.toString(16).padStart(4, '0')}`;
194
+ else
195
+ out += ch;
196
+ }
197
+ return out;
198
+ }
199
+ /** True when `s` can sit inside a TOML multi-line literal string unchanged. */
200
+ function fitsMultilineLiteral(s) {
201
+ if (s.includes("'''"))
202
+ return false;
203
+ // Literal strings allow tab and newline, but no other control character.
204
+ return !/[\u0000-\u0008\u000b-\u001f\u007f]/.test(s);
205
+ }
206
+ /** Encode a prompt body as a TOML multi-line string value. */
207
+ function tomlMultiline(body) {
208
+ const text = body.endsWith('\n') ? body : `${body}\n`;
209
+ // The newline right after the opening delimiter is trimmed by TOML, and
210
+ // ending on a newline keeps a trailing quote off the closing delimiter.
211
+ return fitsMultilineLiteral(text)
212
+ ? `'''\n${text}'''`
213
+ : `"""\n${escapeTomlBasic(text, true)}"""`;
214
+ }
215
+ /** Apply the Claude → Gemini rewrites to a command body. */
216
+ function rewriteForGemini(body) {
217
+ return REWRITES.reduce((acc, [pattern, replacement]) => acc.replace(pattern, replacement), body);
218
+ }
219
+ /**
220
+ * Render one Claude command markdown file into Gemini CLI TOML. Throws
221
+ * `GeminiCommandUnsupported` when the body still depends on Claude-only
222
+ * machinery after the rewrites.
223
+ */
224
+ function renderGeminiCommand(markdownSource, sourceName = 'command') {
225
+ const { meta, body } = parseCommandMarkdown(markdownSource);
226
+ const prompt = rewriteForGemini(body);
227
+ for (const [pattern, reason] of CLAUDE_ONLY_MARKERS) {
228
+ if (pattern.test(prompt))
229
+ throw new GeminiCommandUnsupported(reason);
230
+ }
231
+ const lines = [
232
+ exports.GEMINI_COMMAND_HEADER_MARKER,
233
+ `# Rendered from commands/${sourceName}; edits here are overwritten on reinstall.`,
234
+ '',
235
+ ];
236
+ if (meta.description)
237
+ lines.push(`description = "${escapeTomlBasic(meta.description, false)}"`);
238
+ lines.push(`prompt = ${tomlMultiline(prompt)}`, '');
239
+ return lines.join('\n');
240
+ }
241
+ /** `specship/spec.md` → `specship/spec.toml`. */
242
+ function geminiCommandTarget(source) {
243
+ return source.replace(/\.md$/, '.toml');
244
+ }
245
+ /**
246
+ * Render each named source command under `commandsDir` (the same dir the
247
+ * Claude target copies from). Never throws for an unsupported command — it
248
+ * comes back with `excluded` set so the caller can surface a note.
249
+ */
250
+ function geminiCommandSet(commandsDir, names) {
251
+ return names.map((source) => {
252
+ const target = geminiCommandTarget(source);
253
+ const markdown = fs.readFileSync(path.join(commandsDir, source), 'utf-8');
254
+ try {
255
+ return { source, target, toml: renderGeminiCommand(markdown, source) };
256
+ }
257
+ catch (err) {
258
+ if (err instanceof GeminiCommandUnsupported)
259
+ return { source, target, excluded: err.message };
260
+ throw err;
261
+ }
262
+ });
263
+ }
264
+ //# sourceMappingURL=gemini-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini-commands.js","sourceRoot":"","sources":["../../src/installer/gemini-commands.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ import type { AgentTarget, Location, TargetId } from './targets/types';
14
14
  import { type PurgeEnv } from './purge';
15
15
  export { writeMcpConfig, writePermissions, hasMcpConfig, hasPermissions, } from './config-writer';
16
16
  export type { InstallLocation } from './config-writer';
17
+ declare const importESM: (specifier: string) => Promise<typeof import("@clack/prompts")>;
17
18
  export interface RunInstallerOptions {
18
19
  /**
19
20
  * Which agent target(s) to wire (GEMINI-TARGET-DOC, REQ-GEMINI-002).
@@ -54,6 +55,20 @@ export interface RunInstallerOptions {
54
55
  * overwrites a status line the user already configured (REQ-SLIM-003.A4).
55
56
  */
56
57
  statusLine?: boolean;
58
+ /**
59
+ * `--skip-index` (REQ-AUDFIX-001): a project-local install builds no index
60
+ * and creates no `.specship/` database. The summary names the skip as the
61
+ * user's choice and the closing hint says how to index later. Undefined /
62
+ * false ⇒ a local install indexes the project, as before.
63
+ */
64
+ skipIndex?: boolean;
65
+ /**
66
+ * Gemini CLI only (REQ-GEMINI-009): write the opt-in, user-tier policy TOML
67
+ * that auto-allows SpecShip's read-only MCP tools. Off by default and
68
+ * never prompted. Host-neutral at the type level — the Claude target
69
+ * simply ignores it.
70
+ */
71
+ trust?: boolean;
57
72
  /**
58
73
  * Skip every confirm and use defaults: location=local,
59
74
  * autoAllow=true. For scripting / CI.
@@ -92,7 +107,14 @@ export interface InstallRunOutcome {
92
107
  * Interactive entry — `specship install` with no args runs this.
93
108
  */
94
109
  export declare function runInstaller(): Promise<InstallRunOutcome | undefined>;
95
- export declare function runInstallerWithOptions(opts: RunInstallerOptions): Promise<InstallRunOutcome | undefined>;
110
+ export declare function runInstallerWithOptions(opts: RunInstallerOptions,
111
+ /**
112
+ * Test seam: a pre-loaded `@clack/prompts` module. The production loader
113
+ * (`importESM`) bypasses the CJS transform, which a test runner can't follow.
114
+ */
115
+ deps?: {
116
+ clack?: Awaited<ReturnType<typeof importESM>>;
117
+ }): Promise<InstallRunOutcome | undefined>;
96
118
  export interface RunUninstallerOptions {
97
119
  /**
98
120
  * Vestigial — preserved for backwards compatibility. Accepts `claude`
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/installer/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEvE,OAAO,EAA+C,KAAK,QAAQ,EAAsB,MAAM,SAAS,CAAC;AAazG,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAsBvD,MAAM,WAAW,mBAAmB;IAClC;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,EAAE,CAmBpE;AAWD;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,uEAAuE;IACvE,mBAAmB,EAAE,OAAO,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;IAC5B;;;;OAIG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAE3E;AAED,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAmMxC;AA0CD,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,qDAAqD;IACrD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,gBAAgB,GAAG,aAAa,CAAC;AAE3E;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,QAAQ,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC;IACxB,iDAAiD;IACjD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,2DAA2D;IAC3D,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,SAAS,WAAW,EAAE,EAC/B,QAAQ,EAAE,QAAQ,GACjB,eAAe,EAAE,CAwBnB;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB/E;AAoOD;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,cAAc,gBAAgB,CAAC,EACtC,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAO,GAC3B,OAAO,CAAC,IAAI,CAAC,CAwDf"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/installer/index.ts"],"names":[],"mappings":"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"}
@@ -135,8 +135,13 @@ function describeFirstPaths(targets, loc) {
135
135
  async function runInstaller() {
136
136
  return runInstallerWithOptions({});
137
137
  }
138
- async function runInstallerWithOptions(opts) {
139
- const clack = await importESM('@clack/prompts');
138
+ async function runInstallerWithOptions(opts,
139
+ /**
140
+ * Test seam: a pre-loaded `@clack/prompts` module. The production loader
141
+ * (`importESM`) bypasses the CJS transform, which a test runner can't follow.
142
+ */
143
+ deps = {}) {
144
+ const clack = deps.clack ?? await importESM('@clack/prompts');
140
145
  clack.intro(`SpecShip v${getVersion()}`);
141
146
  const useDefaults = opts.yes === true;
142
147
  // Which agents to wire. `--target=none` is an explicit skip (historical
@@ -234,6 +239,7 @@ async function runInstallerWithOptions(opts) {
234
239
  withJira: opts.withJira,
235
240
  withDesigner: opts.withDesigner,
236
241
  installStatusLine,
242
+ trust: opts.trust,
237
243
  });
238
244
  for (const file of result.files) {
239
245
  const verb = file.action === 'unchanged'
@@ -286,8 +292,12 @@ async function runInstallerWithOptions(opts) {
286
292
  }
287
293
  }
288
294
  // Step 5: for local install, initialize the project.
295
+ // `--skip-index` (REQ-AUDFIX-001.A1) means no index and no .specship/
296
+ // database at all — the watch-fallback offer is skipped too, since it only
297
+ // matters for an index that exists.
289
298
  let indexed = false;
290
- if (location === 'local') {
299
+ const indexSkippedByUser = location === 'local' && opts.skipIndex === true;
300
+ if (location === 'local' && !indexSkippedByUser) {
291
301
  indexed = (await initializeLocalProject(clack, useDefaults)) === 'indexed';
292
302
  }
293
303
  if (location === 'global') {
@@ -317,6 +327,15 @@ async function runInstallerWithOptions(opts) {
317
327
  if (summary.length > 0) {
318
328
  clack.note(summary.join('\n'), 'Applied by default');
319
329
  }
330
+ // A decision the user made with a flag is named apart from the defaults
331
+ // (REQ-AUDFIX-001.A2), followed by how to undo it.
332
+ const choices = (0, install_defaults_1.describeInstallChoices)({ indexSkippedByUser });
333
+ if (choices.length > 0) {
334
+ clack.note(choices.join('\n'), 'Your choices');
335
+ }
336
+ if (indexSkippedByUser) {
337
+ clack.log.info((0, install_defaults_1.describeIndexLaterHint)());
338
+ }
320
339
  clack.outro(`Done! Restart ${selectedTargets.map((t) => t.displayName).join(' / ')} to use SpecShip.`);
321
340
  return outcome;
322
341
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/installer/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/installer/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiIH,sDAmBC;AAiCD,oCAEC;AAED,0DAwNC;AA0FD,4CA2BC;AAQD,wCAkBC;AA0OD,gDA4DC;AAp0BD,iDAA8D;AAC9D,uCAAyB;AACzB,2CAA6B;AAC7B,uCAAyB;AACzB,6CAAuF;AACvF,yDAO4B;AAC5B,iDAA2E;AAE3E,+CAAwD;AACxD,mCAAyG;AACzG,yCAAyC;AACzC,gFAAgF;AAChF,gDAAsD;AACtD,4EAA4E;AAC5E,4EAA4E;AAC5E,uEAAuE;AACvE,uDAA2D;AAC3D,iDAAuF;AAEvF,mEAAmE;AACnE,qEAAqE;AACrE,YAAY;AACZ,iDAKyB;AAJvB,+GAAA,cAAc,OAAA;AACd,iHAAA,gBAAgB,OAAA;AAChB,6GAAA,YAAY,OAAA;AACZ,+GAAA,cAAc,OAAA;AAIhB,0EAA0E;AAC1E,uEAAuE;AACvE,8DAA8D;AAC9D,MAAM,SAAS,GAAG,IAAI,QAAQ,CAAC,WAAW,EAAE,0BAA0B,CACL,CAAC;AAElE,SAAS,YAAY,CAAC,CAAS;IAC7B,OAAO,CAAC,CAAC,cAAc,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,UAAU;IACjB,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1E,OAAO,WAAW,CAAC,OAAO,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;AA+DD;;;;;;;;GAQG;AACH,SAAgB,qBAAqB,CAAC,MAAe;IACnD,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,EAAE,CAAC;IACjC,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACvE,OAAO,CAAC,qBAAY,CAAC,CAAC;IACxB,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QAC9B,MAAM,KAAK,GAAG,IAAA,oBAAS,EAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,2BAA2B,EAAE,yBAAyB;gBACtD,GAAG,IAAA,wBAAa,GAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBACtD,qCAAqC,CACtC,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IACH,6DAA6D;IAC7D,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED,2EAA2E;AAC3E,SAAS,kBAAkB,CAAC,OAA+B,EAAE,GAAa;IACxE,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SACnC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;SACjD,GAAG,CAAC,OAAO,CAAC;SACZ,IAAI,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC;AAqBD;;GAEG;AACI,KAAK,UAAU,YAAY;IAChC,OAAO,uBAAuB,CAAC,EAAE,CAAC,CAAC;AACrC,CAAC;AAEM,KAAK,UAAU,uBAAuB,CAC3C,IAAyB;AACzB;;;GAGG;AACH,OAA0D,EAAE;IAE5D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAE9D,KAAK,CAAC,KAAK,CAAC,aAAa,UAAU,EAAE,EAAE,CAAC,CAAC;IAEzC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC;IAEtC,wEAAwE;IACxE,mCAAmC;IACnC,MAAM,eAAe,GAAG,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3D,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO;IACT,CAAC;IACD,4EAA4E;IAC5E,2EAA2E;IAC3E,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;IAErE,mEAAmE;IACnE,sEAAsE;IACtE,sEAAsE;IACtE,wEAAwE;IACxE,uEAAuE;IACvE,uEAAuE;IACvE,2EAA2E;IAC3E,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,qBAAqB,CAAC;QACtF,IAAA,wBAAQ,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;IACrH,CAAC;IAAC,MAAM,CAAC;QACP,KAAK,CAAC,GAAG,CAAC,IAAI,CACZ,oGAAoG;YACpG,yEAAyE;YACzE,qDAAqD;YACrD,wEAAwE;YACxE,oCAAoC,CACrC,CAAC;IACJ,CAAC;IAED,oEAAoE;IACpE,kEAAkE;IAClE,qEAAqE;IACrE,sEAAsE;IACtE,yDAAyD;IACzD,IAAI,QAAkB,CAAC;IACvB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC3B,CAAC;SAAM,IAAI,WAAW,EAAE,CAAC;QACvB,QAAQ,GAAG,OAAO,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;YAC7B,OAAO,EAAE,SAAS,MAAM,+CAA+C;YACvE,OAAO,EAAE,aAAa;gBACpB,CAAC,CAAC;oBACA,EAAE,KAAK,EAAE,OAAiB,EAAE,KAAK,EAAE,iCAAiC,EAAE,IAAI,EAAE,uCAAuC,EAAE;oBACrH,EAAE,KAAK,EAAE,QAAiB,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,0CAA0C,EAAE;iBACtG;gBACD,CAAC,CAAC;oBACA,EAAE,KAAK,EAAE,OAAiB,EAAE,KAAK,EAAE,iCAAiC,EAAE,IAAI,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,EAAE;oBAC1H,EAAE,KAAK,EAAE,QAAiB,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,kBAAkB,CAAC,eAAe,EAAE,QAAQ,CAAC,EAAE;iBACzG;YACH,YAAY,EAAE,OAAgB;SAC/B,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,KAAK,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;YACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,QAAQ,GAAG,GAAG,CAAC;IACjB,CAAC;IAED,6EAA6E;IAC7E,2DAA2D;IAC3D,MAAM,SAAS,GAAG,IAAA,mCAAgB,EAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAClE,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,aAAa,CAAC;IAEzE,yEAAyE;IACzE,4EAA4E;IAC5E,wDAAwD;IACxD,wEAAwE;IACxE,2EAA2E;IAC3E,8DAA8D;IAC9D,MAAM,iBAAiB,GAAG,IAAA,oCAAiB,EAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAC5E,MAAM,mBAAmB,GAAG,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,aAAa,CAAC;IAC3E,IAAI,iBAAiB,GAAsB,SAAS,CAAC;IACrD,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,IAAA,wBAAe,EAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,iBAAiB,GAAG,eAAe,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,IAAA,6BAAoB,GAAE,EAAE,qDAAqD,CAAC,CAAC;QAC5F,CAAC;aAAM,CAAC;YACN,iBAAiB,GAAG,OAAO,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,iEAAiE;IACjE,uEAAuE;IACvE,6EAA6E;IAC7E,oEAAoE;IACpE,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE;YACtC,SAAS;YACT,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,iBAAiB;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAC;QACH,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,KAAK,WAAW;gBACtC,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS;oBACrC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS;wBACrC,8DAA8D;wBAC9D,8DAA8D;wBAC9D,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM;4BAC/B,CAAC,CAAC,SAAS,CAAC;YACpB,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,wEAAwE;QACxE,2EAA2E;QAC3E,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YACtC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,wEAAwE;IACxE,2EAA2E;IAC3E,wEAAwE;IACxE,wEAAwE;IACxE,kEAAkE;IAClE,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;QACvB,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;YACzC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC;gBAC/B,OAAO,EAAE,kGAAkG;gBAC3G,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;YACH,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,KAAK,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;gBACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,OAAO,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;gBACxE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,sBAAsB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;gBACvF,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAC;YACnG,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,8CAA8C,EAAE,+BAA+B,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,sEAAsE;IACtE,2EAA2E;IAC3E,oCAAoC;IACpC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,MAAM,kBAAkB,GAAG,QAAQ,KAAK,OAAO,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC;IAC3E,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChD,OAAO,GAAG,CAAC,MAAM,sBAAsB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,KAAK,SAAS,CAAC;IAC7E,CAAC;IAED,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,mCAAmC,EAAE,aAAa,CAAC,CAAC;IACjE,CAAC;IAED,gEAAgE;IAChE,oEAAoE;IACpE,MAAM,0BAA0B,CAAC,KAAK,EAAE;QACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,WAAW;KACZ,CAAC,CAAC;IAEH,0EAA0E;IAC1E,iEAAiE;IACjE,MAAM,OAAO,GAAsB;QACjC,UAAU,EAAE,iBAAiB;QAC7B,mBAAmB;QACnB,SAAS;QACT,kBAAkB;QAClB,OAAO;KACR,CAAC;IACF,MAAM,OAAO,GAAG,IAAA,0CAAuB,EAAC;QACtC,GAAG,OAAO;QACV,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QACtC,cAAc,EAAE,OAAO;KACxB,CAAC,CAAC;IACH,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACvD,CAAC;IACD,wEAAwE;IACxE,mDAAmD;IACnD,MAAM,OAAO,GAAG,IAAA,yCAAsB,EAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC/D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,kBAAkB,EAAE,CAAC;QACvB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAA,yCAAsB,GAAE,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,KAAK,CACT,iBAAiB,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAC1F,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,0BAA0B,CACvC,KAA4C,EAC5C,KAA2E;IAE3E,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,YAAY;QAAE,OAAO;IACnD,MAAM,EACJ,oBAAoB,EACpB,mBAAmB,EACnB,aAAa,GACd,GAAG,wDAAa,qBAAqB,GAAC,CAAC;IAExC,MAAM,cAAc,GAAG,GAAY,EAAE;QACnC,IAAI,CAAC;YACH,mEAAmE;YACnE,iEAAiE;YACjE,MAAM,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAoC,CAAC;YAChG,sBAAsB,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,oBAAoB,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC;IAE5E,MAAM,UAAU,GAAG,CAAC,OAAe,EAAE,IAAc,EAAmB,EAAE,CACtE,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QACtB,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACzD,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QACtC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEL,MAAM,mBAAmB,CAAC,IAAI,EAAE,KAA4D,EAAE,UAAU,CAAC,CAAC;AAC5G,CAAC;AA4CD;;;;;GAKG;AACH,SAAgB,gBAAgB,CAC9B,OAA+B,EAC/B,QAAkB;IAElB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC5B,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,GAAa,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;YACjE,OAAO;gBACL,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,MAAM,EAAE,aAAsB;gBAC9B,YAAY,EAAE,EAAE;gBAChB,KAAK,EAAE,CAAC,MAAM,QAAQ,2BAA2B,IAAI,OAAO,CAAC;aAC9D,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1C,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK;aAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC;aACrC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO;YACL,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,MAAM,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,SAAmB,CAAC,CAAC,CAAE,gBAA0B;YACpF,YAAY;YACZ,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;SAC1B,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,cAAc,CAAC,IAA2B;IAC9D,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAChD,KAAK,CAAC,KAAK,CAAC,aAAa,UAAU,EAAE,cAAc,CAAC,CAAC;IAErD,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QAC/C,OAAO;IACT,CAAC;IACD,4EAA4E;IAC5E,yEAAyE;IACzE,kEAAkE;IAClE,MAAM,eAAe,GAAG,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE3D,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,MAAM,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;QACxD,OAAO;IACT,CAAC;IACD,MAAM,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,mBAAmB,CAChC,KAAsC,EACtC,IAA2B,EAC3B,OAA+B;IAE/B,IAAI,QAAkB,CAAC;IACvB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC3B,CAAC;SAAM,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;QAC7B,QAAQ,GAAG,OAAO,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;YAC7B,OAAO,EAAE,yDAAyD;YAClE,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,OAAiB,EAAE,KAAK,EAAE,2BAA2B,EAAE,IAAI,EAAE,uCAAuC,EAAE;gBAC/G,EAAE,KAAK,EAAE,QAAiB,EAAE,KAAK,EAAE,uBAAuB,EAAE,IAAI,EAAE,0CAA0C,EAAE;aAC/G;YACD,YAAY,EAAE,OAAgB;SAC/B,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;YACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,QAAQ,GAAG,GAAG,CAAC;IACjB,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACpD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC;QAChC,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,YAAY;gBAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,aAAa,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC3F,CAAC;aAAM,IAAI,MAAM,CAAC,MAAM,KAAK,gBAAgB,EAAE,CAAC;YAC9C,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,sCAAsC,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,eAAe,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,sBAAsB,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IACD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IAC/D,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE7D,IAAI,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;QACjF,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,0FAA0F,CAAC,CAAC;IAC7G,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,kHAAkH,CAAC,CAAC;IAEnI,IAAI,UAAU,EAAE,CAAC;QACf,KAAK,CAAC,KAAK,CAAC,yBAAyB,MAAM,wBAAwB,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,KAAK,CAAC,kCAAkC,MAAM,WAAW,QAAQ,gCAAgC,CAAC,CAAC;IAC3G,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,cAAc,CAC3B,KAAsC,EACtC,IAA2B;IAE3B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,qBAAqB,EAAE,CAAC;IACrD,MAAM,IAAI,GAAG,IAAA,iBAAS,EAAC,GAAG,CAAC,CAAC;IAE5B,MAAM,OAAO,GAAa;QACxB,4CAA4C;QAC5C,0BAA0B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;QACtD,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iDAAiD,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3F,CAAC;IACF,IAAI,IAAI,CAAC,OAAO;QAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1E,IAAI,IAAI,CAAC,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;IAC1F,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;IAEtG,KAAK,CAAC,GAAG,CAAC,IAAI,CACZ,iDAAiD;QACjD,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACzC,qFAAqF,CACtF,CAAC;IAEF,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,6BAA6B,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;QACrG,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YAChD,KAAK,CAAC,MAAM,CAAC,4CAA4C,CAAC,CAAC;YAC3D,OAAO;QACT,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,+DAA+D;IAC/D,KAAK,MAAM,QAAQ,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAe,EAAE,CAAC;QACzD,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,sBAAW,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC7D,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;oBACpC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,WAAW,KAAK,QAAQ,cAAc,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAClF,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,yEAAyE;IACzE,MAAM,MAAM,GAAG,IAAA,oBAAY,EAAC,IAAI,EAAE,mBAAmB,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3E,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK;QAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEtD,KAAK,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;AAC5E,CAAC;AAED,+EAA+E;AAC/E,SAAS,qBAAqB;IAC5B,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC;IAC5F,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IACxF,OAAO;QACL,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE;QACrB,UAAU;QACV,MAAM;QACN,MAAM,EAAE,IAAA,6BAAmB,EAAC,SAAS,EAAE,UAAU,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,yFAAyF;AACzF,SAAS,mBAAmB,CAC1B,KAAsC,EACtC,OAAe;IAEf,OAAO;QACL,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACX,IAAA,0BAAkB,EAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC/B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAC;YACpC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACZ,IAAI,CAAC;gBAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,OAAO,KAAK,CAAC;YAAC,CAAC,CAAC,6CAA6C;YAC9F,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,YAAY,EAAE,GAAG,EAAE;YACjB,IAAI,CAAC;gBACH,IAAA,4BAAY,EAAC,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,oBAAoB,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAC7E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,yCAAyC,EAAE,CAAC;YACzE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EACJ,sEAAsE;wBACtE,mCAAmC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG;iBACzF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC;KACrC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,OAAO,CAAC,CAAS;IACxB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IACrC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzE,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,sBAAsB,CACnC,KAAsC,EACtC,WAAW,GAAG,KAAK;IAEnB,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAElC,IAAI,QAA2C,CAAC;IAChD,IAAI,CAAC;QACH,QAAQ,GAAG,CAAC,wDAAa,UAAU,GAAC,CAAC,CAAC,OAAO,CAAC;IAChD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,kCAAkC,GAAG,EAAE,CAAC,CAAC;QACzD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;QACjF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,+BAA+B;IAC/B,IAAI,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;QACxC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QAC/D,MAAM,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;QACnE,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,aAAa;IACb,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAElD,+EAA+E;IAC/E,MAAM,EAAE,qBAAqB,EAAE,GAAG,wDAAa,wBAAwB,GAAC,CAAC;IACzE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAA,kBAAS,GAAE,CAAC,IAAI,WAAW,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAC;IAEzC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC;QAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;KAChC,CAAC,CAAC;IAEH,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEtB,IAAI,MAAM,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACtK,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACzH,CAAC;IAED,EAAE,CAAC,KAAK,EAAE,CAAC;IAEX,MAAM,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;IACnE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,kBAAkB,CACtC,KAAsC,EACtC,WAAmB,EACnB,OAA0B,EAAE;IAE5B,MAAM,MAAM,GAAG,IAAA,kCAAmB,EAAC,WAAW,CAAC,CAAC;IAChD,IAAI,CAAC,MAAM;QAAE,OAAO,CAAC,6CAA6C;IAElE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,yCAAyC,MAAM,GAAG,CAAC,CAAC;IACnE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,4FAA4F,CAAC,CAAC;IAE7G,0EAA0E;IAC1E,IAAI,CAAC,IAAA,qBAAS,EAAC,WAAW,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;QACjF,OAAO;IACT,CAAC;IAED,4EAA4E;IAC5E,IAAI,IAAA,+BAAmB,EAAC,WAAW,CAAC,EAAE,CAAC;QACrC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,4FAA4F,CAAC,CAAC;QAC7G,OAAO;IACT,CAAC;IAED,IAAI,MAAyB,CAAC;IAC9B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,MAAM,CAAC;IAClB,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;YAC7B,OAAO,EAAE,2CAA2C;YACpD,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,MAAe,EAAE,KAAK,EAAE,sCAAsC,EAAE,IAAI,EAAE,kCAAkC,EAAE;gBACnH,EAAE,KAAK,EAAE,QAAiB,EAAE,KAAK,EAAE,kCAAkC,EAAE,IAAI,EAAE,cAAc,EAAE;aAC9F;YACD,YAAY,EAAE,MAAe;SAC9B,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;YACpF,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,CAAC;IACf,CAAC;IAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;QACjF,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,8BAAkB,EAAC,WAAW,CAAC,CAAC;IAC/C,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,KAAK,CAAC,GAAG,CAAC,OAAO,CACf,iBAAiB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK;YAC/F,mDAAmD,CACpD,CAAC;QACF,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;IACxE,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,GAAG,CAAC,IAAI,CACZ,8BAA8B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI;YAC9E,4CAA4C,CAC7C,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -59,4 +59,23 @@ export declare function resolveAutoAllow(flag: boolean | undefined, installClaud
59
59
  * user made explicitly with a flag is not echoed — they already know.
60
60
  */
61
61
  export declare function describeInstallDefaults(input: InstallDefaultsSummaryInput): string[];
62
+ /**
63
+ * The command that builds a project's index after an install that skipped it.
64
+ * `specship init` indexes by default (its `-i` flag is a deprecated no-op).
65
+ */
66
+ export declare const INDEX_LATER_COMMAND = "specship init";
67
+ /**
68
+ * Lines naming the decisions the USER made explicitly that changed what the
69
+ * install did (REQ-AUDFIX-001.A2). Kept apart from `describeInstallDefaults`
70
+ * on purpose: a `--skip-index` is the user's choice, not a default, so it must
71
+ * never appear under the "Applied by default" heading.
72
+ */
73
+ export declare function describeInstallChoices(input: {
74
+ indexSkippedByUser: boolean;
75
+ }): string[];
76
+ /**
77
+ * The closing hint shown after an install that left the project un-indexed
78
+ * at the user's request (REQ-AUDFIX-001.A2): how to build the index later.
79
+ */
80
+ export declare function describeIndexLaterHint(): string;
62
81
  //# sourceMappingURL=install-defaults.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"install-defaults.d.ts","sourceRoot":"","sources":["../../src/installer/install-defaults.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,2DAA2D;AAC3D,MAAM,MAAM,iBAAiB;AAC3B,sCAAsC;AACpC,OAAO;AACT,mFAAmF;GACjF,eAAe;AACjB,4EAA4E;GAC1E,SAAS,CAAC;AAEd,6DAA6D;AAC7D,MAAM,MAAM,YAAY;AACtB,+BAA+B;AAC7B,SAAS;AACX,8EAA8E;GAC5E,SAAS,CAAC;AAEd,MAAM,WAAW,2BAA2B;IAC1C,UAAU,EAAE,iBAAiB,CAAC;IAC9B,kFAAkF;IAClF,mBAAmB,EAAE,OAAO,CAAC;IAC7B,KAAK,EAAE,YAAY,CAAC;IACpB,4DAA4D;IAC5D,cAAc,EAAE,OAAO,CAAC;IACxB,0DAA0D;IAC1D,SAAS,EAAE,OAAO,CAAC;IACnB,0EAA0E;IAC1E,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,aAAa,EAAE,OAAO,GAAG,OAAO,CAG5F;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,aAAa,EAAE,OAAO,GAAG,OAAO,CAG3F;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,2BAA2B,GAAG,MAAM,EAAE,CAuBpF"}
1
+ {"version":3,"file":"install-defaults.d.ts","sourceRoot":"","sources":["../../src/installer/install-defaults.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,2DAA2D;AAC3D,MAAM,MAAM,iBAAiB;AAC3B,sCAAsC;AACpC,OAAO;AACT,mFAAmF;GACjF,eAAe;AACjB,4EAA4E;GAC1E,SAAS,CAAC;AAEd,6DAA6D;AAC7D,MAAM,MAAM,YAAY;AACtB,+BAA+B;AAC7B,SAAS;AACX,8EAA8E;GAC5E,SAAS,CAAC;AAEd,MAAM,WAAW,2BAA2B;IAC1C,UAAU,EAAE,iBAAiB,CAAC;IAC9B,kFAAkF;IAClF,mBAAmB,EAAE,OAAO,CAAC;IAC7B,KAAK,EAAE,YAAY,CAAC;IACpB,4DAA4D;IAC5D,cAAc,EAAE,OAAO,CAAC;IACxB,0DAA0D;IAC1D,SAAS,EAAE,OAAO,CAAC;IACnB,0EAA0E;IAC1E,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,aAAa,EAAE,OAAO,GAAG,OAAO,CAG5F;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,aAAa,EAAE,OAAO,GAAG,OAAO,CAG3F;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,2BAA2B,GAAG,MAAM,EAAE,CAuBpF;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,kBAAkB,CAAC;AAEnD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAAE,kBAAkB,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,EAAE,CAMvF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C"}