@hypequery/protocol-conformance 0.11.2 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fixtures/deployments-v2/README.md +15 -0
- package/fixtures/deployments-v2/rejections.json +874 -0
- package/fixtures/manifest.json +4 -0
- package/fixtures/query-implementations-v1/rejections.json +445 -6
- package/fixtures/query-implementations-v1/success.json +88 -12
- package/fixtures/query-schemas-v1/README.md +2 -0
- package/fixtures/query-schemas-v1/rejections.json +224 -13
- package/fixtures/sql-portability-v1/README.md +2 -0
- package/fixtures/sql-portability-v1/non-portable.json +121 -0
- package/fixtures/tagged-values-v1/rejections.json +18 -0
- package/package.json +2 -2
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Deployment contract v2 fixtures
|
|
2
|
+
|
|
3
|
+
`success.json` holds contracts every implementation must accept, `identity.json`
|
|
4
|
+
pins the canonical bytes and SHA-256 of the success case sharing its id, and
|
|
5
|
+
`rejections.json` pins a stable failure code for each rule the contract states.
|
|
6
|
+
|
|
7
|
+
Acceptance of RFC 0006 added the rejection corpus. Before it, the family had one
|
|
8
|
+
success and one identity case, which cannot tell a faithful validator from one
|
|
9
|
+
that accepts contracts another implementation rejects — the corpus now covers
|
|
10
|
+
the envelope's forbidden fields, the null-versus-absent distinction, relationship
|
|
11
|
+
and tenant agreement, measure shape, semantic metadata, defaults, endpoint
|
|
12
|
+
policy, and derived-measure rules.
|
|
13
|
+
|
|
14
|
+
Every case was checked against both the TypeScript and Python implementations
|
|
15
|
+
before being recorded; none of them changed either implementation's behaviour.
|