Run
7 emulators 982 tests
Results as of this run. The arrow shows each target's movement since the previous run it was tested in. The suite grew this run, so an upward arrow can be the new tests biting rather than a target getting worse.
When this run was published the board led with a single correctness percentage. The figures here are that run's own results restated as divergence and coverage, so they read differently from what this page showed at the time. The changelog has the change.
Suite grew from 954 to 982 tests this run.
That's 28 new tests measured against every target. Movement below compares to the previous run, so a rise here is as likely to be the stricter suite as a real regression.
What changed in the suite this run
Suite on
Grew to 982 tests, up 28, all characterised against real DynamoDB across the per-region ground truth 2.0.0 put in place. New coverage is PartiQL's RETURNING clause; the GSI lifecycle also joins the ground truth, and the sweep's drift classifier gains a converged case.
- PartiQL RETURNING (#103, #105): the clause pinned across every PartiQL
surface. DELETE accepts only
RETURNING ALL OLD *and rejects the other three variants with a 400, the message pinned; UPDATE accepts all four ALL/MODIFIED x OLD/NEW forms, where MODIFIED returns just the changed attribute and drops the key. The empty-projection edges are pinned too: a MODIFIED projection that resolves to nothing - a nested leaf, a list index, a batch statement - returnsItems: []rather than a keyed row. BatchExecuteStatement honours RETURNING; ExecuteTransaction rejects it. The non-upsert paths round it out: INSERT on an existing item, and UPDATE or DELETE behind a false predicate, fail ConditionalCheckFailed and leave the item untouched. - PartiQL RETURNING over list indices (#102): the MODIFIED projection shapes
for a list-index
SETorREMOVE, pinned against real AWS. The projection reads the literal index against the resulting list (MODIFIED NEW *) or the prior list (MODIFIED OLD *): an in-range index returns its element, an out-of-range one returns nothing, and multiple changed indices pack into a dense list in ascending index order. So a non-zero index collapses to one element, an append projects only when the index lands inside the new list, and removing the last index yields nothing under NEW while a middle REMOVE returns the shifted element. Setting an index on an absent attribute is rejected, not auto-created. In BatchExecuteStatement a member that fails to parse surfaces per-statement with the shortCode: ValidationError, the same Code as an execution failure, and does not fail the batch. - GSI lifecycle in the ground truth (#100): the 14 UpdateTable GSI lifecycle tests are now observed by the weekly sweep and recorded as per-region ground truth. They are the one slice the gating run drops for runtime, so they were the one slice without a real-AWS answer; the sweep records them without slowing the gate.
- Drift classification (#104): a drift where every region moves off the pinned answer at once is now classified as converged rather than moved, with the converged path covered end to end.
-
Grade baselineground truth
no divergence in all 33 regions · covers 100.0% of the suite
Tier breakdown
Tier 1 · Core 0.0% diverges100.0% coveredTier 2 · Complete 0.0% diverges100.0% coveredTier 3 · Strict 0.0% diverges100.0% covered -
Runs via: npx, Docker, Homebrew, binary, npm, cargo, embedded, GitHub Action, source
Disclosure: maintained by this board's author
Grade Adiverged 2.9 percentage points morelow divergence (3.7%) in 6 regions · up to 4.0% in the other 27 · covers 98.6% of the suite
Tier breakdown
Tier 1 · Core 0.2% diverges100.0% coveredTier 2 · Complete 13.7% diverges92.3% covered 14 unsupportedTier 3 · Strict 3.1% diverges100.0% covered -
Grade Cunchanged
moderate divergence (14.8%) in 27 regions · up to 14.9% in the other 6 · covers 99.2% of the suite · coverage lowers this row to C
Tier breakdown
Tier 1 · Core 6.5% diverges100.0% coveredTier 2 · Complete 13.7% diverges95.6% covered 8 unsupportedTier 3 · Strict 27.5% diverges100.0% covered -
Grade Cdiverged 0.5 percentage points less
high divergence (15.6%) in all 33 regions · covers 92.8% of the suite
Tier breakdown
Tier 1 · Core 14.5% diverges100.0% coveredTier 2 · Complete 8.7% diverges63.4% covered 67 unsupportedTier 3 · Strict 21.0% diverges98.8% covered 4 unsupported -
Grade Cunchanged
high divergence (15.9%) in 27 regions · up to 16.0% in the other 6 · covers 98.7% of the suite
Tier breakdown
Tier 1 · Core 7.8% diverges100.0% coveredTier 2 · Complete 15.8% diverges92.9% covered 13 unsupportedTier 3 · Strict 27.8% diverges100.0% covered -
Grade Cdiverged 2.3 percentage points more
high divergence (16.7%) in all 33 regions · covers 100.0% of the suite
Tier breakdown
Tier 1 · Core 10.9% diverges100.0% coveredTier 2 · Complete 23.5% diverges100.0% coveredTier 3 · Strict 21.3% diverges100.0% covered -
d2ecc8035822 9 unsupported ; covers 99.1% of the suite
Runs via: Docker, Homebrew, install script, Scoop, binary, JAR
Grade Cdiverged 2.0 percentage points morehigh divergence (19.7%) in all 33 regions · covers 99.1% of the suite
Tier breakdown
Tier 1 · Core 8.6% diverges100.0% coveredTier 2 · Complete 31.1% diverges95.1% covered 9 unsupportedTier 3 · Strict 29.3% diverges100.0% covered -
Grade Cdiverged 0.6 percentage points less
high divergence (21.5%) in 27 regions · up to 21.7% in the other 6 · covers 90.2% of the suite
Tier breakdown
Tier 1 · Core 8.6% diverges100.0% coveredTier 2 · Complete 43.2% diverges49.7% covered 92 unsupportedTier 3 · Strict 28.1% diverges98.8% covered 4 unsupported