@tacuchi/agent-workflow-cli 22.4.1 → 23.0.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 (246) hide show
  1. package/README.md +2 -2
  2. package/dist/adapters/git-cli.js +59 -17
  3. package/dist/adapters/git-cli.js.map +1 -1
  4. package/dist/adapters/node-file-system.js +55 -1
  5. package/dist/adapters/node-file-system.js.map +1 -1
  6. package/dist/application/artifacts-service.js +2 -2
  7. package/dist/application/artifacts-service.js.map +1 -1
  8. package/dist/application/capability/dispatcher.js +2 -2
  9. package/dist/application/capability/dispatcher.js.map +1 -1
  10. package/dist/application/capability/installed-inventory.js +2 -2
  11. package/dist/application/capability/installed-inventory.js.map +1 -1
  12. package/dist/application/capability/readiness.js +1 -1
  13. package/dist/application/capability/readiness.js.map +1 -1
  14. package/dist/application/check-branch-service.js +2 -2
  15. package/dist/application/check-branch-service.js.map +1 -1
  16. package/dist/application/checkpoint/files-touched.js +271 -0
  17. package/dist/application/checkpoint/files-touched.js.map +1 -0
  18. package/dist/application/checkpoint/markdown.js +61 -8
  19. package/dist/application/checkpoint/markdown.js.map +1 -1
  20. package/dist/application/checkpoint/state-reader.js +8 -2
  21. package/dist/application/checkpoint/state-reader.js.map +1 -1
  22. package/dist/application/checkpoint-write-service.js +16 -5
  23. package/dist/application/checkpoint-write-service.js.map +1 -1
  24. package/dist/application/claims-ledger.js +330 -0
  25. package/dist/application/claims-ledger.js.map +1 -0
  26. package/dist/application/claims-recovery.js +338 -0
  27. package/dist/application/claims-recovery.js.map +1 -0
  28. package/dist/application/dev-only-services.js +154 -44
  29. package/dist/application/dev-only-services.js.map +1 -1
  30. package/dist/application/elicitation-server.js +382 -0
  31. package/dist/application/elicitation-server.js.map +1 -0
  32. package/dist/application/elicitation-stdio.js +48 -0
  33. package/dist/application/elicitation-stdio.js.map +1 -0
  34. package/dist/application/flow/advance.js +86 -5
  35. package/dist/application/flow/advance.js.map +1 -1
  36. package/dist/application/flow/checkout-observation.js +152 -0
  37. package/dist/application/flow/checkout-observation.js.map +1 -0
  38. package/dist/application/flow/flow-service.js +72 -13
  39. package/dist/application/flow/flow-service.js.map +1 -1
  40. package/dist/application/flow/internal-actions.js +460 -1
  41. package/dist/application/flow/internal-actions.js.map +1 -1
  42. package/dist/application/flow/internal-drive.js +22 -9
  43. package/dist/application/flow/internal-drive.js.map +1 -1
  44. package/dist/application/flow/prove.js +205 -0
  45. package/dist/application/flow/prove.js.map +1 -0
  46. package/dist/application/flow/run-journey.js +15 -0
  47. package/dist/application/flow/run-journey.js.map +1 -0
  48. package/dist/application/flow/run-projection.js +15 -3
  49. package/dist/application/flow/run-projection.js.map +1 -1
  50. package/dist/application/flow/run-state-service.js +19 -4
  51. package/dist/application/flow/run-state-service.js.map +1 -1
  52. package/dist/application/flow/submit.js +250 -72
  53. package/dist/application/flow/submit.js.map +1 -1
  54. package/dist/application/generate-launch-service.js +4 -4
  55. package/dist/application/generate-launch-service.js.map +1 -1
  56. package/dist/application/git-flow-service.js +9 -0
  57. package/dist/application/git-flow-service.js.map +1 -1
  58. package/dist/application/local-proposal.js +9 -0
  59. package/dist/application/local-proposal.js.map +1 -1
  60. package/dist/application/lock-service.js +6 -3
  61. package/dist/application/lock-service.js.map +1 -1
  62. package/dist/application/mcp-doctor-service.js.map +1 -1
  63. package/dist/application/mcp-host-reader.js +30 -13
  64. package/dist/application/mcp-host-reader.js.map +1 -1
  65. package/dist/application/mcp-host-writer.js +136 -112
  66. package/dist/application/mcp-host-writer.js.map +1 -1
  67. package/dist/application/mcp-remove-service.js +7 -3
  68. package/dist/application/mcp-remove-service.js.map +1 -1
  69. package/dist/application/mcp-scope-common.js +1 -3
  70. package/dist/application/mcp-scope-common.js.map +1 -1
  71. package/dist/application/mcp-setup-service.js +7 -3
  72. package/dist/application/mcp-setup-service.js.map +1 -1
  73. package/dist/application/merge-state-service.js +10 -16
  74. package/dist/application/merge-state-service.js.map +1 -1
  75. package/dist/application/multiroot/claude.js +34 -15
  76. package/dist/application/multiroot/claude.js.map +1 -1
  77. package/dist/application/multiroot/codex.js +9 -5
  78. package/dist/application/multiroot/codex.js.map +1 -1
  79. package/dist/application/multiroot-service.js +20 -11
  80. package/dist/application/multiroot-service.js.map +1 -1
  81. package/dist/application/parsers/project-block.js +25 -2
  82. package/dist/application/parsers/project-block.js.map +1 -1
  83. package/dist/application/paths-service.js +30 -31
  84. package/dist/application/paths-service.js.map +1 -1
  85. package/dist/application/plan-exec-batch-service.js +549 -0
  86. package/dist/application/plan-exec-batch-service.js.map +1 -0
  87. package/dist/application/plan-exec-decision-service.js +273 -0
  88. package/dist/application/plan-exec-decision-service.js.map +1 -0
  89. package/dist/application/project-md-service.js +2 -2
  90. package/dist/application/project-md-service.js.map +1 -1
  91. package/dist/application/project-md-upsert-service.js +4 -4
  92. package/dist/application/project-md-upsert-service.js.map +1 -1
  93. package/dist/application/project-tab-data.js +12 -7
  94. package/dist/application/project-tab-data.js.map +1 -1
  95. package/dist/application/release-data-service.js +2 -2
  96. package/dist/application/release-data-service.js.map +1 -1
  97. package/dist/application/resume-service.js +32 -11
  98. package/dist/application/resume-service.js.map +1 -1
  99. package/dist/application/retirement/apply.js +84 -0
  100. package/dist/application/retirement/apply.js.map +1 -1
  101. package/dist/application/retirement/attribution.js +31 -1
  102. package/dist/application/retirement/attribution.js.map +1 -1
  103. package/dist/application/retirement/graph.js +19 -1
  104. package/dist/application/retirement/graph.js.map +1 -1
  105. package/dist/application/retirement/journal.js +11 -0
  106. package/dist/application/retirement/journal.js.map +1 -1
  107. package/dist/application/retirement/prepare.js +89 -3
  108. package/dist/application/retirement/prepare.js.map +1 -1
  109. package/dist/application/retirement/preview.js +16 -0
  110. package/dist/application/retirement/preview.js.map +1 -1
  111. package/dist/application/retirement/resolve.js +65 -0
  112. package/dist/application/retirement/resolve.js.map +1 -1
  113. package/dist/application/self/host-states.js +2 -0
  114. package/dist/application/self/host-states.js.map +1 -1
  115. package/dist/application/self/install-skill.js +53 -19
  116. package/dist/application/self/install-skill.js.map +1 -1
  117. package/dist/application/self/mcp-config.js +28 -30
  118. package/dist/application/self/mcp-config.js.map +1 -1
  119. package/dist/application/self/mcp-offer.js +96 -0
  120. package/dist/application/self/mcp-offer.js.map +1 -0
  121. package/dist/application/self/mcp-via-state.js +59 -0
  122. package/dist/application/self/mcp-via-state.js.map +1 -0
  123. package/dist/application/self/uninstall-skill.js +18 -3
  124. package/dist/application/self/uninstall-skill.js.map +1 -1
  125. package/dist/application/self/uninstall.js +37 -8
  126. package/dist/application/self/uninstall.js.map +1 -1
  127. package/dist/application/session-close-service.js +24 -1
  128. package/dist/application/session-close-service.js.map +1 -1
  129. package/dist/application/session-create-service.js +7 -0
  130. package/dist/application/session-create-service.js.map +1 -1
  131. package/dist/application/session-resume-service.js +2 -2
  132. package/dist/application/session-resume-service.js.map +1 -1
  133. package/dist/application/sessions-service.js +2 -4
  134. package/dist/application/sessions-service.js.map +1 -1
  135. package/dist/application/skills-resolver-service.js +4 -4
  136. package/dist/application/skills-resolver-service.js.map +1 -1
  137. package/dist/application/source-boundary-policy.js +18 -7
  138. package/dist/application/source-boundary-policy.js.map +1 -1
  139. package/dist/application/source-remove-service.js +12 -1
  140. package/dist/application/source-remove-service.js.map +1 -1
  141. package/dist/application/sources-service.js +2 -2
  142. package/dist/application/sources-service.js.map +1 -1
  143. package/dist/application/status-service.js +4 -0
  144. package/dist/application/status-service.js.map +1 -1
  145. package/dist/application/visibility-doctor-service.js +1 -1
  146. package/dist/application/visibility-doctor-service.js.map +1 -1
  147. package/dist/application/workline-index-service.js +182 -27
  148. package/dist/application/workline-index-service.js.map +1 -1
  149. package/dist/application/workspace-init-service.js +85 -265
  150. package/dist/application/workspace-init-service.js.map +1 -1
  151. package/dist/application/workspace-materialization-service.js +300 -0
  152. package/dist/application/workspace-materialization-service.js.map +1 -0
  153. package/dist/application/worktree-service.js +32 -3
  154. package/dist/application/worktree-service.js.map +1 -1
  155. package/dist/cli/commands/capability.js +4 -7
  156. package/dist/cli/commands/capability.js.map +1 -1
  157. package/dist/cli/commands/claims.js +72 -0
  158. package/dist/cli/commands/claims.js.map +1 -0
  159. package/dist/cli/commands/dev-only.js +73 -25
  160. package/dist/cli/commands/dev-only.js.map +1 -1
  161. package/dist/cli/commands/flow.js +145 -42
  162. package/dist/cli/commands/flow.js.map +1 -1
  163. package/dist/cli/commands/index.js +2 -0
  164. package/dist/cli/commands/index.js.map +1 -1
  165. package/dist/cli/commands/mcp.js +124 -35
  166. package/dist/cli/commands/mcp.js.map +1 -1
  167. package/dist/cli/commands/multiroot.js +40 -7
  168. package/dist/cli/commands/multiroot.js.map +1 -1
  169. package/dist/cli/commands/resume.js +9 -3
  170. package/dist/cli/commands/resume.js.map +1 -1
  171. package/dist/cli/commands/retirement.js +9 -0
  172. package/dist/cli/commands/retirement.js.map +1 -1
  173. package/dist/cli/commands/session-create.js +1 -1
  174. package/dist/cli/commands/session-create.js.map +1 -1
  175. package/dist/cli/commands/skills.js +1 -1
  176. package/dist/cli/commands/skills.js.map +1 -1
  177. package/dist/cli/commands/status.js +72 -24
  178. package/dist/cli/commands/status.js.map +1 -1
  179. package/dist/cli/commands/workspace-init.js +5 -5
  180. package/dist/cli/commands/workspace-init.js.map +1 -1
  181. package/dist/cli/help-groups.js +5 -0
  182. package/dist/cli/help-groups.js.map +1 -1
  183. package/dist/cli/main.js +112 -39
  184. package/dist/cli/main.js.map +1 -1
  185. package/dist/cli/parser.js +3 -0
  186. package/dist/cli/parser.js.map +1 -1
  187. package/dist/cli/tui/app.js +3 -2
  188. package/dist/cli/tui/app.js.map +1 -1
  189. package/dist/cli/tui/components/host-admin-section.js +46 -2
  190. package/dist/cli/tui/components/host-admin-section.js.map +1 -1
  191. package/dist/cli/tui/components/workspace-init-form.js +7 -7
  192. package/dist/cli/tui/components/workspace-init-form.js.map +1 -1
  193. package/dist/cli/tui/data/workflow-content.js +2 -2
  194. package/dist/cli/tui/data/workflow-content.js.map +1 -1
  195. package/dist/cli/tui/tabs/config-tab.js +4 -3
  196. package/dist/cli/tui/tabs/config-tab.js.map +1 -1
  197. package/dist/cli/tui/tabs/mcp-tab-helpers.js +1 -1
  198. package/dist/cli/tui/tabs/mcp-tab-helpers.js.map +1 -1
  199. package/dist/cli/tui/tabs/project-tab.js +18 -21
  200. package/dist/cli/tui/tabs/project-tab.js.map +1 -1
  201. package/dist/cli/tui/workspace-root.js +13 -0
  202. package/dist/cli/tui/workspace-root.js.map +1 -0
  203. package/dist/domain/capability/protocol.js +2 -2
  204. package/dist/domain/capability/protocol.js.map +1 -1
  205. package/dist/domain/degradation-notice.js +60 -0
  206. package/dist/domain/degradation-notice.js.map +1 -0
  207. package/dist/domain/elicitation.js +152 -0
  208. package/dist/domain/elicitation.js.map +1 -0
  209. package/dist/domain/flow/answer.js +173 -42
  210. package/dist/domain/flow/answer.js.map +1 -1
  211. package/dist/domain/flow/authority.js +180 -127
  212. package/dist/domain/flow/authority.js.map +1 -1
  213. package/dist/domain/flow/directive.js +47 -1
  214. package/dist/domain/flow/directive.js.map +1 -1
  215. package/dist/domain/flow/rules.js +7 -4
  216. package/dist/domain/flow/rules.js.map +1 -1
  217. package/dist/domain/flow/run-state.js +636 -31
  218. package/dist/domain/flow/run-state.js.map +1 -1
  219. package/dist/domain/harnesses.js +17 -1
  220. package/dist/domain/harnesses.js.map +1 -1
  221. package/dist/domain/mcp-entry.js +36 -14
  222. package/dist/domain/mcp-entry.js.map +1 -1
  223. package/dist/domain/retirement/proposal.js +1 -0
  224. package/dist/domain/retirement/proposal.js.map +1 -1
  225. package/dist/domain/structured-choice-stamp.js +32 -4
  226. package/dist/domain/structured-choice-stamp.js.map +1 -1
  227. package/dist/domain/workline-mcp-entry.js +37 -0
  228. package/dist/domain/workline-mcp-entry.js.map +1 -0
  229. package/dist/runtime/namespace-resolver.js +104 -18
  230. package/dist/runtime/namespace-resolver.js.map +1 -1
  231. package/package.json +1 -1
  232. package/skills/w/README.md +2 -2
  233. package/skills/w/SKILL.md +9 -10
  234. package/skills/w/artifacts/README.md +1 -1
  235. package/skills/w/commands/README.md +3 -3
  236. package/skills/w/commands/persist.md +3 -1
  237. package/skills/w/commands/resume.md +1 -1
  238. package/skills/w/commands/spec-new.md +2 -2
  239. package/skills/w/commands/status.md +1 -1
  240. package/skills/w/commands/workspace-init.md +9 -10
  241. package/skills/w/context/MANIFEST.json +1 -4
  242. package/skills/w/harness/HARNESS.md +1 -1
  243. package/skills/w/loops/quick-loop/LOOP.md +1 -1
  244. package/skills/w/modules/PROMPT-CONTINUITY.md +1 -1
  245. package/skills/w/modules/WORKSPACE-SCAFFOLD.md +17 -20
  246. package/skills/w/schemas/capability-descriptor.schema.json +1 -1
