@procedures/git 0.0.0-stage → 0.2.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 (120) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/LICENSE +21 -0
  3. package/README.md +1130 -2
  4. package/dist/.tsbuildinfo +1 -0
  5. package/dist/index.d.ts +20 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +20 -0
  8. package/dist/index.js.map +1 -0
  9. package/dist/module.d.ts +22 -0
  10. package/dist/module.d.ts.map +1 -0
  11. package/dist/module.js +514 -0
  12. package/dist/module.js.map +1 -0
  13. package/dist/procedures/git/add.d.ts +12 -0
  14. package/dist/procedures/git/add.d.ts.map +1 -0
  15. package/dist/procedures/git/add.js +26 -0
  16. package/dist/procedures/git/add.js.map +1 -0
  17. package/dist/procedures/git/args.d.ts +15 -0
  18. package/dist/procedures/git/args.d.ts.map +1 -0
  19. package/dist/procedures/git/args.js +20 -0
  20. package/dist/procedures/git/args.js.map +1 -0
  21. package/dist/procedures/git/branch.d.ts +12 -0
  22. package/dist/procedures/git/branch.d.ts.map +1 -0
  23. package/dist/procedures/git/branch.js +54 -0
  24. package/dist/procedures/git/branch.js.map +1 -0
  25. package/dist/procedures/git/checkout.d.ts +12 -0
  26. package/dist/procedures/git/checkout.d.ts.map +1 -0
  27. package/dist/procedures/git/checkout.js +23 -0
  28. package/dist/procedures/git/checkout.js.map +1 -0
  29. package/dist/procedures/git/clone.d.ts +12 -0
  30. package/dist/procedures/git/clone.d.ts.map +1 -0
  31. package/dist/procedures/git/clone.js +28 -0
  32. package/dist/procedures/git/clone.js.map +1 -0
  33. package/dist/procedures/git/commit.d.ts +12 -0
  34. package/dist/procedures/git/commit.d.ts.map +1 -0
  35. package/dist/procedures/git/commit.js +41 -0
  36. package/dist/procedures/git/commit.js.map +1 -0
  37. package/dist/procedures/git/diff.d.ts +18 -0
  38. package/dist/procedures/git/diff.d.ts.map +1 -0
  39. package/dist/procedures/git/diff.js +58 -0
  40. package/dist/procedures/git/diff.js.map +1 -0
  41. package/dist/procedures/git/fetch.d.ts +12 -0
  42. package/dist/procedures/git/fetch.d.ts.map +1 -0
  43. package/dist/procedures/git/fetch.js +29 -0
  44. package/dist/procedures/git/fetch.js.map +1 -0
  45. package/dist/procedures/git/index.d.ts +15 -0
  46. package/dist/procedures/git/index.d.ts.map +1 -0
  47. package/dist/procedures/git/index.js +15 -0
  48. package/dist/procedures/git/index.js.map +1 -0
  49. package/dist/procedures/git/init.d.ts +12 -0
  50. package/dist/procedures/git/init.d.ts.map +1 -0
  51. package/dist/procedures/git/init.js +32 -0
  52. package/dist/procedures/git/init.js.map +1 -0
  53. package/dist/procedures/git/log.d.ts +12 -0
  54. package/dist/procedures/git/log.d.ts.map +1 -0
  55. package/dist/procedures/git/log.js +35 -0
  56. package/dist/procedures/git/log.js.map +1 -0
  57. package/dist/procedures/git/predicates.d.ts +40 -0
  58. package/dist/procedures/git/predicates.d.ts.map +1 -0
  59. package/dist/procedures/git/predicates.js +76 -0
  60. package/dist/procedures/git/predicates.js.map +1 -0
  61. package/dist/procedures/git/pull.d.ts +12 -0
  62. package/dist/procedures/git/pull.d.ts.map +1 -0
  63. package/dist/procedures/git/pull.js +36 -0
  64. package/dist/procedures/git/pull.js.map +1 -0
  65. package/dist/procedures/git/push.d.ts +12 -0
  66. package/dist/procedures/git/push.d.ts.map +1 -0
  67. package/dist/procedures/git/push.js +39 -0
  68. package/dist/procedures/git/push.js.map +1 -0
  69. package/dist/procedures/git/remote.d.ts +13 -0
  70. package/dist/procedures/git/remote.d.ts.map +1 -0
  71. package/dist/procedures/git/remote.js +30 -0
  72. package/dist/procedures/git/remote.js.map +1 -0
  73. package/dist/procedures/git/run.d.ts +32 -0
  74. package/dist/procedures/git/run.d.ts.map +1 -0
  75. package/dist/procedures/git/run.js +60 -0
  76. package/dist/procedures/git/run.js.map +1 -0
  77. package/dist/procedures/git/stash.d.ts +38 -0
  78. package/dist/procedures/git/stash.d.ts.map +1 -0
  79. package/dist/procedures/git/stash.js +211 -0
  80. package/dist/procedures/git/stash.js.map +1 -0
  81. package/dist/procedures/git/status.d.ts +17 -0
  82. package/dist/procedures/git/status.d.ts.map +1 -0
  83. package/dist/procedures/git/status.js +107 -0
  84. package/dist/procedures/git/status.js.map +1 -0
  85. package/dist/procedures/git.d.ts +5 -0
  86. package/dist/procedures/git.d.ts.map +1 -0
  87. package/dist/procedures/git.js +5 -0
  88. package/dist/procedures/git.js.map +1 -0
  89. package/dist/register.d.ts +7 -0
  90. package/dist/register.d.ts.map +1 -0
  91. package/dist/register.js +9 -0
  92. package/dist/register.js.map +1 -0
  93. package/dist/types.d.ts +350 -0
  94. package/dist/types.d.ts.map +1 -0
  95. package/dist/types.js +397 -0
  96. package/dist/types.js.map +1 -0
  97. package/package.json +77 -3
  98. package/src/index.ts +20 -0
  99. package/src/module.ts +656 -0
  100. package/src/procedures/git/add.ts +29 -0
  101. package/src/procedures/git/args.ts +21 -0
  102. package/src/procedures/git/branch.ts +61 -0
  103. package/src/procedures/git/checkout.ts +27 -0
  104. package/src/procedures/git/clone.ts +33 -0
  105. package/src/procedures/git/commit.ts +46 -0
  106. package/src/procedures/git/diff.ts +62 -0
  107. package/src/procedures/git/fetch.ts +32 -0
  108. package/src/procedures/git/index.ts +22 -0
  109. package/src/procedures/git/init.ts +43 -0
  110. package/src/procedures/git/log.ts +40 -0
  111. package/src/procedures/git/predicates.ts +90 -0
  112. package/src/procedures/git/pull.ts +45 -0
  113. package/src/procedures/git/push.ts +42 -0
  114. package/src/procedures/git/remote.ts +31 -0
  115. package/src/procedures/git/run.ts +70 -0
  116. package/src/procedures/git/stash.ts +255 -0
  117. package/src/procedures/git/status.ts +98 -0
  118. package/src/procedures/git.ts +5 -0
  119. package/src/register.ts +11 -0
  120. package/src/types.ts +815 -0
