@agent-relay/factory 0.1.68 → 0.1.69

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 (56) hide show
  1. package/dist/config/schema.d.ts +18 -0
  2. package/dist/config/schema.d.ts.map +1 -1
  3. package/dist/config/schema.js +5 -0
  4. package/dist/config/schema.js.map +1 -1
  5. package/dist/dispatch/work-unit-identity.d.ts +18 -1
  6. package/dist/dispatch/work-unit-identity.d.ts.map +1 -1
  7. package/dist/dispatch/work-unit-identity.js +68 -0
  8. package/dist/dispatch/work-unit-identity.js.map +1 -1
  9. package/dist/fleet/relay-fleet-client.d.ts +15 -0
  10. package/dist/fleet/relay-fleet-client.d.ts.map +1 -1
  11. package/dist/fleet/relay-fleet-client.js +196 -5
  12. package/dist/fleet/relay-fleet-client.js.map +1 -1
  13. package/dist/issue-key-match.d.ts +47 -0
  14. package/dist/issue-key-match.d.ts.map +1 -1
  15. package/dist/issue-key-match.js +174 -0
  16. package/dist/issue-key-match.js.map +1 -1
  17. package/dist/mount/relayfile-integration-preflight.js +7 -0
  18. package/dist/mount/relayfile-integration-preflight.js.map +1 -1
  19. package/dist/orchestrator/atomic-json-file.d.ts +44 -0
  20. package/dist/orchestrator/atomic-json-file.d.ts.map +1 -0
  21. package/dist/orchestrator/atomic-json-file.js +87 -0
  22. package/dist/orchestrator/atomic-json-file.js.map +1 -0
  23. package/dist/orchestrator/batch-tracker.d.ts +18 -0
  24. package/dist/orchestrator/batch-tracker.d.ts.map +1 -1
  25. package/dist/orchestrator/batch-tracker.js +28 -13
  26. package/dist/orchestrator/batch-tracker.js.map +1 -1
  27. package/dist/orchestrator/factory.d.ts.map +1 -1
  28. package/dist/orchestrator/factory.js +410 -91
  29. package/dist/orchestrator/factory.js.map +1 -1
  30. package/dist/orchestrator/public-health.d.ts.map +1 -1
  31. package/dist/orchestrator/public-health.js +115 -13
  32. package/dist/orchestrator/public-health.js.map +1 -1
  33. package/dist/ports/state.d.ts +21 -2
  34. package/dist/ports/state.d.ts.map +1 -1
  35. package/dist/ports/state.js +18 -1
  36. package/dist/ports/state.js.map +1 -1
  37. package/dist/state/file-state-store.d.ts.map +1 -1
  38. package/dist/state/file-state-store.js +54 -11
  39. package/dist/state/file-state-store.js.map +1 -1
  40. package/dist/state/github-lifecycle-identity.d.ts +4 -4
  41. package/dist/state/github-lifecycle-identity.d.ts.map +1 -1
  42. package/dist/state/github-lifecycle-identity.js +4 -26
  43. package/dist/state/github-lifecycle-identity.js.map +1 -1
  44. package/dist/state/in-memory-state-store.d.ts.map +1 -1
  45. package/dist/state/in-memory-state-store.js +40 -9
  46. package/dist/state/in-memory-state-store.js.map +1 -1
  47. package/dist/state/work-unit-lifecycle-migration.d.ts +85 -0
  48. package/dist/state/work-unit-lifecycle-migration.d.ts.map +1 -0
  49. package/dist/state/work-unit-lifecycle-migration.js +246 -0
  50. package/dist/state/work-unit-lifecycle-migration.js.map +1 -0
  51. package/dist/triage/heuristic.d.ts.map +1 -1
  52. package/dist/triage/heuristic.js +3 -1
  53. package/dist/triage/heuristic.js.map +1 -1
  54. package/dist/types.d.ts +51 -0
  55. package/dist/types.d.ts.map +1 -1
  56. package/package.json +1 -1
@@ -48,4 +48,178 @@ export const factoryBranchBelongsToIssue = (headRef, issueKey) => {
48
48
  ? normalizedHead === `factory/${normalizedKey}` || normalizedHead.startsWith(`factory/${normalizedKey}-`)
49
49
  : containsIssueKey(normalizedHead, normalizedKey);
50
50
  };
