nawabari 0.3.0 → 0.4.1

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":"session-backend.js","sourceRoot":"","sources":["../../src/domain/session-backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-backend.js","sourceRoot":"","sources":["../../src/domain/session-backend.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type RegistryErrorCode = "GIT_COMMAND_FAILED" | "GIT_SPAWN_FAILED" | "GIT_TIMEOUT" | "GIT_OUTPUT_LIMIT" | "NOT_A_GIT_REPOSITORY" | "REPOSITORY_IDENTITY_AMBIGUOUS" | "WORKTREE_IDENTITY_AMBIGUOUS" | "DETACHED_HEAD" | "MISSING_WORKTREE" | "REPOSITORY_MISMATCH" | "WORKTREE_MISMATCH" | "BRANCH_MISMATCH" | "STALE_REGISTRY" | "GIT_STATE_AMBIGUOUS" | "PHYSICAL_OBSERVATION_UNAVAILABLE" | "INVALID_SESSION_ID" | "INVALID_SESSION_RECORD" | "INVALID_BRANCH_ID" | "INVALID_WORKTREE_PATH" | "INVALID_BASE_REF" | "REGISTRY_CORRUPT" | "UNSUPPORTED_SCHEMA_VERSION" | "REGISTRY_REPOSITORY_MISMATCH" | "DUPLICATE_SESSION_ID" | "DUPLICATE_WORKTREE_OWNERSHIP" | "DUPLICATE_BRANCH_OWNERSHIP" | "WORKTREE_ALREADY_EXISTS" | "BRANCH_ALREADY_EXISTS" | "PROTECTED_WORKTREE" | "PROTECTED_BRANCH" | "SESSION_ID_COLLISION" | "SESSION_NOT_FOUND" | "DIRTY_WORKTREE" | "NESTED_REPOSITORY" | "OWNERSHIP_MISMATCH" | "RECOVERABLE_COMMITS" | "RECOVERABLE_STASHES" | "RECONCILIATION_DRIFT" | "REGISTRY_LOCK_TIMEOUT" | "REGISTRY_IO_FAILURE" | "INVALID_CLAIM" | "INVALID_OPERATION" | "OPERATION_REJECTED" | "INVALID_RESOURCE" | "MISSING_RESOURCE_CLAIM" | "INSUFFICIENT_CLAIM_MODE" | "INVALID_CLAIM_RESOURCE" | "CLAIM_PATH_TRAVERSAL" | "CLAIM_SYMLINK_ESCAPE" | "CLAIM_AMBIGUOUS_PATH" | "UNSUPPORTED_CLAIM_GLOB" | "CLAIM_REPOSITORY_MISMATCH" | "CLAIM_SESSION_MISMATCH" | "DUPLICATE_CLAIM" | "CONTRADICTORY_CLAIM" | "RESOURCE_CLAIM_CONFLICT" | "CLAIM_NOT_FOUND" | "SESSION_NOT_ACTIVE" | "UNSUPPORTED_CLAIM_SCHEMA_VERSION" | "INVALID_COMMIT_MESSAGE" | "COMMIT_EMPTY_DIFF" | "UNEXPECTED_CHANGED_PATHS" | "COMMIT_STAGING_FAILED" | "COMMIT_FAILED" | "COMMIT_RESULT_UNAVAILABLE" | "COMMIT_RESULT_DIVERGED" | "INVALID_REMOTE" | "INVALID_REMOTE_BRANCH" | "PUSH_TARGET_MISMATCH" | "PUSH_REMOTE_INSPECTION_FAILED" | "PUSH_NO_UPSTREAM" | "PUSH_BEHIND" | "PUSH_DIVERGED" | "PUSH_DIRTY_WORKTREE" | "PUSH_FAILED";
1
+ export type RegistryErrorCode = "GIT_COMMAND_FAILED" | "GIT_SPAWN_FAILED" | "GIT_TIMEOUT" | "GIT_OUTPUT_LIMIT" | "NOT_A_GIT_REPOSITORY" | "REPOSITORY_IDENTITY_AMBIGUOUS" | "WORKTREE_IDENTITY_AMBIGUOUS" | "DETACHED_HEAD" | "MISSING_WORKTREE" | "REPOSITORY_MISMATCH" | "WORKTREE_MISMATCH" | "BRANCH_MISMATCH" | "STALE_REGISTRY" | "GIT_STATE_AMBIGUOUS" | "PHYSICAL_OBSERVATION_UNAVAILABLE" | "INVALID_SESSION_ID" | "INVALID_SESSION_RECORD" | "INVALID_BRANCH_ID" | "INVALID_WORKTREE_PATH" | "INVALID_BASE_REF" | "REGISTRY_CORRUPT" | "UNSUPPORTED_SCHEMA_VERSION" | "REGISTRY_REPOSITORY_MISMATCH" | "DUPLICATE_SESSION_ID" | "DUPLICATE_WORKTREE_OWNERSHIP" | "DUPLICATE_BRANCH_OWNERSHIP" | "WORKTREE_ALREADY_EXISTS" | "BRANCH_ALREADY_EXISTS" | "PROTECTED_WORKTREE" | "PROTECTED_BRANCH" | "SESSION_ID_COLLISION" | "SESSION_NOT_FOUND" | "DIRTY_WORKTREE" | "NESTED_REPOSITORY" | "OWNERSHIP_MISMATCH" | "RECOVERABLE_COMMITS" | "RECOVERABLE_STASHES" | "RECONCILIATION_DRIFT" | "REGISTRY_LOCK_TIMEOUT" | "REGISTRY_IO_FAILURE" | "REGISTRY_DURABILITY_UNCERTAIN" | "INVALID_CLAIM" | "INVALID_OPERATION" | "OPERATION_REJECTED" | "INVALID_RESOURCE" | "MISSING_RESOURCE_CLAIM" | "INSUFFICIENT_CLAIM_MODE" | "INVALID_CLAIM_RESOURCE" | "CLAIM_PATH_TRAVERSAL" | "CLAIM_SYMLINK_ESCAPE" | "CLAIM_AMBIGUOUS_PATH" | "UNSUPPORTED_CLAIM_GLOB" | "CLAIM_REPOSITORY_MISMATCH" | "CLAIM_SESSION_MISMATCH" | "DUPLICATE_CLAIM" | "CONTRADICTORY_CLAIM" | "RESOURCE_CLAIM_CONFLICT" | "CLAIM_NOT_FOUND" | "SESSION_NOT_ACTIVE" | "UNSUPPORTED_CLAIM_SCHEMA_VERSION" | "INVALID_COMMIT_MESSAGE" | "COMMIT_EMPTY_DIFF" | "UNEXPECTED_CHANGED_PATHS" | "COMMIT_STAGING_FAILED" | "COMMIT_FAILED" | "COMMIT_RESULT_UNAVAILABLE" | "COMMIT_RESULT_DIVERGED" | "INVALID_REMOTE" | "INVALID_REMOTE_BRANCH" | "PUSH_TARGET_MISMATCH" | "PUSH_REMOTE_INSPECTION_FAILED" | "PUSH_NO_UPSTREAM" | "PUSH_BEHIND" | "PUSH_DIVERGED" | "PUSH_DIRTY_WORKTREE" | "PUSH_FAILED";
2
2
  export type RegistryErrorDetails = Readonly<Record<string, boolean | number | string | string[]>>;
