@openwop/openwop-conformance 2.46.8 → 2.46.10
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,3 +1,11 @@
|
|
|
1
|
+
## [2.46.10] — 2026-10-14 — RFC 0244 Accepted (provisional)
|
|
2
|
+
|
|
3
|
+
- **No assertion changes.** RFC 0244 flips to `Accepted` (provisional) on MyndHyve's certified 2.46.9 cut, so the packed `spec/v1/gaps.json` changes (G9, G10 and G11 close).
|
|
4
|
+
|
|
5
|
+
## [2.46.9] — 2026-10-14 — RFC 0244 §D: a fail-closed trial scores 0
|
|
6
|
+
|
|
7
|
+
- **`v2-eval-trajectory-trials` `0244.fixture-miss-fails`** also asserts `score: 0` on the missed task's summary entry and on each of its `eval.scored` events (RFC 0244 §D, amended in place). Both implementing hosts converged on the rule: without it, `passRule: "mean"` or the aggregate `passScore` could pass a suite whose trials all failed closed.
|
|
8
|
+
|
|
1
9
|
## [2.46.8] — 2026-10-14 — RFC 0244: eval trajectories, repeated trials, fail-closed fixture miss
|
|
2
10
|
|
|
3
11
|
- **New `v2-eval-trajectory-trials`:**
|
package/fixtures.md
CHANGED
|
@@ -1029,7 +1029,7 @@ Every task targets **the scripted agent `core.conformance.agents.scripted`**. It
|
|
|
1029
1029
|
| --- | --- | --- |
|
|
1030
1030
|
| `conformance-eval-trajectory` | `agents.evalSuite.trajectory` | each task's `trajectory` counts equal `lib/eval-trajectory.ts`'s grade of the script; an unmatched trajectory fails; a `kind: "trajectory"` task scores 1 or 0; the log carries one `agent.tool-called` per scripted call |
|
|
1031
1031
|
| `conformance-eval-trials` | `agents.evalSuite.trials` | `eval.started.trialCount: 3`; three `eval.scored` per task with `trialIndex` 0..2; the per-task `trials` block and `trialStats` equal the §B formulas. Without the facet: `400 validation_error` at `createRun` |
|
|
1032
|
-
| `conformance-eval-fixture-miss` | `agents.evalSuite.fixtureMatching` | `missed` reports `fixtureMissCount: 1` and `
|
|
1032
|
+
| `conformance-eval-fixture-miss` | `agents.evalSuite.fixtureMatching` | `missed` reports `fixtureMissCount: 1`, `passed: false` and `score: 0` (summary and every `eval.scored`); `served` passes with no miss. That no live tool ran is not observable here (RFC 0244 G2) |
|
|
1033
1033
|
|
|
1034
1034
|
## OAuth provider fixtures
|
|
1035
1035
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openwop/openwop-conformance",
|
|
3
|
-
"version": "2.46.
|
|
3
|
+
"version": "2.46.10",
|
|
4
4
|
"description": "Black-box conformance suite for OpenWOP hosts (v2 current; v1 scenarios retained for the frozen v1 tree).",
|
|
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.46.
|
|
59
|
+
"@openwop/spec-artifacts": "2.46.10"
|
|
60
60
|
}
|
|
61
61
|
}
|
package/requirements.json
CHANGED
|
@@ -31028,7 +31028,7 @@
|
|
|
31028
31028
|
{
|
|
31029
31029
|
"id": "openwop.it.v2-eval-trajectory-trials.the-rfc-0244-suite-summary-and-event-fields-validate-and-the-negatives-are-refus",
|
|
31030
31030
|
"file": "v2-eval-trajectory-trials.test.ts",
|
|
31031
|
-
"line":
|
|
31031
|
+
"line": 114,
|
|
31032
31032
|
"title": "the RFC 0244 suite, summary and event fields validate and the negatives are refused",
|
|
31033
31033
|
"explicitId": "openwop.requirement.0244.wire-shape",
|
|
31034
31034
|
"citations": [
|
|
@@ -31067,7 +31067,7 @@
|
|
|
31067
31067
|
{
|
|
31068
31068
|
"id": "openwop.it.v2-eval-trajectory-trials.the-rfc-0244-additions-are-content-free-eval-summary-no-content-leak",
|
|
31069
31069
|
"file": "v2-eval-trajectory-trials.test.ts",
|
|
31070
|
-
"line":
|
|
31070
|
+
"line": 137,
|
|
31071
31071
|
"title": "the RFC 0244 additions are content-free (eval-summary-no-content-leak)",
|
|
31072
31072
|
"explicitId": "openwop.requirement.0244.content-free",
|
|
31073
31073
|
"citations": [
|
|
@@ -31084,7 +31084,7 @@
|
|
|
31084
31084
|
{
|
|
31085
31085
|
"id": "openwop.it.v2-eval-trajectory-trials.the-eval-suite-fixtures-validate-against-the-v2-suite-schema",
|
|
31086
31086
|
"file": "v2-eval-trajectory-trials.test.ts",
|
|
31087
|
-
"line":
|
|
31087
|
+
"line": 144,
|
|
31088
31088
|
"title": "the eval-suite fixtures validate against the v2 suite schema",
|
|
31089
31089
|
"explicitId": "openwop.requirement.0244.fixtures-valid",
|
|
31090
31090
|
"citations": [
|
|
@@ -31098,7 +31098,7 @@
|
|
|
31098
31098
|
{
|
|
31099
31099
|
"id": "openwop.it.v2-eval-trajectory-trials.a-trajectory-suite-is-graded-per-the-reference-grader",
|
|
31100
31100
|
"file": "v2-eval-trajectory-trials.test.ts",
|
|
31101
|
-
"line":
|
|
31101
|
+
"line": 153,
|
|
31102
31102
|
"title": "a trajectory suite is graded per the reference grader",
|
|
31103
31103
|
"explicitId": "openwop.requirement.0244.trajectory-graded",
|
|
31104
31104
|
"citations": [
|
|
@@ -31132,7 +31132,7 @@
|
|
|
31132
31132
|
{
|
|
31133
31133
|
"id": "openwop.it.v2-eval-trajectory-trials.repeated-trials-emit-one-eval-scored-per-task-per-trial",
|
|
31134
31134
|
"file": "v2-eval-trajectory-trials.test.ts",
|
|
31135
|
-
"line":
|
|
31135
|
+
"line": 189,
|
|
31136
31136
|
"title": "repeated trials emit one eval.scored per task per trial",
|
|
31137
31137
|
"explicitId": "openwop.requirement.0244.trials-per-task",
|
|
31138
31138
|
"citations": [
|
|
@@ -31150,7 +31150,7 @@
|
|
|
31150
31150
|
{
|
|
31151
31151
|
"id": "openwop.it.v2-eval-trajectory-trials.the-per-task-trials-block-and-trialstats-follow-the-b-formulas",
|
|
31152
31152
|
"file": "v2-eval-trajectory-trials.test.ts",
|
|
31153
|
-
"line":
|
|
31153
|
+
"line": 200,
|
|
31154
31154
|
"title": "the per-task trials block and trialStats follow the §B formulas",
|
|
31155
31155
|
"explicitId": "openwop.requirement.0244.trial-stats-formula",
|
|
31156
31156
|
"citations": [
|
|
@@ -31189,7 +31189,7 @@
|
|
|
31189
31189
|
{
|
|
31190
31190
|
"id": "openwop.it.v2-eval-trajectory-trials.a-fixture-miss-under-onmiss-fail-fails-the-trial-and-is-counted",
|
|
31191
31191
|
"file": "v2-eval-trajectory-trials.test.ts",
|
|
31192
|
-
"line":
|
|
31192
|
+
"line": 223,
|
|
31193
31193
|
"title": "a fixture miss under onMiss \"fail\" fails the trial and is counted",
|
|
31194
31194
|
"explicitId": "openwop.requirement.0244.fixture-miss-fails",
|
|
31195
31195
|
"citations": [
|
|
@@ -31201,6 +31201,18 @@
|
|
|
31201
31201
|
"section": "agents.schema.json §evalSuite (RFC 0244)",
|
|
31202
31202
|
"requirement": "a miss under onMiss \"fail\" MUST fail the trial"
|
|
31203
31203
|
},
|
|
31204
|
+
{
|
|
31205
|
+
"section": "agents.schema.json §evalSuite (RFC 0244)",
|
|
31206
|
+
"requirement": "a trial that fails closed MUST report score 0 in the summary"
|
|
31207
|
+
},
|
|
31208
|
+
{
|
|
31209
|
+
"section": "agents.schema.json §evalSuite (RFC 0244)",
|
|
31210
|
+
"requirement": "the missed task MUST emit eval.scored"
|
|
31211
|
+
},
|
|
31212
|
+
{
|
|
31213
|
+
"section": "agents.schema.json §evalSuite (RFC 0244)",
|
|
31214
|
+
"requirement": "eval.scored for a trial that fails closed MUST carry score 0"
|
|
31215
|
+
},
|
|
31204
31216
|
{
|
|
31205
31217
|
"section": "agents.schema.json §evalSuite (RFC 0244)",
|
|
31206
31218
|
"requirement": "a served task MUST still pass"
|
|
@@ -31214,7 +31226,7 @@
|
|
|
31214
31226
|
{
|
|
31215
31227
|
"id": "openwop.it.v2-eval-trajectory-trials.a-suite-using-an-unadvertised-rfc-0244-feature-is-refused-at-createrun",
|
|
31216
31228
|
"file": "v2-eval-trajectory-trials.test.ts",
|
|
31217
|
-
"line":
|
|
31229
|
+
"line": 243,
|
|
31218
31230
|
"title": "a suite using an unadvertised RFC 0244 feature is refused at createRun",
|
|
31219
31231
|
"explicitId": "openwop.requirement.0244.unadvertised-feature-refused",
|
|
31220
31232
|
"citations": [
|
|
@@ -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.46.
|
|
5
|
-
"corpusTag": "v2.46.
|
|
4
|
+
"version": "2.46.10",
|
|
5
|
+
"corpusTag": "v2.46.10",
|
|
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": "ac6de5303872664b78ff419c035915593e01599e02835e777a0123de1baeb398",
|
|
11
11
|
"api/redocly.yaml": "b0604c89b2ca6d5076ec25725c539dad44a741a811fe524439ee6daef8baa09f",
|
|
12
|
-
"api/seams-v2.yaml": "
|
|
13
|
-
"api/v2/asyncapi.yaml": "
|
|
14
|
-
"api/v2/openapi.yaml": "
|
|
12
|
+
"api/seams-v2.yaml": "d432df92e9d6f9b5f507356bb055937dd5289e7b9f84b1c8ec64ac422bb36929",
|
|
13
|
+
"api/v2/asyncapi.yaml": "c7fb02dd90ca56745a8f1dc49f8808a74bc45fc5c7e6252f3724bb273904cf1b",
|
|
14
|
+
"api/v2/openapi.yaml": "780e4d7ba44543dd17647091837c1fa5978e658576c7c8ad6fcc105425a51b24",
|
|
15
15
|
"api/v2/redocly.yaml": "1e66b60e6118ad11a823bb620678be464d99dfe50a40e3e6f93ec9429b88b34c",
|
|
16
16
|
"schemas/README.md": "276fc1d51eb08e14e9127b9fd27761d7046ee33c12000f3a64a801322db8bf58",
|
|
17
17
|
"schemas/a2a-task-state.schema.json": "75d5049dea8bd873ff0e7546f1c60c8d36c219bec7084264360be54a8be30ae1",
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
"schemas/v2/a2ui-surface-delta-frame.schema.json": "6889c5da3fe7e76cb614038c0eea6774776fa640448558b258eb87fb50cb9b64",
|
|
104
104
|
"schemas/v2/agent-deployment-transition.schema.json": "93a334ff042d51378c89fdd7134664271bf9592419bb5e3e00821ed06bc1904e",
|
|
105
105
|
"schemas/v2/agent-deployment.schema.json": "d59b43fb62b522005ee22bc3bc53775a6777493e5e42d71812abc347625fa7fe",
|
|
106
|
-
"schemas/v2/agent-eval-suite.schema.json": "
|
|
106
|
+
"schemas/v2/agent-eval-suite.schema.json": "e80439bc6873a5d9a14122f81d16f7650104018d814bd316aafd3fc8b8225604",
|
|
107
107
|
"schemas/v2/agent-inventory-response.schema.json": "5f74c3da946dfc3114624567a989717748081ab947b4d2af3f49034d67f4306b",
|
|
108
108
|
"schemas/v2/agent-manifest.schema.json": "004ff150e955deebb9e64273de5093f5144b9b3895b09953e65aa74b61140778",
|
|
109
109
|
"schemas/v2/agent-org-chart.schema.json": "113b079e1dce95908467cbef7f83e076fdb82aab5b0678fc1a43e32bfc9cbadf",
|
|
@@ -145,7 +145,7 @@
|
|
|
145
145
|
"schemas/v2/envelopes/schema.response.schema.json": "d049a081267c06c28879c331b147f3ed821b14ccfd93005c67aff64db0a8c68e",
|
|
146
146
|
"schemas/v2/envelopes/ui.a2ui-surface.schema.json": "e92a2548ba65454c9e0a34f72ea6768d18f59e61fa5da7668d0b2d5baddaddc8",
|
|
147
147
|
"schemas/v2/error-envelope.schema.json": "8ddb1d80330dfef17572a74dfe3a53e1a06411e4b0af6a6f1dd6e7e7461da987",
|
|
148
|
-
"schemas/v2/eval-summary.schema.json": "
|
|
148
|
+
"schemas/v2/eval-summary.schema.json": "e670fad6c4c487f80edf3832ccd427b534b2066fbbc1cc2c158e205d6e7e3f6b",
|
|
149
149
|
"schemas/v2/export-bundle.schema.json": "bd28905a7729437ab7f2ad8bb33e13a371b2bf5605a7eb2962a0d246de312d69",
|
|
150
150
|
"schemas/v2/form-content-pack-manifest.schema.json": "a1942a124e250a6e9fbdb6b811c5a125e78fbcbcaa46dfc71d0636f24710a339",
|
|
151
151
|
"schemas/v2/frontend-plugin-manifest.schema.json": "b279da288d542906a72b8cb4e872e001de632eaff539e0259b9cce287f82bf8f",
|
|
@@ -174,7 +174,7 @@
|
|
|
174
174
|
"schemas/v2/residency.schema.json": "3fd23c9732beb140504e81560fc426eb6764d547e56da5fb92c5a5c7bf04db3a",
|
|
175
175
|
"schemas/v2/run-ancestry-response.schema.json": "334c17f2062dea62726ca1d07b8be3f169cdc422af843c1def5fb317039814c9",
|
|
176
176
|
"schemas/v2/run-diff-response.schema.json": "8bdb2045c274580038bd74781f7d062f5049839797c164a89de4ed89edc53a74",
|
|
177
|
-
"schemas/v2/run-event-payloads.schema.json": "
|
|
177
|
+
"schemas/v2/run-event-payloads.schema.json": "e21d0cb64cb969be32e49e87f3af418bacb40e8fcb515a848dfe7d9609d8d0b6",
|
|
178
178
|
"schemas/v2/run-event.schema.json": "2f0d7416bd376c56affe97b6b2b49981532e8e9ff45c0a162cf806c78b3e7fb7",
|
|
179
179
|
"schemas/v2/run-list-response.schema.json": "c2dbc34768dcf64528914a213aa3cb55952e8e3e90a64b04a9423b2a19749d38",
|
|
180
180
|
"schemas/v2/run-options.schema.json": "f0e9f494d80086c2ed2cf9fe87df54e5b4e66601699c4a1089f4edbc7ba58867",
|
|
@@ -208,14 +208,14 @@
|
|
|
208
208
|
"schemas/workspace-file.schema.json": "464de85c2a068243084ee9c1d969bc7cd5d8f7948574e58450d6493c38a0e1e4",
|
|
209
209
|
"spec/v1/alias-detectors.json": "22444c22bb88c568339ef512553f9fc38146e22b566d11ab8608f655d688d19c",
|
|
210
210
|
"spec/v1/capability-declaration-classes.json": "e7729aed5c4b4e1dd02abab0530f14cc95f5d4070fe51fb139e7f5cccefa00c6",
|
|
211
|
-
"spec/v1/core-standard-manifest.json": "
|
|
211
|
+
"spec/v1/core-standard-manifest.json": "ddfa3fb570b38ffa11ed013fcf56ee6ce6639f80030460a4589dc7de105da292",
|
|
212
212
|
"spec/v1/deprecations.json": "e723bc11d7272c71789ad1303bb7f21809a8a024abf57594f9d5c35dc199ece9",
|
|
213
213
|
"spec/v1/deprecations.schema.json": "3e393c405d2a41b467d8c5e3c468549078df1ce6a6d2588fc488097b95d9b55b",
|
|
214
214
|
"spec/v1/end-of-support.json": "35f0bf3b70fe78b16e2a2fd81a153fc27e703f6c16376c6fe7cdf1f4f2c4e6d4",
|
|
215
215
|
"spec/v1/event-codemap.json": "3da60d884157793a360da532a9fcbbfb5285636db325a74cec94b34622186d97",
|
|
216
216
|
"spec/v1/event-codemap.schema.json": "d05933b2e88103aff51a2f774df97b9bda065e0fc88dbd9b114cc47a32189174",
|
|
217
217
|
"spec/v1/extensions.json": "79a60754aa16cbdbdb604f8e5c00038af535a1690a4d07bd5ff7c38f0256a7bc",
|
|
218
|
-
"spec/v1/gaps.json": "
|
|
218
|
+
"spec/v1/gaps.json": "2fc8bb0c3196c62239a10dca000901b77d260b97776893f117eb5d8d144042a9",
|
|
219
219
|
"spec/v1/gaps.schema.json": "8fd83259f556553c9df0f53e7a82ca8c2a4771d471197f69b4e2ae0ceeacfd66",
|
|
220
220
|
"spec/v1/migrations.json": "4c50760be70cb644d02427bcaf5749606700edf4513f423903cf3b1d12f5c300",
|
|
221
221
|
"spec/v1/migrations.schema.json": "886779aa6c22e646db097f5df210adb018a4dd14a7b815465a18c8a7056c8f72",
|
|
@@ -313,9 +313,9 @@
|
|
|
313
313
|
"spec/v2/path-manifest.json": "7b5679a4dad98c80d855361d88a98c8a4e045af15e310862a05b285b815dc9fc",
|
|
314
314
|
"spec/v2/peer-dependency-aliases.json": "d10299280abee08258502925bc327293ee413e0108cd6e6ec75ff6110653308d",
|
|
315
315
|
"spec/v2/profiles.json": "b382b261c7844798575f7c1b37c934f0da19846016a2337d883d4f5ef6e05479",
|
|
316
|
-
"spec/v2/release.json": "
|
|
316
|
+
"spec/v2/release.json": "481c91e5b8cc4965a426e8d946f11c8831192f5c02b3d01295d89a98ff0b0e2a",
|
|
317
317
|
"spec/v2/retention-floors.json": "eaf3722d95c79947af1d4269ef85117e126518c588cfcf1a2b21b97269f51624",
|
|
318
|
-
"spec/v2/surface-baseline.json": "
|
|
318
|
+
"spec/v2/surface-baseline.json": "f774b4481aea140f0b9f5b83474ab216763d5fa089e4c7567c830b84a163b4d8"
|
|
319
319
|
},
|
|
320
|
-
"corpusCommit": "
|
|
320
|
+
"corpusCommit": "b5d6f3aa9cdc0a1f4f3fd705c57842b8c1443ff2"
|
|
321
321
|
}
|
|
@@ -25,7 +25,8 @@
|
|
|
25
25
|
* `eval.scored` per task per trial with contiguous `trialIndex`, and the
|
|
26
26
|
* per-task `trials` block and `trialStats` equal the §B formulas.
|
|
27
27
|
* 5. `conformance-eval-fixture-miss` — the missed task reports
|
|
28
|
-
* `fixtureMissCount: 1
|
|
28
|
+
* `fixtureMissCount: 1`, `passed: false` and `score: 0` (summary and
|
|
29
|
+
* every `eval.scored`); the served one passes.
|
|
29
30
|
* That no live tool ran is seam-gated (RFC 0244 G2) and not asserted.
|
|
30
31
|
* 6. Refusal — a host advertising `agents.evalSuite` without `trials` that
|
|
31
32
|
* lists `conformance-eval-trials` refuses it at createRun with
|
|
@@ -231,6 +232,10 @@ describe('v2 RFC 0244 — host behaviour', () => {
|
|
|
231
232
|
const served = taskEntry(o.summary, 'served');
|
|
232
233
|
expect(missed?.['fixtureMissCount'], req(ID_MISS, DOC, 'the missed task MUST report fixtureMissCount 1')).toBe(1);
|
|
233
234
|
expect(missed?.['passed'], req(ID_MISS, DOC, 'a miss under onMiss "fail" MUST fail the trial')).toBe(false);
|
|
235
|
+
expect(missed?.['score'], req(ID_MISS, DOC, 'a trial that fails closed MUST report score 0 in the summary')).toBe(0);
|
|
236
|
+
const missedScored = o.events.filter((e) => e.type === 'eval.scored' && e.payload['taskId'] === 'missed');
|
|
237
|
+
expect(missedScored.length, req(ID_MISS, DOC, 'the missed task MUST emit eval.scored')).toBeGreaterThan(0);
|
|
238
|
+
for (const e of missedScored) expect(e.payload['score'], req(ID_MISS, DOC, 'eval.scored for a trial that fails closed MUST carry score 0')).toBe(0);
|
|
234
239
|
expect(served?.['passed'], req(ID_MISS, DOC, 'a served task MUST still pass')).toBe(true);
|
|
235
240
|
expect(served?.['fixtureMissCount'] ?? 0, req(ID_MISS, DOC, 'a served task MUST NOT report a miss')).toBe(0);
|
|
236
241
|
});
|