@generacy-ai/generacy 0.4.0 → 0.5.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 (61) hide show
  1. package/dist/cli/commands/cockpit/index.d.ts.map +1 -1
  2. package/dist/cli/commands/cockpit/index.js +2 -0
  3. package/dist/cli/commands/cockpit/index.js.map +1 -1
  4. package/dist/cli/commands/cockpit/mcp/errors.d.ts +1 -1
  5. package/dist/cli/commands/cockpit/mcp/errors.d.ts.map +1 -1
  6. package/dist/cli/commands/cockpit/mcp/errors.js.map +1 -1
  7. package/dist/cli/commands/cockpit/mcp/schemas.d.ts +136 -1
  8. package/dist/cli/commands/cockpit/mcp/schemas.d.ts.map +1 -1
  9. package/dist/cli/commands/cockpit/mcp/schemas.js +15 -2
  10. package/dist/cli/commands/cockpit/mcp/schemas.js.map +1 -1
  11. package/dist/cli/commands/cockpit/mcp/server.d.ts.map +1 -1
  12. package/dist/cli/commands/cockpit/mcp/server.js +11 -1
  13. package/dist/cli/commands/cockpit/mcp/server.js.map +1 -1
  14. package/dist/cli/commands/cockpit/mcp/tools/cockpit_queue.d.ts +19 -3
  15. package/dist/cli/commands/cockpit/mcp/tools/cockpit_queue.d.ts.map +1 -1
  16. package/dist/cli/commands/cockpit/mcp/tools/cockpit_queue.js +40 -2
  17. package/dist/cli/commands/cockpit/mcp/tools/cockpit_queue.js.map +1 -1
  18. package/dist/cli/commands/cockpit/mcp/tools/cockpit_scope_add.d.ts +31 -0
  19. package/dist/cli/commands/cockpit/mcp/tools/cockpit_scope_add.d.ts.map +1 -0
  20. package/dist/cli/commands/cockpit/mcp/tools/cockpit_scope_add.js +81 -0
  21. package/dist/cli/commands/cockpit/mcp/tools/cockpit_scope_add.js.map +1 -0
  22. package/dist/cli/commands/cockpit/mcp/tools/cockpit_scope_remove.d.ts +30 -0
  23. package/dist/cli/commands/cockpit/mcp/tools/cockpit_scope_remove.d.ts.map +1 -0
  24. package/dist/cli/commands/cockpit/mcp/tools/cockpit_scope_remove.js +80 -0
  25. package/dist/cli/commands/cockpit/mcp/tools/cockpit_scope_remove.js.map +1 -0
  26. package/dist/cli/commands/cockpit/queue.d.ts +15 -0
  27. package/dist/cli/commands/cockpit/queue.d.ts.map +1 -1
  28. package/dist/cli/commands/cockpit/queue.js +142 -29
  29. package/dist/cli/commands/cockpit/queue.js.map +1 -1
  30. package/dist/cli/commands/cockpit/scope/errors.d.ts +21 -0
  31. package/dist/cli/commands/cockpit/scope/errors.d.ts.map +1 -0
  32. package/dist/cli/commands/cockpit/scope/errors.js +17 -0
  33. package/dist/cli/commands/cockpit/scope/errors.js.map +1 -0
  34. package/dist/cli/commands/cockpit/scope/retry.d.ts +24 -0
  35. package/dist/cli/commands/cockpit/scope/retry.d.ts.map +1 -0
  36. package/dist/cli/commands/cockpit/scope/retry.js +52 -0
  37. package/dist/cli/commands/cockpit/scope/retry.js.map +1 -0
  38. package/dist/cli/commands/cockpit/scope/writer.d.ts +21 -0
  39. package/dist/cli/commands/cockpit/scope/writer.d.ts.map +1 -0
  40. package/dist/cli/commands/cockpit/scope/writer.js +141 -0
  41. package/dist/cli/commands/cockpit/scope/writer.js.map +1 -0
  42. package/dist/cli/commands/cockpit/scope.d.ts +22 -0
  43. package/dist/cli/commands/cockpit/scope.d.ts.map +1 -0
  44. package/dist/cli/commands/cockpit/scope.js +110 -0
  45. package/dist/cli/commands/cockpit/scope.js.map +1 -0
  46. package/dist/cli/commands/cockpit/status/group.d.ts +4 -2
  47. package/dist/cli/commands/cockpit/status/group.d.ts.map +1 -1
  48. package/dist/cli/commands/cockpit/status/group.js +17 -2
  49. package/dist/cli/commands/cockpit/status/group.js.map +1 -1
  50. package/dist/cli/commands/cockpit/status.d.ts.map +1 -1
  51. package/dist/cli/commands/cockpit/status.js +17 -2
  52. package/dist/cli/commands/cockpit/status.js.map +1 -1
  53. package/dist/cli/commands/cockpit/watch/diff.d.ts +6 -2
  54. package/dist/cli/commands/cockpit/watch/diff.d.ts.map +1 -1
  55. package/dist/cli/commands/cockpit/watch/diff.js +11 -3
  56. package/dist/cli/commands/cockpit/watch/diff.js.map +1 -1
  57. package/dist/config/schema.d.ts +788 -0
  58. package/dist/config/schema.d.ts.map +1 -1
  59. package/dist/config/schema.js +12 -1
  60. package/dist/config/schema.js.map +1 -1
  61. package/package.json +6 -6
