Documentation menu

Conformance

Dynoxide passes 100% of the DynamoDB Conformance Suite - 572 tests validated against real DynamoDB on AWS.

This isn't a self-test. The conformance suite is an independent TypeScript project that runs the same tests against any DynamoDB-compatible endpoint: real DynamoDB, DynamoDB Local, LocalStack, dynalite, and Dynoxide. Every test is first validated against AWS to establish ground truth.

Results

Target Tier 1 Tier 2 Tier 3 Total
DynamoDB 100% 100% 100% 100%
Dynoxide 100% 100% 100% 100%
LocalStack 99.0% 96.1% 81.9% 93.5%
DynamoDB Local 99.0% 91.3% 81.9% 92.7%
dynalite 98.3% 9.7% 92.8% 80.8%

What the tiers cover

The suite is organised into three tiers of increasing strictness:

Tier 1 - Core (~290 tests): CRUD operations, Query, Scan, batch operations, table management, GSI and LSI support. The things every emulator needs to get right.

Tier 2 - Complete (~85 tests): Transactions, PartiQL, TTL, DynamoDB Streams, resource tags, GSI lifecycle. Features that matter for real applications but some emulators skip.

Tier 3 - Strict (~150 tests): Exact error message formatting, validation ordering, number precision, empty value handling, legacy API compatibility. The kind of edge cases that only surface when you're running a real workload against the emulator.

Why it matters

Most emulators get the happy path right. The gaps show up in error handling, edge cases, and strict validation ordering. If your tests pass locally but fail against real DynamoDB, the emulator's conformance is the likely culprit.

Dynoxide was built with the conformance suite running alongside development from day one. Every bug the suite found got fixed before release - 41 correctness issues in total, 10 of them critical.

The full suite and results are at nubo-db/dynamodb-conformance.