51
+ /**
52
+ * GitHub's closing keywords. Only these bind a merged pull request to an issue
53
+ * as *completing* it. A bare mention (`#155`, `Refs #155`, `Diagnostic for
54
+ * #155`) is an association, not authority to close.
55
+ * https://docs.github.com/issues/tracking-your-work-with-issues/using-keywords-in-issues-and-pull-requests
56
+ *
57
+ * Deliberately body-only: GitHub does not honour closing keywords in a pull
58
+ * request *title*, so neither do we.
59
+ */
60
+ const CLOSING_KEYWORD = String.raw `(?:close[sd]?|fix(?:e[sd])?|resolve[sd]?)`;
61
+ /**
62
+ * An explicit denial that this pull request closes the issue. This OUTRANKS a
63
+ * closing keyword: a body carrying both `Fixes #155` and "does not fix #155" is
64
+ * refused, because the prose is the more deliberate statement.
65
+ */
66
+ const CLOSURE_DENIAL = new RegExp([
67
+ String.raw `\b(?:does|do|did|will|would|can|could|is|are)\s+(?:n[o']?t|not)\s+(?:\w+\s+){0,2}${CLOSING_KEYWORD}\b`,
68
+ String.raw `\b(?:doesn|don|didn|won|wouldn|couldn|isn|aren|can)'?t\s+(?:\w+\s+){0,2}${CLOSING_KEYWORD}\b`,
69
+ String.raw `\bno[nt]?[-\s]?(?:a\s+)?(?:${CLOSING_KEYWORD})\b`,
70
+ ].join('|'), 'iu');
71
+ /**
72
+ * Weaker prose that merely *describes* the change rather than denying closure.
73
+ *
74
+ * Consulted only when no closing keyword is present. These words appear
75
+ * innocently in bodies that genuinely do close their issue — "Fixes #155 by
76
+ * adding a diagnostic for timeouts", "Fixes #155 and lays groundwork for
77
+ * retries" — so treating them as denials would strand ordinary work.
78
+ */
79
+ const CLOSURE_DESCRIPTOR = new RegExp([
80
+ String.raw `\bdiagnostic\s+for\b`,
81
+ String.raw `\bgroundwork\s+for\b`,
82
+ String.raw `\bpartial(?:ly)?\s+(?:${CLOSING_KEYWORD})\b`,
83
+ ].join('|'), 'iu');
84
+ /**
85
+ * Whether `headRef` is the implementation branch for `issueKey`.
86
+ *
87
+ * Mirrors Factory's own strongest association signal: a numeric GitHub key
88
+ * requires the `factory/` dispatch prefix, because a bare number is too easy to
89
+ * collide with, while a Linear-keyed branch carries the key itself
90
+ * (`ar-410-fix`) and needs no prefix.
91
+ */
92
+ export const branchImplementsIssue = (headRef, issueKey) => /^\d+$/u.test(issueKey.trim())
93
+ ? factoryBranchBelongsToIssue(headRef, issueKey)
94
+ : containsIssueKey(headRef, issueKey);
95
+ /**
96
+ * Reference forms that a closing keyword may bind to.
97
+ *
98
+ * A bare `#N` resolves to the pull request's own repository, which the caller
99
+ * has already scoped. A *qualified* `owner/repo#N` or issue URL is only honored
100
+ * when it names that same repository: `relayfile-cloud#155` must never grant
101
+ * authority to close `factory#155`. That cross-repository confusion is the
102
+ * documented prior art on this bug (#268).
103
+ */
104
+ const referencePatterns = (issueKey, repo) => {
105
+ const parts = ISSUE_KEY_PARTS.exec(issueKey);
106
+ if (parts) {
107
+ const prefix = escapeRegex(parts[1] ?? '');
108
+ const number = escapeRegex(parts[2] ?? '');
109
+ return [String.raw `${prefix}-${number}(?=$|[^A-Za-z0-9-]|-(?!\d))`];
110
+ }
111
+ if (!/^\d+$/u.test(issueKey))
112
+ return [];
113
+ const number = escapeRegex(issueKey);
114
+ const patterns = [String.raw `#${number}(?!\d)`];
115
+ if (repo && /^[^/\s]+\/[^/\s]+$/u.test(repo)) {
116
+ const qualified = escapeRegex(repo);
117
+ patterns.push(String.raw `${qualified}#${number}(?!\d)`, String.raw `https?://github\.com/${qualified}/issues/${number}(?!\d)`);
118
+ }
119
+ return patterns;
120
+ };
121
+ /** Lines of `body` that reference `issueKey` in any accepted form. */
122
+ const referencingLines = (body, issueKey, repo) => {
123
+ const patterns = referencePatterns(issueKey, repo);
124
+ if (patterns.length === 0)
125
+ return [];
126
+ const reference = new RegExp(patterns.join('|'), 'iu');
127
+ return body.split(/\r?\n/u).filter((line) => reference.test(line));
128
+ };
129
+ /**
130
+ * Whether a merged pull request may close `issueKey`.
131
+ *
132
+ * Authority comes from exactly two sources, and neither is a prose mention:
133
+ *
134
+ * - `factory-branch` — the head is Factory's own dispatch branch for the issue.
135
+ * Factory cut that branch to implement that issue, which outranks any text.
136
+ * - `closing-keyword` — a real GitHub closing keyword bound to a reference to
137
+ * this issue, in the body.
138
+ *
139
+ * Fail-closed by construction: anything unrecognised, negated, or merely
140
+ * referential leaves the issue open. A missed close costs a stale label; a
141
+ * wrong close marks a live outage COMPLETED and hides it (#313, #155).
142
+ */
143
+ /**
144
+ * How the body of a merged pull request speaks about `issueKey`.
145
+ *
146
+ * Shared by both callers so the in-flight path and the merge-advance scan can
147
+ * never disagree about what a body says.
148
+ */
149
+ const readClosureSignals = (input, issueKey) => {
150
+ const lines = referencingLines(input.body ?? '', issueKey, input.repo);
151
+ const patterns = referencePatterns(issueKey, input.repo);
152
+ const keyworded = patterns.length > 0
153
+ ? new RegExp(String.raw `(^|[^A-Za-z0-9-])${CLOSING_KEYWORD}\s*:?\s+(?:${patterns.join('|')})`, 'iu')
154
+ : undefined;
155
+ return {
156
+ lines,
157
+ denial: lines.find((line) => CLOSURE_DENIAL.test(line)),
158
+ keyword: keyworded ? lines.find((line) => keyworded.test(line)) : undefined,
159
+ descriptor: lines.find((line) => CLOSURE_DESCRIPTOR.test(line)),
160
+ };
161
+ };
162
+ /**
163
+ * Whether the pull request body disclaims closing `issueKey`.
164
+ *
165
+ * The weaker half of `prClosureAuthority`, for the in-flight path where
166
+ * Factory's own dispatch already established the association and only the body
167
+ * saying so should stop completion. A bare descriptor counts only when no
168
+ * closing keyword is present, so `Fixes #155 by adding a diagnostic for
169
+ * timeouts` still completes.
170
+ */
171
+ export const prBodyDisclaimsClosing = (input, issueKey) => {
172
+ const signals = readClosureSignals(input, issueKey);
173
+ return Boolean(signals.denial ?? (signals.keyword ? undefined : signals.descriptor));
174
+ };
175
+ /**
176
+ * Whether a merged pull request may close `issueKey`.
177
+ *
178
+ * Authority comes from exactly two sources, and neither is a prose mention:
179
+ *
180
+ * - `factory-branch` — the head is this issue's implementation branch. Factory
181
+ * cut that branch to implement that issue, which outranks any text.
182
+ * - `closing-keyword` — a real GitHub closing keyword bound to a reference to
183
+ * this issue, in the body.
184
+ *
185
+ * Fail-closed by construction: anything unrecognised, denied, or merely
186
+ * referential leaves the issue open. A missed close costs a stale label; a
187
+ * wrong close marks a live outage COMPLETED and hides it (#313, #155).
188
+ */
189
+ export const prClosureAuthority = (input, issueKey) => {
190
+ const { lines, denial, keyword, descriptor } = readClosureSignals(input, issueKey);
191
+ if (denial) {
192
+ return {
193
+ authorised: false,
194
+ evidence: `the pull request body disclaims closing ${issueKey}: "${denial.trim().slice(0, 200)}"`,
195
+ };
196
+ }
197
+ if (keyword) {
198
+ return {
199
+ authorised: true,
200
+ source: 'closing-keyword',
201
+ evidence: `pull request body closes ${issueKey} via "${keyword.trim().slice(0, 200)}"`,
202
+ };
203
+ }
204
+ // Only meaningful once no keyword was found — see CLOSURE_DESCRIPTOR.
205
+ if (descriptor) {
206
+ return {
207
+ authorised: false,
208
+ evidence: `the pull request describes itself as preparatory for ${issueKey}: "${descriptor.trim().slice(0, 200)}"`,
209
+ };
210
+ }
211
+ if (branchImplementsIssue(input.headRef ?? '', issueKey)) {
212
+ return {
213
+ authorised: true,
214
+ source: 'factory-branch',
215
+ evidence: `head branch ${input.headRef} is the implementation branch for ${issueKey}`,
216
+ };
217
+ }
218
+ return {
219
+ authorised: false,
220
+ evidence: lines.length > 0
221
+ ? `the pull request references ${issueKey} but carries no closing keyword for it`
222
+ : `the pull request carries no closing keyword for ${issueKey}`,
223
+ };
224
+ };
51
225
  //# sourceMappingURL=issue-key-match.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"issue-key-match.js","sourceRoot":"","sources":["../src/issue-key-match.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,4BAA4B,CAAA;AAE3D,MAAM,WAAW,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAA;AAE3F,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,QAAgB,EAAW,EAAE;IAC3E,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;QACrC,OAAO,IAAI,MAAM,CAAC,oBAAoB,OAAO,mBAAmB,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACpF,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IAC1C,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IAC1C,OAAO,IAAI,MAAM,CAAC,mBAAmB,MAAM,IAAI,MAAM,8BAA8B,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AACvG,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,KAAa,EAAE,QAAgB,EAAW,EAAE;IACzF,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;YACpC,OAAO,IAAI,MAAM,CACf;gBACE,IAAI,MAAM,SAAS;gBACnB,kDAAkD,MAAM,SAAS;gBACjE,mDAAmD,MAAM,SAAS;gBAClE,wDAAwD,MAAM,SAAS;aACxE,CAAC,IAAI,CAAC,GAAG,CAAC,EACX,GAAG,CACJ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACf,CAAC;QACD,OAAO,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IAC1C,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IAC1C,MAAM,KAAK,GAAG,GAAG,MAAM,IAAI,MAAM,8BAA8B,CAAA;IAC/D,OAAO,IAAI,MAAM,CAAC,8DAA8D,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC3G,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,OAAe,EAAE,QAAgB,EAAW,EAAE;IACxF,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACnD,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACnD,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa;QAAE,OAAO,KAAK,CAAA;IAC1E,OAAO,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;QACjC,CAAC,CAAC,cAAc,KAAK,WAAW,aAAa,EAAE,IAAI,cAAc,CAAC,UAAU,CAAC,WAAW,aAAa,GAAG,CAAC;QACzG,CAAC,CAAC,gBAAgB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAA;AACrD,CAAC,CAAA"}
