looply-cli 0.5.9 → 0.5.11

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 (141) hide show
  1. package/dist/.src-hash +1 -1
  2. package/dist/account-failover.d.ts +30 -0
  3. package/dist/account-failover.d.ts.map +1 -0
  4. package/dist/account-failover.js +32 -0
  5. package/dist/account-failover.js.map +1 -0
  6. package/dist/autonomy-controller.d.ts +23 -1
  7. package/dist/autonomy-controller.d.ts.map +1 -1
  8. package/dist/autonomy-controller.js +50 -9
  9. package/dist/autonomy-controller.js.map +1 -1
  10. package/dist/autonomy-store.d.ts +33 -1
  11. package/dist/autonomy-store.d.ts.map +1 -1
  12. package/dist/autonomy-store.js +58 -8
  13. package/dist/autonomy-store.js.map +1 -1
  14. package/dist/autonomy-tick.d.ts +23 -1
  15. package/dist/autonomy-tick.d.ts.map +1 -1
  16. package/dist/autonomy-tick.js +80 -14
  17. package/dist/autonomy-tick.js.map +1 -1
  18. package/dist/bin.d.ts.map +1 -1
  19. package/dist/bin.js +25 -5
  20. package/dist/bin.js.map +1 -1
  21. package/dist/branch-delivery-wiring.d.ts.map +1 -1
  22. package/dist/branch-delivery-wiring.js +6 -1
  23. package/dist/branch-delivery-wiring.js.map +1 -1
  24. package/dist/branch-delivery.d.ts +135 -6
  25. package/dist/branch-delivery.d.ts.map +1 -1
  26. package/dist/branch-delivery.js +540 -80
  27. package/dist/branch-delivery.js.map +1 -1
  28. package/dist/branch-replay.d.ts +45 -0
  29. package/dist/branch-replay.d.ts.map +1 -0
  30. package/dist/branch-replay.js +123 -0
  31. package/dist/branch-replay.js.map +1 -0
  32. package/dist/commit-ownership.d.ts +102 -0
  33. package/dist/commit-ownership.d.ts.map +1 -0
  34. package/dist/commit-ownership.js +97 -0
  35. package/dist/commit-ownership.js.map +1 -0
  36. package/dist/coordinator-state.d.ts.map +1 -1
  37. package/dist/coordinator-state.js +21 -1
  38. package/dist/coordinator-state.js.map +1 -1
  39. package/dist/daemon-cmd.d.ts.map +1 -1
  40. package/dist/daemon-cmd.js +53 -4
  41. package/dist/daemon-cmd.js.map +1 -1
  42. package/dist/daemon.d.ts +10 -1
  43. package/dist/daemon.d.ts.map +1 -1
  44. package/dist/daemon.js +31 -5
  45. package/dist/daemon.js.map +1 -1
  46. package/dist/deliver-cmd.d.ts +18 -0
  47. package/dist/deliver-cmd.d.ts.map +1 -1
  48. package/dist/deliver-cmd.js +71 -5
  49. package/dist/deliver-cmd.js.map +1 -1
  50. package/dist/delivery-settings-cache.d.ts +15 -1
  51. package/dist/delivery-settings-cache.d.ts.map +1 -1
  52. package/dist/delivery-settings-cache.js +31 -3
  53. package/dist/delivery-settings-cache.js.map +1 -1
  54. package/dist/environment-hold.d.ts +69 -0
  55. package/dist/environment-hold.d.ts.map +1 -0
  56. package/dist/environment-hold.js +120 -0
  57. package/dist/environment-hold.js.map +1 -0
  58. package/dist/gate.d.ts.map +1 -1
  59. package/dist/gate.js +15 -1
  60. package/dist/gate.js.map +1 -1
  61. package/dist/github-api.d.ts +19 -0
  62. package/dist/github-api.d.ts.map +1 -1
  63. package/dist/github-api.js +26 -0
  64. package/dist/github-api.js.map +1 -1
  65. package/dist/goal-adaptive.d.ts +1 -0
  66. package/dist/goal-adaptive.d.ts.map +1 -1
  67. package/dist/goal-adaptive.js +26 -13
  68. package/dist/goal-adaptive.js.map +1 -1
  69. package/dist/goal-compile.d.ts +37 -0
  70. package/dist/goal-compile.d.ts.map +1 -1
  71. package/dist/goal-compile.js +25 -1
  72. package/dist/goal-compile.js.map +1 -1
  73. package/dist/goal-replay.d.ts +83 -0
  74. package/dist/goal-replay.d.ts.map +1 -0
  75. package/dist/goal-replay.js +121 -0
  76. package/dist/goal-replay.js.map +1 -0
  77. package/dist/goal-reproof.d.ts +5 -0
  78. package/dist/goal-reproof.d.ts.map +1 -1
  79. package/dist/goal-reproof.js +11 -4
  80. package/dist/goal-reproof.js.map +1 -1
  81. package/dist/grant-pause.d.ts +48 -0
  82. package/dist/grant-pause.d.ts.map +1 -0
  83. package/dist/grant-pause.js +103 -0
  84. package/dist/grant-pause.js.map +1 -0
  85. package/dist/grant-reconcile.d.ts +8 -2
  86. package/dist/grant-reconcile.d.ts.map +1 -1
  87. package/dist/grant-reconcile.js +9 -2
  88. package/dist/grant-reconcile.js.map +1 -1
  89. package/dist/grant-waiting-wiring.d.ts +49 -0
  90. package/dist/grant-waiting-wiring.d.ts.map +1 -0
  91. package/dist/grant-waiting-wiring.js +77 -0
  92. package/dist/grant-waiting-wiring.js.map +1 -0
  93. package/dist/model-transport.d.ts +13 -0
  94. package/dist/model-transport.d.ts.map +1 -1
  95. package/dist/model-transport.js +70 -9
  96. package/dist/model-transport.js.map +1 -1
  97. package/dist/planner-timeouts.d.ts +14 -0
  98. package/dist/planner-timeouts.d.ts.map +1 -0
  99. package/dist/planner-timeouts.js +51 -0
  100. package/dist/planner-timeouts.js.map +1 -0
  101. package/dist/provider-accounts-cmd.d.ts +58 -0
  102. package/dist/provider-accounts-cmd.d.ts.map +1 -0
  103. package/dist/provider-accounts-cmd.js +247 -0
  104. package/dist/provider-accounts-cmd.js.map +1 -0
  105. package/dist/provider-accounts.d.ts +157 -0
  106. package/dist/provider-accounts.d.ts.map +1 -0
  107. package/dist/provider-accounts.js +423 -0
  108. package/dist/provider-accounts.js.map +1 -0
  109. package/dist/provider-cmd.d.ts +3 -0
  110. package/dist/provider-cmd.d.ts.map +1 -1
  111. package/dist/provider-cmd.js +25 -0
  112. package/dist/provider-cmd.js.map +1 -1
  113. package/dist/provider-limit.d.ts +6 -0
  114. package/dist/provider-limit.d.ts.map +1 -1
  115. package/dist/provider-limit.js +12 -0
  116. package/dist/provider-limit.js.map +1 -1
  117. package/dist/provider-state.d.ts +3 -0
  118. package/dist/provider-state.d.ts.map +1 -1
  119. package/dist/provider-state.js +4 -1
  120. package/dist/provider-state.js.map +1 -1
  121. package/dist/run-cmd.d.ts +12 -1
  122. package/dist/run-cmd.d.ts.map +1 -1
  123. package/dist/run-cmd.js +187 -15
  124. package/dist/run-cmd.js.map +1 -1
  125. package/dist/run-refusal-marks.d.ts +7 -1
  126. package/dist/run-refusal-marks.d.ts.map +1 -1
  127. package/dist/run-refusal-marks.js +4 -0
  128. package/dist/run-refusal-marks.js.map +1 -1
  129. package/dist/server-client.d.ts +33 -2
  130. package/dist/server-client.d.ts.map +1 -1
  131. package/dist/server-client.js +33 -1
  132. package/dist/server-client.js.map +1 -1
  133. package/dist/spend-ledger.d.ts +7 -0
  134. package/dist/spend-ledger.d.ts.map +1 -1
  135. package/dist/spend-ledger.js +1 -0
  136. package/dist/spend-ledger.js.map +1 -1
  137. package/dist/start-attempts.d.ts +4 -2
  138. package/dist/start-attempts.d.ts.map +1 -1
  139. package/dist/start-attempts.js +6 -1
  140. package/dist/start-attempts.js.map +1 -1
  141. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"branch-delivery.js","sourceRoot":"","sources":["../src/branch-delivery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"branch-delivery.js","sourceRoot":"","sources":["../src/branch-delivery.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import type { ReplayResult } from './branch-delivery';
2
+ import type { GitExec } from './git-driver';
3
+ /**
4
+ * REBUILD A GOAL'S WORK ON THE BASE, WITHOUT THE OTHER GOALS' COMMITS UNDER IT.
5
+ *
6
+ * ─────────────────────────────────────────────────────────────────────────────
7
+ * A run branch cut on top of another goal's unmerged branch carries that goal's
8
+ * commits into its pull request. `commit-ownership.ts` says which commits are
9
+ * this goal's own; this puts exactly those, oldest first, onto the base, as new
10
+ * commits with the same author, date and message — what a person would get from
11
+ * picking them one by one — and answers the new tip. The caller decides what to
12
+ * name it (`<branch>-solo`) and whether to push it.
13
+ *
14
+ * 🔴 NOT A CHERRY-PICK, AND THAT IS THE POINT. `integration.spec.ts` pins that no
15
+ * CLI code runs `merge`, `rebase` or `cherry-pick`, because each of those
16
+ * combines two histories with a three-way merge, and a three-way merge that
17
+ * "succeeds" can still silently drop somebody's line — *"auto-resolving a merge
18
+ * conflict"* is listed under Never. So each commit is carried the way the
19
+ * candidate replay carries a change: its own diff, applied with `git apply
20
+ * --check` first and never `--3way`, never `--reject`. A commit whose context no
21
+ * longer matches the base is a REFUSAL, and the caller falls back to delivering
22
+ * the branch as it is, saying why. Stricter than a cherry-pick on purpose: it
23
+ * refuses some changes a cherry-pick would have merged, and never makes one up.
24
+ *
25
+ * ⚠️ APPLIED TO THE INDEX (`--cached`), NOT THE FILES. The diff is of blobs as git
26
+ * stores them and the index holds the same, so line endings and filters cannot
27
+ * make a clean patch look dirty or a dirty one look clean. The worktree's files
28
+ * are only there because `worktree add` writes them.
29
+ *
30
+ * ⚠️ THE PATCH NEVER PASSES THROUGH A JS STRING. `git diff --output=<file>`
31
+ * writes it and `git apply` reads it: an exec decodes stdout chunk by chunk, and
32
+ * a multi-byte character split across two chunks (Tabsy's Arabic strings) would
33
+ * come back as U+FFFD in an ADDED line — which `--check` cannot catch, since
34
+ * added lines have nothing to match.
35
+ *
36
+ * ⚠️ NOTHING OF THE PERSON'S IS TOUCHED. The work happens in a temporary DETACHED
37
+ * worktree of the same repository, cut from the base: no branch is created or
38
+ * moved here, the person's checkout and HEAD are never read or written, and the
39
+ * worktree is removed in `finally` — on success, on refusal and on a throw. It is
40
+ * a fresh checkout with no `node_modules`, and it is reset to its own HEAD before
41
+ * `worktree remove` (never `--force`); only if git still refuses is the folder
42
+ * deleted and `worktree prune` asked to forget it.
43
+ */
44
+ export declare function replayOnto(repoExec: GitExec, execAt: (dir: string) => GitExec, base: string, commits: readonly string[], scratchRoot?: string): Promise<ReplayResult>;
45
+ //# sourceMappingURL=branch-replay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branch-replay.d.ts","sourceRoot":"","sources":["../src/branch-replay.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,EAChC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,WAAW,GAAE,MAAiB,GAC7B,OAAO,CAAC,YAAY,CAAC,CAgEvB"}
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.replayOnto = replayOnto;
4
+ const node_fs_1 = require("node:fs");
5
+ const node_os_1 = require("node:os");
6
+ const node_path_1 = require("node:path");
7
+ /**
8
+ * REBUILD A GOAL'S WORK ON THE BASE, WITHOUT THE OTHER GOALS' COMMITS UNDER IT.
9
+ *
10
+ * ─────────────────────────────────────────────────────────────────────────────
11
+ * A run branch cut on top of another goal's unmerged branch carries that goal's
12
+ * commits into its pull request. `commit-ownership.ts` says which commits are
13
+ * this goal's own; this puts exactly those, oldest first, onto the base, as new
14
+ * commits with the same author, date and message — what a person would get from
15
+ * picking them one by one — and answers the new tip. The caller decides what to
16
+ * name it (`<branch>-solo`) and whether to push it.
17
+ *
18
+ * 🔴 NOT A CHERRY-PICK, AND THAT IS THE POINT. `integration.spec.ts` pins that no
19
+ * CLI code runs `merge`, `rebase` or `cherry-pick`, because each of those
20
+ * combines two histories with a three-way merge, and a three-way merge that
21
+ * "succeeds" can still silently drop somebody's line — *"auto-resolving a merge
22
+ * conflict"* is listed under Never. So each commit is carried the way the
23
+ * candidate replay carries a change: its own diff, applied with `git apply
24
+ * --check` first and never `--3way`, never `--reject`. A commit whose context no
25
+ * longer matches the base is a REFUSAL, and the caller falls back to delivering
26
+ * the branch as it is, saying why. Stricter than a cherry-pick on purpose: it
27
+ * refuses some changes a cherry-pick would have merged, and never makes one up.
28
+ *
29
+ * ⚠️ APPLIED TO THE INDEX (`--cached`), NOT THE FILES. The diff is of blobs as git
30
+ * stores them and the index holds the same, so line endings and filters cannot
31
+ * make a clean patch look dirty or a dirty one look clean. The worktree's files
32
+ * are only there because `worktree add` writes them.
33
+ *
34
+ * ⚠️ THE PATCH NEVER PASSES THROUGH A JS STRING. `git diff --output=<file>`
35
+ * writes it and `git apply` reads it: an exec decodes stdout chunk by chunk, and
36
+ * a multi-byte character split across two chunks (Tabsy's Arabic strings) would
37
+ * come back as U+FFFD in an ADDED line — which `--check` cannot catch, since
38
+ * added lines have nothing to match.
39
+ *
40
+ * ⚠️ NOTHING OF THE PERSON'S IS TOUCHED. The work happens in a temporary DETACHED
41
+ * worktree of the same repository, cut from the base: no branch is created or
42
+ * moved here, the person's checkout and HEAD are never read or written, and the
43
+ * worktree is removed in `finally` — on success, on refusal and on a throw. It is
44
+ * a fresh checkout with no `node_modules`, and it is reset to its own HEAD before
45
+ * `worktree remove` (never `--force`); only if git still refuses is the folder
46
+ * deleted and `worktree prune` asked to forget it.
47
+ */
48
+ async function replayOnto(repoExec, execAt, base, commits, scratchRoot = (0, node_os_1.tmpdir)()) {
49
+ if (commits.length === 0)
50
+ return { ok: false, because: 'there is no commit of this goal to rebuild' };
51
+ const baseSha = await repoExec(['rev-parse', '--verify', '--quiet', `${base}^{commit}`]);
52
+ if (baseSha.code !== 0 || baseSha.stdout.trim() === '')
53
+ return { ok: false, because: `${base} is not a commit here` };
54
+ const scratch = (0, node_fs_1.mkdtempSync)((0, node_path_1.join)(scratchRoot, 'looply-rebuild-'));
55
+ const tree = (0, node_path_1.join)(scratch, 'tree');
56
+ const patch = (0, node_path_1.join)(scratch, 'change.patch');
57
+ let added = false;
58
+ try {
59
+ const add = await repoExec(['worktree', 'add', '--detach', '--quiet', tree, baseSha.stdout.trim()]);
60
+ if (add.code !== 0)
61
+ return { ok: false, because: `a temporary worktree could not be made: ${add.stderr.trim().slice(0, 300)}` };
62
+ added = true;
63
+ const wt = execAt(tree);
64
+ const alreadyInBase = [];
65
+ let replayed = 0;
66
+ for (const c of commits) {
67
+ const parents = await repoExec(['rev-list', '--parents', '-n', '1', c]);
68
+ const ids = parents.stdout.trim().split(/\s+/);
69
+ if (parents.code !== 0 || ids.length !== 2) {
70
+ return { ok: false, at: c, because: `${c.slice(0, 12)} is ${ids.length > 2 ? 'a merge' : 'not a commit Looply can read'}, which is never replayed` };
71
+ }
72
+ const diff = await repoExec(['diff', '--binary', '--full-index', '--no-color', '--no-ext-diff', '--no-textconv', `--output=${patch}`, `${c}^`, c]);
73
+ if (diff.code !== 0)
74
+ return { ok: false, at: c, because: `the change of ${c.slice(0, 12)} could not be read: ${diff.stderr.trim().slice(0, 300)}` };
75
+ const check = await wt(['apply', '--cached', '--check', patch]);
76
+ if (check.code !== 0) {
77
+ // Already on the base (the same change merged another way): nothing to carry.
78
+ const back = await wt(['apply', '--cached', '--check', '--reverse', patch]);
79
+ if (back.code === 0) {
80
+ alreadyInBase.push(c);
81
+ continue;
82
+ }
83
+ return { ok: false, at: c, because: `${c.slice(0, 12)} does not apply cleanly onto ${base}: ${check.stderr.trim().split(/\r?\n/)[0]?.slice(0, 300) ?? ''}` };
84
+ }
85
+ const applied = await wt(['apply', '--cached', patch]);
86
+ if (applied.code !== 0)
87
+ return { ok: false, at: c, because: `git apply exited ${applied.code} on ${c.slice(0, 12)}: ${applied.stderr.trim().slice(0, 300)}` };
88
+ // An empty change (a commit with no diff) needs no commit of its own.
89
+ const staged = await wt(['diff', '--cached', '--quiet']);
90
+ if (staged.code === 0)
91
+ continue;
92
+ const commit = await wt(['commit', '--quiet', '--no-verify', '-C', c]);
93
+ if (commit.code !== 0)
94
+ return { ok: false, at: c, because: `git commit failed for ${c.slice(0, 12)}: ${commit.stderr.trim().slice(0, 300)}` };
95
+ replayed++;
96
+ }
97
+ if (replayed === 0)
98
+ return { ok: false, because: `every commit of this goal is already on ${base}` };
99
+ const head = await wt(['rev-parse', 'HEAD']);
100
+ const headTree = await wt(['rev-parse', 'HEAD^{tree}']);
101
+ if (head.code !== 0 || headTree.code !== 0)
102
+ return { ok: false, because: 'the rebuilt commit could not be read back' };
103
+ return { ok: true, sha: head.stdout.trim(), tree: headTree.stdout.trim(), replayed, alreadyInBase };
104
+ }
105
+ finally {
106
+ if (added) {
107
+ let removed = false;
108
+ try {
109
+ await execAt(tree)(['reset', '--quiet', '--hard', 'HEAD']);
110
+ removed = (await repoExec(['worktree', 'remove', tree])).code === 0;
111
+ }
112
+ catch {
113
+ removed = false;
114
+ }
115
+ if (!removed) {
116
+ (0, node_fs_1.rmSync)(tree, { recursive: true, force: true });
117
+ await repoExec(['worktree', 'prune']).catch(() => undefined);
118
+ }
119
+ }
120
+ (0, node_fs_1.rmSync)(scratch, { recursive: true, force: true });
121
+ }
122
+ }
123
+ //# sourceMappingURL=branch-replay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branch-replay.js","sourceRoot":"","sources":["../src/branch-replay.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ import type { LaneClaimRecord } from './lane-claims';
2
+ /**
3
+ * WHOSE COMMITS ARE ON THIS BRANCH?
4
+ *
5
+ * ─────────────────────────────────────────────────────────────────────────────
6
+ * A run branch is cut from whatever the run started on, and on a busy machine
7
+ * that is often ANOTHER goal's run branch that nobody has merged yet. Tabsy's
8
+ * PR #4 (TAB-B-65) was the case that made this matter: its branch held the
9
+ * commits of five other tickets' goals, and under "Ship" a green check or an
10
+ * "Approve and ship" would have merged all five into main unreviewed.
11
+ *
12
+ * So before a branch is merged — or pushed as a pull request at all — the
13
+ * commits in `base..tip` are attributed:
14
+ *
15
+ * 1. the local `looply/run-*` branches whose tips lie inside `base..tip` cut
16
+ * the range into SEGMENTS, each ending at one of those tips;
17
+ * 2. a segment belongs to the goal that owns the branch at its top
18
+ * (`goalOfBranch`, from the lane claims; a `<branch>-solo` rebuild belongs
19
+ * to whoever owns `<branch>`);
20
+ * 3. the segment that ends at the tip itself is always the goal's own work —
21
+ * it is the branch being delivered.
22
+ *
23
+ * Each segment is then OWN or FOREIGN:
24
+ *
25
+ * - this goal's own earlier runs are own work (a goal that took three runs has
26
+ * three branches stacked on one another, and all of it is the goal's);
27
+ * - a branch the lane claims name as ANOTHER goal's is foreign;
28
+ * - a branch nobody claims but that is on origin is foreign, owner unknown —
29
+ * only a delivered goal's branch is ever pushed there (the same rule
30
+ * `stackedOn` uses);
31
+ * - a branch nobody claims and origin does not have is OWN. ⚠️ DELIBERATE: with
32
+ * nothing saying the work is somebody else's, the safe reading for a REBUILD
33
+ * is to keep it — dropping it would silently lose work the goal may need —
34
+ * and the merge guard loses nothing by it either, because it only ever has
35
+ * to stop on work that another goal's branch is KNOWN to hold.
36
+ *
37
+ * When several branches sit at the same commit, any one of them that is this
38
+ * goal's makes the segment own (a branch cut from it with no commits of its own
39
+ * authored nothing), else a claimed foreign branch wins over an unclaimed one.
40
+ *
41
+ * Nothing here runs git except the one read it is handed; it never fetches,
42
+ * never writes, and answers null when git cannot list the range — the caller
43
+ * decides what an unreadable branch means (the merge guard: do not merge).
44
+ */
45
+ /** The one git read this needs. */
46
+ export interface OwnershipGit {
47
+ /**
48
+ * The commits in `base..tip`, oldest first in topological order, each with its
49
+ * parents (`rev-list --reverse --topo-order --parents`); null when git could
50
+ * not say (an unknown commit, a pruned object).
51
+ */
52
+ commitsBetween(base: string, tip: string): Promise<Array<{
53
+ sha: string;
54
+ parents: string[];
55
+ }> | null>;
56
+ }
57
+ /** The suffix of a branch rebuilt onto the base without other goals' commits. */
58
+ export declare const SOLO_SUFFIX = "-solo";
59
+ /** Another goal's work found on a branch: whose, on which branch, which commits (oldest first). */
60
+ export interface ForeignWork {
61
+ /** The other goal, or undefined when only origin says it is somebody else's. */
62
+ readonly goalId: string | undefined;
63
+ /** The run branch at the top of the segment(s). */
64
+ readonly branch: string;
65
+ readonly commits: readonly string[];
66
+ readonly onOrigin: boolean;
67
+ }
68
+ export interface CommitOwnership {
69
+ /** This goal's own commits, oldest first — what a rebuild replays. */
70
+ readonly own: readonly string[];
71
+ /** Other goals' work, one entry per branch, oldest first. */
72
+ readonly foreign: readonly ForeignWork[];
73
+ /** Commits in the range whose parent count is not one (merges): a rebuild cannot replay those. */
74
+ readonly merges: readonly string[];
75
+ }
76
+ export interface OwnershipInput {
77
+ readonly tip: string;
78
+ /** The base ref the range is measured from (`refs/remotes/origin/main`, `main`). */
79
+ readonly base: string;
80
+ readonly goalId: string;
81
+ readonly claims: readonly LaneClaimRecord[];
82
+ /** Local `looply/run-*` branches and their tips. */
83
+ readonly branches: ReadonlyArray<{
84
+ name: string;
85
+ sha: string;
86
+ }>;
87
+ /** The `looply/run-*` branches origin has. */
88
+ readonly onOrigin: ReadonlySet<string>;
89
+ }
90
+ /** Which goal a run branch belongs to, from the lane claims (the last record wins); a `-solo` rebuild answers for its original. */
91
+ export declare function ownerOfBranch(claims: readonly LaneClaimRecord[], branch: string): string | undefined;
92
+ export declare function commitOwnership(git: OwnershipGit, input: OwnershipInput): Promise<CommitOwnership | null>;
93
+ /**
94
+ * The foreign work grouped by goal, for a sentence: one goal's two earlier runs
95
+ * are one goal's work, not two strangers'.
96
+ */
97
+ export declare function foreignByGoal(foreign: readonly ForeignWork[]): Array<{
98
+ goalId: string | undefined;
99
+ branches: string[];
100
+ commits: number;
101
+ }>;
102
+ //# sourceMappingURL=commit-ownership.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commit-ownership.d.ts","sourceRoot":"","sources":["../src/commit-ownership.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,mCAAmC;AACnC,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC,CAAC;CACtG;AAED,iFAAiF;AACjF,eAAO,MAAM,WAAW,UAAU,CAAC;AAEnC,mGAAmG;AACnG,MAAM,WAAW,WAAW;IAC1B,gFAAgF;IAChF,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,mDAAmD;IACnD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,sEAAsE;IACtE,QAAQ,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,6DAA6D;IAC7D,QAAQ,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;IACzC,kGAAkG;IAClG,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,oFAAoF;IACpF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,CAAC;IAC5C,oDAAoD;IACpD,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChE,8CAA8C;IAC9C,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACxC;AAED,mIAAmI;AACnI,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKpG;AAID,wBAAsB,eAAe,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAsD/G;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,GAAG,KAAK,CAAC;IAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAUzI"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SOLO_SUFFIX = void 0;
4
+ exports.ownerOfBranch = ownerOfBranch;
5
+ exports.commitOwnership = commitOwnership;
6
+ exports.foreignByGoal = foreignByGoal;
7
+ /** The suffix of a branch rebuilt onto the base without other goals' commits. */
8
+ exports.SOLO_SUFFIX = '-solo';
9
+ /** Which goal a run branch belongs to, from the lane claims (the last record wins); a `-solo` rebuild answers for its original. */
10
+ function ownerOfBranch(claims, branch) {
11
+ for (let i = claims.length - 1; i >= 0; i--)
12
+ if (claims[i].branch === branch)
13
+ return claims[i].goalId;
14
+ const solo = branch.lastIndexOf(exports.SOLO_SUFFIX);
15
+ if (solo > 0)
16
+ return ownerOfBranch(claims, branch.slice(0, solo));
17
+ return undefined;
18
+ }
19
+ async function commitOwnership(git, input) {
20
+ const range = await git.commitsBetween(input.base, input.tip);
21
+ if (range === null)
22
+ return null;
23
+ const inRange = new Map(range.map((c) => [c.sha, c]));
24
+ // Which side each branch tip inside the range is on.
25
+ const atSha = new Map();
26
+ for (const b of input.branches) {
27
+ if (!inRange.has(b.sha))
28
+ continue;
29
+ atSha.set(b.sha, [...(atSha.get(b.sha) ?? []), b]);
30
+ }
31
+ const sideOf = (sha) => {
32
+ if (sha === input.tip)
33
+ return { kind: 'own' };
34
+ const here = atSha.get(sha);
35
+ if (here === undefined)
36
+ return null;
37
+ const owners = here.map((b) => ({ b, goal: ownerOfBranch(input.claims, b.name), origin: input.onOrigin.has(b.name) }));
38
+ if (owners.some((o) => o.goal === input.goalId))
39
+ return { kind: 'own' };
40
+ const claimed = owners.filter((o) => o.goal !== undefined).sort((x, y) => y.b.name.localeCompare(x.b.name))[0];
41
+ if (claimed !== undefined)
42
+ return { kind: 'foreign', goalId: claimed.goal, branch: claimed.b.name, onOrigin: claimed.origin };
43
+ const pushed = owners.filter((o) => o.origin).sort((x, y) => y.b.name.localeCompare(x.b.name))[0];
44
+ if (pushed !== undefined)
45
+ return { kind: 'foreign', goalId: undefined, branch: pushed.b.name, onOrigin: true };
46
+ return { kind: 'own' };
47
+ };
48
+ // Oldest anchor first: each takes every not-yet-taken commit it reaches inside the range.
49
+ const taken = new Map();
50
+ for (const c of range) {
51
+ const side = sideOf(c.sha);
52
+ if (side === null)
53
+ continue;
54
+ const stack = [c.sha];
55
+ while (stack.length > 0) {
56
+ const s = stack.pop();
57
+ if (taken.has(s) || !inRange.has(s))
58
+ continue;
59
+ taken.set(s, side);
60
+ for (const p of inRange.get(s).parents)
61
+ stack.push(p);
62
+ }
63
+ }
64
+ const own = [];
65
+ const merges = [];
66
+ const foreign = new Map();
67
+ for (const c of range) {
68
+ if (c.parents.length !== 1)
69
+ merges.push(c.sha);
70
+ // Every commit is reachable from the tip, so the tip's own segment takes whatever no older anchor did.
71
+ const side = taken.get(c.sha) ?? { kind: 'own' };
72
+ if (side.kind === 'own') {
73
+ own.push(c.sha);
74
+ continue;
75
+ }
76
+ const g = foreign.get(side.branch) ?? { goalId: side.goalId, branch: side.branch, commits: [], onOrigin: side.onOrigin };
77
+ g.commits.push(c.sha);
78
+ foreign.set(side.branch, g);
79
+ }
80
+ return { own, foreign: [...foreign.values()], merges };
81
+ }
82
+ /**
83
+ * The foreign work grouped by goal, for a sentence: one goal's two earlier runs
84
+ * are one goal's work, not two strangers'.
85
+ */
86
+ function foreignByGoal(foreign) {
87
+ const out = new Map();
88
+ for (const f of foreign) {
89
+ const key = f.goalId ?? `branch:${f.branch}`;
90
+ const g = out.get(key) ?? { goalId: f.goalId, branches: [], commits: 0 };
91
+ g.branches.push(f.branch);
92
+ g.commits += f.commits.length;
93
+ out.set(key, g);
94
+ }
95
+ return [...out.values()];
96
+ }
97
+ //# sourceMappingURL=commit-ownership.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commit-ownership.js","sourceRoot":"","sources":["../src/commit-ownership.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"coordinator-state.d.ts","sourceRoot":"","sources":["../src/coordinator-state.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAqB,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAClH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,OAAO,EAAiC,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAM9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,+EAA+E;IAC/E,QAAQ,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC7F,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;OAOG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACxC;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,iBAAiB,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAYnG;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,QAAQ,CACtB,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,aAAa,GAAG,IAAI;AAC9B;;;;;;;GAOG;AACH,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAC/B,YAAY,EAAE,CAoFhB;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,WAAW,GAAG,WAAW,EAAE,CAoB5D;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,WAAW,EACrB,IAAI,GAAE,MAAkB,GACvB,iBAAiB,EAAE,CA+BrB;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,EAAE,KAAK,EAAE,SAAS,YAAY,EAAE,GAAG,YAAY,EAAE,CAkCvG;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,YAAY,EAAE,EAC9B,GAAG,EAAE,MAAM,GACV,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkBxB;AAoBD,4CAA4C;AAC5C,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,gBAAgB,CAiElF;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAMhF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAK/F"}
1
+ {"version":3,"file":"coordinator-state.d.ts","sourceRoot":"","sources":["../src/coordinator-state.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAqB,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAClH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,OAAO,EAAiC,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAM9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,+EAA+E;IAC/E,QAAQ,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC7F,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;OAOG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACxC;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,iBAAiB,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAYnG;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,QAAQ,CACtB,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,aAAa,GAAG,IAAI;AAC9B;;;;;;;GAOG;AACH,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAC/B,YAAY,EAAE,CAoFhB;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,WAAW,GAAG,WAAW,EAAE,CAoB5D;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,WAAW,EACrB,IAAI,GAAE,MAAkB,GACvB,iBAAiB,EAAE,CA+BrB;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,EAAE,KAAK,EAAE,SAAS,YAAY,EAAE,GAAG,YAAY,EAAE,CAkCvG;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,YAAY,EAAE,EAC9B,GAAG,EAAE,MAAM,GACV,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkBxB;AAoBD,4CAA4C;AAC5C,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,gBAAgB,CAiElF;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAMhF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAyB/F"}