Observation
PR #289 ordinary CI run 30689965005 failed the existing Node concurrency parity test write-mode options validate and optimistic agents publish exactly once. One of two distinct optimistic writers returned GF_IDEMPOTENCY_CONFLICT from an expected rebase path.
The failure is outside #287's npm amendment scope, but it blocks that PR's required normal CI gate.
Acceptance criteria
Non-goals
Reopened current-head authority conflict (2026-09-10)
PR #1243, exact head 547ec4c98bbfdc6764ba642f9d71b28eeb73b34b, Test Suite run 34537860496, Node job 103073636722 reproduces the same public optimistic distinct-create failure: GF_IDEMPOTENCY_CONFLICT, with property mutation authority changed: expected=01a08d77-4994-73c3-adf0-603c6031afb3 current=2ca9f9b1-d38f-86e9-a48d-5e5328ad35cd. The remaining independent Bazel lane is still running; this is not a complete failure census yet.
The worker calls composite CreateNode without executing a query. Current main 5fc68e568893110cca97b0eb2c797d306b264e27 and the PR both use seal_property_windows in storage: CURRENT generation drift returns TransactionConflict, mapped to GF_IDEMPOTENCY_CONFLICT. The optimistic publisher retries only GF_WRITE_CONFLICT. Its existing concurrency test synchronizes after staging, later than this authority-capture/seal race. This is an additional verified boundary for the canonical public failure, independent of the PR's input-predicate rule; earlier staging-reuse repair evidence remains valid for its tested boundary.
Remaining acceptance
- Deterministically force a competing publication between property authority capture and sealing; prove the stale authority is classified as a write conflict.
- Exercise bounded optimistic rebase and prove distinct writes publish exactly once, including property values, immediate reads, reopen and same-operation retry.
- Preserve genuine operation-identity mismatch as
GF_IDEMPOTENCY_CONFLICT, and preserve current authentication, cancellation and recovery refusal.
- Pass focused Rust/storage/API and rebuilt Node concurrency coverage and required exact-head CI without blind reruns, sleeps, skips or weakened assertions.
This existing canonical issue blocks #1241 / PR #1243 and epic #1194. No concurrency redesign or compatibility machinery is authorized. Any temporary fourth WIP change is limited to this verified shared CI blocker under the repository queue-repair exception; drain the queue after it merges.
Complete failure census: run 34537860496 is now terminal FAILURE. Authoritative Bazel, Python binding, macOS durability, Windows locks, native durability aggregate and all applicable quality/policy lanes passed. Node Binding is the sole test failure; CI Gate failed as its aggregate. Concurrency Matrix and Bazel Diagnostics were skipped by the existing workflow. No blind rerun was requested. The finite repair batch is this canonical authority-conflict issue; #1243 remains first downstream merge candidate after the repair lands.
Observation
PR #289 ordinary CI run 30689965005 failed the existing Node concurrency parity test
write-mode options validate and optimistic agents publish exactly once. One of two distinct optimistic writers returnedGF_IDEMPOTENCY_CONFLICTfrom an expected rebase path.The failure is outside #287's npm amendment scope, but it blocks that PR's required normal CI gate.
Acceptance criteria
GF_IDEMPOTENCY_CONFLICTduring a valid distinct-create rebase.GF_IDEMPOTENCY_CONFLICT.Non-goals
Reopened current-head authority conflict (2026-09-10)
PR #1243, exact head
547ec4c98bbfdc6764ba642f9d71b28eeb73b34b, Test Suite run 34537860496, Node job 103073636722 reproduces the same public optimistic distinct-create failure:GF_IDEMPOTENCY_CONFLICT, withproperty mutation authority changed: expected=01a08d77-4994-73c3-adf0-603c6031afb3 current=2ca9f9b1-d38f-86e9-a48d-5e5328ad35cd. The remaining independent Bazel lane is still running; this is not a complete failure census yet.The worker calls composite CreateNode without executing a query. Current main
5fc68e568893110cca97b0eb2c797d306b264e27and the PR both useseal_property_windowsin storage: CURRENT generation drift returnsTransactionConflict, mapped toGF_IDEMPOTENCY_CONFLICT. The optimistic publisher retries onlyGF_WRITE_CONFLICT. Its existing concurrency test synchronizes after staging, later than this authority-capture/seal race. This is an additional verified boundary for the canonical public failure, independent of the PR's input-predicate rule; earlier staging-reuse repair evidence remains valid for its tested boundary.Remaining acceptance
GF_IDEMPOTENCY_CONFLICT, and preserve current authentication, cancellation and recovery refusal.This existing canonical issue blocks #1241 / PR #1243 and epic #1194. No concurrency redesign or compatibility machinery is authorized. Any temporary fourth WIP change is limited to this verified shared CI blocker under the repository queue-repair exception; drain the queue after it merges.
Complete failure census: run 34537860496 is now terminal FAILURE. Authoritative Bazel, Python binding, macOS durability, Windows locks, native durability aggregate and all applicable quality/policy lanes passed. Node Binding is the sole test failure; CI Gate failed as its aggregate. Concurrency Matrix and Bazel Diagnostics were skipped by the existing workflow. No blind rerun was requested. The finite repair batch is this canonical authority-conflict issue; #1243 remains first downstream merge candidate after the repair lands.