@@ -0,0 +1,80 @@
1
+ import { normalizeIssueRef } from '../ref-input.js';
2
+ import { wrapToolBoundary } from '../errors.js';
3
+ import { CockpitScopeRemoveInputSchema, } from '../schemas.js';
4
+ import { writeScopeWithRetry } from '../../scope/retry.js';
5
+ import { ScopeContendedError } from '../../scope/errors.js';
6
+ function isScopeNotFoundError(err) {
7
+ const msg = err instanceof Error ? err.message : String(err);
8
+ return /404|not found|no such/i.test(msg);
9
+ }
10
+ export function cockpitScopeRemove(input, deps = {}) {
11
+ return wrapToolBoundary(async () => {
12
+ const parsed = CockpitScopeRemoveInputSchema.safeParse(input);
13
+ if (!parsed.success) {
14
+ return {
15
+ status: 'error',
16
+ class: 'invalid-args',
17
+ detail: parsed.error.issues.map((i) => i.message).join('; '),
18
+ };
19
+ }
20
+ const scopeN = await normalizeIssueRef(parsed.data.scope, {
21
+ expects: 'issue',
22
+ ...(deps.runner != null ? { runner: deps.runner } : {}),
23
+ ...(deps.gh != null ? { gh: deps.gh } : {}),
24
+ });
25
+ if (!scopeN.ok)
26
+ return scopeN.error;
27
+ const refN = await normalizeIssueRef(parsed.data.issue, {
28
+ expects: 'issue',
29
+ ...(deps.runner != null ? { runner: deps.runner } : {}),
30
+ ...(deps.gh != null ? { gh: deps.gh } : {}),
31
+ });
32
+ if (!refN.ok)
33
+ return refN.error;
34
+ const gh = deps.gh ?? scopeN.value.gh;
35
+ const scope = { repo: scopeN.value.ref.nwo, number: scopeN.value.ref.number };
36
+ const ref = { repo: refN.value.ref.nwo, number: refN.value.ref.number };
37
+ try {
38
+ const result = await writeScopeWithRetry({
39
+ gh,
40
+ scope,
41
+ mutation: { kind: 'remove', ref },
42
+ });
43
+ return {
44
+ status: 'ok',
45
+ data: {
46
+ scope: {
47
+ owner: scopeN.value.ref.owner,
48
+ repo: scopeN.value.ref.repo,
49
+ number: scopeN.value.ref.number,
50
+ },
51
+ ref: {
52
+ owner: refN.value.ref.owner,
53
+ repo: refN.value.ref.repo,
54
+ number: refN.value.ref.number,
55
+ },
56
+ alreadyAbsent: result.noop,
57
+ attempts: result.attempts,
58
+ },
59
+ };
60
+ }
61
+ catch (err) {
62
+ if (err instanceof ScopeContendedError) {
63
+ return {
64
+ status: 'error',
65
+ class: 'contended',
66
+ detail: `${err.code} after ${err.attempts} attempts`,
67
+ };
68
+ }
69
+ if (isScopeNotFoundError(err)) {
70
+ return {
71
+ status: 'error',
72
+ class: 'scope-not-found',
73
+ detail: `scope issue ${scope.repo}#${scope.number} not found`,
74
+ };
75
+ }
76
+ throw err;
77
+ }
78
+ });
79
+ }
80
+ //# sourceMappingURL=cockpit_scope_remove.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cockpit_scope_remove.js","sourceRoot":"","sources":["../../../../../../src/cli/commands/cockpit/mcp/tools/cockpit_scope_remove.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,16 @@ export interface QueueOptions {
15
15
  repo?: string;
