mossbear 0.1.0-alpha.44 → 0.1.0-alpha.45

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.
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-health.d.ts","sourceRoot":"","sources":["../src/dashboard-health.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE1D;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,cAAc,CAAA;AAgBhE,6EAA6E;AAC7E,wBAAgB,eAAe,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,GAAG,IAAI,CAEnF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,eAAe,EACvB,YAAY,EAAE,MAAM,EACpB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CAoCR;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAA;AAEhE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,GAAG,IAAI,CAK7E;AA6BD;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAGzD;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CA6BR;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CAmBR"}
1
+ {"version":3,"file":"dashboard-health.d.ts","sourceRoot":"","sources":["../src/dashboard-health.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE1D;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,cAAc,CAAA;AAgBhE,6EAA6E;AAC7E,wBAAgB,eAAe,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,GAAG,IAAI,CAEnF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,eAAe,EACvB,YAAY,EAAE,MAAM,EACpB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CAuCR;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAA;AAEhE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,GAAG,IAAI,CAK7E;AAqCD;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAGzD;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CA+BR;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CAmBR"}
@@ -50,9 +50,12 @@ export function describeDashboardHealth(health, dashboardUrl, env = process.env)
50
50
  return `Dashboard connection: token rejected by ${dashboardUrl} — it may be expired or revoked; ${remedy}`;
51
51
  }
