@openwop/openwop-conformance 2.4.5 → 2.4.7

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/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # `@openwop/openwop-conformance` Changelog
2
2
 
3
+ ## [2.4.7] — 2026-09-18 — schema examples are validated now
4
+
5
+ **Why a patch.** No conformance code changes; the corpus version moves because
6
+ `schemas/v2/` content and a root gate script changed.
7
+
8
+ ### Fixed
9
+
10
+ - `scripts/check-v2-schemas.mjs` now validates every root-level `examples` entry
11
+ against its own schema. It found **13 invalid examples across 6 v2 schemas**,
12
+ 9 of them ids minted before RFC 0184/0187 made their kind tenant-bound. All
13
+ re-minted.
14
+
15
+ ## [2.4.6] — 2026-09-18 — the npm page told the world to install a release candidate
16
+
17
+ ### Fixed
18
+
19
+ - **`README.md` — the package page, and the corpus's actual front door** — told
20
+ readers to install `2.0.0-rc.57` while `latest` was 2.4.5, and declared
21
+ *"Tracks the FINAL v1 protocol contract."* It tracks v2. Both corrected, and
22
+ `--legacy-peer-deps` is now documented as REQUIRED rather than a footnote,
23
+ with the npm 10.9 failure named (`Cannot read properties of null (reading
24
+ 'edgesOut')` — use npm >= 11).
25
+
3
26
  ## [2.4.5] — 2026-09-18 — the strict flag that was not wired, and the soft-skip that counted as a pass
4
27
 
5
28
  ### Fixed
package/README.md CHANGED
@@ -4,11 +4,14 @@
4
4
 
5
5
  ```bash
6
6
  # Install BOTH packages at the SAME explicit version — the suite declares
7
- # @openwop/spec-artifacts as an exact-pinned peer, and `npm i --legacy-peer-deps`
8
- # on the suite alone does not pull it (a host measured "corpus stamp MISMATCH —
9
- # missing @openwop/spec-artifacts" on 2026-09-05). Pre-release 2.x is on the
10
- # `next` dist-tag; pin the version, never the tag (runbook §0.2b).
11
- npm install @openwop/openwop-conformance@2.0.0-rc.57 @openwop/spec-artifacts@2.0.0-rc.57
7
+ # @openwop/spec-artifacts as an exact-pinned peer, and installing the suite
8
+ # alone does not pull it (a host measured "corpus stamp MISMATCH — missing
9
+ # @openwop/spec-artifacts"). Pin the version, never a dist-tag.
10
+ #
11
+ # --legacy-peer-deps is REQUIRED, not optional: the exact peer pin is what npm's
12
+ # default resolver refuses. npm 10.9 fails outright with
13
+ # "Cannot read properties of null (reading 'edgesOut')" — use npm >= 11.
14
+ npm install --legacy-peer-deps @openwop/openwop-conformance@2.4.7 @openwop/spec-artifacts@2.4.7
12
15
  # or run without install:
13
16
  npx @openwop/openwop-conformance --base-url https://api.example.com --api-key hk_test_...
14
17
  ```
@@ -17,7 +20,7 @@ npx @openwop/openwop-conformance --base-url https://api.example.com --api-key hk
17
20
 
18
21
  The suite is intentionally self-contained — it does NOT depend on the reference implementation. A spec-compliant server written in any language can run this suite against itself by spinning up its server, exporting the env vars, and running `npx vitest run`.
19
22
 
20
- > **Status:** Tracks the FINAL v1 protocol contract. The suite version evolves independently as new scenarios ship (vendor-neutral redaction, cost attribution, post-v1 ecosystem triggers); see [`CHANGELOG.md`](./CHANGELOG.md) for the current release.
23
+ > **Status:** Tracks the **v2** protocol contract (`spec/v2/`), the current major. The suite still runs v1 scenarios through the overlap — pass `--target-major 1` for a v1 host, `--target-major 2` for a v2 host. The suite version evolves independently as new scenarios ship (vendor-neutral redaction, cost attribution, post-v1 ecosystem triggers); see [`CHANGELOG.md`](./CHANGELOG.md) for the current release.
21
24
 
22
25
  ---
23
26
 
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "package": "@openwop/spec-artifacts",
3
- "version": "2.4.5",
4
- "stampSha256": "2d625db1edc658e5ca483a95028e5db84c62bef71c8ced299e817c6875fbfbfd"
3
+ "version": "2.4.7",
4
+ "stampSha256": "6e8184e89578f988554805cf61423b656f7d1b9b0d1f7454513962c77547d7ad"
5
5
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openwop/openwop-conformance",
3
- "version": "2.4.5",
3
+ "version": "2.4.7",
4
4
  "description": "Production-ready black-box conformance suite for OpenWOP v1.0 compliant servers.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -56,6 +56,6 @@