3
3
  export declare class SessionRegistryError extends Error {
4
4
  readonly code: RegistryErrorCode;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AA+EA,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IACpC,IAAI,CAAoB;IACxB,OAAO,CAAuB;IAEvC,YAAY,IAAuB,EAAE,OAAe,EAAE,UAAgC,EAAE,EAAE,KAAe;QACvG,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,OAAO,KAAK,YAAY,oBAAoB,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAgFA,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IACpC,IAAI,CAAoB;IACxB,OAAO,CAAuB;IAEvC,YAAY,IAAuB,EAAE,OAAe,EAAE,UAAgC,EAAE,EAAE,KAAe;QACvG,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,OAAO,KAAK,YAAY,oBAAoB,CAAC;AAC/C,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { RegistryError } from "./errors.js";
1
2
  export interface AtomicWritePaths {
2
3
  temporaryPath: string;
3
4
  targetPath: string;
@@ -10,6 +11,29 @@ export interface AtomicWriteOptions {
10
11
  ensureParent?: boolean;
11
12
  hooks?: AtomicWriteHooks;
12
13
  }
14
+ /**
15
+ * A failure observed after the target file was already renamed into place.
16
+ * Callers must not read this as "the write succeeded" — durability past
17
+ * that point is unproven — but they must also not treat it as an ordinary
18
+ * pre-effect failure: the renamed document may already be the one readers
19
+ * observe. `cause` always carries the original thrown value verbatim
20
+ * (whatever it was — an Error, a frozen object, a primitive), since a
21
+ * classification that depended on mutating or reading properties off the
22
+ * original thrown value would silently fail for values that reject writes
23
+ * (frozen/non-extensible objects) or carry no properties at all
24
+ * (primitives). Wrapping in a fresh, always-extensible error is fail-safe
25
+ * regardless of what the underlying I/O call happened to throw.
26
+ */
27
+ export declare class AtomicWritePostRenameFailure extends RegistryError {
28
+ constructor(paths: AtomicWritePaths, cause: unknown);
29
+ }
30
+ /**
31
+ * True when `writeJsonAtomically`/`writeJsonAtomicallySync` failed only
32
+ * after the rename had already committed the new document. Recovery must
33
+ * reconcile authoritative state instead of assuming the mutation never
34
+ * happened.
35
+ */
36
+ export declare function isPostRenameFailure(error: unknown): error is AtomicWritePostRenameFailure;
13
37
  /**
14
38
  * Persist JSON by writing and syncing a same-directory temporary file, then
15
39
  * replacing the target with rename. Readers therefore observe either the
@@ -14,6 +14,37 @@ function isUnsupportedDirectorySync(error) {
14
14
  const code = errorCode(error);
15
15
  return code === "EINVAL" || code === "ENOTSUP" || code === "EISDIR";
16
16
  }
17
+ /**
18
+ * A failure observed after the target file was already renamed into place.
19
+ * Callers must not read this as "the write succeeded" — durability past
20
+ * that point is unproven — but they must also not treat it as an ordinary
21
+ * pre-effect failure: the renamed document may already be the one readers
22
+ * observe. `cause` always carries the original thrown value verbatim
23
+ * (whatever it was — an Error, a frozen object, a primitive), since a
24
+ * classification that depended on mutating or reading properties off the
25
+ * original thrown value would silently fail for values that reject writes
26
+ * (frozen/non-extensible objects) or carry no properties at all
27
+ * (primitives). Wrapping in a fresh, always-extensible error is fail-safe
28
+ * regardless of what the underlying I/O call happened to throw.
29
+ */
30
+ export class AtomicWritePostRenameFailure extends RegistryError {
31
+ constructor(paths, cause) {
32
+ super("REGISTRY_DURABILITY_UNCERTAIN", `Rename to ${paths.targetPath} may have already committed, but durable persistence past that point could not be proven`, { ...paths }, { cause });
33
+ this.name = "AtomicWritePostRenameFailure";
34
+ }
35
+ }
36
+ function toPostRenameFailure(error, paths) {
37
+ return new AtomicWritePostRenameFailure(paths, error);
38
+ }
39
+ /**
40
+ * True when `writeJsonAtomically`/`writeJsonAtomicallySync` failed only
41
+ * after the rename had already committed the new document. Recovery must
42
+ * reconcile authoritative state instead of assuming the mutation never
43
+ * happened.
44
+ */
45
+ export function isPostRenameFailure(error) {
46
+ return error instanceof AtomicWritePostRenameFailure;
47
+ }
17
48
  async function syncDirectory(directory) {
18
49
  let handle;
19
50
  try {
@@ -86,8 +117,9 @@ export async function writeJsonAtomically(targetPath, value, options = {}) {
86
117
  }
87
118
  if (!renamed) {
88
119
  await rm(temporaryPath, { force: true });
120
+ throw error;
89
121
  }
90
- throw error;
122
+ throw toPostRenameFailure(error, { temporaryPath, targetPath });
91
123
  }
92
124
  }
93
125
  /** Synchronous counterpart used by the legacy synchronous registry boundary. */
@@ -121,8 +153,9 @@ export function writeJsonAtomicallySync(targetPath, value, options = {}) {
121
153
  }
122
154
  if (!renamed) {
123
155
  fs.rmSync(temporaryPath, { force: true });
156
+ throw error;
124
157
  }
125
- throw error;
158
+ throw toPostRenameFailure(error, { temporaryPath, targetPath });
126
159
  }
127
160
  }