1
+ {"version":3,"file":"issue-key-match.js","sourceRoot":"","sources":["../src/issue-key-match.ts"],"names":[],"mappings":"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"}
@@ -81,6 +81,13 @@ const notReadyMessage = (provider, observation) => {
81
81
  const details = [observation.state, observation.initialSyncState]
82
82
  .filter((value) => Boolean(value))
83
83
  .join(', ');
84
+ const state = observation.state?.trim().toLowerCase();
85
+ const initialSyncState = observation.initialSyncState?.trim().toLowerCase();
86
+ if (state === 'degraded' && initialSyncState === 'complete') {
87
+ return `[factory] ${provider} is connected but degraded after its initial sync completed` +
88
+ `${details ? ` (${details})` : ''}; ask an Agent Relay workspace owner to repair or reconnect ` +
89
+ `${provider}, then retry.`;
90
+ }
84
91
  return `[factory] ${provider} is connected but not ready${details ? ` (${details})` : ''}; wait for its initial sync, then retry.`;
85
92
  };
86
93
  const errorCode = (error) => {
@@ -1 +1 @@
1
- {"version":3,"file":"relayfile-integration-preflight.js","sourceRoot":"","sources":["../../src/mount/relayfile-integration-preflight.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relayfile-integration-preflight.js","sourceRoot":"","sources":["../../src/mount/relayfile-integration-preflight.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Atomically publish a JSON document to `path` (#323).
3
+ *
4
+ * `fs.writeFile` opens with `w`, which truncates first and then writes. A
5
+ * reader that opens the file inside that window sees a partially-written
6
+ * document, and every reader of the daemon's state files collapses a parse
7
+ * failure into `undefined` — so a torn read is indistinguishable from *the
8
+ * file does not exist*. The crash reaper then sees a healthy daemon as dead,
9
+ * and `/healthz`, which the deployed container serves straight out of the loop
10
+ * heartbeat, blips with nothing logged to explain it.
11
+ *
12
+ * A tight reader/writer instrument put this at ~28-30% of reads, but that
13
+ * figure describes the instrument — it reads in a loop with no delay. The real
14
+ * rate for any consumer depends on its read cadence against the daemon's write
15
+ * cadence, which is not measured. The mechanism is the point; the number is
16
+ * not transferable to `/healthz` or to anything else.
17
+ *
18
+ * Writing a temp file and renaming over the target gives the write an atomic
19
+ * publication point: a reader observes either the whole previous document or
20
+ * the whole new one, never a splice of the two.
21
+ *
22
+ * The temp file MUST live in the same directory as the target. `rename` is
23
+ * only atomic within a single filesystem, so a temp file in the OS temp dir
24
+ * would silently reintroduce the race wherever the target sits on another
25
+ * mount — exactly the deployed-container case this is meant to fix.
26
+ *
27
+ * Permissions are carried across explicitly. `writeFile` truncated the
28
+ * existing inode and so kept whatever mode it already had; `rename` publishes
29
+ * a *new* inode, which would otherwise take `0o666 & ~umask`. That difference
30
+ * is not academic: these files are read by out-of-process consumers
31
+ * (`/healthz`, the crash reaper, `factory fleet loop-status`), so a daemon
32
+ * restarted under a tighter umask could silently lock a differently-UID reader
33
+ * out of every subsequent update, and a deliberately restricted file could be
34
+ * widened. Carrying the destination's mode keeps this change to atomicity
35
+ * alone. No mode is passed for a first publication, deliberately: that
36
+ * reproduces what `writeFile` did when creating the file, rather than the
37
+ * tighter 0o600 used for the secret-bearing outbox.
38
+ *
39
+ * Not preserved: ACLs and extended attributes, which Node cannot portably
40
+ * copy. A consumer relying on those rather than on the mode bits needs the
41
+ * destination provisioned by something other than this writer.
42
+ */
43
+ export declare function writeJsonFileAtomically(path: string, document: unknown): Promise<void>;
44
+ //# sourceMappingURL=atomic-json-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atomic-json-file.d.ts","sourceRoot":"","sources":["../../src/orchestrator/atomic-json-file.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAoC5F"}
@@ -0,0 +1,87 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { mkdir, open, rename, rm, stat } from 'node:fs/promises';
3
+ import { dirname } from 'node:path';
4
+ /**
5
+ * Atomically publish a JSON document to `path` (#323).
6
+ *
7
+ * `fs.writeFile` opens with `w`, which truncates first and then writes. A
8
+ * reader that opens the file inside that window sees a partially-written
9
+ * document, and every reader of the daemon's state files collapses a parse
10
+ * failure into `undefined` — so a torn read is indistinguishable from *the
11
+ * file does not exist*. The crash reaper then sees a healthy daemon as dead,
12
+ * and `/healthz`, which the deployed container serves straight out of the loop
13
+ * heartbeat, blips with nothing logged to explain it.
14
+ *
15
+ * A tight reader/writer instrument put this at ~28-30% of reads, but that
16
+ * figure describes the instrument — it reads in a loop with no delay. The real
17
+ * rate for any consumer depends on its read cadence against the daemon's write
18
+ * cadence, which is not measured. The mechanism is the point; the number is
19
+ * not transferable to `/healthz` or to anything else.
20
+ *
21
+ * Writing a temp file and renaming over the target gives the write an atomic
22
+ * publication point: a reader observes either the whole previous document or
23
+ * the whole new one, never a splice of the two.
24
+ *
25
+ * The temp file MUST live in the same directory as the target. `rename` is
26
+ * only atomic within a single filesystem, so a temp file in the OS temp dir
27
+ * would silently reintroduce the race wherever the target sits on another
28
+ * mount — exactly the deployed-container case this is meant to fix.
29
+ *
30
+ * Permissions are carried across explicitly. `writeFile` truncated the
31
+ * existing inode and so kept whatever mode it already had; `rename` publishes
32
+ * a *new* inode, which would otherwise take `0o666 & ~umask`. That difference
33
+ * is not academic: these files are read by out-of-process consumers
34
+ * (`/healthz`, the crash reaper, `factory fleet loop-status`), so a daemon
35
+ * restarted under a tighter umask could silently lock a differently-UID reader
36
+ * out of every subsequent update, and a deliberately restricted file could be
37
+ * widened. Carrying the destination's mode keeps this change to atomicity
38
+ * alone. No mode is passed for a first publication, deliberately: that
39
+ * reproduces what `writeFile` did when creating the file, rather than the
40
+ * tighter 0o600 used for the secret-bearing outbox.
41
+ *
42
+ * Not preserved: ACLs and extended attributes, which Node cannot portably
43
+ * copy. A consumer relying on those rather than on the mode bits needs the
44
+ * destination provisioned by something other than this writer.
45
+ */
46
+ export async function writeJsonFileAtomically(path, document) {
47
+ await mkdir(dirname(path), { recursive: true });
48
+ // Same directory as the target, so the rename below stays within one
49
+ // filesystem. pid + uuid keeps two writers (and two processes) from
50
+ // colliding on the temp name.
51
+ const temporaryPath = `${path}.${process.pid}.${randomUUID()}.tmp`;
52
+ // Read before writing: the destination's mode is what the previous writer
53
+ // published under, and it is what out-of-process readers were granted.
54
+ // Absent means first publication, which is the only case where the umask
55
+ // default is the correct answer. Any other stat failure is not ours to
56
+ // swallow — proceeding would publish under the wrong permissions.
57
+ let destinationMode;
58
+ try {
59
+ destinationMode = (await stat(path)).mode & 0o7777;
60
+ }
61
+ catch (error) {
62
+ if (error.code !== 'ENOENT')
63
+ throw error;
64
+ }
65
+ try {
66
+ const handle = await open(temporaryPath, 'wx');
67
+ try {
68
+ await handle.writeFile(`${JSON.stringify(document, null, 2)}\n`);
69
+ await handle.sync();
70
+ if (destinationMode !== undefined) {
71
+ // chmod the handle, not the path: the temp name is ours alone, but
72
+ // fchmod cannot be raced by anything that recreates it.
73
+ await handle.chmod(destinationMode);
74
+ }
75
+ }
76
+ finally {
77
+ await handle.close();
78
+ }
79
+ await rename(temporaryPath, path);
80
+ }
81
+ finally {
82
+ // A successful rename leaves nothing behind; this clears the temp file on
83
+ // any failure path so a crashed write cannot litter the run directory.
84
+ await rm(temporaryPath, { force: true });
85
+ }
86
+ }
87
+ //# sourceMappingURL=atomic-json-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atomic-json-file.js","sourceRoot":"","sources":["../../src/orchestrator/atomic-json-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,IAAY,EAAE,QAAiB;IAC3E,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC/C,qEAAqE;IACrE,oEAAoE;IACpE,8BAA8B;IAC9B,MAAM,aAAa,GAAG,GAAG,IAAI,IAAI,OAAO,CAAC,GAAG,IAAI,UAAU,EAAE,MAAM,CAAA;IAClE,0EAA0E;IAC1E,uEAAuE;IACvE,yEAAyE;IACzE,uEAAuE;IACvE,kEAAkE;IAClE,IAAI,eAAmC,CAAA;IACvC,IAAI,CAAC;QACH,eAAe,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,MAAM,CAAA;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,KAAK,CAAA;IACrE,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;QAC9C,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;YAChE,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;YACnB,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;gBAClC,mEAAmE;gBACnE,wDAAwD;gBACxD,MAAM,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;YACrC,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;QACtB,CAAC;QACD,MAAM,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC;YAAS,CAAC;QACT,0EAA0E;QAC1E,uEAAuE;QACvE,MAAM,EAAE,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1C,CAAC;AACH,CAAC"}
@@ -33,6 +33,16 @@ export interface InFlightIssue {
33
33
  slotHeldSinceAtMs?: number;
34
34
  /** Latest durable phase, used only for operator-facing held-agent status. */
35
35
  lifecyclePhase?: DispatchLifecyclePhase;
36
+ /**
37
+ * Set once THIS dispatch's own writeback to the issue has been confirmed.
38
+ *
39
+ * Lifecycle phases advance on local progress alone — `publishing` is entered
40
+ * before the PR is published, `parking` before anything touches the issue —
41
+ * so a phase cannot answer "did we write to this issue?". Only this marker
42
+ * can, and it is what lets the post-spawn readiness re-read tell its own
43
+ * writeback from a foreign one (factory#319).
44
+ */
45
+ issueWritebackConfirmedAtMs?: number;
36
46
  }
37
47
  export interface QueuedIssue {
38
48
  issue: IssueRef;
@@ -103,5 +113,13 @@ export declare class BatchTracker {
103
113
  /** Restore a crash-safe lifecycle before the fleet emits reconciled exits. */
104
114
  restore(record: InFlightIssue): InFlightIssue;
105
115
  }
116
+ /**
117
+ * Legacy surface-scoped composite. Still the key for the correlation maps that
118
+ * are persisted per surface — waiting clarifications, babysitter sessions,
119
+ * Slack threads — and for display and log correlation.
120
+ *
121
+ * It is NOT a claim key: it composes the Relayfile sense path, so one work unit
122
+ * reaching Factory through two surfaces produces two of them (#211).
123
+ */
106
124
  export declare const issueKey: (issue: IssueRef) => string;
107
125
  //# sourceMappingURL=batch-tracker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"batch-tracker.d.ts","sourceRoot":"","sources":["../../src/orchestrator/batch-tracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"batch-tracker.d.ts","sourceRoot":"","sources":["../../src/orchestrator/batch-tracker.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { dispatchIssueIdentity } from '../dispatch/work-unit-identity.js';
1
2
  import { githubRepositoriesMatch } from '../github/repo-identity.js';
2
3
  const stableHash = (input) => {
3
4
  let hash = 0x811c9dc5;
@@ -29,28 +30,28 @@ export class BatchTracker {
29
30
  return [...this.#parked.values()];
30
31
  }
31
32
  getIssue(issue) {
32
- return this.#inFlight.get(issueKey(issue));
33
+ return this.#inFlight.get(trackerKey(issue));
33
34
  }
34
35
  getIssueByAgent(name) {
35
36
  return this.inFlight.find((record) => record.agents.has(name));
36
37
  }
37
38
  isInFlight(issue) {
38
- return this.#inFlight.has(issueKey(issue));
39
+ return this.#inFlight.has(trackerKey(issue));
39
40
  }
40
41
  isQueued(issue) {
41
- return this.#queued.has(issueKey(issue));
42
+ return this.#queued.has(trackerKey(issue));
42
43
  }
43
44
  isParked(issue) {
44
- return this.#parked.has(issueKey(issue));
45
+ return this.#parked.has(trackerKey(issue));
45
46
  }
46
47
  getParked(issue) {
47
- return this.#parked.get(issueKey(issue));
48
+ return this.#parked.get(trackerKey(issue));
48
49
  }
49
50
  canStart() {
50
51
  return [...this.#inFlight.values()].filter(dispatchOccupiesImplementationSlot).length < this.#limit;
51
52
  }
52
53
  start(decision, dryRun, dependencyAdmission = { blockers: [] }) {
53
- const key = issueKey(decision.issue);
54
+ const key = trackerKey(decision.issue);
54
55
  const existing = this.#inFlight.get(key);
55
56
  if (existing) {
56
57
  return existing;
@@ -76,7 +77,7 @@ export class BatchTracker {
76
77
  return record;
77
78
  }
78
79
  queue(decision, dryRun, dependencyAdmission = { blockers: [] }) {
79
- const key = issueKey(decision.issue);
80
+ const key = trackerKey(decision.issue);
80
81
  if (this.#inFlight.has(key)) {
81
82
  return false;
82
83
  }
@@ -90,10 +91,10 @@ export class BatchTracker {
90
91
  return true;
91
92
  }
92
93
  clearPark(issue) {
93
- this.#parked.delete(issueKey(issue));
94
+ this.#parked.delete(trackerKey(issue));
94
95
  }
95
96
  complete(issue) {
96
- const key = issueKey(issue);
97
+ const key = trackerKey(issue);
97
98
  const record = this.#inFlight.get(key);
98
99
  if (record) {
99
100
  for (const invocationId of record.invocationIds) {
@@ -107,12 +108,12 @@ export class BatchTracker {
107
108
  }
108
109
  const next = this.#queued.values().next().value;
109
110
  if (next) {
110
- this.#queued.delete(issueKey(next.issue));
111
+ this.#queued.delete(trackerKey(next.issue));
111
112
  }
112
113
  return next;
113
114
  }
114
115
  abandon(issue) {
115
- const key = issueKey(issue);
116
+ const key = trackerKey(issue);
116
117
  const record = this.#inFlight.get(key);
117
118
  if (record) {
118
119
  for (const invocationId of record.invocationIds) {
@@ -199,7 +200,7 @@ export class BatchTracker {
199
200
  }
200
201
  /** Restore a crash-safe lifecycle before the fleet emits reconciled exits. */
201
202
  restore(record) {
202
- const key = issueKey(record.issue);
203
+ const key = trackerKey(record.issue);
203
204
  const existing = this.#inFlight.get(key);
204
205
  if (existing)
205
206
  return existing;
@@ -226,7 +227,7 @@ export class BatchTracker {
226
227
  return restored;
227
228
  }
228
229
  #park(decision, dryRun, admission) {
229
- const key = issueKey(decision.issue);
230
+ const key = trackerKey(decision.issue);
230
231
  const existing = this.#parked.get(key);
231
232
  const parked = {
232
233
  issue: decision.issue,
@@ -243,7 +244,21 @@ export class BatchTracker {
243
244
  return parkedSignature(existing) !== parkedSignature(parked);
244
245
  }
245
246
  }
247
+ /**
248
+ * Legacy surface-scoped composite. Still the key for the correlation maps that
249
+ * are persisted per surface — waiting clarifications, babysitter sessions,
250
+ * Slack threads — and for display and log correlation.
251
+ *
252
+ * It is NOT a claim key: it composes the Relayfile sense path, so one work unit
253
+ * reaching Factory through two surfaces produces two of them (#211).
254
+ */
246
255
  export const issueKey = (issue) => `${issue.key}:${issue.uuid}:${issue.path}`;
256
+ /**
257
+ * Admission/dedup identity for the batch. In-flight, queued and parked
258
+ * membership answer "is this work unit already being worked on", which must be
259
+ * true for a mirror of an issue already in flight.
260
+ */
261
+ const trackerKey = (issue) => dispatchIssueIdentity(issue);
247
262
  const parkedSignature = (issue) => JSON.stringify({
248
263
  blockers: issue.blockers.map(({ identity, key }) => ({ identity, key })),
249
264
  cycle: issue.cycle,
@@ -1 +1 @@
1
- {"version":3,"file":"batch-tracker.js","sourceRoot":"","sources":["../../src/orchestrator/batch-tracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"batch-tracker.js","sourceRoot":"","sources":["../../src/orchestrator/batch-tracker.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/orchestrator/factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/orchestrator/factory.ts"],"names":[],"mappings":"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"}