52
52
  case 'blocked': {
53
- // A 403 the dashboard never sends: something in between refused the
54
- // request, and in a managed cloud environment that is nearly always an
55
- // egress proxy enforcing a host allowlist.
53
+ // A 403 the probed endpoint never sends — `verifyDashboardToken` reaches
54
+ // the guide bundle, which answers 401 for a bad credential and never 403
55
+ // (`token-verify.ts`, the same scoping its own comment uses; a route that
56
+ // does 403 tags it, and this probe reaches none of them). So something in
57
+ // between refused the request, and in a managed cloud environment that is
58
+ // nearly always an egress proxy enforcing a host allowlist.
56
59
  const proxyVar = proxyEnvVarName(env);
57
60
  const proxyNote = proxyVar ? ` (${proxyVar} is set)` : '';
58
61
  return `Dashboard connection: request to ${dashboardUrl} refused with 403 by something between this machine and the dashboard${proxyNote} — the token was NOT rejected. If this environment enforces an egress allowlist, ${hostOf(dashboardUrl)} likely needs to be added to it`;
@@ -110,21 +113,30 @@ export function classifyRequestFailure(err) {
110
113
  * - **4xx only.** A 5xx is `classifyDashboardStatus`'s 'unreachable': the
111
114
  * request did not get an answer about itself, and the sentence a 500 carries
112
115
  * is not a remedy the reader can act on.
113
- * - **Never 401 or 403.** Those two are the connection vocabulary
114
- * ({@link describeConnectionFailure}), and 403 in particular is read here as
115
- * *something in between refused us* — the CLI cannot tell an egress proxy's
116
- * 403 from a route's own, so this does not try to.
116
+ * - **Never 401.** That is the connection vocabulary
117
+ * ({@link describeConnectionFailure}) whatever the body carries: a rejected
118
+ * token is a state of this machine, and its remedy depends on where the token
119
+ * came from — which the CLI knows and the route does not.
120
+ * - **A 403 only when it is tagged.** A 403 is otherwise read as *something in
121
+ * between refused us*, because an egress proxy's 403 and a route's own look
122
+ * identical by status. The `code` is what tells them apart: every one on this
123
+ * API is written by the dashboard's shared error helper, and an intermediary
124
+ * refusing the host writes no such body — so an untagged 403 keeps the
125
+ * 'blocked' copy unchanged, whatever else is in it.
117
126
  * - **A sentence, not merely a body.** `serverMessage` is `null` for HTML from a
118
127
  * gateway or plain text from a crash, which keeps the status form.
119
128
  *
120
- * The route this exists for is the rules import: its `workspace-ambiguous` 409
121
- * and its per-file 400s name a file, a workspace and a next step, and the CLI
122
- * has nothing to add to any of them (`error-messaging.md` rule 4).
129
+ * The route this exists for is the rules import: its `workspace-unreachable`
130
+ * 403, its `workspace-ambiguous` 409 and its per-file 400s name a file, a
131
+ * workspace and a next step, and the CLI has nothing to add to any of them
132
+ * (`error-messaging.md` rule 4).
123
133
  */
124
134
  function answeredRequest(err) {
125
135
  if (err.serverMessage === null)
126
136
  return false;
127
- if (err.status === 401 || err.status === 403)
137
+ if (err.status === 401)
138
+ return false;
139
+ if (err.status === 403 && err.code === null)
128
140
  return false;
129
141
  return err.status >= 400 && err.status < 500;
130
142
  }
@@ -180,7 +192,9 @@ export function describeConnectionFailure(failure, subject, dashboardUrl, retry,
180
192
  return `could not ${subject} — ${host} rejected your token; it may be expired or revoked. ${remedy}, then \`${retry}\`.`;
181
193
  }
182
194
  case 'blocked': {
183
- // A 403 the dashboard never sends, so it came from an intermediary. The
195
+ // An *untagged* 403: a route that means to be read tags its refusal, and
196
+ // {@link answeredRequest} routes a tagged one to the route's own
197
+ // sentence — so what is left here came from something in between. The
184
198
  // variable NAME only: proxy URLs can embed credentials.
185
199
  const proxyVar = proxyEnvVarName(env);
186
200
  const proxyNote = proxyVar ? ` (${proxyVar} is set)` : '';
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-health.js","sourceRoot":"","sources":["../src/dashboard-health.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dashboard-health.js","sourceRoot":"","sources":["../src/dashboard-health.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"guide-projection.d.ts","sourceRoot":"","sources":["../../src/docs/guide-projection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guide-projection.d.ts","sourceRoot":"","sources":["../../src/docs/guide-projection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAaH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAE5D;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC5B,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,CAEjE;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC9C,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,cAAc,IAAI,OAAO,CAAA;KAAE,CAAC,CAAA;CACnE,CAAA;AAED,MAAM,MAAM,eAAe,GACvB;IACE,EAAE,EAAE,IAAI,CAAA;IACR,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAA;IACpB,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAA;IAClB,8CAA8C;IAC9C,KAAK,EAAE,kBAAkB,CAAA;CAC1B,GACD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAgDjC;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,oBAAoB,sBAAiC,CAAA;AAElE,oFAAoF;AACpF,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,KAAK,CAAA;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,QAAQ,CAAA;AAEzC,MAAM,MAAM,aAAa,GAAG;IAC1B,+EAA+E;IAC/E,KAAK,EAAE,kBAAkB,CAAA;IACzB,0EAA0E;IAC1E,KAAK,EAAE,SAAS,CAAA;IAChB,sEAAsE;IACtE,MAAM,EAAE,UAAU,CAAA;CACnB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,IAAI,CAAC,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,CAAA;IAC5C,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CACvC,GAAG,aAAa,CAiBhB;AAED;;;;;;;GAOG;AACH,wBAAsB,0BAA0B,CAC9C,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE;IACJ,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IAClC,IAAI,CAAC,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,CAAA;IAC5C,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CACjC,EACD,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,EACpC,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,eAAe,CAAC,CA+C1B;AA2ED;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG1D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,iBAAiB,GAAG,sBAAsB,GACnD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA0BtC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,6BAA6B,CACjD,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE;IACJ,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,CAAA;IAC5C,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CACjC,EACD,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,EACpC,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAgCjC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgBxB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE;IACJ,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,CAAA;IAC5C,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CACjC,EACD,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,EACpC,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,eAAe,CAAC,CA6C1B"}
@@ -32,7 +32,7 @@
32
32
  */
33
33
  import { lstat, realpath } from 'node:fs/promises';
34
34
  import { dirname, isAbsolute, relative, resolve, sep } from 'node:path';
35
- import { isReservedStatePath } from '@mossbear/protocol';
35
+ import { isGitInternalPath, isReservedStatePath } from '@mossbear/protocol';
36
36
  import { safeItemFileName } from '../mcp/write-items.js';
37
37
  import { MOSSBEAR_GLOBAL_DIR } from '../mossbear-paths.js';
38
38
  import { EVAL_SHADOW_DIR, classifyLocalItemPath } from '../rules/eval-path.js';
@@ -326,6 +326,18 @@ export function refuseUnsafeDeclaredPath(label, path, reserved) {
326
326
  if (hasControlCharacters(path)) {
327
327
  return { ok: false, reason: `${label} path contains control characters` };
328
328
  }
329
+ // Unconditional, unlike the reserved-state check below: no content type has
330
+ // a legitimate landing place inside git's own directory, and the write is
331
+ // not inert — `.git/config` is read and acted on by the next `git status`.
332
+ // The server's context items route refuses the same declaration on create;
333
+ // this is the write-side half, for rows declared before that refusal existed
334
+ // and for any client of the route that is not this CLI.
335
+ if (isGitInternalPath(path)) {
336
+ return {
337
+ ok: false,
338
+ reason: `${label} path is inside the repository's .git directory, which git never delivers: ${path}`,
339
+ };
340
+ }
329
341
  if (reserved === 'refuse-reserved' && isReservedMossbearPath(path)) {
330
342
  return {
331
343
  ok: false,
@@ -1 +1 @@
1
- {"version":3,"file":"guide-projection.js","sourceRoot":"","sources":["../../src/docs/guide-projection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guide-projection.js","sourceRoot":"","sources":["../../src/docs/guide-projection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAEvE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAE3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAuBxD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,eAAe,CAAC,QAAgB;IAC9C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAA;AAC3D,CAAC;AAmBD,SAAS,OAAO,CAAC,IAAY;IAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAClC,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,iBAAiB,CAC9B,IAAY,EACZ,YAAoB,EACpB,UAA6C;IAE7C,IAAI,QAAgB,CAAA;IACpB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAA;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,QAAQ,GAAG,IAAI,CAAA;IACjB,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,6EAA6E;IAC7E,6DAA6D;IAC7D,IAAI,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IACpC,OAAO,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAA;YACvC,OAAO,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QACrC,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,WAAW,CAAA;AAErC;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,iBAAiB,UAAU,CAAA;AA6ClE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAIrC;IACC,MAAM,KAAK,GAAuB,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;IAChF,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAA;IAC/B,MAAM,UAAU,GACd,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACvF,MAAM,KAAK,GAAG,CAAC,GAAW,EAAW,EAAE,CACrC,UAAU,KAAK,IAAI,IAAI,CAAC,UAAU,KAAK,GAAG,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAA;IACjF,8EAA8E;IAC9E,6EAA6E;IAC7E,4EAA4E;IAC5E,MAAM,MAAM,GAAe,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAA;IACzE,4EAA4E;IAC5E,gEAAgE;IAChE,0DAA0D;IAC1D,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;IACnE,MAAM,KAAK,GAAc,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAA;IACtE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;AACjC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,KAAsB,EACtB,IAMC,EACD,eAAoC,EACpC,OAA4B,EAAE;IAE9B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,QAAQ,CAAA;IAE9C,2EAA2E;IAC3E,0EAA0E;IAC1E,6BAA6B;IAC7B,MAAM,EAAE,KAAK,EAAE,GAAG,qBAAqB,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IAC5D,MAAM,SAAS,GAAG,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAA;IACnE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,8IAA8I;SACjJ,CAAA;IACH,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,UAAU,CAAA;IAEpE,4EAA4E;IAC5E,4EAA4E;IAC5E,6EAA6E;IAC7E,0BAA0B;IAC1B,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,CAAA;IACnD,MAAM,QAAQ,GACZ,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;QACnD,CAAC,CAAC,IAAI,CAAC,IAAI;QACX,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC,CAAA;IAE5B,IAAI,SAAiB,CAAA;IACrB,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,SAAS,GAAG,QAAQ,CAAA;QACpB,MAAM,OAAO,GAAG,wBAAwB,CAAC,OAAO,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAA;QACpF,IAAI,OAAO;YAAE,OAAO,OAAO,CAAA;IAC7B,CAAC;SAAM,CAAC;QACN,kEAAkE;QAClE,0DAA0D;QAC1D,SAAS,GAAG,WAAW,gBAAgB,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAA;IAC1E,CAAC;IAED,OAAO,mBAAmB,CAAC;QACzB,SAAS;QACT,SAAS;QACT,KAAK;QACL,KAAK;QACL,eAAe;QACf,IAAI;QACJ,KAAK,EAAE,OAAO;KACf,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,mBAAmB,CAAC,MASlC;IACC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IACnF,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,QAAQ,CAAA;IAE9C,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IACvC,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;IACrD,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;IAChD,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,iBAAiB,KAAK,KAAK,SAAS,EAAE,EAAE,CAAA;IAC9E,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,iBAAiB,CAAC,YAAY,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;QACvE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,0BAA0B,KAAK,KAAK,SAAS,EAAE,EAAE,CAAA;IACvF,CAAC;IAED,0EAA0E;IAC1E,sEAAsE;IACtE,0EAA0E;IAC1E,yEAAyE;IACzE,+CAA+C;IAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,CAAA;IACrC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,CAAA;QACxC,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;YAC1B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,mCAAmC,SAAS,EAAE,EAAE,CAAA;QAC9E,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0DAA0D;IAC5D,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IAC/B,2EAA2E;IAC3E,oFAAoF;IACpF,6EAA6E;IAC7E,2EAA2E;IAC3E,6EAA6E;IAC7E,EAAE;IACF,6EAA6E;IAC7E,8EAA8E;IAC9E,kDAAkD;IAClD,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,EAAE,CAAA;IACzC,IACE,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC;QAC/B,CAAC,GAAG,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,EAC1E,CAAC;QACD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,mDAAmD,UAAU,EAAE;SACxE,CAAA;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,CAAA;AACtD,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,4CAA4C;IAC5C,OAAO,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC3C,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,wBAAwB,CACtC,KAAa,EACb,IAAY,EACZ,QAAoD;IAEpD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,sBAAsB,IAAI,EAAE,EAAE,CAAA;IACpE,CAAC;IACD,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,mCAAmC,EAAE,CAAA;IAC3E,CAAC;IACD,4EAA4E;IAC5E,0EAA0E;IAC1E,2EAA2E;IAC3E,2EAA2E;IAC3E,6EAA6E;IAC7E,wDAAwD;IACxD,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,GAAG,KAAK,8EAA8E,IAAI,EAAE;SACrG,CAAA;IACH,CAAC;IACD,IAAI,QAAQ,KAAK,iBAAiB,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;QACnE,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,GAAG,KAAK,uDAAuD,IAAI,EAAE;SAC9E,CAAA;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAiB;IACtD,OAAO,mBAAmB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;AAChD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,KAAsB,EACtB,IAKC,EACD,eAAoC,EACpC,OAA4B,EAAE;IAE9B,MAAM,QAAQ,GACZ,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IAC1E,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAElC,yEAAyE;IACzE,0EAA0E;IAC1E,6EAA6E;IAC7E,wDAAwD;IACxD,MAAM,EAAE,KAAK,EAAE,GAAG,qBAAqB,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IAC5D,MAAM,SAAS,GAAG,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAA;IACnE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,iJAAiJ;SACpJ,CAAA;IACH,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,UAAU,CAAA;IAEpE,MAAM,OAAO,GAAG,wBAAwB,CAAC,UAAU,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAA;IACjF,IAAI,OAAO;QAAE,OAAO,OAAO,CAAA;IAE3B,OAAO,mBAAmB,CAAC;QACzB,SAAS;QACT,SAAS,EAAE,QAAQ;QACnB,KAAK;QACL,KAAK;QACL,eAAe;QACf,IAAI;QACJ,KAAK,EAAE,UAAU;KAClB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,IAAY,EACZ,YAAoB,EACpB,OAA4B,EAAE;IAE9B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,QAAQ,CAAA;IAC9C,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,IAAI,CAAC,CAAC,MAAM,iBAAiB,CAAC,YAAY,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;QACvE,OAAO,0FAA0F,CAAA;IACnG,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,CAAA;IACrC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,CAAA;QACxC,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;YAC1B,OAAO,yDAAyD,CAAA;QAClE,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wDAAwD;IAC1D,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,KAAsB,EACtB,IAKC,EACD,eAAoC,EACpC,OAA4B,EAAE;IAE9B,4EAA4E;IAC5E,kCAAkC;IAClC,MAAM,EAAE,KAAK,EAAE,GAAG,qBAAqB,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IAC5D,MAAM,SAAS,GAAG,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAA;IACnE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,uJAAuJ;SAC1J,CAAA;IACH,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,UAAU,CAAA;IAEpE,MAAM,QAAQ,GACZ,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IAC1E,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,yIAAyI;SAC5I,CAAA;IACH,CAAC;IACD,MAAM,OAAO,GAAG,wBAAwB,CACtC,eAAe,EACf,QAAQ,EACR,sBAAsB,CACvB,CAAA;IACD,IAAI,OAAO;QAAE,OAAO,OAAO,CAAA;IAC3B,IAAI,qBAAqB,CAAC,QAAQ,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACpD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,iDAAiD,eAAe,OAAO,QAAQ,EAAE;SAC1F,CAAA;IACH,CAAC;IAED,OAAO,mBAAmB,CAAC;QACzB,SAAS;QACT,SAAS,EAAE,QAAQ;QACnB,KAAK;QACL,KAAK;QACL,eAAe;QACf,IAAI;QACJ,KAAK,EAAE,eAAe;KACvB,CAAC,CAAA;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"repo-id.d.ts","sourceRoot":"","sources":["../src/repo-id.ts"],"names":[],"mappings":"AAsBA,wBAAgB,aAAa,CAAC,IAAI,GAAE,MAAoB,GAAG,MAAM,CAEhE;AAsDD,6DAA6D;AAC7D,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAO,GAC7C,MAAM,GAAG,IAAI,CAIf;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAO,GAC7C,OAAO,CAAC,MAAM,CAAC,CAGjB;AAED,wGAAwG;AACxG,wBAAsB,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElE"}
1
+ {"version":3,"file":"repo-id.d.ts","sourceRoot":"","sources":["../src/repo-id.ts"],"names":[],"mappings":"AAwCA,wBAAgB,aAAa,CAAC,IAAI,GAAE,MAAoB,GAAG,MAAM,CAEhE;AAoID,6DAA6D;AAC7D,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAO,GAC7C,MAAM,GAAG,IAAI,CAIf;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAO,GAC7C,OAAO,CAAC,MAAM,CAAC,CAGjB;AAED,wGAAwG;AACxG,wBAAsB,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElE"}
package/dist/repo-id.js CHANGED
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import { createHmac, randomBytes } from 'node:crypto';
8
8
  import { readFileSync } from 'node:fs';
9
- import { chmod, readFile, writeFile } from 'node:fs/promises';
9
+ import { readFile, rename, rm, writeFile } from 'node:fs/promises';
10
10
  import { homedir as osHomedir } from 'node:os';
11
11
  import { dirname, join, resolve } from 'node:path';
12
12
  import { ensureMossbearDir } from './config.js';
@@ -16,6 +16,22 @@ const REPO_ID_KEY_FILE = 'repo-id-key';
16
16
  const REPO_ID_KEY_BYTES = 32;
17
17
  const REPO_ID_KEY_MODE = 0o600;
18
18
  const REPO_ID_KEY_PATTERN = /^[0-9a-f]{64}$/;
19
+ // How long a run that lost the creation race waits for the winner's bytes.
20
+ // `wx` creates the file before it writes, so a loser can read zero bytes from a
21
+ // file that provably exists; that is a write not yet visible, not absence.
22
+ // Generous enough for a 65-byte write on a loaded machine, short enough that a
23
+ // key file which is genuinely corrupt is repaired without a visible stall.
24
+ const REPO_ID_KEY_ADOPT_ATTEMPTS = 20;
25
+ const REPO_ID_KEY_ADOPT_DELAY_MS = 10;
26
+ function errorCode(error) {
27
+ if (typeof error !== 'object' || error === null || !('code' in error))
28
+ return undefined;
29
+ const { code } = error;
30
+ return typeof code === 'string' ? code : undefined;
31
+ }
32
+ function sleep(ms) {
33
+ return new Promise((done) => setTimeout(done, ms));
34
+ }
19
35
  export function repoIdKeyPath(home = osHomedir()) {
20
36
  return join(home, '.mossbear', REPO_ID_KEY_FILE);
21
37
  }
@@ -37,6 +53,77 @@ async function readRepoIdKey(keyPath) {
37
53
  return null;
38
54
  }
39
55
  }
56
+ /** Re-read a key file that is known to exist, until it holds a whole key. */
57
+ async function adoptRepoIdKey(keyPath) {
58
+ for (let attempt = 0; attempt < REPO_ID_KEY_ADOPT_ATTEMPTS; attempt++) {
59
+ if (attempt > 0)
60
+ await sleep(REPO_ID_KEY_ADOPT_DELAY_MS);
61
+ const key = await readRepoIdKey(keyPath);
62
+ if (key)
63
+ return key;
64
+ }
65
+ return null;
66
+ }
67
+ /**
68
+ * Repair a key file that never became a valid key — corrupt, or truncated by an
69
+ * interrupted write.
70
+ *
71
+ * The repair is claimed with `wx` on a sibling file, so exactly one run repairs
72
+ * it and every other run waits for that key instead of writing its own: two
73
+ * runs repairing independently is the same "one checkout, two ids" divergence
74
+ * this path exists to end. The claim file doubles as the temp file, and it
75
+ * lives in the key's own directory, so `rename` over the key is atomic — a run
76
+ * reading the key concurrently sees either the old bytes or the whole new key,
77
+ * never a half-written one. A write in place would hand that reader a
78
+ * truncated file, which is what put a loser here in the first place.
79
+ */
80
+ async function repairRepoIdKey(keyPath, generated) {
81
+ const claimPath = `${keyPath}.repair`;
82
+ // Two passes at most: claim it, or wait out whoever holds it and take over
83
+ // once if their key never appeared.
84
+ for (let attempt = 0; attempt < 2; attempt++) {
85
+ try {
86
+ await writeFile(claimPath, `${generated}\n`, { mode: REPO_ID_KEY_MODE, flag: 'wx' });
87
+ }
88
+ catch (error) {
89
+ if (errorCode(error) !== 'EEXIST')
90
+ return generated;
91
+ const adopted = await adoptRepoIdKey(keyPath);
92
+ if (adopted)
93
+ return adopted;
94
+ // The claim outlived the run that took it — killed mid-repair. Clear it
95
+ // and take over, so a crash cannot wedge the key file for good.
96
+ await rm(claimPath, { force: true }).catch(() => { });
97
+ continue;
98
+ }
99
+ // Claiming can succeed because the run that held the claim has just renamed
100
+ // it onto the key: the rename makes the claim vanish and the key become
101
+ // valid in the same instant, so a claim taken right after it says nothing
102
+ // about the key. Look once more before overwriting a key that is now good.
103
+ const repaired = await readRepoIdKey(keyPath);
104
+ if (repaired) {
105
+ await rm(claimPath, { force: true }).catch(() => { });
106
+ return repaired;
107
+ }
108
+ try {
109
+ await rename(claimPath, keyPath);
110
+ return generated;
111
+ }
112
+ catch (error) {
113
+ if (errorCode(error) === 'ENOENT') {
114
+ // The claim is not ours any more: a run that waited us out cleared it
115
+ // and is repairing now. Removing `claimPath` here would delete *their*
116
+ // claim and leave us both writing our own key over a file neither of
117
+ // us repaired — so wait for their key instead, the same way the branch
118
+ // above waits, and never remove a claim we may not hold.
119
+ return (await adoptRepoIdKey(keyPath)) ?? generated;
120
+ }
121
+ await rm(claimPath, { force: true }).catch(() => { });
122
+ return (await adoptRepoIdKey(keyPath)) ?? generated;
123
+ }
124
+ }
125
+ return (await adoptRepoIdKey(keyPath)) ?? generated;
126
+ }
40
127
  async function loadRepoIdKey(home) {
41
128
  const keyPath = repoIdKeyPath(home);
42
129
  const existing = await readRepoIdKey(keyPath);
@@ -45,23 +132,29 @@ async function loadRepoIdKey(home) {
45
132
  const generated = randomBytes(REPO_ID_KEY_BYTES).toString('hex');
46
133
  try {
47
134
  await ensureMossbearDir(dirname(keyPath));
48
- await writeFile(keyPath, `${generated}\n`, { mode: REPO_ID_KEY_MODE, flag: 'wx' });
49
- return generated;
50
135
  }
51
136
  catch {
52
- // raced or unusable path — handled below
137
+ // `~/.mossbear` is unusable (occupied by a file, unwritable, read-only
138
+ // home). Nothing can be stored, so the key degrades to per-call: the id
139
+ // stays present and stops being stable, which is the documented trade.
140
+ return generated;
53
141
  }
54
- const raced = await readRepoIdKey(keyPath);
55
- if (raced)
56
- return raced;
57
142
  try {
58
- await writeFile(keyPath, `${generated}\n`, { mode: REPO_ID_KEY_MODE });
59
- await chmod(keyPath, REPO_ID_KEY_MODE).catch(() => { });
143
+ await writeFile(keyPath, `${generated}\n`, { mode: REPO_ID_KEY_MODE, flag: 'wx' });
60
144
  return generated;
61
145
  }
62
- catch {
63
- return generated;
146
+ catch (error) {
147
+ // Only EEXIST means another run won the key; every other error is the same
148
+ // unusable-directory degradation as above. Both used to look identical
149
+ // here, and a loser fell through to a write without `wx` that clobbered a
150
+ // key the winner was already deriving ids from — one checkout, two ids.
151
+ if (errorCode(error) !== 'EEXIST')
152
+ return generated;
64
153
  }
154
+ const adopted = await adoptRepoIdKey(keyPath);
155
+ if (adopted)
156
+ return adopted;
157
+ return await repairRepoIdKey(keyPath, generated);
65
158
  }
66
159
  function deriveRepoId(keyHex, root) {
67
160
  const digest = createHmac('sha256', Buffer.from(keyHex, 'hex'))
@@ -1 +1 @@
1
- {"version":3,"file":"repo-id.js","sourceRoot":"","sources":["../src/repo-id.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repo-id.js","sourceRoot":"","sources":["../src/repo-id.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mossbear",
3
- "version": "0.1.0-alpha.44",
3
+ "version": "0.1.0-alpha.45",
4
4
  "private": false,
5
5
  "description": "One set of rules for every coding agent and every repo — graded against what your Claude Code runs actually did, with changes drafted for you to approve.",
6
6
  "license": "MIT",
@@ -54,9 +54,9 @@
54
54
  },
55
55
  "dependencies": {
56
56
  "@modelcontextprotocol/sdk": "1.30.0",
57
- "@mossbear/eval-core": "0.1.0-alpha.44",
58
- "@mossbear/projections": "0.1.0-alpha.44",
59
- "@mossbear/protocol": "0.1.0-alpha.44",
57
+ "@mossbear/eval-core": "0.1.0-alpha.45",
58
+ "@mossbear/projections": "0.1.0-alpha.45",
59
+ "@mossbear/protocol": "0.1.0-alpha.45",
60
60
  "citty": "^0.1.6",
61
61
  "smol-toml": "^1.8.0",
62
62
  "valibot": "^1.4.2"