Skip to content

feat(batch): make creation resumable - #455

Open
ubettigole wants to merge 1 commit into
abettigole/cancel_batch_resolutionfrom
abettigole/idempotent_batch_creation
Open

feat(batch): make creation resumable#455
ubettigole wants to merge 1 commit into
abettigole/cancel_batch_resolutionfrom
abettigole/idempotent_batch_creation

Conversation

@ubettigole

@ubettigole ubettigole commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Batch creation is not currently idempotent across partial failures. A retry after the request CAS, batch persistence, reverse-index updates, or publishing can mint a fresh batch ID or repeat graph mutations, producing duplicate batches, orphaned work, and stale dependency entries.

This PR completes the stack by making the writer resumable. It persists batches as Creating, records durable request assignments, initializes reverse indexes idempotently, transitions the batch to Created, and then performs deterministic publishes. Redelivery resolves and resumes the same batch rather than starting over.

Test Plan

Unit tests

Issues

#354

Stack

  1. feat(storage): add request batch assignments #452
  2. feat(orchestrator): support creating batches #453
  3. fix(cancel): resolve durable batch ownership #454
  4. @ feat(batch): make creation resumable #455

Persist batches in Creating, initialize assignments and reverse indexes idempotently, and resume the same batch across queue redelivery.

Jira Issues: CODEM-304
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant