@ricsam/r5d-worker 0.0.92 → 0.0.93

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.
package/dist/cjs/main.cjs CHANGED
@@ -4425,11 +4425,12 @@ async function startWorker(options) {
4425
4425
  }
4426
4426
  try {
4427
4427
  assertStillAdmitted();
4428
+ const hasDurableBranchDeletion = projectWorkspaceState.tombstones.some((tombstone) => tombstone.kind === "branch");
4428
4429
  return await performWorkspaceSync({
4429
4430
  attemptId,
4430
4431
  trigger: input.trigger,
4431
- confirmedLargeDiff: input.confirmedLargeDiff,
4432
- confirmationReason: input.confirmationReason,
4432
+ confirmedLargeDiff: input.confirmedLargeDiff === true || hasDurableBranchDeletion,
4433
+ confirmationReason: input.confirmationReason ?? (hasDurableBranchDeletion ? "durable project branch deletion" : void 0),
4433
4434
  resetToCanonical: input.resetToCanonical,
4434
4435
  requiredAncestorHeads: input.requiredAncestorHeads,
4435
4436
  assertStillAdmitted
@@ -4966,9 +4967,12 @@ async function startWorker(options) {
4966
4967
  );
4967
4968
  }
4968
4969
  };
4970
+ const hasDurableBranchDeletion = projectWorkspaceState.tombstones.some((tombstone) => tombstone.kind === "branch");
4969
4971
  const result = await performWorkspaceSync({
4970
4972
  attemptId: crypto.randomUUID(),
4971
4973
  trigger: { type: "connect" },
4974
+ confirmedLargeDiff: hasDurableBranchDeletion,
4975
+ confirmationReason: hasDurableBranchDeletion ? "durable project branch deletion" : void 0,
4972
4976
  resetToCanonical: workspaceConfigurationResetToCanonicalIsAllowed(message.resetToCanonical, incidentDeferral.incidentId),
4973
4977
  assertStillAdmitted: assertConfigurationSyncStillAdmitted
4974
4978
  });
@@ -5210,7 +5214,8 @@ async function startWorker(options) {
5210
5214
  ptyEnvFilesV1: true,
5211
5215
  workspaceRemediationAncestorGuardV1: true,
5212
5216
  workspaceIncidentConfigDeferralV1: true,
5213
- workspaceConfigResetToCanonicalV1: true
5217
+ workspaceConfigResetToCanonicalV1: true,
5218
+ projectBranchDeletionFastAckV1: true
5214
5219
  },
5215
5220
  projectRoot: projectsRoot,
5216
5221
  artifactRoot,
@@ -5464,23 +5469,15 @@ async function startWorker(options) {
5464
5469
  return true;
5465
5470
  });