16
16
  assignee?: string;
17
17
  yes?: boolean;
18
+ /** #935: single-issue form — mutually exclusive with positional <epic-ref> <phase>. */
19
+ issue?: string;
20
+ }
21
+ export interface QueueIssueResult {
22
+ ref: IssueRef;
23
+ workflowLabel: string;
24
+ assignee: string;
25
+ row: QueueRow;
26
+ confirmed: boolean;
27
+ exitCode: 0 | 1 | 2;
18
28
  }
19
29
  export type EligibilityStatus = {
20
30
  kind: 'eligible';
@@ -81,5 +91,10 @@ export interface QueueCommandDeps {
81
91
  export declare function renderPreview(epic: ResolvedEpic, phase: ParsedPhase, targetRepo: string, workflowLabel: string, assignee: string, rows: QueueRow[]): string[];
82
92
  export declare function renderSummary(rows: QueueRow[]): string[];
83
93
  export declare function runQueue(epicRef: string | undefined, phaseArg: string | undefined, opts: QueueOptions, deps: QueueCommandDeps): Promise<QueueResult>;
94
+ /**
95
+ * Single-issue queue form (#935). Bypasses `resolveEpic` — the caller supplies
96
+ * one specific issue ref; classify and mutate as a single row.
97
+ */
98
+ export declare function runQueueSingleIssue(issueArg: string, opts: QueueOptions, deps: QueueCommandDeps): Promise<QueueIssueResult>;
84
99
  export declare function queueCommand(deps?: QueueCommandDeps): Command;
85
100
  //# sourceMappingURL=queue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/cockpit/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/cockpit/queue.ts"],"names":[],"mappings":"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"}
@@ -197,6 +197,38 @@ async function defaultPrompt(message) {
197
197
  return false;
198
198
  return Boolean(answer);
199
199
  }
200
+ /**
201
+ * Apply the queue mutation (assign + label) for one already-eligible row.
202
+ * Shared between phase-form and single-issue-form runners.
203
+ */
204
+ async function applyQueueMutation(row, assignee, cockpitGh) {
205
+ if (row.eligibility.kind !== 'eligible')
206
+ return;
207
+ if (row.assignees.includes(assignee)) {
208
+ row.assignResult = { kind: 'already' };
209
+ }
210
+ else {
211
+ try {
212
+ await cockpitGh.addAssignees(row.ref.repo, row.ref.number, [assignee]);
213
+ row.assignResult = { kind: 'ok' };
214
+ }
215
+ catch (err) {
216
+ row.assignResult = { kind: 'error', reason: err.message };
217
+ }
218
+ }
219
+ if (row.labels.includes(row.eligibility.workflowLabel)) {
220
+ row.labelResult = { kind: 'already' };
221
+ }
222
+ else {
223
+ try {
224
+ await cockpitGh.addLabel(row.ref.repo, row.ref.number, row.eligibility.workflowLabel);
225
+ row.labelResult = { kind: 'ok' };
226
+ }
227
+ catch (err) {
228
+ row.labelResult = { kind: 'error', reason: err.message };
229
+ }
230
+ }
231
+ }
200
232
  function pickTargetRepo(refs, repoFlag) {
201
233
  const seen = new Set();
202
234
  for (const r of refs)
@@ -367,32 +399,7 @@ export async function runQueue(epicRef, phaseArg, opts, deps) {
367
399
  }
368
400
  const { eligible } = sortRows(rows);
369
401
  for (const row of eligible) {
370
- if (row.eligibility.kind !== 'eligible')
371
- continue;
372
- if (row.assignees.includes(assignee)) {
373
- row.assignResult = { kind: 'already' };
374
- }
375
- else {
376
- try {
377
- await cockpitGh.addAssignees(row.ref.repo, row.ref.number, [assignee]);
378
- row.assignResult = { kind: 'ok' };
379
- }
380
- catch (err) {
381
- row.assignResult = { kind: 'error', reason: err.message };
382
- }
383
- }
384
- if (row.labels.includes(row.eligibility.workflowLabel)) {
385
- row.labelResult = { kind: 'already' };
386
- }
387
- else {
388
- try {
389
- await cockpitGh.addLabel(row.ref.repo, row.ref.number, row.eligibility.workflowLabel);
390
- row.labelResult = { kind: 'ok' };
391
- }
392
- catch (err) {
393
- row.labelResult = { kind: 'error', reason: err.message };
394
- }
395
- }
402
+ await applyQueueMutation(row, assignee, cockpitGh);
396
403
  }
397
404
  for (const line of renderSummary(rows))
398
405
  print(line);
@@ -409,18 +416,124 @@ export async function runQueue(epicRef, phaseArg, opts, deps) {
409
416
  exitCode: anyError ? 1 : 0,
410
417
  };
411
418
  }
419
+ /**
420
+ * Single-issue queue form (#935). Bypasses `resolveEpic` — the caller supplies
421
+ * one specific issue ref; classify and mutate as a single row.
422
+ */
423
+ export async function runQueueSingleIssue(issueArg, opts, deps) {
424
+ const print = deps.stdout ?? ((line) => process.stdout.write(`${line}\n`));
425
+ const workflowLabel = opts.label ?? DEFAULT_LABEL;
426
+ if (!LABEL_REGEX.test(workflowLabel)) {
427
+ throw new CockpitExit(2, `Error: cockpit queue: invalid --label "${workflowLabel}"`);
428
+ }
429
+ if (opts.assignee != null && !LOGIN_REGEX.test(opts.assignee)) {
430
+ throw new CockpitExit(2, `Error: cockpit queue: invalid --assignee "${opts.assignee}" (expected GitHub login)`);
431
+ }
432
+ const cockpitGh = deps.cockpitGh ?? new GhCliWrapper(deps.runner ?? nodeChildProcessRunner);
433
+ const gh = deps.gh ?? cockpitGh;
434
+ const loadedConfig = await (deps.loadConfig ?? loadCockpitConfig)({});
435
+ const log = getLogger();
436
+ for (const w of loadedConfig.warnings)
437
+ log.warn(w);
438
+ let cliRef;
439
+ try {
440
+ const resolvedCtx = await resolveIssueContext({ issue: issueArg, runner: deps.runner });
441
+ cliRef = resolvedCtx.ref;
442
+ }
443
+ catch (err) {
444
+ throw new CockpitExit(2, `Error: cockpit queue: ${err instanceof Error ? err.message : String(err)}`);
445
+ }
446
+ const ref = { repo: cliRef.nwo, number: cliRef.number };
447
+ let view;
448
+ try {
449
+ view = await cockpitGh.fetchIssueState(ref.repo, ref.number);
450
+ }
451
+ catch {
452
+ view = null;
453
+ }
454
+ const eligibility = classifyRow(ref, ref.repo, workflowLabel, view);
455
+ const row = {
456
+ ref,
457
+ title: view?.title ?? '',
458
+ labels: view?.labels ?? [],
459
+ assignees: view?.assignees ?? [],
460
+ eligibility,
461
+ };
462
+ let assignee;
463
+ try {
464
+ const resolved = await resolveCockpitIdentity({
465
+ flag: opts.assignee,
466
+ configAssignee: loadedConfig.config.assignee,
467
+ gh,
468
+ logger: log,
469
+ verb: 'queue',
470
+ mode: 'required',
471
+ env: deps.env,
472
+ });
473
+ assignee = resolved.login;
474
+ }
475
+ catch (err) {
476
+ if (err instanceof LoudIdentityError) {
477
+ throw new CockpitExit(1, `Error: ${err.message}`);
478
+ }
479
+ throw err;
480
+ }
481
+ // Preview: single-row line, matching the phased form's preview shape.
482
+ if (row.eligibility.kind === 'eligible') {
483
+ print(`cockpit queue --issue: ${ref.repo}#${ref.number} ${row.title} ` +
484
+ `(${row.eligibility.workflowLabel}, assignee: ${assignee})`);
485
+ }
486
+ else {
487
+ const tag = `[SKIP: ${row.eligibility.reason}]`;
488
+ const title = row.title ? ` ${row.title}` : '';
489
+ print(`cockpit queue --issue: ${tag} ${ref.repo}#${ref.number}${title}`);
490
+ return { ref, workflowLabel, assignee, row, confirmed: false, exitCode: 0 };
491
+ }
492
+ let confirmed = Boolean(opts.yes);
493
+ if (!confirmed) {
494
+ const prompt = deps.prompt ?? defaultPrompt;
495
+ confirmed = (await prompt('Proceed?')) === true;
496
+ if (!confirmed) {
497
+ print('Cancelled. No mutations made.');
498
+ return { ref, workflowLabel, assignee, row, confirmed: false, exitCode: 0 };
499
+ }
500
+ }
501
+ await applyQueueMutation(row, assignee, cockpitGh);
502
+ for (const line of renderSummary([row]))
503
+ print(line);
504
+ const anyError = row.assignResult?.kind === 'error' || row.labelResult?.kind === 'error';
505
+ return {
506
+ ref,
507
+ workflowLabel,
508
+ assignee,
509
+ row,
510
+ confirmed: true,
511
+ exitCode: anyError ? 1 : 0,
512
+ };
513
+ }
412
514
  export function queueCommand(deps = {}) {
413
515
  const cmd = new Command('queue');
414
516
  cmd
415
- .description('Queue every eligible ref under a phase heading to the cluster pipeline.')
416
- .argument('<epic-ref>', 'Epic ref (owner/repo#N).')
417
- .argument('<phase>', 'Phase token — matched case-insensitively against the first token of a ### heading.')
517
+ .description('Queue eligible refs under a phase heading or a single issue via --issue.')
518
+ .argument('[epic-ref]', 'Epic ref (owner/repo#N). Omit when using --issue.')
519
+ .argument('[phase]', 'Phase token — matched against the first token of a ### heading.')
418
520
  .addOption(new Option('--label <name>', `Workflow label (default: ${DEFAULT_LABEL}).`))
419
521
  .addOption(new Option('--repo <owner/repo>', 'Restrict the invocation to a single repo.'))
420
522
  .addOption(new Option('--assignee <login>', 'Override the default cluster-account assignee.'))
421
523
  .addOption(new Option('--yes', 'Skip the interactive confirmation prompt.'))
524
+ .addOption(new Option('--issue <ref>', 'Single-issue mode. Mutually exclusive with <epic-ref> <phase>.'))
422
525
  .action(async (epicRef, phaseArg, opts) => {
423
526
  try {
527
+ if (opts.issue != null) {
528
+ if (epicRef != null || phaseArg != null) {
529
+ throw new CockpitExit(2, 'Error: cockpit queue: --issue is mutually exclusive with <epic-ref> <phase>');
530
+ }
531
+ const result = await runQueueSingleIssue(opts.issue, opts, deps);
532
+ process.exit(result.exitCode);
533
+ }
534
+ if (epicRef == null || phaseArg == null) {
535
+ throw new CockpitExit(2, 'Error: cockpit queue: either <epic-ref> <phase> or --issue <ref> is required');
536
+ }
424
537
  const result = await runQueue(epicRef, phaseArg, opts, deps);
425
538
  process.exit(result.exitCode);
426
539
  }
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../../src/cli/commands/cockpit/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../../src/cli/commands/cockpit/queue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { IssueRef } from '@generacy-ai/cockpit';
2
+ export declare class ScopeContendedError extends Error {
3
+ readonly code: "SCOPE_ADD_CONTENDED";
4
+ readonly attempts: number;
5
+ readonly ref: IssueRef;
6
+ readonly mutation: 'add' | 'remove';
7
+ readonly scope: {
8
+ repo: string;
9
+ number: number;
10
+ };
11
+ constructor(opts: {
12
+ attempts: number;
13
+ ref: IssueRef;
14
+ mutation: 'add' | 'remove';
15
+ scope: {
16
+ repo: string;
17
+ number: number;
18
+ };
19
+ });
20
+ }
21
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/cockpit/scope/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,IAAI,EAAG,qBAAqB,CAAU;IAC/C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,KAAK,GAAG,QAAQ,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;gBAErC,IAAI,EAAE;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,GAAG,EAAE,QAAQ,CAAC;QACd,QAAQ,EAAE,KAAK,GAAG,QAAQ,CAAC;QAC3B,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;KACzC;CAWF"}
@@ -0,0 +1,17 @@
1
+ export class ScopeContendedError extends Error {
2
+ code = 'SCOPE_ADD_CONTENDED';
3
+ attempts;
4
+ ref;
5
+ mutation;
6
+ scope;
7
+ constructor(opts) {
8
+ super(`SCOPE_ADD_CONTENDED: ${opts.mutation} ${opts.ref.repo}#${opts.ref.number} on ` +
9
+ `${opts.scope.repo}#${opts.scope.number} exhausted retry budget after ${opts.attempts} attempts`);
10
+ this.name = 'ScopeContendedError';
11
+ this.attempts = opts.attempts;
12
+ this.ref = opts.ref;
13
+ this.mutation = opts.mutation;
14
+ this.scope = opts.scope;
15
+ }
16
+ }
17
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../src/cli/commands/cockpit/scope/errors.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IACnC,IAAI,GAAG,qBAA8B,CAAC;IACtC,QAAQ,CAAS;IACjB,GAAG,CAAW;IACd,QAAQ,CAAmB;IAC3B,KAAK,CAAmC;IAEjD,YAAY,IAKX;QACC,KAAK,CACH,wBAAwB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,MAAM;YAC7E,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,iCAAiC,IAAI,CAAC,QAAQ,WAAW,CACnG,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC1B,CAAC;CACF"}
@@ -0,0 +1,24 @@
1
+ import type { GhWrapper, IssueRef } from '@generacy-ai/cockpit';
2
+ import { type BodyShape, type ScopeMutation } from './writer.js';
3
+ export interface WriteScopeOptions {
4
+ gh: GhWrapper;
5
+ scope: IssueRef;
6
+ mutation: ScopeMutation;
7
+ maxAttempts?: number;
8
+ backoffMs?: number[];
9
+ sleep?: (ms: number) => Promise<void>;
10
+ }
11
+ export interface WriteScopeResult {
12
+ noop: boolean;
13
+ attempts: number;
14
+ finalBody: string;
15
+ shape: BodyShape;
16
+ }
17
+ /**
18
+ * Read-modify-write-verify loop for concurrent-safe scope body mutations.
19
+ * `applyScopeMutation` is idempotent, so a competing writer that already
20
+ * applied our mutation causes the next retry to short-circuit as noop.
21
+ * Terminal exhaustion throws `ScopeContendedError`.
22
+ */
23
+ export declare function writeScopeWithRetry(opts: WriteScopeOptions): Promise<WriteScopeResult>;
24
+ //# sourceMappingURL=retry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/cockpit/scope/retry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhE,OAAO,EAAsB,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAErF,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,SAAS,CAAC;IACd,KAAK,EAAE,QAAQ,CAAC;IAChB,QAAQ,EAAE,aAAa,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,SAAS,CAAC;CAClB;AASD;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,gBAAgB,CAAC,CA4C3B"}
@@ -0,0 +1,52 @@
1
+ import { ScopeContendedError } from './errors.js';
2
+ import { applyScopeMutation } from './writer.js';
3
+ const DEFAULT_MAX_ATTEMPTS = 5;
4
+ const DEFAULT_BACKOFF_MS = [100, 250, 500, 1000, 2000];
5
+ function defaultSleep(ms) {
6
+ return new Promise((resolve) => setTimeout(resolve, ms));
7
+ }
8
+ /**
9
+ * Read-modify-write-verify loop for concurrent-safe scope body mutations.
10
+ * `applyScopeMutation` is idempotent, so a competing writer that already
11
+ * applied our mutation causes the next retry to short-circuit as noop.
12
+ * Terminal exhaustion throws `ScopeContendedError`.
13
+ */
14
+ export async function writeScopeWithRetry(opts) {
15
+ const maxAttempts = opts.maxAttempts ?? DEFAULT_MAX_ATTEMPTS;
16
+ const backoffMs = opts.backoffMs ?? DEFAULT_BACKOFF_MS;
17
+ const sleep = opts.sleep ?? defaultSleep;
18
+ for (let attempt = 1; attempt <= maxAttempts; attempt++) {
19
+ const issue = await opts.gh.getIssue(opts.scope.repo, opts.scope.number);
20
+ const body = issue.body ?? '';
21
+ const result = applyScopeMutation(body, opts.mutation);
22
+ if (result.noop) {
23
+ return {
24
+ noop: true,
25
+ attempts: attempt,
26
+ finalBody: body,
27
+ shape: result.shape,
28
+ };
29
+ }
30
+ await opts.gh.updateIssueBody(opts.scope.repo, opts.scope.number, result.body);
31
+ const readback = await opts.gh.getIssue(opts.scope.repo, opts.scope.number);
32
+ const verifyBody = readback.body ?? '';
33
+ if (verifyBody === result.body) {
34
+ return {
35
+ noop: false,
36
+ attempts: attempt,
37
+ finalBody: verifyBody,
38
+ shape: result.shape,
39
+ };
40
+ }
41
+ if (attempt < maxAttempts) {
42
+ await sleep(backoffMs[attempt - 1]);
43
+ }
44
+ }
45
+ throw new ScopeContendedError({
46
+ attempts: maxAttempts,
47
+ ref: opts.mutation.ref,
48
+ mutation: opts.mutation.kind,
49
+ scope: opts.scope,
50
+ });
51
+ }
52
+ //# sourceMappingURL=retry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../../../../src/cli/commands/cockpit/scope/retry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAsC,MAAM,aAAa,CAAC;AAkBrF,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAC/B,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAEvD,SAAS,YAAY,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAuB;IAEvB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,oBAAoB,CAAC;IAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,kBAAkB,CAAC;IACvD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,YAAY,CAAC;IAEzC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;QACxD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACzE,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEvD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,OAAO;gBACjB,SAAS,EAAE,IAAI;gBACf,KAAK,EAAE,MAAM,CAAC,KAAK;aACpB,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAE/E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC5E,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;QAEvC,IAAI,UAAU,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;YAC/B,OAAO;gBACL,IAAI,EAAE,KAAK;gBACX,QAAQ,EAAE,OAAO;gBACjB,SAAS,EAAE,UAAU;gBACrB,KAAK,EAAE,MAAM,CAAC,KAAK;aACpB,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,GAAG,WAAW,EAAE,CAAC;YAC1B,MAAM,KAAK,CAAC,SAAS,CAAC,OAAO,GAAG,CAAC,CAAE,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,MAAM,IAAI,mBAAmB,CAAC;QAC5B,QAAQ,EAAE,WAAW;QACrB,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG;QACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;QAC5B,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,21 @@
1
+ import type { IssueRef } from '@generacy-ai/cockpit';
2
+ export type BodyShape = 'phased' | 'flat';
3
+ export type ScopeMutation = {
4
+ kind: 'add';
5
+ ref: IssueRef;
6
+ } | {
7
+ kind: 'remove';
8
+ ref: IssueRef;
9
+ };
10
+ export interface ScopeWriteResult {
11
+ noop: boolean;
12
+ body: string;
13
+ shape: BodyShape;
14
+ }
15
+ export declare function detectShape(body: string): BodyShape;
16
+ /**
17
+ * Pure body writer. Applies the mutation according to shape rules described
18
+ * in contracts/scope-writer.md. Idempotent in both directions.
19
+ */
20
+ export declare function applyScopeMutation(body: string, mutation: ScopeMutation): ScopeWriteResult;
21
+ //# sourceMappingURL=writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/cockpit/scope/writer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE1C,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEtC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,SAAS,CAAC;CAClB;AAiBD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAMnD;AA4GD;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,aAAa,GACtB,gBAAgB,CAoBlB"}