128
161
  //# sourceMappingURL=atomic.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"atomic.js","sourceRoot":"","sources":["../../src/registry/atomic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atomic.js","sourceRoot":"","sources":["../../src/registry/atomic.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export declare const REGISTRY_ERROR_CODES: readonly ["REGISTRY_NOT_FOUND", "REGISTRY_CORRUPT", "REGISTRY_UNSUPPORTED_SCHEMA", "REGISTRY_REPOSITORY_MISMATCH", "REGISTRY_DUPLICATE_SESSION", "REGISTRY_DUPLICATE_WORKTREE", "REGISTRY_DUPLICATE_BRANCH", "REGISTRY_IO_ERROR", "REGISTRY_MUTATION_FAILED", "LOCK_BUSY", "LOCK_STALE", "LOCK_INVALID", "LOCK_IO_ERROR", "LOCK_RELEASE_FAILED"];
1
+ export declare const REGISTRY_ERROR_CODES: readonly ["REGISTRY_NOT_FOUND", "REGISTRY_CORRUPT", "REGISTRY_UNSUPPORTED_SCHEMA", "REGISTRY_REPOSITORY_MISMATCH", "REGISTRY_DUPLICATE_SESSION", "REGISTRY_DUPLICATE_WORKTREE", "REGISTRY_DUPLICATE_BRANCH", "REGISTRY_IO_ERROR", "REGISTRY_DURABILITY_UNCERTAIN", "REGISTRY_MUTATION_FAILED", "LOCK_BUSY", "LOCK_STALE", "LOCK_INVALID", "LOCK_IO_ERROR", "LOCK_RELEASE_FAILED"];
2
2
  export type RegistryErrorCode = (typeof REGISTRY_ERROR_CODES)[number];