5466
5471
  if (deletionNeedsSync) {
5467
- const result = await runWorkspaceSync({
5468
- trigger: {
5472
+ scheduleAutomaticWorkspaceSync(
5473
+ {
5469
5474
  type: "manual",
5470
5475
  projectId: message.projectId,
5471
5476
  branchName: message.branchName,
5472
5477
  detail: "deleted project branch"
5473
5478
  },
5474
- confirmedLargeDiff: true,
5475
- confirmationReason: "explicit project branch deletion",
5476
- sendResult: false
5477
- });
5478
- if (result.outcome === "failed" || result.outcome === "conflict_blocked" || result.outcome === "large_diff_blocked") {
5479
- throw new Error(result.error ?? `Project branch deletion workspace sync ended with ${result.outcome}`);
5480
- }
5481
- if (pendingMirrorDeletes.has(deletionKey)) {
5482
- throw new Error("Project branch deletion did not remove the hidden mirror ref");
5483
- }
5479
+ 0
5480
+ );
5484
5481
  }
5485
5482
  sendWorkerMessage(ws, {
5486
5483
  type: "operation_result",
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@ricsam/r5d-worker",
3
- "version": "0.0.92",
3
+ "version": "0.0.93",
4
4
  "type": "commonjs"
5
5
  }
package/dist/mjs/main.mjs CHANGED
@@ -4431,11 +4431,12 @@ async function startWorker(options) {
4431
4431
  }
4432
4432
  try {
4433
4433
  assertStillAdmitted();
4434
+ const hasDurableBranchDeletion = projectWorkspaceState.tombstones.some((tombstone) => tombstone.kind === "branch");
4434
4435
  return await performWorkspaceSync({
4435
4436
  attemptId,
4436
4437
  trigger: input.trigger,
4437
- confirmedLargeDiff: input.confirmedLargeDiff,
4438
- confirmationReason: input.confirmationReason,
4438
+ confirmedLargeDiff: input.confirmedLargeDiff === true || hasDurableBranchDeletion,
4439
+ confirmationReason: input.confirmationReason ?? (hasDurableBranchDeletion ? "durable project branch deletion" : void 0),
4439
4440
  resetToCanonical: input.resetToCanonical,
4440
4441
  requiredAncestorHeads: input.requiredAncestorHeads,
4441
4442
  assertStillAdmitted
@@ -4972,9 +4973,12 @@ async function startWorker(options) {
4972
4973
  );
4973
4974
  }
4974
4975
  };
4976
+ const hasDurableBranchDeletion = projectWorkspaceState.tombstones.some((tombstone) => tombstone.kind === "branch");
4975
4977
  const result = await performWorkspaceSync({
4976
4978
  attemptId: crypto.randomUUID(),
4977
4979
  trigger: { type: "connect" },
4980
+ confirmedLargeDiff: hasDurableBranchDeletion,
4981
+ confirmationReason: hasDurableBranchDeletion ? "durable project branch deletion" : void 0,
4978
4982
  resetToCanonical: workspaceConfigurationResetToCanonicalIsAllowed(message.resetToCanonical, incidentDeferral.incidentId),
4979
4983
  assertStillAdmitted: assertConfigurationSyncStillAdmitted
4980
4984
  });
@@ -5216,7 +5220,8 @@ async function startWorker(options) {
5216
5220
  ptyEnvFilesV1: true,
5217
5221
  workspaceRemediationAncestorGuardV1: true,
5218
5222
  workspaceIncidentConfigDeferralV1: true,
5219
- workspaceConfigResetToCanonicalV1: true
5223
+ workspaceConfigResetToCanonicalV1: true,
5224
+ projectBranchDeletionFastAckV1: true
5220
5225
  },
5221
5226
  projectRoot: projectsRoot,
5222
5227
  artifactRoot,
@@ -5470,23 +5475,15 @@ async function startWorker(options) {
5470
5475
  return true;
5471
5476
  });
5472
5477
  if (deletionNeedsSync) {
5473
- const result = await runWorkspaceSync({
5474
- trigger: {
5478
+ scheduleAutomaticWorkspaceSync(
5479
+ {
5475
5480
  type: "manual",
5476
5481
  projectId: message.projectId,
5477
5482
  branchName: message.branchName,
5478
5483
  detail: "deleted project branch"
5479
5484
  },
5480
- confirmedLargeDiff: true,
5481
- confirmationReason: "explicit project branch deletion",
5482
- sendResult: false
5483
- });
5484
- if (result.outcome === "failed" || result.outcome === "conflict_blocked" || result.outcome === "large_diff_blocked") {
5485
- throw new Error(result.error ?? `Project branch deletion workspace sync ended with ${result.outcome}`);
5486
- }
5487
- if (pendingMirrorDeletes.has(deletionKey)) {
5488
- throw new Error("Project branch deletion did not remove the hidden mirror ref");
5489
- }
5485
+ 0
5486
+ );
5490
5487
  }
5491
5488
  sendWorkerMessage(ws, {
5492
5489
  type: "operation_result",
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@ricsam/r5d-worker",
3
- "version": "0.0.92",
3
+ "version": "0.0.93",
4
4
  "type": "module"
5
5
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ricsam/r5d-worker",
3
- "version": "0.0.92",
3
+ "version": "0.0.93",
4
4
  "type": "module",
5
5
  "main": "./dist/cjs/main.cjs",
6
6
  "module": "./dist/mjs/main.mjs",