@@ -0,0 +1,300 @@
1
+ import { dirname, isAbsolute, join, relative, resolve, sep } from "node:path";
2
+ import { acquireLock } from "./lock-service.js";
3
+ /** Machine-local runtime paths which must never become project history. */
4
+ export function runtimeGitignoreEntries(namespace) {
5
+ return [
6
+ `.${namespace}/sessions/`,
7
+ `.${namespace}/.lock`,
8
+ `.${namespace}/processes.json`,
9
+ `.${namespace}/launch/`,
10
+ "docs/logs/",
11
+ ];
12
+ }
13
+ export const RUNTIME_GITIGNORE_HEADER = "# agent-workflow runtime (machine-specific — do not commit)";
14
+ /**
15
+ * A filesystem boundary for command dispatch.
16
+ *
17
+ * Most mutations are deliberately implemented in small domain services rather
18
+ * than funnelled through one giant command switch. That is good for their
19
+ * local contracts, but it used to leave a hole: a direct writer such as
20
+ * `next-number --publish` could create `docs/` before the Workline runtime had
21
+ * a canonical marker. This adapter closes that hole without making reads (or
22
+ * invalid command paths that never write) materialize a workspace.
23
+ *
24
+ * It uses the underlying filesystem to materialize, never itself, so the
25
+ * materializer's lock and marker writes cannot recursively re-enter the guard.
26
+ * The first successful workspace-scoped write retains its receipt for the CLI
27
+ * dispatcher to expose alongside the command result.
28
+ */
29
+ export class MaterializingWorkspaceFileSystem {
30
+ delegate;
31
+ paths;
32
+ receipt;
33
+ materializing;
34
+ root;
35
+ constructor(delegate, paths) {
36
+ this.delegate = delegate;
37
+ this.paths = paths;
38
+ this.root = resolve(paths.workspaceDir());
39
+ }
40
+ /** The materialization this dispatch caused, if its command wrote locally. */
41
+ materialization() {
42
+ return this.receipt;
43
+ }
44
+ /**
45
+ * Reuse the same operation when a service explicitly asks to materialize.
46
+ * This is what keeps service-level callers and the dispatcher guard from
47
+ * racing each other or turning a newly-created receipt into an "existing"
48
+ * one.
49
+ */
50
+ async ensureMaterialized() {
51
+ if (this.receipt !== undefined)
52
+ return this.receipt;
53
+ if (this.materializing !== undefined) {
54
+ this.receipt = await this.materializing;
55
+ return this.receipt;
56
+ }
57
+ const materializing = ensureWorklineMaterialized(this.delegate, this.paths);
58
+ this.materializing = materializing;
59
+ try {
60
+ this.receipt = await materializing;
61
+ return this.receipt;
62
+ }
63
+ finally {
64
+ if (this.materializing === materializing)
65
+ this.materializing = undefined;
66
+ }
67
+ }
68
+ async readText(path) {
69
+ return await this.delegate.readText(path);
70
+ }
71
+ async readBytes(path) {
72
+ return await this.delegate.readBytes(path);
73
+ }
74
+ async writeText(path, content) {
75
+ await this.beforeWorkspaceMutation(path);
76
+ await this.delegate.writeText(path, content);
77
+ }
78
+ async appendText(path, content) {
79
+ await this.beforeWorkspaceMutation(path);
80
+ await this.delegate.appendText(path, content);
81
+ }
82
+ async writeTextExclusive(path, content) {
83
+ await this.beforeWorkspaceMutation(path);
84
+ return await this.delegate.writeTextExclusive(path, content);
85
+ }
86
+ async publishTextExclusive(path, content) {
87
+ await this.beforeWorkspaceMutation(path);
88
+ return await this.delegate.publishTextExclusive(path, content);
89
+ }
90
+ async remove(path) {
91
+ await this.beforeWorkspaceMutation(path);
92
+ await this.delegate.remove(path);
93
+ }
94
+ async exists(path) {
95
+ return await this.delegate.exists(path);
96
+ }
97
+ async list(path) {
98
+ return await this.delegate.list(path);
99
+ }
100
+ async mkdirp(path) {
101
+ await this.beforeWorkspaceMutation(path);
102
+ await this.delegate.mkdirp(path);
103
+ }
104
+ async stat(path) {
105
+ return await this.delegate.stat(path);
106
+ }
107
+ async symlink(target, path) {
108
+ await this.beforeWorkspaceMutation(path);
109
+ await this.delegate.symlink(target, path);
110
+ }
111
+ async lstat(path) {
112
+ return await this.delegate.lstat(path);
113
+ }
114
+ async realPath(path) {
115
+ return await this.delegate.realPath(path);
116
+ }
117
+ async beforeWorkspaceMutation(path) {
118
+ if (!this.isWorkspacePath(path) || this.receipt !== undefined)
119
+ return;
120
+ await this.ensureMaterialized();
121
+ }
122
+ isWorkspacePath(path) {
123
+ const candidate = resolve(path);
124
+ // `relative` is the containment primitive rather than a string prefix:
125
+ // Node uses `\\` on Windows, while a literal `"/"` would leave every
126
+ // nested workspace write unguarded there. It also handles `root === "/"`
127
+ // without constructing the accidental prefix `"//"`.
128
+ const fromRoot = relative(this.root, candidate);
129
+ return (fromRoot.length === 0 ||
130
+ (!fromRoot.startsWith(`..${sep}`) && fromRoot !== ".." && !isAbsolute(fromRoot)));
131
+ }
132
+ }
133
+ /** True only for the canonical marker; a bare `.<ns>/` is not a workspace. */
134
+ export async function hasCanonicalSessionsMarker(fs, paths) {
135
+ try {
136
+ return (await fs.stat(paths.cwdSessionsDir())).type === "dir";
137
+ }
138
+ catch {
139
+ return false;
140
+ }
141
+ }
142
+ /**
143
+ * Materialize the minimum runtime state exactly once, under the workspace lock.
144
+ *
145
+ * The lock itself may temporarily create `.<ns>/`, but it deliberately does not
146
+ * create the canonical `sessions/` marker. The marker is created last, after
147
+ * the optional Git ignore block, so every reader either sees an implicit root or
148
+ * a fully usable materialized Workline directory.
149
+ */
150
+ export async function ensureWorklineMaterialized(fs, paths) {
151
+ // Services may receive the dispatcher guard directly. Delegate back to it so
152
+ // their explicit materialization participates in the same receipt rather
153
+ // than recursively intercepting the lock's own writes.
154
+ if (fs instanceof MaterializingWorkspaceFileSystem)
155
+ return await fs.ensureMaterialized();
156
+ const root = paths.workspaceDir();
157
+ const base = {
158
+ root,
159
+ namespace: paths.namespace,
160
+ };
161
+ if (await hasCanonicalSessionsMarker(fs, paths)) {
162
+ return {
163
+ ...base,
164
+ materialized: false,
165
+ effects: [{ kind: "sessions", path: paths.cwdSessionsDir(), status: "existing" }],
166
+ };
167
+ }
168
+ // Remove the lock atomically on release. Leaving the legacy empty lock file
169
+ // behind would make a virgin first write create more runtime state than the
170
+ // materialization contract declares.
171
+ const lock = await acquireLock(paths.cwdLockFile(), fs, {
172
+ removeOnRelease: true,
173
+ // Two first writes are one logical materialization race, not a reason for a
174
+ // caller to retry a command that has not yet done any work of its own.
175
+ waitMs: 1_000,
176
+ waitStepMs: 5,
177
+ });
178
+ try {
179
+ if (await hasCanonicalSessionsMarker(fs, paths)) {
180
+ return {
181
+ ...base,
182
+ materialized: false,
183
+ effects: [{ kind: "sessions", path: paths.cwdSessionsDir(), status: "existing" }],
184
+ };
185
+ }
186
+ const effects = [];
187
+ const git = await belongsToGit(fs, root);
188
+ if (git) {
189
+ const gitignore = join(root, ".gitignore");
190
+ const before = await gitignoreEffectStatus(fs, root, runtimeGitignoreEntries(paths.namespace));
191
+ const changed = await appendGitignoreEntries(fs, root, RUNTIME_GITIGNORE_HEADER, runtimeGitignoreEntries(paths.namespace));
192
+ effects.push({
193
+ kind: "gitignore",
194
+ path: gitignore,
195
+ // The lock makes `before` authoritative. Keep the defensive fallback
196
+ // for an unusual filesystem that reports a changed write after a
197
+ // concurrent/manual rewrite.
198
+ status: changed ? (before === "existing" ? "updated" : before) : "existing",
199
+ });
200
+ }
201
+ else {
202
+ effects.push({ kind: "gitignore", path: join(root, ".gitignore"), status: "skipped" });
203
+ }
204
+ // `acquireLock` created the parent `.<ns>/` if necessary. Keep this call
205
+ // last: `sessions/` is the only public marker a resolver is allowed to use.
206
+ await fs.mkdirp(paths.cwdSessionsDir());
207
+ effects.push({ kind: "sessions", path: paths.cwdSessionsDir(), status: "created" });
208
+ return { ...base, materialized: true, effects };
209
+ }
210
+ finally {
211
+ await lock.release();
212
+ }
213
+ }
214
+ /** Preview the same receipt without creating a lock, marker or .gitignore. */
215
+ export async function previewWorklineMaterialization(fs, paths) {
216
+ const root = paths.workspaceDir();
217
+ const sessions = await hasCanonicalSessionsMarker(fs, paths);
218
+ const git = await belongsToGit(fs, root);
219
+ const gitignore = join(root, ".gitignore");
220
+ return {
221
+ root,
222
+ namespace: paths.namespace,
223
+ materialized: !sessions,
224
+ effects: [
225
+ {
226
+ kind: "gitignore",
227
+ path: gitignore,
228
+ status: !git
229
+ ? "skipped"
230
+ : await gitignoreEffectStatus(fs, root, runtimeGitignoreEntries(paths.namespace)),
231
+ },
232
+ { kind: "sessions", path: paths.cwdSessionsDir(), status: sessions ? "existing" : "created" },
233
+ ],
234
+ };
235
+ }
236
+ /** The receipt status a runtime gitignore operation would have, without writing. */
237
+ async function gitignoreEffectStatus(fs, workspace, entries) {
238
+ const file = join(workspace, ".gitignore");
239
+ if (!(await fs.exists(file)))
240
+ return "created";
241
+ let text;
242
+ try {
243
+ text = await fs.readText(file);
244
+ }
245
+ catch {
246
+ // A file that disappeared/read-failed after exists is going to be created
247
+ // by the write path; preview the conservative effect rather than claiming
248
+ // it was already complete.
249
+ return "created";
250
+ }
251
+ const present = new Set(text
252
+ .split(/\r?\n/)
253
+ .map((line) => line.trim())
254
+ .filter((line) => line.length > 0));
255
+ return entries.every((entry) => present.has(entry)) ? "existing" : "updated";
256
+ }
257
+ /**
258
+ * Check Git membership without using it as a workspace-root heuristic. A
259
+ * nested implicit Workline remains rooted at its invoked cwd; Git only decides
260
+ * whether that root's own `.gitignore` should receive the runtime block.
261
+ */
262
+ async function belongsToGit(fs, start) {
263
+ let dir = start;
264
+ while (true) {
265
+ if (await fs.exists(join(dir, ".git")))
266
+ return true;
267
+ const parent = dirname(dir);
268
+ if (parent === dir)
269
+ return false;
270
+ dir = parent;
271
+ }
272
+ }
273
+ /**
274
+ * Add missing entries beneath one owned block, preserving user lines and EOL.
275
+ * Returns whether this call wrote the file.
276
+ */
277
+ export async function appendGitignoreEntries(fs, workspace, header, entries) {
278
+ const file = join(workspace, ".gitignore");
279
+ const existing = (await fs.exists(file)) ? await fs.readText(file) : "";
280
+ const lines = existing.split(/\r?\n/);
281
+ const present = new Set(lines.map((line) => line.trim()).filter((line) => line.length > 0));
282
+ const missing = entries.filter((entry) => !present.has(entry));
283
+ if (missing.length === 0)
284
+ return false;
285
+ const headerIdx = lines.findIndex((line) => line.trim() === header);
286
+ if (headerIdx >= 0) {
287
+ let end = headerIdx + 1;
288
+ while (end < lines.length && (lines[end] ?? "").trim().length > 0)
289
+ end++;
290
+ lines.splice(end, 0, ...missing);
291
+ const eol = existing.includes("\r\n") ? "\r\n" : "\n";
292
+ await fs.writeText(file, lines.join(eol));
293
+ return true;
294
+ }
295
+ const block = `${header}\n${missing.join("\n")}\n`;
296
+ const body = existing.replace(/\s+$/, "");
297
+ await fs.writeText(file, body.length === 0 ? block : `${body}\n\n${block}`);
298
+ return true;
299
+ }
300
+ //# sourceMappingURL=workspace-materialization-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-materialization-service.js","sourceRoot":"","sources":["../../src/application/workspace-materialization-service.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import { normalizePath } from "./multiroot/paths.js";
8
8
  import { readWorkspaceBlock } from "./parsers/project-block.js";