56
56
  "@openwop/spec-artifacts": "file:../spec-artifacts"
57
57
  },
58
58
  "peerDependencies": {
59
- "@openwop/spec-artifacts": "2.4.5"
59
+ "@openwop/spec-artifacts": "2.4.7"
60
60
  }
61
61
  }
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "_comment": "Provenance of @openwop/spec-artifacts (RFC 0168 §D.2). files: SHA-256 per file; the conformance suite compares the installed peer against dist/spec-artifacts.lock.json at start.",
3
3
  "package": "@openwop/spec-artifacts",
4
- "version": "2.4.5",
5
- "corpusTag": "v2.4.5",
4
+ "version": "2.4.7",
5
+ "corpusTag": "v2.4.7",
6
6
  "files": {
7
7
  "api/.redocly.lint-ignore.yaml": "bf5a8350b88a72fa43f59605ed8d903ed24b6cfccda5e45509c9f6ed9ee4e712",
8
8
  "api/asyncapi.yaml": "d5ecb9ee6114582be3b1f662c84bfac9ae96dae7bacb853e461168f70a8e1c7d",
9
9
  "api/grpc/openwop.proto": "c3e72bb17cba514ee98feb6434e6c9b6ea6795bfd086489ec69fd882dd1ad977",
10
10
  "api/openapi.yaml": "39081c59fb696159806b0f2f9a42e7e9ff830d622fcf2ad4159b21357580a955",
11
11
  "api/redocly.yaml": "b0604c89b2ca6d5076ec25725c539dad44a741a811fe524439ee6daef8baa09f",
12
- "api/seams-v2.yaml": "c630eb49d587cb3453b956ad7a7877b7afc7ce5730928df27b33b317736482c4",
13
- "api/v2/asyncapi.yaml": "ce6eac3ac2407ae8a56ea08d4b4cbeca5b3c5bf573beb7f716f0f07d97f2a752",
14
- "api/v2/openapi.yaml": "1e9a68170a184d71103a4dc03400f7f321c390042c00f42b1f2d9ebae50ff7ac",
12
+ "api/seams-v2.yaml": "ea8ac475df166b0c3ad47268819020eb247bb4d24a78798c5ffa725a91fefe78",
13
+ "api/v2/asyncapi.yaml": "6ad6a2c8415f26542fd7b9e0871457bbbfb910486faa50e982583a388651c48e",
14
+ "api/v2/openapi.yaml": "4a6d428b18eb95cd312d39944300714359e682513b8602e6ac7198fbfe7f46e4",
15
15
  "api/v2/redocly.yaml": "1e66b60e6118ad11a823bb620678be464d99dfe50a40e3e6f93ec9429b88b34c",
16
16
  "schemas/README.md": "0c0b737ffcf8f30e7d2809cec8a498232de710f41443212922ad8337cdde0b51",
17
17
  "schemas/a2a-task-state.schema.json": "c9365918f993f943b4b619d42551eb066a1ed33a08d895d51b395432a5b1f1bc",
@@ -98,7 +98,7 @@
98
98
  "schemas/trigger-subscription-registration.schema.json": "929d628bad08e1def696e47e9a148aba00fa801e28d49bbd0dc2360b08673435",
99
99
  "schemas/trigger-subscription.schema.json": "4f7b067f20032073b140c4bb15dc9a9914c4f6421a252ff1ff261cbdd8edf270",
100
100
  "schemas/ui-plugin-message.schema.json": "346638babf1f8ea7b161cde75c0038b518cd2cc5bf0631772e20a9b74c96b5dd",
101
- "schemas/v2/a2a-task-state.schema.json": "aa9bd0c15f653b7ecdb17427d61b1bccaf8156972c4b1a437dd3a8afb717b318",
101
+ "schemas/v2/a2a-task-state.schema.json": "e19e8770f2f9c77cb914eca181a5cd105f1fc8bd8ccffd821e36137bf3ba516e",
102
102
  "schemas/v2/a2ui-surface-delta-frame.schema.json": "6889c5da3fe7e76cb614038c0eea6774776fa640448558b258eb87fb50cb9b64",
103
103
  "schemas/v2/agent-deployment-transition.schema.json": "5fb65556576e3d8705a4834d6ab8ab47389123c40f206d39ba672bc03302c544",
104
104
  "schemas/v2/agent-deployment.schema.json": "5581fea8ed8bf99ff05c8df9d3cc007fa2b94a446e7a37a68ea73a513d55b6cd",
@@ -117,7 +117,7 @@
117
117
  "schemas/v2/budget-policy.schema.json": "c7449daeb6e1d95e7a047b8c2814d3d54748697c27046972834874867d9b5f4c",
118
118
  "schemas/v2/capabilities.schema.json": "fa9b80a9107fc322ecadbac808e7fbe5e16ccf0af1a6bf673181faa8379dde33",
119
119
  "schemas/v2/certification-bundle.schema.json": "d2cbc5cadddff13630a528dc9673162f582c035c6a6663ca02c1ac53e8fec40c",
120
- "schemas/v2/channel-presence-payload.schema.json": "9475d46f358d21c19126e78204987a5633979917a2293653354ef5c5e044d54e",
120
+ "schemas/v2/channel-presence-payload.schema.json": "1c20ad810cb311d47aa0b95d928490826b2468fd161f884cd29e867053e6782f",
121
121
  "schemas/v2/channel-written-payload.schema.json": "ccecff3c71a3275ad8db035ac0e04db25e6f8d23cf091ddbcd5a60d1be1cbb6b",
122
122
  "schemas/v2/chat-card-pack-manifest.schema.json": "8df0d9d273ae22efc6876d5586833f1d4c2e551edc3ac6cf6e8f0719329f03dd",
123
123
  "schemas/v2/compact-tool-descriptor.schema.json": "b5c418d72082d5b713bf318212a83397e5be98e56d25ca056302b41b8dd8273b",
@@ -126,7 +126,7 @@
126
126
  "schemas/v2/configurable.schema.json": "33a6884047e2490f723733bf8b74d3b9164e00374cfea6dc3eac5a70dc368861",
127
127
  "schemas/v2/connection-pack-manifest.schema.json": "7410a3011b28829b286e3ff764bdb283854dca69ea4b71a8441f8c1c4f1cc948",
128
128
  "schemas/v2/conversation-event.schema.json": "e87b7fb36ab4ca0afe9f77993654065b28b67e5f24b20175907f90e238942025",
129
- "schemas/v2/conversation-turn.schema.json": "4c24aa85dd83f6ad00945b4a13ee8ff0a071893e884011e9289a07e97d22989d",
129
+ "schemas/v2/conversation-turn.schema.json": "a15b43dc15dbcc6aaf216bfab7424c540b514d7e40e661a732384aad45387006",
130
130
  "schemas/v2/credential-provenance.schema.json": "f86b09e94b1c524dec7d1c6353965665ae8891e9517faef6e742d639c5578c99",
131
131
  "schemas/v2/credential-reference.schema.json": "ea699ce30f58fb2c32d4279158b3f730f70be7b2dc8c3037693a76e66eb3e001",
132
132
  "schemas/v2/debug-bundle.schema.json": "0bfa4b1d91fefbc12c95670dba9d5eacb72b879bb9a5c074e821ca9ed0fee6fd",
@@ -176,14 +176,14 @@
176
176
  "schemas/v2/run-orchestrator-decided-event.schema.json": "bb76e15ff72e669f12938684033b55dc567470e1a378e19ffc3fa0e4034ab5a7",
177
177
  "schemas/v2/run-snapshot.schema.json": "65a3c82220da2e1a54324665d517dc0e627225f3d37ef75b43bef3fb7e3bac0e",
178
178
  "schemas/v2/security-advisory.schema.json": "6a382f737730a738d634266315e9d335e5760020a0cdd9f30727c2f987a01770",
179
- "schemas/v2/self-hosted-runner-dispatch-frame.schema.json": "d8129f11d4e731d17ea951e66faaea2086081d13958b62ceaaa359fd6637dd7d",
179
+ "schemas/v2/self-hosted-runner-dispatch-frame.schema.json": "9524c3fcf2e195bb10b9561dea34eb2fbe49607b90d010efb0e4c9e36bf87842",
180
180
  "schemas/v2/self-hosted-runner-registration.schema.json": "93d60003a668cacb0eeac37699ca2884c6b79332d9494cb9e0a1752ac8f8a16c",
181
- "schemas/v2/self-hosted-runner-result-frame.schema.json": "5a427362073720fb0e7b4a76143210083c017cac63e27eb3a91289bc7a443aaf",
181
+ "schemas/v2/self-hosted-runner-result-frame.schema.json": "505b8e44c93bc4fd3c9fa73bbd7bd5b3d1a1a123f54096761fc0d0b210e5ec8a",
182
182
  "schemas/v2/subject-link.schema.json": "1fc941d6c14af886534009f2ffa6611e2035eb07e30b1df918c50d6bafff026c",
183
183
  "schemas/v2/subject.schema.json": "094e981fb20052a911393e219ea5f2065d8b8417b65080a70c5ea99fd960a8fe",
184
184
  "schemas/v2/suspend-request.schema.json": "4a0dda88a257cdb21c9b57fc9ad898d91de0d75bc4944a693eb950b709f58c91",
185
185
  "schemas/v2/tool-descriptor.schema.json": "658b18ef173e0f12d732f92d4866a9b3daeb8f88b493db8b025a577e09dd681c",
186
- "schemas/v2/trigger-event.schema.json": "7227fb9a130c33374fa8eab35e4448c4e8f22c962b8f271781cf4dbb5e4288b7",
186
+ "schemas/v2/trigger-event.schema.json": "66077c3b3d5b81591270655643ae8957c4c42aaf7cf31c45e8e45cb1b73fde63",
187
187
  "schemas/v2/trigger-subscription-registration.schema.json": "04bc314a07c7e8b565577cb8df5821d968ce2af915900dfdccd4a24e928d20db",
188
188
  "schemas/v2/trigger-subscription.schema.json": "c887d4b9a12be0133f8c9dfd3a8bafcb518e27ecc2e800447ebc4d1fef111503",
189
189
  "schemas/v2/ui-plugin-message.schema.json": "879d65867c01656b3962d64283e66364dcb8f626ad26c5fcf2d2d55a79ae0ce9",
@@ -200,7 +200,7 @@
200
200
  "schemas/workspace-file.schema.json": "464de85c2a068243084ee9c1d969bc7cd5d8f7948574e58450d6493c38a0e1e4",
201
201
  "spec/v1/alias-detectors.json": "e90916db12d2297e2e560b2d54d2c4702d6cb3bef7179a575844687a7ec17262",
202
202
  "spec/v1/capability-declaration-classes.json": "e7729aed5c4b4e1dd02abab0530f14cc95f5d4070fe51fb139e7f5cccefa00c6",
203
- "spec/v1/core-standard-manifest.json": "7b47c64730229681956af2a0cf2c9b8fe7ac641e590cf87a157e90fe49cd6678",
203
+ "spec/v1/core-standard-manifest.json": "2d78ebddc7b5142cefd5c2314bfee1502e7b3b6823cdeaf96fe2820cd82ee544",
204
204
  "spec/v1/deprecations.json": "c81c8f71460936c8d489d8270477c7661cf4a5d7b7bad86c98899750b5656027",
205
205
  "spec/v1/deprecations.schema.json": "18c87e78bedc210431f795ae44c5b5d202f2f3317850d5cf86867d4f1fa1cdfb",
206
206
  "spec/v1/event-codemap.json": "3da60d884157793a360da532a9fcbbfb5285636db325a74cec94b34622186d97",
@@ -219,7 +219,7 @@
219
219
  "spec/v2/core/errors.md": "ad85fc830139e587f20deabf88297b91b1fb6ce31e80d5442624a650246ab16e",
220
220
  "spec/v2/core/events.md": "f1bac16419740f3b722febb6f5caaabed8838e092cba3d080fe9184024049dcf",
221
221
  "spec/v2/core/form-content-packs.md": "6ffaae85d4550be48dd53fb6e2959af8aceb35bd87c5343b722885084f197713",
222
- "spec/v2/core/headers.md": "d79eb0babdd4a1a8689d40dd7f84c711c729092259b2afe859481a0902dd7342",
222
+ "spec/v2/core/headers.md": "6d56dca18fc5dfe3870a40863247a33f57bba3dad624200e9cf9fa9358df90b9",
223
223
  "spec/v2/core/idempotency.md": "b86c352d964aebad532727f314e26ed2177d49de382076fa64d3162e2f56118d",
224
224
  "spec/v2/core/identity.md": "9d2b823eb899463807452fe5721dcf09881837c161be024175957db27870b243",
225
225
  "spec/v2/core/interop.md": "d4c404e469e1d9d9be88bc2c939d777e7d7c1d0419b1251c18770f039838a401",
@@ -271,8 +271,8 @@
271
271
  "spec/v2/path-manifest.json": "a6f4e652e866889e8bde815874062f62929aee95dc8e58e7152c56adee262163",
272
272
  "spec/v2/peer-dependency-aliases.json": "d10299280abee08258502925bc327293ee413e0108cd6e6ec75ff6110653308d",
273
273
  "spec/v2/profiles.json": "0636f19fceae625390003a347e70ef4797d84766b5c24ce8a02cea52aadebca4",
274
- "spec/v2/release.json": "a6818de7c8879dc510a539c0c25f7bd06f489578f7454921504551cd1129dfea",
274
+ "spec/v2/release.json": "5452e872bc486fbf8aa970e8cd42333c05a48c31422ceb858f5142dbc30181a6",
275
275
  "spec/v2/retention-floors.json": "eaf3722d95c79947af1d4269ef85117e126518c588cfcf1a2b21b97269f51624"
276
276
  },
277
- "corpusCommit": "9e47426865890fef13e6c0759f428f0e8454ba83"
277
+ "corpusCommit": "bbdafa8e3a46a3c26d8fa0280d3fb541f9993d84"
278
278
  }