@hypequery/protocol-conformance 0.10.1 → 0.10.2

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.
@@ -3,6 +3,8 @@
3
3
  These adversarial inputs replay on every conformance run under RFC 0012. An implementation may accept a seed within documented limits or reject it with a stable `HQ_*` code; it must never crash, hang, partially execute input, or allocate without bounds.
4
4
 
5
5
  - `value-sources.json` targets duplicate-aware JSON decoding and tagged values.
6
+ - `identifiers.json` targets Unicode ambiguity, reserved names, separators,
7
+ validation limits, and non-string identifier inputs.
6
8
  - `structured-values.json` targets selected structural validator families.
7
9
  - `sql-expressions.json` targets the SQL portability compiler.
8
10
 
@@ -0,0 +1,17 @@
1
+ [
2
+ { "id": "identifier-null", "mode": "simple", "value": null },
3
+ { "id": "identifier-control-character", "mode": "simple", "value": "order\u0000id" },
4
+ { "id": "identifier-sql-shaped", "mode": "simple", "value": "orders;DROP_TABLE_users" },
5
+ { "id": "identifier-cyrillic-confusable", "mode": "simple", "value": "аdmin" },
6
+ { "id": "identifier-combining-mark", "mode": "simple", "value": "café" },
7
+ { "id": "identifier-fullwidth-dot", "mode": "qualified", "value": "orders.customer" },
8
+ { "id": "identifier-lone-high-surrogate", "mode": "simple", "value": "\ud800" },
9
+ { "id": "identifier-lone-low-surrogate", "mode": "simple", "value": "\udc00" },
10
+ { "id": "identifier-surrogate-pair", "mode": "simple", "value": "\ud83d\ude00" },
11
+ { "id": "identifier-reserved-mixed-case", "mode": "simple", "value": "__HyPeQuErY_admin" },
12
+ { "id": "identifier-qualified-leading-dot", "mode": "qualified", "value": ".orders" },
13
+ { "id": "identifier-qualified-trailing-dot", "mode": "qualified", "value": "orders." },
14
+ { "id": "identifier-qualified-repeated-dot", "mode": "qualified", "value": "orders..customer" },
15
+ { "id": "identifier-long-segment", "mode": "simple", "generator": { "type": "repeat-string", "value": "a", "count": 10000 } },
16
+ { "id": "identifier-many-segments", "mode": "qualified", "generator": { "type": "qualified-segments", "segment": "a", "count": 1000 } }
17
+ ]
@@ -228,6 +228,10 @@
228
228
  "path": "fuzz-seeds-v1/value-sources.json",
229
229
  "family": "tagged-values-v1"
230
230
  },
231
+ {
232
+ "path": "fuzz-seeds-v1/identifiers.json",
233
+ "family": "identifiers-v1"
234
+ },
231
235
  {
232
236
  "path": "fuzz-seeds-v1/structured-values.json"
233
237
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hypequery/protocol-conformance",
3
- "version": "0.10.1",
3
+ "version": "0.10.2",
4
4
  "description": "Cross-language conformance runner for the Hypequery analytics security protocol",
5
5
  "keywords": [
6
6
  "hypequery",