9
9
  import { recordIntegration, recordUnitTaken } from "./session-custody-recorder.js";
10
10
  import { listSessionFolders, resolveSessionTarget, } from "./session-resolver.js";
11
+ import { ensureWorklineMaterialized } from "./workspace-materialization-service.js";
11
12
  /**
12
13
  * How long an integration waits for the workspace lock before giving up.
13
14
  *
@@ -137,6 +138,10 @@ async function integrateUnit(deps, target) {
137
138
  hint: `posicioná el checkout en '${base}' y volvé a integrar; la integración nunca cambia de rama por su cuenta`,
138
139
  };
139
140
  }
141
+ // The merge goes through GitPort, so it would otherwise bypass the command
142
+ // filesystem guard. All refusal/precondition reads are complete above; from
143
+ // here on this operation may change a source checkout.
144
+ await ensureWorklineMaterialized(deps.fs, deps.paths);
140
145
  // The merge itself is the serialized part, and only it. Two runs integrating
141
146
  // into the same checkout would fight over one index and one MERGE_HEAD, and the
142
147
  // loser would find a repository mid-merge it never started. Waiting rather than
@@ -197,7 +202,7 @@ async function integrateUnit(deps, target) {
197
202
  };
198
203
  }
199
204
  async function resolveTarget(deps, input) {
200
- const block = await readWorkspaceBlock(deps.fs, deps.env.cwd(), deps.paths.blockMarkers());
205
+ const block = await readWorkspaceBlock(deps.fs, deps.paths.workspaceDir(), deps.paths.blockMarkers());
201
206
  const sources = block?.fuentes ?? [];
202
207
  if (sources.length === 0) {
203
208
  return {
@@ -273,6 +278,24 @@ async function canonicalUnitsRoot(deps) {
273
278
  await deps.fs.mkdirp(root);
274
279
  return deps.fs.realPath(root);
275
280
  }
281
+ /**
282
+ * Read-only counterpart of {@link canonicalUnitsRoot}.
283
+ *
284
+ * `worktree list` backs `status` and `resume`, so it cannot manufacture the
285
+ * user-level worktree directory merely to canonicalize a path. If the root
286
+ * already exists, retain the real-path comparison used by writers; when it does
287
+ * not, its lexical spelling is enough because there can be no live unit beneath
288
+ * a directory that has not been created.
289
+ */
290
+ async function canonicalUnitsRootForRead(deps) {
291
+ const root = deps.paths.userUnitsDir();
292
+ try {
293
+ return await deps.fs.realPath(root);
294
+ }
295
+ catch {
296
+ return root;
297
+ }
298
+ }
276
299
  async function ensureUnit(deps, target) {
277
300
  const { source, path, branch, base } = target;
278
301
  if (!(await deps.git.isGitRepo(source.path))) {
@@ -284,6 +307,10 @@ async function ensureUnit(deps, target) {
284
307
  // Vanished directories keep holding their branch until git is told, so the
285
308
  // prune runs BEFORE the occupancy read — otherwise a unit whose folder the
286
309
  // user deleted by hand would look occupied forever.
310
+ // The worktree itself lives under the user runtime, not under the workspace
311
+ // root, so materialize explicitly before this first Git mutation rather than
312
+ // relying on a workspace-path filesystem write to notice it.
313
+ await ensureWorklineMaterialized(deps.fs, deps.paths);
287
314
  await deps.git.worktreePrune(source.path);
288
315
  const existing = await deps.git.worktreeList(source.path);
289
316
  const mine = existing.find((w) => samePath(w.path, path));
@@ -362,6 +389,7 @@ async function releaseUnit(deps, target) {
362
389
  }
363
390
  const existing = await deps.git.worktreeList(source.path);
364
391
  if (!existing.some((w) => samePath(w.path, path))) {
392
+ await ensureWorklineMaterialized(deps.fs, deps.paths);
365
393
  await deps.git.worktreePrune(source.path);
366
394
  return {
367
395
  alias: source.alias,
@@ -372,6 +400,7 @@ async function releaseUnit(deps, target) {
372
400
  visibility: await detach(deps, path),
373
401
  };
374
402
  }
403
+ await ensureWorklineMaterialized(deps.fs, deps.paths);
375
404
  try {
376
405
  await deps.git.worktreeRemove(source.path, path);
377
406
  }
@@ -410,9 +439,9 @@ async function listUnits(deps, input) {
410
439
  if (typeof narrowed !== "string" && narrowed !== null)
411
440
  return narrowed;
412
441
  const only = narrowed;
413
- const block = await readWorkspaceBlock(deps.fs, deps.env.cwd(), deps.paths.blockMarkers());
442
+ const block = await readWorkspaceBlock(deps.fs, deps.paths.workspaceDir(), deps.paths.blockMarkers());
414
443
  const key = workspaceKey(deps.paths.workspaceDir());
415
- const root = await canonicalUnitsRoot(deps);
444
+ const root = await canonicalUnitsRootForRead(deps);
416
445
  const sessions = await sessionStates(deps);
417
446
  const units = [];
418
447
  const orphans = [];
@@ -1 +1 @@
1
- {"version":3,"file":"worktree-service.js","sourceRoot":"","sources":["../../src/application/worktree-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAEL,aAAa,EACb,UAAU,EACV,QAAQ,EACR,YAAY,GACb,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAsB,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEpF,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAEL,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAE/B;;;;;GAKG;AACH,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAwJtC,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAkB,EAClB,KAAoB;IAEpB,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3D,2EAA2E;IAC3E,+EAA+E;IAC/E,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9D,OAAO,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChD,IAAI,OAAO,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IACrC,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC/D,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW;QAAE,OAAO,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACrE,OAAO,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,gBAAgB,CAC7B,IAAkB,EAClB,KAAoB;IAEpB,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE;QACjE,MAAM,EAAE,OAAO;QACf,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzE,CAAC,CAAC;IACH,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU;QAAE,OAAO,cAAc,CAAC,UAAU,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;IAC1C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACzD,IAAI,OAAO,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;IACrE,MAAM,OAAO,GAA8C,EAAE,CAAC;IAC9D,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,IAAI,GAAkB,IAAI,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC5E,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,MAAM,MAAM,GAAG,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC9E,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,KAAK,kCAAkC,IAAI,CAAC,KAAK,WAAW,OAAO,EAAE,CAAC;YAC1E,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,IAAI,MAAM,CAAC,UAAU;YAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC9C,CAAC;YACJ,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC;QACvB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC5F,CAAC;AAED,oFAAoF;AACpF,KAAK,UAAU,MAAM,CAAC,IAAkB,EAAE,OAAe;IACvD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACpE,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,aAAa,CAC1B,IAAkB,EAClB,MAAsB;IAEtB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IACxD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC7C,OAAO;YACL,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,IAAI,4BAA4B;SACrE,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QAC/C,OAAO;YACL,KAAK,EAAE,aAAa;YACpB,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,6BAA6B,QAAQ,CAAC,OAAO,EAAE;YACvE,IAAI,EAAE,2CAA2C,MAAM,CAAC,KAAK,WAAW,QAAQ,CAAC,OAAO,GAAG;SAC5F,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,6EAA6E;IAC7E,+DAA+D;IAC/D,IAAI,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,OAAO;YACL,KAAK,EAAE,oBAAoB;YAC3B,OAAO,EAAE,gBAAgB,QAAQ,CAAC,OAAO,8BAA8B;YACvE,IAAI,EAAE,gEAAgE;SACvE,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,OAAO;YACL,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAE,4BAA4B,MAAM,CAAC,KAAK,8BAA8B;YAC/E,IAAI,EAAE,sFAAsF;SAC7F,CAAC;IACJ,CAAC;IAED,2EAA2E;IAC3E,wEAAwE;IACxE,2EAA2E;IAC3E,oEAAoE;IACpE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO;YACL,KAAK,EAAE,qBAAqB;YAC5B,OAAO,EAAE,4BAA4B,MAAM,CAAC,KAAK,aAAa,OAAO,4BAA4B,IAAI,GAAG;YACxG,IAAI,EAAE,6BAA6B,IAAI,yEAAyE;SACjH,CAAC;IACJ,CAAC;IACD,6EAA6E;IAC7E,gFAAgF;IAChF,gFAAgF;IAChF,+EAA+E;IAC/E,+EAA+E;IAC/E,gDAAgD;IAChD,EAAE;IACF,8EAA8E;IAC9E,6EAA6E;IAC7E,4EAA4E;IAC5E,qDAAqD;IACrD,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,KAAK,EACV,KAAK,IAAI,EAAE;QACT,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxD,IAAI,KAAK,CAAC,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,IAAa,EAAE,MAAM,EAAE,CAAC;QACnD,OAAO,EAAE,EAAE,EAAE,KAAc,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC;IAC9D,CAAC,EACD,EAAE,MAAM,EAAE,sBAAsB,EAAE,CACnC,CAAC;IACF,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;QACtB,OAAO;YACL,KAAK,EAAE,oBAAoB;YAC3B,OAAO,EAAE,2CAA2C,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,EAAE;YACnF,IAAI,EAAE,8FAA8F;SACrG,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,WAAW,EAAE,MAAM,CAAC,IAAI;YACxB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,IAAI,EAAE,IAAI;YACV,MAAM;YACN,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,0EAA0E;YAC1E,oEAAoE;YACpE,QAAQ,EAAE,KAAK;YACf,IAAI,EAAE,qBAAqB,MAAM,CAAC,IAAI,EAAE;SACzC,CAAC;IACJ,CAAC;IAED,MAAM,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE;QAC9C,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,UAAU,EAAE,MAAM,CAAC,IAAI;QACvB,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChD,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,WAAW,EAAE,MAAM,CAAC,IAAI;QACxB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI,EAAE,IAAI;QACV,MAAM;QACN,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,UAAU,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;QAC1D,IAAI,EAAE,IAAI;KACX,CAAC;AACJ,CAAC;AAWD,KAAK,UAAU,aAAa,CAC1B,IAAkB,EAClB,KAAoB;IAEpB,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IAC3F,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC;IACrC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,KAAK,EAAE,qBAAqB;YAC5B,OAAO,EAAE,+CAA+C;YACxD,IAAI,EAAE,iEAAiE;SACxE,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO;YACL,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAE,iDAAiD;YAC1D,IAAI,EAAE,4BAA4B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SAC3E,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO;YACL,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAE,IAAI,KAAK,CAAC,KAAK,8BAA8B;YACtD,IAAI,EAAE,uBAAuB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACtE,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE;QACjE,MAAM,EAAE,OAAO;QACf,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzE,CAAC,CAAC;IACH,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU;QAAE,OAAO,cAAc,CAAC,UAAU,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;IAC1C,MAAM,QAAQ,GAAiB;QAC7B,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QACrD,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,OAAO;KACR,CAAC;IACF,OAAO;QACL,MAAM;QACN,QAAQ;QACR,IAAI,EAAE,QAAQ,CAAC,MAAM,kBAAkB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;QACxD,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC;QAC3B,IAAI,EAAE,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI;KAChD,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,cAAc,CAAC,UAAkC;IACxD,OAAO;QACL,KAAK,EAAE,oBAAoB;QAC3B,OAAO,EAAE,qDAAqD,UAAU,CAAC,OAAO,EAAE;QAClF,IAAI,EAAE,UAAU,CAAC,MAAM;KACxB,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,kBAAkB,CAAC,IAAkB;IAClD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;IACvC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,OAAO,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,KAAK,UAAU,UAAU,CACvB,IAAkB,EAClB,MAAsB;IAEtB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAC9C,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC7C,OAAO;YACL,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,IAAI,4BAA4B;SACrE,CAAC;IACJ,CAAC;IAED,2EAA2E;IAC3E,2EAA2E;IAC3E,oDAAoD;IACpD,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE1D,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC1D,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,4EAA4E;QAC5E,+EAA+E;QAC/E,4EAA4E;QAC5E,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,MAAM,CAAC;QACnC,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;IAC5E,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;IAC3D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO;YACL,KAAK,EAAE,eAAe;YACtB,OAAO,EAAE,WAAW,MAAM,qCAAqC,MAAM,CAAC,KAAK,EAAE;YAC7E,IAAI,EAAE,wDAAwD;YAC9D,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE;SAC1C,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACpC,6EAA6E;IAC7E,+EAA+E;IAC/E,4BAA4B;IAC5B,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9E,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,KAAK,EAAE,qBAAqB;YAC5B,OAAO,EAAG,GAAa,CAAC,OAAO;YAC/B,IAAI,EAAE,8BAA8B,IAAI,eAAe,MAAM,CAAC,KAAK,EAAE;SACtE,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChD,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IACnC,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,YAAY,CACzB,IAAkB,EAClB,MAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE;QAClE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;QAC1B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;QAC9B,QAAQ,EAAE,MAAM,CAAC,IAAI;QACrB,UAAU,EAAE,MAAM,CAAC,MAAM;QACzB,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,MAAM,KAAK,YAAY;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO;QACL,KAAK,EAAE,oBAAoB;QAC3B,OAAO,EAAE,kBAAkB,MAAM,CAAC,QAAQ,CAAC,OAAO,sBAAsB,MAAM,CAAC,MAAM,EAAE;QACvF,IAAI,EAAE,2HAA2H;KAClI,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,IAAkB,EAClB,MAAsB;IAEtB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAClD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC7C,OAAO;YACL,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,IAAI,4BAA4B;SACrE,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,IAAI;YACJ,MAAM;YACN,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC;SACrC,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAG,GAAa,CAAC,OAAO;YAC/B,IAAI,EAAE,+FAA+F;SACtG,CAAC;IACJ,CAAC;IACD,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI;QACJ,MAAM;QACN,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC;KACrC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,KAAK,UAAU,SAAS,CACtB,IAAkB,EAClB,KAAoB;IAEpB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACzD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,QAAQ,CAAC;IACvE,MAAM,IAAI,GAAG,QAAQ,CAAC;IAEtB,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IAC3F,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC;IAE3C,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,MAAM,UAAU,GAAqC,EAAE,CAAC;IACxD,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC9E,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;YACvB,0EAA0E;YAC1E,yEAAyE;YACzE,0EAA0E;YAC1E,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/D,SAAS;QACX,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IACD,OAAO;QACL,aAAa,EAAE,GAAG;QAClB,KAAK;QACL,OAAO;QACP,UAAU;QACV,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,mFAAmF;AACnF,KAAK,UAAU,UAAU,CACvB,IAAkB,EAClB,MAAqB,EACrB,GAAgF;IAEhF,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACzC,8EAA8E;IAC9E,0EAA0E;IAC1E,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3D,IAAI,KAAsB,CAAC;IAC3B,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,KAAK,EAAG,GAAa,CAAC,OAAO,EAAE,CAAC;IAC3C,CAAC;IACD,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACvE,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,YAAY,KAAK,GAAG,CAAC,GAAG;YAAE,SAAS;QACrE,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,QAAQ,CAAC,OAAO,KAAK,GAAG,CAAC,IAAI;YAAE,SAAS;QACjE,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3E,IAAI,MAAM,KAAK,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;;YAC9E,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAC5B,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,QAAQ,CACrB,IAAkB,EAClB,IAAwB;IAExB,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACpC,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE;QACjE,MAAM,EAAE,MAAM;QACd,IAAI;QACJ,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,KAAK;KACZ,CAAC,CAAC;IACH,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU;QAAE,OAAO,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;IACxE,OAAO;QACL,KAAK,EAAE,oBAAoB;QAC3B,OAAO,EAAE,yBAAyB,IAAI,oCAAoC;QAC1E,IAAI,EAAE,2CAA2C;KAClD,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,QAAQ,CACrB,IAAkB,EAClB,QAAsB,EACtB,UAAkB,EAClB,IAAmB;IAEnB,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,WAAW,EAAE,UAAU;QACvB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;QACnD,OAAO,EAAE,KAAK;QACd,cAAc,EAAE,IAAI;QACpB,KAAK,EAAE,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;QACvC,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,KAAK,UAAU,SAAS,CAAC,IAAkB,EAAE,IAAY;IACvD,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CACf,QAAsB,EACtB,IAAmB,EACnB,MAA4B;IAE5B,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,MAAM;QACN,OAAO,EAAE,gCAAgC,QAAQ,CAAC,KAAK,WAAW,QAAQ,CAAC,OAAO,EAAE;KACrF,CAAC;AACJ,CAAC;AAOD,KAAK,UAAU,aAAa,CAAC,IAAkB;IAC7C,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IAC/E,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,4EAA4E;QAC5E,2EAA2E;QAC3E,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrF,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;AAChE,CAAC;AAED,0FAA0F;AAC1F,SAAS,YAAY,CACnB,OAAe,EACf,QAAuB,EACvB,QAAiB;IAEjB,IAAI,QAAQ;QAAE,OAAO,mBAAmB,CAAC;IACzC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,gBAAgB,CAAC;IAC1D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,gBAAgB,CAAC;IAC3D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,MAAM,CAAC,MAAsB,EAAE,OAAgB;IACtD,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;QAC1B,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;QAC/B,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO;QAChC,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,MAAM,CAAC,IAAkB,EAAE,IAAY;IACpD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9F,OAAO,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;AACxD,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,IAAkB,EAAE,IAAY;IACpD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9F,OAAO,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;AACxD,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS,EAAE,CAAS;IACpC,OAAO,aAAa,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"worktree-service.js","sourceRoot":"","sources":["../../src/application/worktree-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAEL,aAAa,EACb,UAAU,EACV,QAAQ,EACR,YAAY,GACb,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAsB,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEpF,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAEL,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AAEpF;;;;;GAKG;AACH,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAwJtC,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAkB,EAClB,KAAoB;IAEpB,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3D,2EAA2E;IAC3E,+EAA+E;IAC/E,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9D,OAAO,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChD,IAAI,OAAO,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IACrC,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC/D,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW;QAAE,OAAO,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACrE,OAAO,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,gBAAgB,CAC7B,IAAkB,EAClB,KAAoB;IAEpB,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE;QACjE,MAAM,EAAE,OAAO;QACf,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzE,CAAC,CAAC;IACH,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU;QAAE,OAAO,cAAc,CAAC,UAAU,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;IAC1C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACzD,IAAI,OAAO,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;IACrE,MAAM,OAAO,GAA8C,EAAE,CAAC;IAC9D,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,IAAI,GAAkB,IAAI,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC5E,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,MAAM,MAAM,GAAG,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC9E,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,KAAK,kCAAkC,IAAI,CAAC,KAAK,WAAW,OAAO,EAAE,CAAC;YAC1E,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,IAAI,MAAM,CAAC,UAAU;YAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC9C,CAAC;YACJ,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC;QACvB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC5F,CAAC;AAED,oFAAoF;AACpF,KAAK,UAAU,MAAM,CAAC,IAAkB,EAAE,OAAe;IACvD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACpE,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,aAAa,CAC1B,IAAkB,EAClB,MAAsB;IAEtB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IACxD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC7C,OAAO;YACL,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,IAAI,4BAA4B;SACrE,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QAC/C,OAAO;YACL,KAAK,EAAE,aAAa;YACpB,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,6BAA6B,QAAQ,CAAC,OAAO,EAAE;YACvE,IAAI,EAAE,2CAA2C,MAAM,CAAC,KAAK,WAAW,QAAQ,CAAC,OAAO,GAAG;SAC5F,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,6EAA6E;IAC7E,+DAA+D;IAC/D,IAAI,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,OAAO;YACL,KAAK,EAAE,oBAAoB;YAC3B,OAAO,EAAE,gBAAgB,QAAQ,CAAC,OAAO,8BAA8B;YACvE,IAAI,EAAE,gEAAgE;SACvE,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,OAAO;YACL,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAE,4BAA4B,MAAM,CAAC,KAAK,8BAA8B;YAC/E,IAAI,EAAE,sFAAsF;SAC7F,CAAC;IACJ,CAAC;IAED,2EAA2E;IAC3E,wEAAwE;IACxE,2EAA2E;IAC3E,oEAAoE;IACpE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO;YACL,KAAK,EAAE,qBAAqB;YAC5B,OAAO,EAAE,4BAA4B,MAAM,CAAC,KAAK,aAAa,OAAO,4BAA4B,IAAI,GAAG;YACxG,IAAI,EAAE,6BAA6B,IAAI,yEAAyE;SACjH,CAAC;IACJ,CAAC;IACD,2EAA2E;IAC3E,4EAA4E;IAC5E,uDAAuD;IACvD,MAAM,0BAA0B,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACtD,6EAA6E;IAC7E,gFAAgF;IAChF,gFAAgF;IAChF,+EAA+E;IAC/E,+EAA+E;IAC/E,gDAAgD;IAChD,EAAE;IACF,8EAA8E;IAC9E,6EAA6E;IAC7E,4EAA4E;IAC5E,qDAAqD;IACrD,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,KAAK,EACV,KAAK,IAAI,EAAE;QACT,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxD,IAAI,KAAK,CAAC,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,IAAa,EAAE,MAAM,EAAE,CAAC;QACnD,OAAO,EAAE,EAAE,EAAE,KAAc,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC;IAC9D,CAAC,EACD,EAAE,MAAM,EAAE,sBAAsB,EAAE,CACnC,CAAC;IACF,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;QACtB,OAAO;YACL,KAAK,EAAE,oBAAoB;YAC3B,OAAO,EAAE,2CAA2C,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,EAAE;YACnF,IAAI,EAAE,8FAA8F;SACrG,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,WAAW,EAAE,MAAM,CAAC,IAAI;YACxB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,IAAI,EAAE,IAAI;YACV,MAAM;YACN,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,0EAA0E;YAC1E,oEAAoE;YACpE,QAAQ,EAAE,KAAK;YACf,IAAI,EAAE,qBAAqB,MAAM,CAAC,IAAI,EAAE;SACzC,CAAC;IACJ,CAAC;IAED,MAAM,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE;QAC9C,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,UAAU,EAAE,MAAM,CAAC,IAAI;QACvB,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChD,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,WAAW,EAAE,MAAM,CAAC,IAAI;QACxB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI,EAAE,IAAI;QACV,MAAM;QACN,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,UAAU,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;QAC1D,IAAI,EAAE,IAAI;KACX,CAAC;AACJ,CAAC;AAWD,KAAK,UAAU,aAAa,CAC1B,IAAkB,EAClB,KAAoB;IAEpB,MAAM,KAAK,GAAG,MAAM,kBAAkB,CACpC,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,EACzB,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAC1B,CAAC;IACF,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC;IACrC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,KAAK,EAAE,qBAAqB;YAC5B,OAAO,EAAE,+CAA+C;YACxD,IAAI,EAAE,iEAAiE;SACxE,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO;YACL,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAE,iDAAiD;YAC1D,IAAI,EAAE,4BAA4B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SAC3E,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO;YACL,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAE,IAAI,KAAK,CAAC,KAAK,8BAA8B;YACtD,IAAI,EAAE,uBAAuB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACtE,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE;QACjE,MAAM,EAAE,OAAO;QACf,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzE,CAAC,CAAC;IACH,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU;QAAE,OAAO,cAAc,CAAC,UAAU,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;IAC1C,MAAM,QAAQ,GAAiB;QAC7B,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QACrD,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,OAAO;KACR,CAAC;IACF,OAAO;QACL,MAAM;QACN,QAAQ;QACR,IAAI,EAAE,QAAQ,CAAC,MAAM,kBAAkB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;QACxD,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC;QAC3B,IAAI,EAAE,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI;KAChD,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,cAAc,CAAC,UAAkC;IACxD,OAAO;QACL,KAAK,EAAE,oBAAoB;QAC3B,OAAO,EAAE,qDAAqD,UAAU,CAAC,OAAO,EAAE;QAClF,IAAI,EAAE,UAAU,CAAC,MAAM;KACxB,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,kBAAkB,CAAC,IAAkB;IAClD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;IACvC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,OAAO,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,yBAAyB,CAAC,IAAkB;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;IACvC,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CACvB,IAAkB,EAClB,MAAsB;IAEtB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAC9C,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC7C,OAAO;YACL,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,IAAI,4BAA4B;SACrE,CAAC;IACJ,CAAC;IAED,2EAA2E;IAC3E,2EAA2E;IAC3E,oDAAoD;IACpD,4EAA4E;IAC5E,6EAA6E;IAC7E,6DAA6D;IAC7D,MAAM,0BAA0B,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE1D,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC1D,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,4EAA4E;QAC5E,+EAA+E;QAC/E,4EAA4E;QAC5E,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,MAAM,CAAC;QACnC,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;IAC5E,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;IAC3D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO;YACL,KAAK,EAAE,eAAe;YACtB,OAAO,EAAE,WAAW,MAAM,qCAAqC,MAAM,CAAC,KAAK,EAAE;YAC7E,IAAI,EAAE,wDAAwD;YAC9D,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE;SAC1C,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACpC,6EAA6E;IAC7E,+EAA+E;IAC/E,4BAA4B;IAC5B,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9E,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,KAAK,EAAE,qBAAqB;YAC5B,OAAO,EAAG,GAAa,CAAC,OAAO;YAC/B,IAAI,EAAE,8BAA8B,IAAI,eAAe,MAAM,CAAC,KAAK,EAAE;SACtE,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChD,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IACnC,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,YAAY,CACzB,IAAkB,EAClB,MAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE;QAClE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;QAC1B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;QAC9B,QAAQ,EAAE,MAAM,CAAC,IAAI;QACrB,UAAU,EAAE,MAAM,CAAC,MAAM;QACzB,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,MAAM,KAAK,YAAY;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO;QACL,KAAK,EAAE,oBAAoB;QAC3B,OAAO,EAAE,kBAAkB,MAAM,CAAC,QAAQ,CAAC,OAAO,sBAAsB,MAAM,CAAC,MAAM,EAAE;QACvF,IAAI,EAAE,2HAA2H;KAClI,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,IAAkB,EAClB,MAAsB;IAEtB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAClD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC7C,OAAO;YACL,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,IAAI,4BAA4B;SACrE,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QAClD,MAAM,0BAA0B,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACtD,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,IAAI;YACJ,MAAM;YACN,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC;SACrC,CAAC;IACJ,CAAC;IACD,MAAM,0BAA0B,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACtD,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAG,GAAa,CAAC,OAAO;YAC/B,IAAI,EAAE,+FAA+F;SACtG,CAAC;IACJ,CAAC;IACD,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI;QACJ,MAAM;QACN,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC;KACrC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,KAAK,UAAU,SAAS,CACtB,IAAkB,EAClB,KAAoB;IAEpB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACzD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,QAAQ,CAAC;IACvE,MAAM,IAAI,GAAG,QAAQ,CAAC;IAEtB,MAAM,KAAK,GAAG,MAAM,kBAAkB,CACpC,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,EACzB,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAC1B,CAAC;IACF,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC;IAE3C,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,MAAM,UAAU,GAAqC,EAAE,CAAC;IACxD,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC9E,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;YACvB,0EAA0E;YAC1E,yEAAyE;YACzE,0EAA0E;YAC1E,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/D,SAAS;QACX,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IACD,OAAO;QACL,aAAa,EAAE,GAAG;QAClB,KAAK;QACL,OAAO;QACP,UAAU;QACV,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,mFAAmF;AACnF,KAAK,UAAU,UAAU,CACvB,IAAkB,EAClB,MAAqB,EACrB,GAAgF;IAEhF,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACzC,8EAA8E;IAC9E,0EAA0E;IAC1E,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3D,IAAI,KAAsB,CAAC;IAC3B,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,KAAK,EAAG,GAAa,CAAC,OAAO,EAAE,CAAC;IAC3C,CAAC;IACD,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACvE,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,YAAY,KAAK,GAAG,CAAC,GAAG;YAAE,SAAS;QACrE,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,QAAQ,CAAC,OAAO,KAAK,GAAG,CAAC,IAAI;YAAE,SAAS;QACjE,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3E,IAAI,MAAM,KAAK,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;;YAC9E,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAC5B,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,QAAQ,CACrB,IAAkB,EAClB,IAAwB;IAExB,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACpC,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE;QACjE,MAAM,EAAE,MAAM;QACd,IAAI;QACJ,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,KAAK;KACZ,CAAC,CAAC;IACH,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU;QAAE,OAAO,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;IACxE,OAAO;QACL,KAAK,EAAE,oBAAoB;QAC3B,OAAO,EAAE,yBAAyB,IAAI,oCAAoC;QAC1E,IAAI,EAAE,2CAA2C;KAClD,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,QAAQ,CACrB,IAAkB,EAClB,QAAsB,EACtB,UAAkB,EAClB,IAAmB;IAEnB,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,WAAW,EAAE,UAAU;QACvB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;QACnD,OAAO,EAAE,KAAK;QACd,cAAc,EAAE,IAAI;QACpB,KAAK,EAAE,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;QACvC,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,KAAK,UAAU,SAAS,CAAC,IAAkB,EAAE,IAAY;IACvD,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CACf,QAAsB,EACtB,IAAmB,EACnB,MAA4B;IAE5B,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,MAAM;QACN,OAAO,EAAE,gCAAgC,QAAQ,CAAC,KAAK,WAAW,QAAQ,CAAC,OAAO,EAAE;KACrF,CAAC;AACJ,CAAC;AAOD,KAAK,UAAU,aAAa,CAAC,IAAkB;IAC7C,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IAC/E,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,4EAA4E;QAC5E,2EAA2E;QAC3E,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrF,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;AAChE,CAAC;AAED,0FAA0F;AAC1F,SAAS,YAAY,CACnB,OAAe,EACf,QAAuB,EACvB,QAAiB;IAEjB,IAAI,QAAQ;QAAE,OAAO,mBAAmB,CAAC;IACzC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,gBAAgB,CAAC;IAC1D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,gBAAgB,CAAC;IAC3D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,MAAM,CAAC,MAAsB,EAAE,OAAgB;IACtD,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;QAC1B,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;QAC/B,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO;QAChC,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,MAAM,CAAC,IAAkB,EAAE,IAAY;IACpD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9F,OAAO,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;AACxD,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,IAAkB,EAAE,IAAY;IACpD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9F,OAAO,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;AACxD,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS,EAAE,CAAS;IACpC,OAAO,aAAa,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC"}
@@ -144,19 +144,16 @@ function dispatchInputFrom(args, verb, capability, inputs, carried) {
144
144
  /**
145
145
  * The dispatch context, assembled once from the CLI context.
146
146
  *
147
- * `workspace` is null unless this really IS a Workline workspace — the same
148
- * rule the rest of the repo uses: `.<ns>/` present in the root. Handing the cwd
149
- * over unconditionally made "outside a workspace" unreachable in production,
150
- * so the explicit-root path could only ever be exercised by a test that passed
151
- * null by hand. A smoke run from `/tmp` is what surfaced it.
147
+ * The bootstrap already resolved one WorklineDirectory. Its root is meaningful
148
+ * before materialization too: a capability can prepare/validate from a virgin
149
+ * folder without inventing a Git root or requiring workspace-init first.
152
150
  */
153
151
  async function ctx0(ctx, boundHost) {
154
- const inWorkspace = await ctx.fs.exists(ctx.paths.cwdRoot());
155
152
  return {
156
153
  fs: ctx.fs,
157
154
  env: ctx.env,
158
155
  paths: ctx.paths,
159
- workspace: inWorkspace ? ctx.paths.workspaceDir() : null,
156
+ workspace: ctx.paths.workspaceDir(),
160
157
  host: runHarness((k) => ctx.env.get(k), boundHost).agent_host,
161
158
  };
162
159
  }
@@ -1 +1 @@
1
- {"version":3,"file":"capability.js","sourceRoot":"","sources":["../../../src/cli/commands/capability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capability.js","sourceRoot":"","sources":["../../../src/cli/commands/capability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAKL,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,4CAA4C,CAAC;AACpD,iFAAiF;AACjF,oFAAoF;AACpF,OAAO,gDAAgD,CAAC;AACxD,OAAO,EACL,cAAc,EAEd,iBAAiB,GAClB,MAAM,yCAAyC,CAAC;AAGjD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAE/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAEzE,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGlD;;;;;;;;;;;GAWG;AAEH,MAAM,KAAK,GAA8B,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;AAEtF;;;;;;;;;;;;;;GAcG;AACH,MAAM,QAAQ,GAAG;IACf,mHAAmH;IACnH,EAAE;IACF,sRAAsR;IACtR,EAAE;IACF,yNAAyN;IACzN,EAAE;IACF,4IAA4I;IAC5I,EAAE;IACF,sFAAsF;IACtF,oQAAoQ;IACpQ,8GAA8G;IAC9G,EAAE;IACF,kHAAkH;IAClH,4KAA4K;IAC5K,0LAA0L;IAC1L,oFAAoF;IACpF,EAAE;IACF,kJAAkJ;CACnJ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,MAAM,CAAC,MAAM,iBAAiB,GAAkC;IAC9D,IAAI,EAAE,YAAY;IAClB,QAAQ,EAAE,qSAAqS,uBAAuB,CAAC,IAAI;;EAE3U,QAAQ,EAAE;IAEV,KAAK,CAAC,OAAO,CAAC,IAAgB,EAAE,GAAe;QAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,aAAa,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/D,OAAO,IAAI,CACT,cAAc,EACd,uBAAuB,aAAa,0CAA0C,CAC3C,CAAC;QACxC,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAA+B,CAAC;QACxD,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,OAAO,IAAI,CACT,cAAc,EACd,sBAAsB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,yCAAyC,CAC7C,CAAC;QACxC,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5F,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAO,IAAI,CACT,cAAc,EACd,oCAAoC,sBAAsB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,WAAW,EAAE,CACrD,CAAC;QACxC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG,CAAqC,CAAC;QAE5F,6EAA6E;QAC7E,6EAA6E;QAC7E,YAAY;QACZ,MAAM,GAAG,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,iBAAiB,EAAE,CAAC;QAChE,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,GAAG,CAAqC,CAAC;QAE9F,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChF,6EAA6E;QAC7E,4EAA4E;QAC5E,yEAAyE;QACzE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,OAAO,IAAI,CACT,cAAc,EACd,uBAAuB,IAAI,qBAAqB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACxC,CAAC;QACxC,CAAC;QACD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QACvD,MAAM,MAAM,GACV,IAAI,KAAK,SAAS;YAChB,CAAC,CAAC,MAAM,kBAAkB,CAAC,KAAK,EAAE,eAAe,CAAC;YAClD,CAAC,CAAC,MAAM,iBAAiB,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,IAAoB,EAAE,EAAE,eAAe,CAAC,CAAC;QAEzF,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACpD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACzD,CAAC;IAED,WAAW,CAAC,MAAwC;QAClD,6EAA6E;QAC7E,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;YAAE,OAAO,EAAE,CAAC;QACzC,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IACxD,CAAC;CACF,CAAC;AAEF;;;;GAIG;AACH,SAAS,iBAAiB,CACxB,IAAgB,EAChB,IAAoB,EACpB,UAAkB,EAClB,MAA8B,EAC9B,OAAgB;IAEhB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO;QACL,IAAI;QACJ,UAAU;QACV,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,KAAK,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QAChD,IAAI,EAAE,IAAI,IAAI,IAAI;QAClB,MAAM;QACN,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI;QACzC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI;QACrC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI;QAC3C,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC;QACvD,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,GAAG,CAAC,QAAQ,KAAK,SAAS;YACxB,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,IAAI,EAAE,EAAE,EAAE;YAC7F,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,IAAI,CACjB,GAAe,EACf,SAAyD;IAEzD,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE;QACnC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,UAAU;KAC9D,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,OAAQ,cAAoC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC/D,CAAC;AAOD;;;;GAIG;AACH,KAAK,UAAU,WAAW,CACxB,IAAgB,EAChB,GAAe;IAEf,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAChD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,CAAC,CAAC;IAC1D,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;QACxB,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,EAAE,IAAI,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,yCAAyC,KAAK,GAAG,EAAE,CAAC;QAC1F,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YACxB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;YAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE;SAClF,CAAC,CAAC;IACL,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACtD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,mBAAmB,CAAC,EAAE,CAAC;YAC/D,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,GAAG,EAAE,8FAA8F;aACpG,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC/D,IAAI,CAAC,UAAU,CAAC,EAAE;YAAE,OAAO,UAAU,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC9B,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,sBAAsB,CACnC,GAAW,EACX,GAAe;IAEf,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,SAAS,IAAI,CAAC,IAAI,SAAS,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,GAAG,EAAE,+BAA+B,uBAAuB,CAAC,IAAI,IAAI,uBAAuB,CAAC,IAAI,6CAA6C;SAC9I,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACnD,MAAM,UAAU,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QACpC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,GAAG,EAAE,2EAA2E;SACjF,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;QACd,OAAO;YACL,EAAE,EAAE,KAAK;YACT,GAAG,EAAE,6DAA6D,KAAK,CAAC,KAAK,EAAE;SAChF,CAAC;IACJ,CAAC;IACD,IAAI,uBAAuB,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;QACnE,OAAO;YACL,EAAE,EAAE,KAAK;YACT,GAAG,EAAE,2DAA2D,KAAK,CAAC,KAAK,CAAC,IAAI,oBAAoB,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG;SACxH,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACxC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC3B,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;SAC3B,CAAC,CAAC;QACH,OAAO;YACL,EAAE,EAAE,IAAI;YACR,KAAK,EAAE;gBACL,IAAI,EAAE,mBAAmB;gBACzB,KAAK,EAAE,OAAO;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,YAAY;oBAClB,MAAM,EAAE,UAAU,CAAC,IAAI;oBACvB,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC;oBACtB,WAAW,EAAE,QAAQ;iBACtB;aACF;SACF,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,EAAE,EAAE,KAAK;YACT,GAAG,EAAE,uFAAuF;SAC7F,CAAC;IACJ,CAAC;AACH,CAAC;AAWD;;;;;;;GAOG;AACH,SAAS,YAAY,CAAC,GAAW,EAAE,IAAoB;IACrD,MAAM,KAAK,GAAY;QACrB,EAAE,EAAE,IAAI;QACR,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,GAAG,EAAE,IAAI;QACT,MAAM,EAAE,IAAI;KACb,CAAC;IACF,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QACrC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,IAAI,gDAAgD,EAAE,CAAC;IACtF,CAAC;IACD,IAAI,MAA+B,CAAC;IACpC,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,mDAAmD,EAAE,CAAC;IACjF,CAAC;IACD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAA6B;QAC3D,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAA6B;QAC7D,IAAI,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAA6B;QACvD,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAwB;QAChD,MAAM,EAAE,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;KAC3E,CAAC;AACJ,CAAC"}
@@ -0,0 +1,72 @@
1
+ import { applyRecovery, previewRecovery, sanctionedActionFor, scanSlots, } from "../../application/claims-recovery.js";
2
+ import { fail } from "../render.js";
3
+ const USAGE = "uso: claims [list] | claims recover <docs/<cat>/<NNN>-<nombre>> [--approval <digest>] [--confirm-no-producer]";
4
+ /**
5
+ * The reservations nobody is coming back for, and the one sanctioned way to free
6
+ * one.
7
+ *
8
+ * A separate surface on purpose. Releasing a correlative is not retiring a
9
+ * document and not closing a session: it is its own authorization boundary, with
10
+ * its own irrevocable side effect, and folding it into `aw discard` would put
11
+ * "give a number back" behind the vocabulary of "retire work for good". Here the
12
+ * authorization is where a person can see it.
13
+ */
14
+ export const claimsCommand = {
15
+ name: "claims",
16
+ describe: "Reservations of numbered documents and legacy placeholders, plus the authorized recovery of one. 'claims' or 'claims list' shows every recoverable slot with its correlative, destination, owner and state — a published document is never one. 'claims recover <ruta>' previews the recovery and returns its digest; adding --approval <digest> seals an IRREVOCABLE revocation scoped to that claim and only then releases the slot, so a late sealed publication against it is rejected instead of colliding. A legacy placeholder names nobody, so freeing it also needs --confirm-no-producer: an explicit statement that nothing is still going to write there. Never expires anything on a timer. Usage: aw claims [list] | aw claims recover <ruta> [--approval <digest>] [--confirm-no-producer].",
17
+ async execute(args, ctx) {
18
+ const verb = args.rest[0] ?? "list";
19
+ if (verb === "list") {
20
+ const scan = await scanSlots(ctx.fs, ctx.paths);
21
+ return {
22
+ ok: true,
23
+ data: {
24
+ slots: scan.slots.map((slot) => ({
25
+ path: slot.path,
26
+ kind: slot.kind,
27
+ correlative: slot.correlative,
28
+ name: slot.name,
29
+ owner: slot.owner,
30
+ revoked: slot.revoked,
31
+ intact: slot.intact,
32
+ next: sanctionedActionFor(slot),
33
+ })),
34
+ ...(scan.error !== undefined ? { error: scan.error } : {}),
35
+ },
36
+ exitCode: 0,
37
+ };
38
+ }
39
+ if (verb !== "recover") {
40
+ return fail("INVALID_INPUT", USAGE, { error: USAGE });
41
+ }
42
+ const target = args.rest[1];
43
+ if (target === undefined || target.length === 0) {
44
+ return fail("INVALID_INPUT", USAGE, { error: USAGE });
45
+ }
46
+ const approval = args.values.get("approval");
47
+ if (approval === undefined) {
48
+ const preview = await previewRecovery(ctx.fs, ctx.paths, target);
49
+ if ("error" in preview) {
50
+ return fail("CLAIM_RECOVERY_REFUSED", preview.error, preview);
51
+ }
52
+ return {
53
+ ok: true,
54
+ data: {
55
+ proposal: preview.proposal,
56
+ next: `aw claims recover ${target} --approval ${preview.proposal.digest}${preview.proposal.requires_no_producer_confirmation ? " --confirm-no-producer" : ""}`,
57
+ },
58
+ exitCode: 0,
59
+ };
60
+ }
61
+ const applied = await applyRecovery(ctx.fs, ctx.paths, {
62
+ target,
63
+ approval,
64
+ noProducerConfirmed: args.flags.has("--confirm-no-producer"),
65
+ });
66
+ if ("error" in applied) {
67
+ return fail("CLAIM_RECOVERY_REFUSED", applied.error, applied);
68
+ }
69
+ return { ok: true, data: applied.applied, exitCode: 0 };
70
+ },
71
+ };
72
+ //# sourceMappingURL=claims.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claims.js","sourceRoot":"","sources":["../../../src/cli/commands/claims.ts"],"names":[],"mappings":"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"}