3
3
  export declare class RegistryError extends Error {
4
4
  readonly code: RegistryErrorCode;
@@ -7,6 +7,7 @@ export const REGISTRY_ERROR_CODES = [
7
7
  "REGISTRY_DUPLICATE_WORKTREE",
8
8
  "REGISTRY_DUPLICATE_BRANCH",
9
9
  "REGISTRY_IO_ERROR",
10
+ "REGISTRY_DURABILITY_UNCERTAIN",
10
11
  "REGISTRY_MUTATION_FAILED",
11
12
  "LOCK_BUSY",
12
13
  "LOCK_STALE",
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/registry/errors.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,oBAAoB;IACpB,kBAAkB;IAClB,6BAA6B;IAC7B,8BAA8B;IAC9B,4BAA4B;IAC5B,6BAA6B;IAC7B,2BAA2B;IAC3B,mBAAmB;IACnB,0BAA0B;IAC1B,WAAW;IACX,YAAY;IACZ,cAAc;IACd,eAAe;IACf,qBAAqB;CACb,CAAC;AAIX,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtB,IAAI,CAAoB;IACxB,OAAO,CAAoC;IAE3D,YACE,IAAuB,EACvB,OAAe,EACf,UAA6C,EAAE,EAC/C,OAAsB;QAEtB,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,OAAO,KAAK,YAAY,aAAa,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/registry/errors.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,oBAAoB;IACpB,kBAAkB;IAClB,6BAA6B;IAC7B,8BAA8B;IAC9B,4BAA4B;IAC5B,6BAA6B;IAC7B,2BAA2B;IAC3B,mBAAmB;IACnB,+BAA+B;IAC/B,0BAA0B;IAC1B,WAAW;IACX,YAAY;IACZ,cAAc;IACd,eAAe;IACf,qBAAqB;CACb,CAAC;AAIX,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtB,IAAI,CAAoB;IACxB,OAAO,CAAoC;IAE3D,YACE,IAAuB,EACvB,OAAe,EACf,UAA6C,EAAE,EAC/C,OAAsB;QAEtB,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,OAAO,KAAK,YAAY,aAAa,CAAC;AACxC,CAAC"}
@@ -321,6 +321,22 @@ export declare class SessionRegistry {
321
321
  createSession(options?: CreateSessionOptions): SessionRecord;
322
322
  /** Provision one isolated Git worktree and commit its ownership atomically. */
323
323
  provision(options?: ProvisionSessionOptions): SessionRecord;
324
+ /**
325
+ * Decide whether it is safe to destroy the just-created worktree/branch
326
+ * after a provisioning failure. Only an ordinary (non-durability-uncertain)
327
+ * failure, or a durability-uncertain failure whose registry re-read
328
+ * positively proves the session record absent, licenses a rollback.
329
+ *
330
+ * A durability-uncertain write means the rename may have already
331
+ * committed this session as the registry's visible ownership record:
332
+ * rolling back the worktree/branch would then strand a registry entry
333
+ * pointing at resources we just deleted. Absence must be *proven*, not
334
+ * merely unconfirmed — if the reconciliation read itself cannot complete
335
+ * (I/O failure, corrupt registry state, or any other exception), that is
336
+ * not proof of absence, so no rollback happens and the original
337
+ * durability-uncertain outcome propagates unchanged.
338
+ */
339
+ private absenceProvenAfterProvisioningFailure;
324
340
  provisionSession(options?: ProvisionSessionOptions): SessionRecord;
325
341
  createProvisionedSession(options?: ProvisionSessionOptions): SessionRecord;
326
342
  register(record: SessionRecord): SessionRecord;
@@ -411,6 +427,15 @@ export declare class SessionRegistry {
411
427
  private resolveCreationResources;
412
428
  private readStateUnsafe;
413
429
  private readUnsafe;
430
+ /**
431
+ * The single authoritative persistence path for session/claim registry
432
+ * state, sharing its durability policy with `registry/atomic.ts`: the
433
+ * temporary file and target directory are fsynced around an atomic
434
+ * rename, and only known unsupported-directory-fsync conditions are
435
+ * tolerated. A failure observed after rename is reported as a distinct
436
+ * durability-uncertain outcome rather than an ordinary write failure,
437
+ * since the renamed document may already be the one readers observe.
438
+ */
414
439
  private writeUnsafe;
415
440
  private mutate;
416
441
  private withLock;
@@ -3,6 +3,7 @@ import path from "node:path";
3
3
  import { defaultGit, captureGitCheckpoint, listGitWorktrees, normalizeBranchId, observeGitCheckpoint, observeGitMutationPaths, readBoundedGitDiff, readCanonicalCommitChangedPaths, readGitPathStats, readCurrentHead, resolveRepositoryContext, verifyPhysicalExecutionContext, } from "./git.js";
4
4
  import { SessionRegistryError } from "./errors.js";
5
5
  import { generateSessionId, isSessionId } from "./session-id.js";
6
+ import { isPostRenameFailure, writeJsonAtomicallySync } from "./registry/atomic.js";
6
7
  import { RegistryLockError, RepositoryLock } from "./registry/lock.js";
7
8
  import { assertCanonicalClaimResource, canonicalClaimId, canonicalizeClaimInput, canonicalizeConcretePath, claimError, claimsConflict, claimsOverlap, cloneResourceClaim, compareCodePointStrings, createResourceClaim, isResourceClaimMode, LEGACY_RESOURCE_CLAIM_SCHEMA_VERSION, resourceClaimConflictsWithAccess, resourceMatchesClaim, RESOURCE_CLAIM_SCHEMA_VERSION, sortResourceClaims, } from "./resource-claims.js";
8
9
  import { CHECKPOINT_EVIDENCE_SCHEMA_VERSION, CHECKPOINT_MAX_PATHS, OPERATION_AUTHORIZATION_SCHEMA_VERSION, claimModeGrantsAccess, isOperationName, requiredAccessForOperation, } from "./operation-authorization.js";
@@ -312,13 +313,40 @@ export class SessionRegistry {
312
313
  return cloneSessionRecord(record);
313
314
  }
314
315
  catch (error) {
315
- if (gitProvisioned) {
316
+ if (gitProvisioned && this.absenceProvenAfterProvisioningFailure(error, sessionId)) {
316
317
  rollbackProvisionedResources(this.git, this.repository.worktreePath, resources);
317
318
  }
318
319
  throw classifyProvisioningFailure(error, this.git, this.repository.worktreePath, resources);
319
320
  }
320
321
  });
321
322
  }
323
+ /**
324
+ * Decide whether it is safe to destroy the just-created worktree/branch
325
+ * after a provisioning failure. Only an ordinary (non-durability-uncertain)
326
+ * failure, or a durability-uncertain failure whose registry re-read
327
+ * positively proves the session record absent, licenses a rollback.
328
+ *
329
+ * A durability-uncertain write means the rename may have already
330
+ * committed this session as the registry's visible ownership record:
331
+ * rolling back the worktree/branch would then strand a registry entry
332
+ * pointing at resources we just deleted. Absence must be *proven*, not
333
+ * merely unconfirmed — if the reconciliation read itself cannot complete
334
+ * (I/O failure, corrupt registry state, or any other exception), that is
335
+ * not proof of absence, so no rollback happens and the original
336
+ * durability-uncertain outcome propagates unchanged.
337
+ */
338
+ absenceProvenAfterProvisioningFailure(error, sessionId) {
339
+ const durabilityUncertain = error instanceof SessionRegistryError && error.code === "REGISTRY_DURABILITY_UNCERTAIN";
340
+ if (!durabilityUncertain) {
341
+ return true;
342
+ }
343
+ try {
344
+ return !this.readUnsafe().some((candidate) => candidate.sessionId === sessionId);
345
+ }
346
+ catch {
347
+ return false;
348
+ }
349
+ }
322
350
  provisionSession(options = {}) {
323
351
  return this.provision(options);
324
352
  }
@@ -1643,6 +1671,15 @@ export class SessionRegistry {
1643
1671
  readUnsafe() {
1644
1672
  return this.readStateUnsafe().sessions;
1645
1673
  }
1674
+ /**
1675
+ * The single authoritative persistence path for session/claim registry
1676
+ * state, sharing its durability policy with `registry/atomic.ts`: the
1677
+ * temporary file and target directory are fsynced around an atomic
1678
+ * rename, and only known unsupported-directory-fsync conditions are
1679
+ * tolerated. A failure observed after rename is reported as a distinct
1680
+ * durability-uncertain outcome rather than an ordinary write failure,
1681
+ * since the renamed document may already be the one readers observe.
1682
+ */
1646
1683
  writeUnsafe(records, claims) {
1647
1684
  const registry = {
1648
1685
  schema_version: REGISTRY_SCHEMA_VERSION,
@@ -1651,24 +1688,19 @@ export class SessionRegistry {
1651
1688
  claims_schema_version: RESOURCE_CLAIM_SCHEMA_VERSION,
1652
1689
  claims: sortResourceClaims(claims).map((claim) => toPersistedResourceClaim(claim, this.repository.repositoryId)),
1653
1690
  };
1654
- const contents = `${JSON.stringify(registry, null, 2)}\n`;
1655
- const temporaryPath = `${this.paths.registry}.tmp-${process.pid}-${generateSessionId()}`;
1656
- let descriptor;
1657
1691
  try {
1658
- fs.mkdirSync(this.paths.directory, { recursive: true, mode: 0o700 });
1659
- descriptor = fs.openSync(temporaryPath, "wx", 0o600);
1660
- fs.writeFileSync(descriptor, contents, "utf8");
1661
- fs.fsyncSync(descriptor);
1662
- fs.closeSync(descriptor);
1663
- descriptor = undefined;
1664
- fs.renameSync(temporaryPath, this.paths.registry);
1665
- syncDirectory(this.paths.directory);
1692
+ writeJsonAtomicallySync(this.paths.registry, registry);
1666
1693
  }
1667
1694
  catch (error) {
1668
- if (descriptor !== undefined) {
1669
- closeQuietly(descriptor);
1695
+ if (isPostRenameFailure(error)) {
1696
+ throw new SessionRegistryError("REGISTRY_DURABILITY_UNCERTAIN", `Registry rename to ${this.paths.registry} may have already committed, but durable persistence could not be proven`, {
1697
+ path: this.paths.registry,
1698
+ recoveryHints: [
1699
+ "Re-read the registry to check whether the mutation is already visible before retrying.",
1700
+ "Do not assume this operation did not happen.",
1701
+ ],
1702
+ }, error);
1670
1703
  }
1671
- unlinkQuietly(temporaryPath);
1672
1704
  throw new SessionRegistryError("REGISTRY_IO_FAILURE", `Could not atomically write ${this.paths.registry}`, {
1673
1705
  path: this.paths.registry,
1674
1706
  }, error);
@@ -2992,36 +3024,4 @@ function toSessionRegistryLockError(error, lockPath) {
2992
3024
  }
2993
3025
  return new SessionRegistryError("REGISTRY_IO_FAILURE", `Could not operate on ${lockPath}`, { path: lockPath }, error);
2994
3026
  }
2995
- function closeQuietly(descriptor) {
2996
- try {
2997
- fs.closeSync(descriptor);
2998
- }
2999
- catch {
3000
- // The original operation's error is more useful than a best-effort close error.
3001
- }
3002
- }
3003
- function unlinkQuietly(filePath) {
3004
- try {
3005
- fs.unlinkSync(filePath);
3006
- }
3007
- catch {
3008
- // A missing temporary file is already the desired state.
3009
- }
3010
- }
3011
- function syncDirectory(directory) {
3012
- let descriptor;
3013
- try {
3014
- descriptor = fs.openSync(directory, "r");
3015
- fs.fsyncSync(descriptor);
3016
- }
3017
- catch {
3018
- // Directory fsync is not available on every supported filesystem. The
3019
- // file itself was fsynced before rename, so continue on that limitation.
3020
- }
3021
- finally {
3022
- if (descriptor !== undefined) {
3023
- closeQuietly(descriptor);
3024
- }
3025
- }
3026
- }
3027
3027
  //# sourceMappingURL=session-registry.js.map