@hypequery/protocol-conformance 0.13.0 → 0.15.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/dist/adapters/generators.d.ts.map +1 -1
- package/dist/adapters/generators.js +13 -0
- package/dist/adapters/reference.d.ts +1 -1
- package/dist/adapters/reference.d.ts.map +1 -1
- package/dist/adapters/reference.js +16 -1
- package/dist/compare.js +6 -0
- package/fixtures/cache-preimages-v1/README.md +74 -0
- package/fixtures/cache-preimages-v1/rejections.json +304 -0
- package/fixtures/cache-preimages-v1/success.json +678 -0
- package/fixtures/manifest.json +17 -0
- package/fixtures/query-diagnostics-v1/rejections.json +5 -0
- package/fixtures/query-diagnostics-v1/success.json +12 -0
- package/fixtures/query-events-v1/rejections.json +8 -0
- package/fixtures/query-events-v1/success.json +20 -0
- package/package.json +4 -4
package/fixtures/manifest.json
CHANGED
|
@@ -264,6 +264,23 @@
|
|
|
264
264
|
}
|
|
265
265
|
]
|
|
266
266
|
},
|
|
267
|
+
{
|
|
268
|
+
"name": "cache-preimages-v1",
|
|
269
|
+
"rfc": "0009",
|
|
270
|
+
"codePrefixes": [
|
|
271
|
+
"HQ_CACHE_PREIMAGE_"
|
|
272
|
+
],
|
|
273
|
+
"files": [
|
|
274
|
+
{
|
|
275
|
+
"path": "cache-preimages-v1/success.json",
|
|
276
|
+
"role": "success"
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"path": "cache-preimages-v1/rejections.json",
|
|
280
|
+
"role": "rejection"
|
|
281
|
+
}
|
|
282
|
+
]
|
|
283
|
+
},
|
|
267
284
|
{
|
|
268
285
|
"name": "semantic-invocations-v1",
|
|
269
286
|
"rfc": "0014",
|
|
@@ -9,5 +9,10 @@
|
|
|
9
9
|
{ "id": "zero-attempts", "generator": { "type": "zero-attempts" }, "error": "HQ_DIAGNOSTICS_INVALID_VALUE" },
|
|
10
10
|
{ "id": "control-character-message", "generator": { "type": "control-character-message" }, "error": "HQ_DIAGNOSTICS_INVALID_VALUE" },
|
|
11
11
|
{ "id": "oversized-debug-query", "generator": { "type": "oversized-debug-query" }, "error": "HQ_DIAGNOSTICS_TOO_LARGE" },
|
|
12
|
+
{ "id": "newer-version-with-new-field", "generator": { "type": "newer-version-with-new-field" }, "error": "HQ_DIAGNOSTICS_INVALID_VERSION" },
|
|
13
|
+
{ "id": "too-many-attempts", "generator": { "type": "too-many-attempts" }, "error": "HQ_DIAGNOSTICS_INVALID_VALUE" },
|
|
14
|
+
{ "id": "prefixed-runtime-identity", "generator": { "type": "prefixed-runtime-identity" }, "error": "HQ_DIAGNOSTICS_INVALID_VALUE" },
|
|
15
|
+
{ "id": "debug-query-lone-surrogate", "generator": { "type": "debug-query-lone-surrogate" }, "error": "HQ_DIAGNOSTICS_INVALID_VALUE" },
|
|
16
|
+
{ "id": "debug-query-bell-character", "generator": { "type": "debug-query-bell-character" }, "error": "HQ_DIAGNOSTICS_INVALID_VALUE" },
|
|
12
17
|
{ "id": "unsafe-accessor", "generator": { "type": "unsafe-accessor" }, "error": "HQ_DIAGNOSTICS_UNSAFE_OBJECT" }
|
|
13
18
|
]
|
|
@@ -23,5 +23,17 @@
|
|
|
23
23
|
"debugQuery": "SELECT sum(revenue) FROM orders WHERE tenant_id = {tenant_fingerprint:String} AND day >= {start_date:Date}",
|
|
24
24
|
"safeMessage": "The query exceeded its execution deadline."
|
|
25
25
|
}
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"id": "boundary-diagnostics",
|
|
29
|
+
"value": {
|
|
30
|
+
"kind": "hypequery-query-diagnostics",
|
|
31
|
+
"version": 1,
|
|
32
|
+
"eventId": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef",
|
|
33
|
+
"queryId": "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
|
|
34
|
+
"terminalReason": "drained",
|
|
35
|
+
"attempts": 64,
|
|
36
|
+
"debugQuery": "SELECT sum(revenue)\nFROM (\n\tSELECT revenue FROM orders WHERE day >= {start_date:Date}\n)"
|
|
37
|
+
}
|
|
26
38
|
}
|
|
27
39
|
]
|
|
@@ -14,5 +14,13 @@
|
|
|
14
14
|
{ "id": "invalid-target", "generator": { "type": "invalid-target" }, "error": "HQ_EVENT_INVALID_VALUE" },
|
|
15
15
|
{ "id": "invalid-query-name", "generator": { "type": "invalid-query-name" }, "error": "HQ_EVENT_INVALID_VALUE" },
|
|
16
16
|
{ "id": "oversized-correlation-id", "generator": { "type": "oversized-correlation-id" }, "error": "HQ_EVENT_TOO_LARGE" },
|
|
17
|
+
{ "id": "newer-version-with-new-field", "generator": { "type": "newer-version-with-new-field" }, "error": "HQ_EVENT_INVALID_VERSION" },
|
|
18
|
+
{ "id": "wrong-kind-with-unknown-field", "generator": { "type": "wrong-kind-with-unknown-field" }, "error": "HQ_EVENT_INVALID_VALUE" },
|
|
19
|
+
{ "id": "impossible-calendar-date", "generator": { "type": "impossible-calendar-date" }, "error": "HQ_EVENT_INVALID_VALUE" },
|
|
20
|
+
{ "id": "hour-twenty-four", "generator": { "type": "hour-twenty-four" }, "error": "HQ_EVENT_INVALID_VALUE" },
|
|
21
|
+
{ "id": "one-digit-fraction", "generator": { "type": "one-digit-fraction" }, "error": "HQ_EVENT_INVALID_VALUE" },
|
|
22
|
+
{ "id": "fractional-duration", "generator": { "type": "fractional-duration" }, "error": "HQ_EVENT_INVALID_VALUE" },
|
|
23
|
+
{ "id": "correlation-id-one-byte-over", "generator": { "type": "correlation-id-one-byte-over" }, "error": "HQ_EVENT_TOO_LARGE" },
|
|
24
|
+
{ "id": "correlation-id-lone-surrogate", "generator": { "type": "correlation-id-lone-surrogate" }, "error": "HQ_EVENT_INVALID_VALUE" },
|
|
17
25
|
{ "id": "unsafe-accessor", "generator": { "type": "unsafe-accessor" }, "error": "HQ_EVENT_UNSAFE_OBJECT" }
|
|
18
26
|
]
|
|
@@ -36,5 +36,25 @@
|
|
|
36
36
|
"tenantFingerprint": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
37
37
|
"correlationId": "checkout-deploy-2026-07-20T21:00Z"
|
|
38
38
|
}
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"id": "boundary-failure-event",
|
|
42
|
+
"value": {
|
|
43
|
+
"kind": "hypequery-query-event",
|
|
44
|
+
"version": 1,
|
|
45
|
+
"eventId": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef",
|
|
46
|
+
"occurredAt": "2028-02-29T00:00:00.000Z",
|
|
47
|
+
"target": {
|
|
48
|
+
"project": "prj_acme-analytics",
|
|
49
|
+
"environment": "production"
|
|
50
|
+
},
|
|
51
|
+
"queryName": "daily_revenue",
|
|
52
|
+
"operation": "command",
|
|
53
|
+
"outcome": "failure",
|
|
54
|
+
"errorCategory": "aborted",
|
|
55
|
+
"durationMs": 86400000,
|
|
56
|
+
"rowCount": 1000000000000,
|
|
57
|
+
"correlationId": "éééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééé"
|
|
58
|
+
}
|
|
39
59
|
}
|
|
40
60
|
]
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hypequery/protocol-conformance",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.15.0",
|
|
4
4
|
"description": "Cross-language conformance runner for the Hypequery analytics security protocol",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"hypequery",
|
|
@@ -31,12 +31,12 @@
|
|
|
31
31
|
"README.md"
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@hypequery/protocol": "^0.
|
|
34
|
+
"@hypequery/protocol": "^0.18.0"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@types/node": "^22.5.0",
|
|
38
38
|
"typescript": "^5.7.3",
|
|
39
|
-
"vitest": "^
|
|
39
|
+
"vitest": "^5.0.2"
|
|
40
40
|
},
|
|
41
41
|
"repository": {
|
|
42
42
|
"type": "git",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"scripts": {
|
|
54
54
|
"build": "node scripts/copy-fixtures.mjs && tsc --project tsconfig.json",
|
|
55
55
|
"dev": "tsc --project tsconfig.json --watch",
|
|
56
|
-
"lint": "eslint
|
|
56
|
+
"lint": "eslint \"src/**/*.ts\"",
|
|
57
57
|
"test": "vitest run",
|
|
58
58
|
"types": "tsc --project tsconfig.json --noEmit && tsc --project tsconfig.test.json"
|
|
59
59
|
}
|