Skip to content

Add transaction-composable quad patches - #32

Merged
kcsfelty merged 1 commit into
mainfrom
feat/composable-quad-patches
Jul 20, 2026
Merged

Add transaction-composable quad patches#32
kcsfelty merged 1 commit into
mainfrom
feat/composable-quad-patches

Conversation

@kcsfelty

Copy link
Copy Markdown
Collaborator

What changed

  • expose prepareQuadPatch() as a validated, ordered D1 statement plan
  • let callers compose RDF changes with application-owned statements in one D1 batch
  • make stale require/forbid guards abort the entire caller-owned batch
  • preserve the existing applyQuadPatch() convenience API and typed conflict behavior
  • document composition, result offsets, and error mapping

Why

Taproot must commit canonical entity JSON, immutable revisions, search terms, and the corresponding RDF closure under one atomic D1 boundary. Diamond previously owned and immediately executed its internal batch, so an application could not safely include adjacent writes.

Closes #30.

Validation

  • npm run check
  • 116 tests passed
  • Workerd/D1 test proves adjacent application writes roll back when a composed RDF guard fails
  • build, Worker dry-run/e2e, packed-consumer smoke, license, and readiness checks passed

@kcsfelty
kcsfelty force-pushed the feat/composable-quad-patches branch from d264cff to d90c67e Compare July 20, 2026 22:21
@kcsfelty
kcsfelty marked this pull request as ready for review July 20, 2026 23:19
@kcsfelty
kcsfelty merged commit bc5c3c7 into main Jul 20, 2026
10 checks passed
@kcsfelty
kcsfelty deleted the feat/composable-quad-patches branch July 20, 2026 23:19
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.

Expose transaction-composable quad patch preparation

1 participant