package/dist/module.js ADDED
@@ -0,0 +1,514 @@
1
+ /**
2
+ * Module (no side effects): the procedures of this package as data, for `createRegistry()`.
3
+ *
4
+ * Procedure Registration for git operations
5
+ *
6
+ * Registers git.* procedures with the client system.
7
+ * This file is referenced by package.json's client.procedures field.
8
+ */
9
+ import { createProcedure, zodAdapter, defineModule, PROCEDURE_REGISTRY, registerModules } from "@procedures/client";
10
+ import { gitStatus } from "./procedures/git/status.js";
11
+ import { gitAdd } from "./procedures/git/add.js";
12
+ import { gitCommit } from "./procedures/git/commit.js";
13
+ import { gitPush } from "./procedures/git/push.js";
14
+ import { gitPull } from "./procedures/git/pull.js";
15
+ import { gitClone } from "./procedures/git/clone.js";
16
+ import { gitCheckout } from "./procedures/git/checkout.js";
17
+ import { gitBranch } from "./procedures/git/branch.js";
18
+ import { gitLog } from "./procedures/git/log.js";
19
+ import { gitDiff } from "./procedures/git/diff.js";
20
+ import { gitInit } from "./procedures/git/init.js";
21
+ import { gitRemote, gitRemoteSet } from "./procedures/git/remote.js";
22
+ import { gitFetch } from "./procedures/git/fetch.js";
23
+ import { gitHasChanges, gitHasStagedChanges, gitHasUnstagedChanges, gitHasUntrackedFiles, gitHasLocalCommits, gitIsClean, } from "./procedures/git/predicates.js";
24
+ import { gitStashList, gitStashPush, gitStashPop, gitStashApply, gitStashDrop, gitStashExport, gitStashImport, } from "./procedures/git/stash.js";
25
+ import { GitStatusInputSchema, GitAddInputSchema, GitCommitInputSchema, GitPushInputSchema, GitPullInputSchema, GitCloneInputSchema, GitCheckoutInputSchema, GitBranchInputSchema, GitLogInputSchema, GitDiffInputSchema, GitInitInputSchema, GitRemoteInputSchema, GitRemoteSetInputSchema, GitFetchInputSchema, GitPredicateInputSchema, GitStashListInputSchema, GitStashPushInputSchema, GitStashPopInputSchema, GitStashApplyInputSchema, GitStashDropInputSchema, GitStashExportInputSchema, GitStashImportInputSchema, GitStatusOutputSchema, GitAddOutputSchema, GitCommitOutputSchema, GitPushOutputSchema, GitPullOutputSchema, GitCloneOutputSchema, GitCheckoutOutputSchema, GitBranchOutputSchema, GitLogOutputSchema, GitDiffOutputSchema, GitInitOutputSchema, GitRemoteOutputSchema, GitFetchOutputSchema, GitPredicateOutputSchema, GitStashListOutputSchema, GitStashPushOutputSchema, GitStashPopOutputSchema, GitStashApplyOutputSchema, GitStashDropOutputSchema, GitStashExportOutputSchema, GitStashImportOutputSchema, } from "./types.js";
26
+ // =============================================================================
27
+ // Effects
28
+ // =============================================================================
29
+ // Git is a fixed program, so the declarations name what git reads and changes, not "process".
30
+ // They do not include the hooks of a repository.
31
+ /** The effects of a git command that reads the repository and changes nothing. */
32
+ const READS_REPOSITORY = { reads: ["fs"], writes: [] };
33
+ /** The effects of a git command that can replace or remove the data of the repository. */
34
+ const CHANGES_REPOSITORY = { reads: ["fs"], writes: ["fs"] };
35
+ /**
36
+ * A change that starts the hooks of the repository (commit, push, pull, checkout). A hook is code
37
+ * of the project (husky, for example), so these write process (CAPABILITIES-2026-10). A hook
38
+ * that only the reference-transaction event starts (branch, fetch, stash) is not counted.
39
+ */
40
+ const RUNS_HOOKS = { reads: ["fs"], writes: ["fs", "process"] };
41
+ // =============================================================================
42
+ // Procedure Definitions
43
+ // =============================================================================
44
+ const gitStatusProcedure = createProcedure()
45
+ .path(["git", "status"])
46
+ .input(zodAdapter(GitStatusInputSchema))
47
+ .output(zodAdapter(GitStatusOutputSchema))
48
+ .meta({
49
+ description: "Get git status",
50
+ args: [],
51
+ shorts: { cwd: "C", short: "s" },
52
+ output: "json",
53
+ effects: READS_REPOSITORY,
54
+ })
55
+ .handler(async (input, ctx) => {
56
+ return gitStatus(input, ctx);
57
+ })
58
+ .build();
59
+ const gitAddProcedure = createProcedure()
60
+ .path(["git", "add"])
61
+ .input(zodAdapter(GitAddInputSchema))
62
+ .output(zodAdapter(GitAddOutputSchema))
63
+ .meta({
64
+ description: "Stage files",
65
+ args: ["paths"],
66
+ shorts: { all: "A", cwd: "C" },
67
+ output: "json",
68
+ effects: { reads: ["fs"], writes: ["fs"], destructive: false, idempotent: true },
69
+ })
70
+ .handler(async (input, ctx) => {
71
+ return gitAdd(input, ctx);
72
+ })
73
+ .build();
74
+ const gitCommitProcedure = createProcedure()
75
+ .path(["git", "commit"])
76
+ .input(zodAdapter(GitCommitInputSchema))
77
+ .output(zodAdapter(GitCommitOutputSchema))
78
+ .meta({
79
+ description: "Create commit",
80
+ args: ["message"],
81
+ shorts: { message: "m", all: "a", amend: "A", cwd: "C" },
82
+ output: "json",
83
+ // With `amend`, it replaces the last commit, so it is destructive
84
+ effects: RUNS_HOOKS,
85
+ })
86
+ .handler(async (input, ctx) => {
87
+ return gitCommit(input, ctx);
88
+ })
89
+ .build();
90
+ const gitPushProcedure = createProcedure()
91
+ .path(["git", "push"])
92
+ .input(zodAdapter(GitPushInputSchema))
93
+ .output(zodAdapter(GitPushOutputSchema))
94
+ .meta({
95
+ description: "Push to remote",
96
+ args: [],
97
+ shorts: { remote: "r", branch: "b", force: "f", setUpstream: "u", cwd: "C" },
98
+ output: "json",
99
+ // With `force`, it replaces the commits of the remote. It also writes the remote-tracking ref.
100
+ effects: { reads: ["fs", "network"], writes: ["fs", "network", "process"], idempotent: true },
101
+ })
102
+ .handler(async (input, ctx) => {
103
+ return gitPush(input, ctx);
104
+ })
105
+ .build();
106
+ const gitPullProcedure = createProcedure()
107
+ .path(["git", "pull"])
108
+ .input(zodAdapter(GitPullInputSchema))
109
+ .output(zodAdapter(GitPullOutputSchema))
110
+ .meta({
111
+ description: "Pull from remote",
112
+ args: [],
113
+ shorts: { remote: "r", branch: "b", rebase: "R", cwd: "C" },
114
+ output: "json",
115
+ // It merges or rebases into the working tree
116
+ effects: { reads: ["fs", "network"], writes: ["fs", "process"], idempotent: true },
117
+ })
118
+ .handler(async (input, ctx) => {
119
+ return gitPull(input, ctx);
120
+ })
121
+ .build();
122
+ const gitCloneProcedure = createProcedure()
123
+ .path(["git", "clone"])
124
+ .input(zodAdapter(GitCloneInputSchema))
125
+ .output(zodAdapter(GitCloneOutputSchema))
126
+ .meta({
127
+ description: "Clone repository",
128
+ args: ["url"],
129
+ shorts: { dest: "d", branch: "b", depth: "D", cwd: "C" },
130
+ output: "json",
131
+ // The source can be a local path. Git clones only into a new or empty folder.
132
+ effects: { reads: ["fs", "network"], writes: ["fs"], destructive: false, idempotent: true },
133
+ })
134
+ .handler(async (input, ctx) => {
135
+ return gitClone(input, ctx);
136
+ })
137
+ .build();
138
+ const gitCheckoutProcedure = createProcedure()
139
+ .path(["git", "checkout"])
140
+ .input(zodAdapter(GitCheckoutInputSchema))
141
+ .output(zodAdapter(GitCheckoutOutputSchema))
142
+ .meta({
143
+ description: "Checkout branch or files",
144
+ args: ["ref"],
145
+ shorts: { create: "b", cwd: "C" },
146
+ output: "json",
147
+ // It replaces files of the working tree
148
+ effects: { reads: ["fs"], writes: ["fs", "process"], idempotent: true },
149
+ })
150
+ .handler(async (input, ctx) => {
151
+ return gitCheckout(input, ctx);
152
+ })
153
+ .build();
154
+ const gitBranchProcedure = createProcedure()
155
+ .path(["git", "branch"])
156
+ .input(zodAdapter(GitBranchInputSchema))
157
+ .output(zodAdapter(GitBranchOutputSchema))
158
+ .meta({
159
+ description: "Branch operations",
160
+ args: ["name"],
161
+ shorts: { delete: "d", list: "l", remote: "r", cwd: "C" },
162
+ output: "json",
163
+ // It lists, creates or deletes a branch
164
+ effects: { reads: ["fs"], writes: ["fs"], idempotent: true },
165
+ })
166
+ .handler(async (input, ctx) => {
167
+ return gitBranch(input, ctx);
168
+ })
169
+ .build();
170
+ const gitLogProcedure = createProcedure()
171
+ .path(["git", "log"])
172
+ .input(zodAdapter(GitLogInputSchema))
173
+ .output(zodAdapter(GitLogOutputSchema))
174
+ .meta({
175
+ description: "Show commit log",
176
+ args: [],
177
+ shorts: { count: "n", oneline: "o", ref: "r", cwd: "C" },
178
+ output: "json",
179
+ effects: READS_REPOSITORY,
180
+ })
181
+ .handler(async (input, ctx) => {
182
+ return gitLog(input, ctx);
183
+ })
184
+ .build();
185
+ const gitDiffProcedure = createProcedure()
186
+ .path(["git", "diff"])
187
+ .input(zodAdapter(GitDiffInputSchema))
188
+ .output(zodAdapter(GitDiffOutputSchema))
189
+ .meta({
190
+ description: "Show changes",
191
+ args: [],
192
+ shorts: { staged: "s", ref: "r", stat: "S", cwd: "C" },
193
+ output: "json",
194
+ effects: READS_REPOSITORY,
195
+ })
196
+ .handler(async (input, ctx) => {
197
+ return gitDiff(input, ctx);
198
+ })
199
+ .build();
200
+ const gitInitProcedure = createProcedure()
201
+ .path(["git", "init"])
202
+ .input(zodAdapter(GitInitInputSchema))
203
+ .output(zodAdapter(GitInitOutputSchema))
204
+ .meta({
205
+ description: "Initialize a git repository",
206
+ args: [],
207
+ shorts: { cwd: "C", bare: "b", initialBranch: "B" },
208
+ output: "json",
209
+ // It runs `git init` only when the folder has no .git (it calls fs.exists)
210
+ effects: { reads: ["fs"], writes: ["fs"], destructive: false, idempotent: true },
211
+ })
212
+ .handler(async (input, ctx) => {
213
+ return gitInit(input, ctx);
214
+ })
215
+ .build();
216
+ const gitRemoteProcedure = createProcedure()
217
+ .path(["git", "remote"])
218
+ .input(zodAdapter(GitRemoteInputSchema))
219
+ .output(zodAdapter(GitRemoteOutputSchema))
220
+ .meta({
221
+ description: "Get the URL of a remote",
222
+ args: [],
223
+ shorts: { name: "n", cwd: "C" },
224
+ output: "json",
225
+ effects: { reads: ["fs"], writes: [] },
226
+ })
227
+ .handler(async (input, ctx) => {
228
+ return gitRemote(input, ctx);
229
+ })
230
+ .build();
231
+ const gitRemoteSetProcedure = createProcedure()
232
+ .path(["git", "remote", "set"])
233
+ .input(zodAdapter(GitRemoteSetInputSchema))
234
+ .output(zodAdapter(GitRemoteOutputSchema))
235
+ .meta({
236
+ description: "Set the URL of a remote, or add the remote",
237
+ args: ["url"],
238
+ shorts: { name: "n", cwd: "C" },
239
+ output: "json",
240
+ // It replaces the URL of the remote in the git configuration
241
+ effects: { reads: ["fs"], writes: ["fs"], idempotent: true },
242
+ })
243
+ .handler(async (input, ctx) => {
244
+ return gitRemoteSet(input, ctx);
245
+ })
246
+ .build();
247
+ const gitFetchProcedure = createProcedure()
248
+ .path(["git", "fetch"])
249
+ .input(zodAdapter(GitFetchInputSchema))
250
+ .output(zodAdapter(GitFetchOutputSchema))
251
+ .meta({
252
+ description: "Fetch from remote",
253
+ args: [],
254
+ shorts: { remote: "r", branch: "b", all: "a", prune: "p", cwd: "C" },
255
+ output: "json",
256
+ // With `prune`, it deletes remote-tracking refs
257
+ effects: { reads: ["fs", "network"], writes: ["fs"], idempotent: true },
258
+ })
259
+ .handler(async (input, ctx) => {
260
+ return gitFetch(input, ctx);
261
+ })
262
+ .build();
263
+ // =============================================================================
264
+ // Predicate Procedures (boolean checks for conditionals)
265
+ // =============================================================================
266
+ const gitHasChangesProcedure = createProcedure()
267
+ .path(["git", "hasChanges"])
268
+ .input(zodAdapter(GitPredicateInputSchema))
269
+ .output(zodAdapter(GitPredicateOutputSchema))
270
+ .meta({
271
+ description: "Check if there are any changes (unstaged, staged, or untracked)",
272
+ args: [],
273
+ shorts: { cwd: "C" },
274
+ output: "json",
275
+ effects: READS_REPOSITORY,
276
+ })
277
+ .handler(async (input, ctx) => {
278
+ return gitHasChanges(input, ctx);
279
+ })
280
+ .build();
281
+ const gitHasStagedChangesProcedure = createProcedure()
282
+ .path(["git", "hasStagedChanges"])
283
+ .input(zodAdapter(GitPredicateInputSchema))
284
+ .output(zodAdapter(GitPredicateOutputSchema))
285
+ .meta({
286
+ description: "Check if there are any staged changes ready to commit",
287
+ args: [],
288
+ shorts: { cwd: "C" },
289
+ output: "json",
290
+ effects: READS_REPOSITORY,
291
+ })
292
+ .handler(async (input, ctx) => {
293
+ return gitHasStagedChanges(input, ctx);
294
+ })
295
+ .build();
296
+ const gitHasUnstagedChangesProcedure = createProcedure()
297
+ .path(["git", "hasUnstagedChanges"])
298
+ .input(zodAdapter(GitPredicateInputSchema))
299
+ .output(zodAdapter(GitPredicateOutputSchema))
300
+ .meta({
301
+ description: "Check if there are any unstaged changes",
302
+ args: [],
303
+ shorts: { cwd: "C" },
304
+ output: "json",
305
+ effects: READS_REPOSITORY,
306
+ })
307
+ .handler(async (input, ctx) => {
308
+ return gitHasUnstagedChanges(input, ctx);
309
+ })
310
+ .build();
311
+ const gitHasUntrackedFilesProcedure = createProcedure()
312
+ .path(["git", "hasUntrackedFiles"])
313
+ .input(zodAdapter(GitPredicateInputSchema))
314
+ .output(zodAdapter(GitPredicateOutputSchema))
315
+ .meta({
316
+ description: "Check if there are any untracked files",
317
+ args: [],
318
+ shorts: { cwd: "C" },
319
+ output: "json",
320
+ effects: READS_REPOSITORY,
321
+ })
322
+ .handler(async (input, ctx) => {
323
+ return gitHasUntrackedFiles(input, ctx);
324
+ })
325
+ .build();
326
+ const gitHasLocalCommitsProcedure = createProcedure()
327
+ .path(["git", "hasLocalCommits"])
328
+ .input(zodAdapter(GitPredicateInputSchema))
329
+ .output(zodAdapter(GitPredicateOutputSchema))
330
+ .meta({
331
+ description: "Check if there are local commits that haven't been pushed",
332
+ args: [],
333
+ shorts: { cwd: "C" },
334
+ output: "json",
335
+ // It compares with the local remote-tracking ref and does not fetch
336
+ effects: READS_REPOSITORY,
337
+ })
338
+ .handler(async (input, ctx) => {
339
+ return gitHasLocalCommits(input, ctx);
340
+ })
341
+ .build();
342
+ const gitIsCleanProcedure = createProcedure()
343
+ .path(["git", "isClean"])
344
+ .input(zodAdapter(GitPredicateInputSchema))
345
+ .output(zodAdapter(GitPredicateOutputSchema))
346
+ .meta({
347
+ description: "Check if the working directory is clean",
348
+ args: [],
349
+ shorts: { cwd: "C" },
350
+ output: "json",
351
+ effects: READS_REPOSITORY,
352
+ })
353
+ .handler(async (input, ctx) => {
354
+ return gitIsClean(input, ctx);
355
+ })
356
+ .build();
357
+ // =============================================================================
358
+ // Stash Procedures
359
+ // =============================================================================
360
+ const gitStashListProcedure = createProcedure()
361
+ .path(["git", "stash", "list"])
362
+ .input(zodAdapter(GitStashListInputSchema))
363
+ .output(zodAdapter(GitStashListOutputSchema))
364
+ .meta({
365
+ description: "List all stashes",
366
+ args: [],
367
+ shorts: { cwd: "C" },
368
+ output: "json",
369
+ effects: READS_REPOSITORY,
370
+ })
371
+ .handler(async (input, ctx) => {
372
+ return gitStashList(input, ctx);
373
+ })
374
+ .build();
375
+ const gitStashPushProcedure = createProcedure()
376
+ .path(["git", "stash", "push"])
377
+ .input(zodAdapter(GitStashPushInputSchema))
378
+ .output(zodAdapter(GitStashPushOutputSchema))
379
+ .meta({
380
+ description: "Push changes to stash",
381
+ args: ["message"],
382
+ shorts: { message: "m", includeUntracked: "u", keepIndex: "k", cwd: "C" },
383
+ output: "json",
384
+ // It removes the changes from the working tree. With `keepIndex`, a second call stashes again.
385
+ effects: CHANGES_REPOSITORY,
386
+ })
387
+ .handler(async (input, ctx) => {
388
+ return gitStashPush(input, ctx);
389
+ })
390
+ .build();
391
+ const gitStashPopProcedure = createProcedure()
392
+ .path(["git", "stash", "pop"])
393
+ .input(zodAdapter(GitStashPopInputSchema))
394
+ .output(zodAdapter(GitStashPopOutputSchema))
395
+ .meta({
396
+ description: "Pop stash (apply and remove)",
397
+ args: [],
398
+ shorts: { index: "n", cwd: "C" },
399
+ output: "json",
400
+ effects: CHANGES_REPOSITORY,
401
+ })
402
+ .handler(async (input, ctx) => {
403
+ return gitStashPop(input, ctx);
404
+ })
405
+ .build();
406
+ const gitStashApplyProcedure = createProcedure()
407
+ .path(["git", "stash", "apply"])
408
+ .input(zodAdapter(GitStashApplyInputSchema))
409
+ .output(zodAdapter(GitStashApplyOutputSchema))
410
+ .meta({
411
+ description: "Apply stash without removing",
412
+ args: [],
413
+ shorts: { index: "n", cwd: "C" },
414
+ output: "json",
415
+ effects: CHANGES_REPOSITORY,
416
+ })
417
+ .handler(async (input, ctx) => {
418
+ return gitStashApply(input, ctx);
419
+ })
420
+ .build();
421
+ const gitStashDropProcedure = createProcedure()
422
+ .path(["git", "stash", "drop"])
423
+ .input(zodAdapter(GitStashDropInputSchema))
424
+ .output(zodAdapter(GitStashDropOutputSchema))
425
+ .meta({
426
+ description: "Drop a stash",
427
+ args: [],
428
+ shorts: { index: "n", cwd: "C" },
429
+ output: "json",
430
+ effects: CHANGES_REPOSITORY,
431
+ })
432
+ .handler(async (input, ctx) => {
433
+ return gitStashDrop(input, ctx);
434
+ })
435
+ .build();
436
+ const gitStashExportProcedure = createProcedure()
437
+ .path(["git", "stash", "export"])
438
+ .input(zodAdapter(GitStashExportInputSchema))
439
+ .output(zodAdapter(GitStashExportOutputSchema))
440
+ .meta({
441
+ description: "Export stash as patch for snapshot storage",
442
+ args: [],
443
+ shorts: { index: "n", cwd: "C" },
444
+ output: "json",
445
+ effects: READS_REPOSITORY,
446
+ })
447
+ .handler(async (input, ctx) => {
448
+ return gitStashExport(input, ctx);
449
+ })
450
+ .build();
451
+ const gitStashImportProcedure = createProcedure()
452
+ .path(["git", "stash", "import"])
453
+ .input(zodAdapter(GitStashImportInputSchema))
454
+ .output(zodAdapter(GitStashImportOutputSchema))
455
+ .meta({
456
+ description: "Import stash from patch",
457
+ args: ["patch"],
458
+ shorts: { message: "m", includeUntracked: "u", cwd: "C" },
459
+ output: "json",
460
+ // It applies the patch to the working tree, then stashes all the changes of the working tree
461
+ effects: CHANGES_REPOSITORY,
462
+ })
463
+ .handler(async (input, ctx) => {
464
+ return gitStashImport(input, ctx);
465
+ })
466
+ .build();
467
+ // =============================================================================
468
+ // Registration
469
+ // =============================================================================
470
+ /**
471
+ * The module of this package, for `createRegistry()`: its procedures as data. Importing this
472
+ * file registers nothing. (`register.ts` registers the same procedures in the global registry.)
473
+ */
474
+ export const gitModule = defineModule("@procedures/git", [
475
+ gitStatusProcedure,
476
+ gitAddProcedure,
477
+ gitCommitProcedure,
478
+ gitPushProcedure,
479
+ gitPullProcedure,
480
+ gitCloneProcedure,
481
+ gitCheckoutProcedure,
482
+ gitBranchProcedure,
483
+ gitLogProcedure,
484
+ gitDiffProcedure,
485
+ gitInitProcedure,
486
+ gitRemoteProcedure,
487
+ gitRemoteSetProcedure,
488
+ gitFetchProcedure,
489
+ // Predicate procedures
490
+ gitHasChangesProcedure,
491
+ gitHasStagedChangesProcedure,
492
+ gitHasUnstagedChangesProcedure,
493
+ gitHasUntrackedFilesProcedure,
494
+ gitHasLocalCommitsProcedure,
495
+ gitIsCleanProcedure,
496
+ // Stash procedures
497
+ gitStashListProcedure,
498
+ gitStashPushProcedure,
499
+ gitStashPopProcedure,
500
+ gitStashApplyProcedure,
501
+ gitStashDropProcedure,
502
+ gitStashExportProcedure,
503
+ gitStashImportProcedure,
504
+ ]);
505
+ export default gitModule;
506
+ /**
507
+ * This function registers the procedures of @procedures/git, and of the modules that it requires, in
508
+ * a registry. The default is the global registry. Importing this file registers nothing: the
509
+ * `./register` entry starts this function (ARCHITECTURE-PROPOSALS-2026-10, P9).
510
+ */
511
+ export function registerGitProcedures(registry = PROCEDURE_REGISTRY) {
512
+ registerModules(registry, [gitModule]);
513
+ }
514
+ //# sourceMappingURL=module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAsC,kBAAkB,EAAE,eAAe,EAA0B,MAAM,oBAAoB,CAAC;AAChL,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,UAAU,GACX,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAqBlB,kBAAkB,EAGlB,oBAAoB,EAEpB,uBAAuB,EAGvB,mBAAmB,EAGnB,uBAAuB,EAGvB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,EAezB,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,YAAY,CAAC;AAEpB,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF,8FAA8F;AAC9F,iDAAiD;AAEjD,kFAAkF;AAClF,MAAM,gBAAgB,GAAY,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AAEhE,0FAA0F;AAC1F,MAAM,kBAAkB,GAAY,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;AAEtE;;;;GAIG;AACH,MAAM,UAAU,GAAY,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;AAEzE,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF,MAAM,kBAAkB,GAAG,eAAe,EAAE;KACzC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;KACvB,KAAK,CAAC,UAAU,CAAiB,oBAAoB,CAAC,CAAC;KACvD,MAAM,CAAC,UAAU,CAAkB,qBAAqB,CAAC,CAAC;KAC1D,IAAI,CAAC;IACJ,WAAW,EAAE,gBAAgB;IAC7B,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;IAChC,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,gBAAgB;CAC1B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAqB,EAAE,GAAG,EAA4B,EAAE;IACtE,OAAO,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC/B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,eAAe,GAAG,eAAe,EAAE;KACtC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;KACpB,KAAK,CAAC,UAAU,CAAc,iBAAiB,CAAC,CAAC;KACjD,MAAM,CAAC,UAAU,CAAe,kBAAkB,CAAC,CAAC;KACpD,IAAI,CAAC;IACJ,WAAW,EAAE,aAAa;IAC1B,IAAI,EAAE,CAAC,OAAO,CAAC;IACf,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IAC9B,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;CACjF,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAkB,EAAE,GAAG,EAAyB,EAAE;IAChE,OAAO,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,kBAAkB,GAAG,eAAe,EAAE;KACzC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;KACvB,KAAK,CAAC,UAAU,CAAiB,oBAAoB,CAAC,CAAC;KACvD,MAAM,CAAC,UAAU,CAAkB,qBAAqB,CAAC,CAAC;KAC1D,IAAI,CAAC;IACJ,WAAW,EAAE,eAAe;IAC5B,IAAI,EAAE,CAAC,SAAS,CAAC;IACjB,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IACxD,MAAM,EAAE,MAAM;IACd,kEAAkE;IAClE,OAAO,EAAE,UAAU;CACpB,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAqB,EAAE,GAAG,EAA4B,EAAE;IACtE,OAAO,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC/B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,gBAAgB,GAAG,eAAe,EAAE;KACvC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;KACrB,KAAK,CAAC,UAAU,CAAe,kBAAkB,CAAC,CAAC;KACnD,MAAM,CAAC,UAAU,CAAgB,mBAAmB,CAAC,CAAC;KACtD,IAAI,CAAC;IACJ,WAAW,EAAE,gBAAgB;IAC7B,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IAC5E,MAAM,EAAE,MAAM;IACd,+FAA+F;IAC/F,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE;CAC9F,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAmB,EAAE,GAAG,EAA0B,EAAE;IAClE,OAAO,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC7B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,gBAAgB,GAAG,eAAe,EAAE;KACvC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;KACrB,KAAK,CAAC,UAAU,CAAe,kBAAkB,CAAC,CAAC;KACnD,MAAM,CAAC,UAAU,CAAgB,mBAAmB,CAAC,CAAC;KACtD,IAAI,CAAC;IACJ,WAAW,EAAE,kBAAkB;IAC/B,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IAC3D,MAAM,EAAE,MAAM;IACd,6CAA6C;IAC7C,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE;CACnF,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAmB,EAAE,GAAG,EAA0B,EAAE;IAClE,OAAO,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC7B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,iBAAiB,GAAG,eAAe,EAAE;KACxC,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;KACtB,KAAK,CAAC,UAAU,CAAgB,mBAAmB,CAAC,CAAC;KACrD,MAAM,CAAC,UAAU,CAAiB,oBAAoB,CAAC,CAAC;KACxD,IAAI,CAAC;IACJ,WAAW,EAAE,kBAAkB;IAC/B,IAAI,EAAE,CAAC,KAAK,CAAC;IACb,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IACxD,MAAM,EAAE,MAAM;IACd,8EAA8E;IAC9E,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;CAC5F,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAoB,EAAE,GAAG,EAA2B,EAAE;IACpE,OAAO,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC9B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,oBAAoB,GAAG,eAAe,EAAE;KAC3C,IAAI,CAAC,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;KACzB,KAAK,CAAC,UAAU,CAAmB,sBAAsB,CAAC,CAAC;KAC3D,MAAM,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC9D,IAAI,CAAC;IACJ,WAAW,EAAE,0BAA0B;IACvC,IAAI,EAAE,CAAC,KAAK,CAAC;IACb,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IACjC,MAAM,EAAE,MAAM;IACd,wCAAwC;IACxC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE;CACxE,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAuB,EAAE,GAAG,EAA8B,EAAE;IAC1E,OAAO,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACjC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,kBAAkB,GAAG,eAAe,EAAE;KACzC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;KACvB,KAAK,CAAC,UAAU,CAAiB,oBAAoB,CAAC,CAAC;KACvD,MAAM,CAAC,UAAU,CAAkB,qBAAqB,CAAC,CAAC;KAC1D,IAAI,CAAC;IACJ,WAAW,EAAE,mBAAmB;IAChC,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IACzD,MAAM,EAAE,MAAM;IACd,wCAAwC;IACxC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE;CAC7D,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAqB,EAAE,GAAG,EAA4B,EAAE;IACtE,OAAO,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC/B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,eAAe,GAAG,eAAe,EAAE;KACtC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;KACpB,KAAK,CAAC,UAAU,CAAc,iBAAiB,CAAC,CAAC;KACjD,MAAM,CAAC,UAAU,CAAe,kBAAkB,CAAC,CAAC;KACpD,IAAI,CAAC;IACJ,WAAW,EAAE,iBAAiB;IAC9B,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IACxD,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,gBAAgB;CAC1B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAkB,EAAE,GAAG,EAAyB,EAAE;IAChE,OAAO,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,gBAAgB,GAAG,eAAe,EAAE;KACvC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;KACrB,KAAK,CAAC,UAAU,CAAe,kBAAkB,CAAC,CAAC;KACnD,MAAM,CAAC,UAAU,CAAgB,mBAAmB,CAAC,CAAC;KACtD,IAAI,CAAC;IACJ,WAAW,EAAE,cAAc;IAC3B,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IACtD,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,gBAAgB;CAC1B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAmB,EAAE,GAAG,EAA0B,EAAE;IAClE,OAAO,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC7B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAGX,MAAM,gBAAgB,GAAG,eAAe,EAAE;KACvC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;KACrB,KAAK,CAAC,UAAU,CAAe,kBAAkB,CAAC,CAAC;KACnD,MAAM,CAAC,UAAU,CAAgB,mBAAmB,CAAC,CAAC;KACtD,IAAI,CAAC;IACJ,WAAW,EAAE,6BAA6B;IAC1C,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE;IACnD,MAAM,EAAE,MAAM;IACd,2EAA2E;IAC3E,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;CACjF,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAmB,EAAE,GAAG,EAA0B,EAAE;IAClE,OAAO,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC7B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,kBAAkB,GAAG,eAAe,EAAE;KACzC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;KACvB,KAAK,CAAC,UAAU,CAAiB,oBAAoB,CAAC,CAAC;KACvD,MAAM,CAAC,UAAU,CAAkB,qBAAqB,CAAC,CAAC;KAC1D,IAAI,CAAC;IACJ,WAAW,EAAE,yBAAyB;IACtC,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IAC/B,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;CACvC,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAqB,EAAE,GAAG,EAA4B,EAAE;IACtE,OAAO,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC/B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,qBAAqB,GAAG,eAAe,EAAE;KAC5C,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;KAC9B,KAAK,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC7D,MAAM,CAAC,UAAU,CAAkB,qBAAqB,CAAC,CAAC;KAC1D,IAAI,CAAC;IACJ,WAAW,EAAE,4CAA4C;IACzD,IAAI,EAAE,CAAC,KAAK,CAAC;IACb,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IAC/B,MAAM,EAAE,MAAM;IACd,6DAA6D;IAC7D,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE;CAC7D,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAwB,EAAE,GAAG,EAA4B,EAAE;IACzE,OAAO,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAClC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,iBAAiB,GAAG,eAAe,EAAE;KACxC,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;KACtB,KAAK,CAAC,UAAU,CAAgB,mBAAmB,CAAC,CAAC;KACrD,MAAM,CAAC,UAAU,CAAiB,oBAAoB,CAAC,CAAC;KACxD,IAAI,CAAC;IACJ,WAAW,EAAE,mBAAmB;IAChC,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IACpE,MAAM,EAAE,MAAM;IACd,gDAAgD;IAChD,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE;CACxE,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAoB,EAAE,GAAG,EAA2B,EAAE;IACpE,OAAO,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC9B,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,gFAAgF;AAChF,yDAAyD;AACzD,gFAAgF;AAEhF,MAAM,sBAAsB,GAAG,eAAe,EAAE;KAC7C,IAAI,CAAC,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;KAC3B,KAAK,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC7D,MAAM,CAAC,UAAU,CAAqB,wBAAwB,CAAC,CAAC;KAChE,IAAI,CAAC;IACJ,WAAW,EAAE,iEAAiE;IAC9E,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;IACpB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,gBAAgB;CAC1B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAwB,EAAE,GAAG,EAA+B,EAAE;IAC5E,OAAO,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACnC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,4BAA4B,GAAG,eAAe,EAAE;KACnD,IAAI,CAAC,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;KACjC,KAAK,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC7D,MAAM,CAAC,UAAU,CAAqB,wBAAwB,CAAC,CAAC;KAChE,IAAI,CAAC;IACJ,WAAW,EAAE,uDAAuD;IACpE,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;IACpB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,gBAAgB;CAC1B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAwB,EAAE,GAAG,EAA+B,EAAE;IAC5E,OAAO,mBAAmB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACzC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,8BAA8B,GAAG,eAAe,EAAE;KACrD,IAAI,CAAC,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;KACnC,KAAK,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC7D,MAAM,CAAC,UAAU,CAAqB,wBAAwB,CAAC,CAAC;KAChE,IAAI,CAAC;IACJ,WAAW,EAAE,yCAAyC;IACtD,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;IACpB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,gBAAgB;CAC1B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAwB,EAAE,GAAG,EAA+B,EAAE;IAC5E,OAAO,qBAAqB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,6BAA6B,GAAG,eAAe,EAAE;KACpD,IAAI,CAAC,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;KAClC,KAAK,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC7D,MAAM,CAAC,UAAU,CAAqB,wBAAwB,CAAC,CAAC;KAChE,IAAI,CAAC;IACJ,WAAW,EAAE,wCAAwC;IACrD,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;IACpB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,gBAAgB;CAC1B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAwB,EAAE,GAAG,EAA+B,EAAE;IAC5E,OAAO,oBAAoB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC1C,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,2BAA2B,GAAG,eAAe,EAAE;KAClD,IAAI,CAAC,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;KAChC,KAAK,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC7D,MAAM,CAAC,UAAU,CAAqB,wBAAwB,CAAC,CAAC;KAChE,IAAI,CAAC;IACJ,WAAW,EAAE,2DAA2D;IACxE,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;IACpB,MAAM,EAAE,MAAM;IACd,oEAAoE;IACpE,OAAO,EAAE,gBAAgB;CAC1B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAwB,EAAE,GAAG,EAA+B,EAAE;IAC5E,OAAO,kBAAkB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACxC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,mBAAmB,GAAG,eAAe,EAAE;KAC1C,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;KACxB,KAAK,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC7D,MAAM,CAAC,UAAU,CAAqB,wBAAwB,CAAC,CAAC;KAChE,IAAI,CAAC;IACJ,WAAW,EAAE,yCAAyC;IACtD,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;IACpB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,gBAAgB;CAC1B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAwB,EAAE,GAAG,EAA+B,EAAE;IAC5E,OAAO,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAChC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF,MAAM,qBAAqB,GAAG,eAAe,EAAE;KAC5C,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;KAC9B,KAAK,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC7D,MAAM,CAAC,UAAU,CAAqB,wBAAwB,CAAC,CAAC;KAChE,IAAI,CAAC;IACJ,WAAW,EAAE,kBAAkB;IAC/B,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;IACpB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,gBAAgB;CAC1B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAwB,EAAE,GAAG,EAA+B,EAAE;IAC5E,OAAO,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAClC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,qBAAqB,GAAG,eAAe,EAAE;KAC5C,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;KAC9B,KAAK,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC7D,MAAM,CAAC,UAAU,CAAqB,wBAAwB,CAAC,CAAC;KAChE,IAAI,CAAC;IACJ,WAAW,EAAE,uBAAuB;IACpC,IAAI,EAAE,CAAC,SAAS,CAAC;IACjB,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IACzE,MAAM,EAAE,MAAM;IACd,+FAA+F;IAC/F,OAAO,EAAE,kBAAkB;CAC5B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAwB,EAAE,GAAG,EAA+B,EAAE;IAC5E,OAAO,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAClC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,oBAAoB,GAAG,eAAe,EAAE;KAC3C,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;KAC7B,KAAK,CAAC,UAAU,CAAmB,sBAAsB,CAAC,CAAC;KAC3D,MAAM,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC9D,IAAI,CAAC;IACJ,WAAW,EAAE,8BAA8B;IAC3C,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IAChC,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,kBAAkB;CAC5B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAuB,EAAE,GAAG,EAA8B,EAAE;IAC1E,OAAO,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACjC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,sBAAsB,GAAG,eAAe,EAAE;KAC7C,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;KAC/B,KAAK,CAAC,UAAU,CAAqB,wBAAwB,CAAC,CAAC;KAC/D,MAAM,CAAC,UAAU,CAAsB,yBAAyB,CAAC,CAAC;KAClE,IAAI,CAAC;IACJ,WAAW,EAAE,8BAA8B;IAC3C,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IAChC,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,kBAAkB;CAC5B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAyB,EAAE,GAAG,EAAgC,EAAE;IAC9E,OAAO,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACnC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,qBAAqB,GAAG,eAAe,EAAE;KAC5C,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;KAC9B,KAAK,CAAC,UAAU,CAAoB,uBAAuB,CAAC,CAAC;KAC7D,MAAM,CAAC,UAAU,CAAqB,wBAAwB,CAAC,CAAC;KAChE,IAAI,CAAC;IACJ,WAAW,EAAE,cAAc;IAC3B,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IAChC,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,kBAAkB;CAC5B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAAwB,EAAE,GAAG,EAA+B,EAAE;IAC5E,OAAO,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAClC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,uBAAuB,GAAG,eAAe,EAAE;KAC9C,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;KAChC,KAAK,CAAC,UAAU,CAAsB,yBAAyB,CAAC,CAAC;KACjE,MAAM,CAAC,UAAU,CAAuB,0BAA0B,CAAC,CAAC;KACpE,IAAI,CAAC;IACJ,WAAW,EAAE,4CAA4C;IACzD,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IAChC,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,gBAAgB;CAC1B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAA0B,EAAE,GAAG,EAAiC,EAAE;IAChF,OAAO,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,MAAM,uBAAuB,GAAG,eAAe,EAAE;KAC9C,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;KAChC,KAAK,CAAC,UAAU,CAAsB,yBAAyB,CAAC,CAAC;KACjE,MAAM,CAAC,UAAU,CAAuB,0BAA0B,CAAC,CAAC;KACpE,IAAI,CAAC;IACJ,WAAW,EAAE,yBAAyB;IACtC,IAAI,EAAE,CAAC,OAAO,CAAC;IACf,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IACzD,MAAM,EAAE,MAAM;IACd,6FAA6F;IAC7F,OAAO,EAAE,kBAAkB;CAC5B,CAAC;KACD,OAAO,CAAC,KAAK,EAAE,KAA0B,EAAE,GAAG,EAAiC,EAAE;IAChF,OAAO,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC,CAAC;KACD,KAAK,EAAE,CAAC;AAEX,gFAAgF;AAChF,eAAe;AACf,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,MAAM,SAAS,GAAoB,YAAY,CAAC,iBAAiB,EAAE;IACtE,kBAAkB;IAClB,eAAe;IACf,kBAAkB;IAClB,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,oBAAoB;IACpB,kBAAkB;IAClB,eAAe;IACf,gBAAgB;IAChB,gBAAgB;IAChB,kBAAkB;IAClB,qBAAqB;IACrB,iBAAiB;IACjB,uBAAuB;IACvB,sBAAsB;IACtB,4BAA4B;IAC5B,8BAA8B;IAC9B,6BAA6B;IAC7B,2BAA2B;IAC3B,mBAAmB;IACnB,mBAAmB;IACnB,qBAAqB;IACrB,qBAAqB;IACrB,oBAAoB;IACpB,sBAAsB;IACtB,qBAAqB;IACrB,uBAAuB;IACvB,uBAAuB;CACxB,CAAC,CAAC;AAEL,eAAe,SAAS,CAAC;AAEzB;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAQ,GAAsB,kBAAkB;IACpF,eAAe,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;AACzC,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * git.add procedure
3
+ *
4
+ * Stage files
5
+ */
6
+ import { type GitContext } from "./run.js";
7
+ import type { GitAddInput, GitAddOutput } from "../../types.js";
8
+ /**
9
+ * Stage files
10
+ */
11
+ export declare function gitAdd(input: GitAddInput, ctx?: GitContext): Promise<GitAddOutput>;
12
+ //# sourceMappingURL=add.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/procedures/git/add.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAO,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEhE;;GAEG;AACH,wBAAsB,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,GAAE,UAAe,GAAG,OAAO,CAAC,YAAY,CAAC,CAgB5F"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * git.add procedure
3
+ *
4
+ * Stage files
5
+ */
6
+ import { git } from "./run.js";
7
+ /**
8
+ * Stage files
9
+ */
10
+ export async function gitAdd(input, ctx = {}) {
11
+ const { paths, all, cwd } = input;
12
+ const run = { cwd, signal: ctx.signal };
13
+ if (all) {
14
+ await git(["add", "-A"], run);
15
+ }
16
+ else if (paths.length > 0) {
17
+ await git(["add", "--", ...paths], run);
18
+ }
19
+ else {
20
+ await git(["add", "."], run);
21
+ }
22
+ // Get list of staged files (with -z, a path with a space or a quote stays exact)
23
+ const staged = (await git(["diff", "--cached", "--name-only", "-z"], run)).split("\0").filter(Boolean);
24
+ return { staged };
25
+ }
26
+ //# sourceMappingURL=add.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/procedures/git/add.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAmB,MAAM,UAAU,CAAC;AAGhD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,KAAkB,EAAE,GAAG,GAAe,EAAE;IACnE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;IAClC,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;IAExC,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;IAChC,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1C,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,iFAAiF;IACjF,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEvG,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Guards for values that the git procedures pass to git as positional arguments.
3
+ *
4
+ * execFileSync passes arguments without a shell (BUGS-2026-07 C4), but git itself still reads
5
+ * a positional value that starts with "-" as an option. Some options run commands:
6
+ * `git clone/fetch/pull --upload-pack=<command>` and `git push --receive-pack=<command>`.
7
+ * `git diff --output=<file>` writes a file. Git does not allow a ref, branch or remote name
8
+ * to start with "-", so rejecting such values does not block a legitimate call.
9
+ */
10
+ export declare function gitArg(name: string, value: string): string;
11
+ /**
12
+ * Diffs and stash patches can exceed Node's default maxBuffer of 1 MiB (BUGS-2026-07 L6)
13
+ */
14
+ export declare const GIT_MAX_BUFFER: number;
15
+ //# sourceMappingURL=args.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../src/procedures/git/args.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK1D;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAyB,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Guards for values that the git procedures pass to git as positional arguments.
3
+ *
4
+ * execFileSync passes arguments without a shell (BUGS-2026-07 C4), but git itself still reads
5
+ * a positional value that starts with "-" as an option. Some options run commands:
6
+ * `git clone/fetch/pull --upload-pack=<command>` and `git push --receive-pack=<command>`.
7
+ * `git diff --output=<file>` writes a file. Git does not allow a ref, branch or remote name
8
+ * to start with "-", so rejecting such values does not block a legitimate call.
9
+ */
10
+ export function gitArg(name, value) {
11
+ if (value.startsWith("-")) {
12
+ throw new Error(`Invalid ${name} (must not start with "-"): ${value}`);
13
+ }
14
+ return value;
15
+ }
16
+ /**
17
+ * Diffs and stash patches can exceed Node's default maxBuffer of 1 MiB (BUGS-2026-07 L6)
18
+ */
19
+ export const GIT_MAX_BUFFER = 64 * 1024 * 1024;
20
+ //# sourceMappingURL=args.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../src/procedures/git/args.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,UAAU,MAAM,CAAC,IAAY,EAAE,KAAa;IAChD,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,+BAA+B,KAAK,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAW,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * git.branch procedure
3
+ *
4
+ * Branch operations
5
+ */
6
+ import { type GitContext } from "./run.js";
7
+ import type { GitBranchInput, GitBranchOutput } from "../../types.js";
8
+ /**
9
+ * Branch operations
10
+ */
11
+ export declare function gitBranch(input: GitBranchInput, ctx?: GitContext): Promise<GitBranchOutput>;
12
+ //# sourceMappingURL=branch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branch.d.ts","sourceRoot":"","sources":["../../../src/procedures/git/branch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAO,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAiB,MAAM,gBAAgB,CAAC;AAErF;;GAEG;AACH,wBAAsB,SAAS,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,GAAE,UAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CA+CrG"}