{"schemaVersion":1,"reviewedOn":"2026-10-18","sourceRevision":"294ac9be","counting":"Workflow facets structure existing contracts and are not added to the catalog support denominator. Catalog slices link bounded receipts; gap facets never inherit those matches. Overlapping capability IDs count once.","profilePolicy":"API67 recorded reference fixtures are independent profiles. Standard versus custom objects, single versus multiple principals, API68 and CLI versions are not a Cartesian product of verified combinations. Read linked evidence environments and qualifiers.","excludedInterfaces":["Native browser authoring/rendering (separate acceptance)","OAuth and general permission composition (separate catalogs; API enforcement cross-referenced)","Streaming, Pub/Sub, Connect/Chatter, Analytics and product APIs (separate families)","General Enterprise/Partner SOAP data services (not implemented)","Hosted performance, provider scheduling and production limits (not established)"],"areas":[{"id":"rest-records","title":"REST records and transport","routes":["GET /services/data/","GET /services/data/v{version}/sobjects/{object}/describe","POST /services/data/v{version}/sobjects/{object}","GET|PATCH|DELETE /services/data/v{version}/sobjects/{object}/{id}","GET|PATCH /services/data/v{version}/sobjects/{object}/{externalIdField}/{value}"],"routeNotice":"Implemented dispatch patterns only; individual methods and variants remain bounded by the linked slices and gaps. UI API layouts/record-ui/lookups/actions and general Partner/Enterprise SOAP data methods are missing in this baseline."},{"id":"rest-query-search","title":"REST query and search","routes":["GET /services/data/v{version}/query?q=...","GET /services/data/v{version}/queryAll?q=...","GET /services/data/v{version}/query/{locator}","GET /services/data/v{version}/search?q=..."],"routeNotice":"Implemented dispatch patterns only; individual methods and variants remain bounded by the linked slices and gaps. UI API layouts/record-ui/lookups/actions and general Partner/Enterprise SOAP data methods are missing in this baseline."},{"id":"composite","title":"Composite, batch, collections and tree","routes":["POST /services/data/v{version}/composite","POST /services/data/v{version}/composite/batch","POST /services/data/v{version}/composite/graph","POST|PATCH|DELETE|GET /services/data/v{version}/composite/sobjects","POST /services/data/v{version}/composite/tree/{object}"],"routeNotice":"Implemented dispatch patterns only; individual methods and variants remain bounded by the linked slices and gaps. UI API layouts/record-ui/lookups/actions and general Partner/Enterprise SOAP data methods are missing in this baseline."},{"id":"bulk2","title":"Bulk API 2.0","routes":["POST|GET /services/data/v{version}/jobs/{ingest|query}","GET|PATCH|DELETE /services/data/v{version}/jobs/{kind}/{id}","PUT /services/data/v{version}/jobs/ingest/{id}/batches","GET /services/data/v{version}/jobs/ingest/{id}/{successfulResults|failedResults|unprocessedrecords}","GET /services/data/v{version}/jobs/query/{id}/results"],"routeNotice":"Implemented dispatch patterns only; individual methods and variants remain bounded by the linked slices and gaps. UI API layouts/record-ui/lookups/actions and general Partner/Enterprise SOAP data methods are missing in this baseline."},{"id":"bulk1","title":"Bulk API 1.0","routes":["POST /services/async/{version}/job","GET|POST /services/async/{version}/job/{id}","POST|GET /services/async/{version}/job/{id}/batch","GET /services/async/{version}/job/{id}/batch/{batchId}/{request|result}","GET /services/async/{version}/job/{id}/batch/{batchId}/result/{resultId}"],"routeNotice":"Implemented dispatch patterns only; individual methods and variants remain bounded by the linked slices and gaps. UI API layouts/record-ui/lookups/actions and general Partner/Enterprise SOAP data methods are missing in this baseline."},{"id":"graphql","title":"GraphQL","routes":["POST /services/data/v{version}/graphql"],"routeNotice":"Implemented dispatch patterns only; individual methods and variants remain bounded by the linked slices and gaps. UI API layouts/record-ui/lookups/actions and general Partner/Enterprise SOAP data methods are missing in this baseline."},{"id":"tooling","title":"Tooling lifecycle","routes":["GET /services/data/v{version}/tooling/query?q=...","POST|GET|PATCH|DELETE /services/data/v{version}/tooling/sobjects/{type}[/{id}]","GET /services/data/v{version}/tooling/executeAnonymous","POST /services/data/v{version}/tooling/runTestsAsynchronous","GET /services/data/v{version}/tooling/sobjects/ApexLog/{id}/Body"],"routeNotice":"Implemented dispatch patterns only; individual methods and variants remain bounded by the linked slices and gaps. UI API layouts/record-ui/lookups/actions and general Partner/Enterprise SOAP data methods are missing in this baseline."},{"id":"ui-api","title":"UI API resources","routes":["GET /services/data/v{version}/ui-api/object-info/{object}","GET /services/data/v{version}/ui-api/object-info/batch/{objects}","GET /services/data/v{version}/ui-api/object-info/{object}/picklist-values/{recordTypeId}[/{field}]","POST|GET|PATCH|DELETE /services/data/v{version}/ui-api/records[/{id}]","GET /services/data/v{version}/ui-api/list-records/{object}/{view}"],"routeNotice":"Implemented dispatch patterns only; individual methods and variants remain bounded by the linked slices and gaps. UI API layouts/record-ui/lookups/actions and general Partner/Enterprise SOAP data methods are missing in this baseline."},{"id":"metadata-cli-soap","title":"Metadata, CLI and SOAP cross-references","routes":["POST /services/Soap/m/{version} (Metadata)","POST /services/Soap/s/{version} (Apex executeAnonymous)","POST /services/Soap/u/{version} (selected Partner operations)","POST /services/Soap/class/{class} (authored Apex services)","sf CLI recipes: docs/CLI_INTEROPERABILITY.md"],"routeNotice":"Implemented dispatch patterns only; individual methods and variants remain bounded by the linked slices and gaps. UI API layouts/record-ui/lookups/actions and general Partner/Enterprise SOAP data methods are missing in this baseline."}],"workflows":[{"id":"rest.api-version-discovery","area":"rest-records","title":"API version discovery","kind":"catalog-slice","capabilityIds":["rest.api-version-discovery"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-RUNTIME-001","VO-CLI-001","VO-DIFF-700","VO-REST-100"],"evidenceIds":["EV-rest.api-version-discovery-9366705"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"31.0-68.0 and Latest Release as observed October17; API67 remains the schema profile; Differential match is profile-bound; broader parity unverified; October17 discovery advertises31.0-68.0 plus Latest Release (39 entries); implemented as a dated discovery profile. The schema/reference API remains67.0; advertising a release does not establish all its resources or contracts.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: 31.0-68.0 and Latest Release as observed October17; API67 remains the schema profile; Differential match is profile-bound; broader parity unverified; October17 discovery advertises31.0-68.0 plus Latest Release (39 entries); implemented as a dated discovery profile. The schema/reference API remains67.0; advertising a release does not establish all its resources or contracts.","localChecks":[{"id":"VO-RUNTIME-001","status":"passed"},{"id":"VO-CLI-001","status":"not-run"},{"id":"VO-DIFF-700","status":"not-run"},{"id":"VO-REST-100","status":"passed"}],"contracts":[{"id":"rest.api-version-discovery","slug":"rest--api-version-discovery","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-RUNTIME-001","file":"tests/runtime.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"[VO-RUNTIME-001] serves Salesforce-shaped discovery and error envelopes without credentials","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":3},{"id":"VO-CLI-001","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-001] logs in with sf org login access-token and displays the org","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-001] logs in with sf org login access-token and displays the org","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":51},{"id":"VO-DIFF-700","file":"integration/reference-api3.test.ts","layer":"integration","line":15},{"id":"VO-REST-100","file":"tests/api3.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"REST protocol (third API wave) [VO-REST-100] answers retired API versions with 410 GONE and unknown ones with NOT_FOUND","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":109},{"id":"VO-DRIFT-001","file":"integration/reference-release-drift.test.ts","layer":"integration","line":47},{"id":"VO-RESTDRIFT-001","file":"tests/rest-release-drift.test.ts","layer":"unit","sinceVersion":"0.7.25","observations":[{"profile":"unit","status":"passed","fullName":"[VO-RESTDRIFT-001] advertises the recorded Winter27 inventory while retaining the API67 schema profile","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":8}],"qualifiers":["31.0-68.0 and Latest Release as observed October17; API67 remains the schema profile","Differential match is profile-bound; broader parity unverified","October17 discovery advertises31.0-68.0 plus Latest Release (39 entries); implemented as a dated discovery profile. The schema/reference API remains67.0; advertising a release does not establish all its resources or contracts."],"evidence":[{"id":"EV-rest.api-version-discovery-9366705","kind":"differential-test","result":"pass","capabilityId":"rest.api-version-discovery","recipe":"VIRTUALORG_TEST_RELEASE_DRIFT=1 pnpm test:integration integration/reference-release-drift.test.ts plus the unchanged broad replay with its dated successor case; compare tests/compatibility/reference/2026-10-18-api-discovery-successor-api67.0.json","fixtureDigest":"sha256:79ac3849955cbc25f51df6fb805da554e715e2f5d3d532c8e4952e36cc1b6ce8","revision":"93667050048d8788c658b39cb4514401376d0923","recordedAt":"2026-10-18","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Dated API67 observations with October17/18 successor comparisons; original receipts remain preserved."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"93667050048d8788c658b39cb4514401376d0923","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.services-root","area":"rest-records","title":"Services root","kind":"catalog-slice","capabilityIds":["rest.services-root"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-700","VO-REST-100"],"evidenceIds":["EV-rest.services-root-9366705"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"GET /services/data and /services/data/ list31.0-68.0 plus latest without a session; other methods answer405 (Allow: HEAD,GET); Differential match is profile-bound; broader parity unverified; Both unauthenticated GET inventory forms include68.0/latest as recorded October17; method restrictions remain. The latest alias and every version-specific resource are not claimed implemented by discovery.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: GET /services/data and /services/data/ list31.0-68.0 plus latest without a session; other methods answer405 (Allow: HEAD,GET); Differential match is profile-bound; broader parity unverified; Both unauthenticated GET inventory forms include68.0/latest as recorded October17; method restrictions remain. The latest alias and every version-specific resource are not claimed implemented by discovery.","localChecks":[{"id":"VO-DIFF-700","status":"not-run"},{"id":"VO-REST-100","status":"passed"}],"contracts":[{"id":"rest.services-root","slug":"rest--services-root","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-700","file":"integration/reference-api3.test.ts","layer":"integration","line":15},{"id":"VO-REST-100","file":"tests/api3.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"REST protocol (third API wave) [VO-REST-100] answers retired API versions with 410 GONE and unknown ones with NOT_FOUND","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":109},{"id":"VO-DRIFT-001","file":"integration/reference-release-drift.test.ts","layer":"integration","line":47},{"id":"VO-RESTDRIFT-001","file":"tests/rest-release-drift.test.ts","layer":"unit","sinceVersion":"0.7.25","observations":[{"profile":"unit","status":"passed","fullName":"[VO-RESTDRIFT-001] advertises the recorded Winter27 inventory while retaining the API67 schema profile","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":8}],"qualifiers":["GET /services/data and /services/data/ list31.0-68.0 plus latest without a session; other methods answer405 (Allow: HEAD,GET)","Differential match is profile-bound; broader parity unverified","Both unauthenticated GET inventory forms include68.0/latest as recorded October17; method restrictions remain. The latest alias and every version-specific resource are not claimed implemented by discovery."],"evidence":[{"id":"EV-rest.services-root-9366705","kind":"differential-test","result":"pass","capabilityId":"rest.services-root","recipe":"VIRTUALORG_TEST_RELEASE_DRIFT=1 pnpm test:integration integration/reference-release-drift.test.ts plus the unchanged broad replay with its dated successor case; compare tests/compatibility/reference/2026-10-18-api-discovery-successor-api67.0.json","fixtureDigest":"sha256:79ac3849955cbc25f51df6fb805da554e715e2f5d3d532c8e4952e36cc1b6ce8","revision":"93667050048d8788c658b39cb4514401376d0923","recordedAt":"2026-10-18","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Dated API67 observations with October17/18 successor comparisons; original receipts remain preserved."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"93667050048d8788c658b39cb4514401376d0923","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.resource-discovery","area":"rest-records","title":"Resource discovery","kind":"catalog-slice","capabilityIds":["rest.resource-discovery"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/rest.ts"],"localTestIds":["VO-E2E-011","VO-DIFF-700"],"evidenceIds":["EV-rest.resource-discovery-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Resource map keys recorded at 31.0 and 67.0 (versions in between reuse the 67.0 keys, unverified); identity points at this instance's /id URL; most listed resources answer NOT_FOUND; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Resource map keys recorded at 31.0 and 67.0 (versions in between reuse the 67.0 keys, unverified); identity points at this instance's /id URL; most listed resources answer NOT_FOUND; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-E2E-011","status":"not-run"},{"id":"VO-DIFF-700","status":"not-run"}],"contracts":[{"id":"rest.resource-discovery","slug":"rest--resource-discovery","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-E2E-011","file":"integration/org.test.ts","layer":"integration","line":193},{"id":"VO-DIFF-700","file":"integration/reference-api3.test.ts","layer":"integration","line":15}],"qualifiers":["Resource map keys recorded at 31.0 and 67.0 (versions in between reuse the 67.0 keys, unverified); identity points at this instance's /id URL; most listed resources answer NOT_FOUND","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.resource-discovery-685ab1e","kind":"differential-test","result":"pass","capabilityId":"rest.resource-discovery","recipe":"pnpm test:integration / pnpm test (VO-DIFF-700) against tests/compatibility/reference/2026-10-07-api3-api67.0.json","fixtureDigest":"sha256:ec1c80d2345e6d2fa1922b0254f9c717674928b6db2513a0f1a7a2558725bbee","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.limits-endpoint","area":"rest-records","title":"Limits endpoint","kind":"catalog-slice","capabilityIds":["rest.limits-endpoint"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/rest.ts","packages/runtime/src/standard/limits.json"],"localTestIds":["VO-E2E-011","VO-DIFF-327"],"evidenceIds":["EV-rest.limits-endpoint-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Subset of limits; Maxima recorded from the reference environment; Remaining equals Max except DataStorageMB; Differential match is profile-bound; broader parity unverified; Fresh October 17 REST/CLI observations add DailyDataCloudCursorLimit, DailyDataCloudCursorRowsLimit and DailyDataCloudFlexCredits; the older pinned inventory does not establish these counters or their maxima.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Subset of limits; Maxima recorded from the reference environment; Remaining equals Max except DataStorageMB; Differential match is profile-bound; broader parity unverified; Fresh October 17 REST/CLI observations add DailyDataCloudCursorLimit, DailyDataCloudCursorRowsLimit and DailyDataCloudFlexCredits; the older pinned inventory does not establish these counters or their maxima.","localChecks":[{"id":"VO-E2E-011","status":"not-run"},{"id":"VO-DIFF-327","status":"not-run"}],"contracts":[{"id":"rest.limits-endpoint","slug":"rest--limits-endpoint","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-E2E-011","file":"integration/org.test.ts","layer":"integration","line":193},{"id":"VO-DIFF-327","file":"integration/reference-api.test.ts","layer":"integration","line":17}],"qualifiers":["Subset of limits","Maxima recorded from the reference environment; Remaining equals Max except DataStorageMB","Differential match is profile-bound; broader parity unverified","Fresh October 17 REST/CLI observations add DailyDataCloudCursorLimit, DailyDataCloudCursorRowsLimit and DailyDataCloudFlexCredits; the older pinned inventory does not establish these counters or their maxima."],"evidence":[{"id":"EV-rest.limits-endpoint-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.limits-endpoint","recipe":"pnpm test:integration / pnpm test (VO-DIFF-327) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.sobject-describe-endpoints","area":"rest-records","title":"sObject describe endpoints","kind":"catalog-slice","capabilityIds":["rest.sobject-describe-endpoints"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/rest.ts"],"localTestIds":["VO-DIFF-001","VO-CLI-003","VO-DIFF-718"],"evidenceIds":["EV-rest.sobject-describe-endpoints-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference; sObject basic information and describe keys as recorded for custom objects; describe/{unknown} is NOT_FOUND and POST answers 405; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference; sObject basic information and describe keys as recorded for custom objects; describe/{unknown} is NOT_FOUND and POST answers 405; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-001","status":"not-run"},{"id":"VO-CLI-003","status":"not-run"},{"id":"VO-DIFF-718","status":"not-run"}],"contracts":[{"id":"rest.sobject-describe-endpoints","slug":"rest--sobject-describe-endpoints","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-001","file":"integration/reference.test.ts","layer":"integration","line":37},{"id":"VO-CLI-003","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-003] describes and lists sObjects including deployed custom objects","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-003] describes and lists sObjects including deployed custom objects","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":74},{"id":"VO-DIFF-718","file":"integration/reference-api3.test.ts","layer":"integration","line":32}],"qualifiers":["Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference","sObject basic information and describe keys as recorded for custom objects; describe/{unknown} is NOT_FOUND and POST answers 405","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.sobject-describe-endpoints-685ab1e","kind":"differential-test","result":"pass","capabilityId":"rest.sobject-describe-endpoints","recipe":"pnpm test:integration / pnpm test (VO-DIFF-718) against tests/compatibility/reference/2026-10-07-api3-api67.0.json","fixtureDigest":"sha256:ec1c80d2345e6d2fa1922b0254f9c717674928b6db2513a0f1a7a2558725bbee","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.org-identity-discovery","area":"rest-records","title":"Org identity discovery","kind":"catalog-slice","capabilityIds":["rest.org-identity-discovery"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/records.ts"],"localTestIds":["VO-DIFF-701","VO-REST-103"],"evidenceIds":["EV-rest.org-identity-discovery-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"/services/oauth2/userinfo and /id/{org}/{user} with the recorded keys; URLs point at this instance; photo URLs are placeholders; utcOffset is the zone's standard offset; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: /services/oauth2/userinfo and /id/{org}/{user} with the recorded keys; URLs point at this instance; photo URLs are placeholders; utcOffset is the zone's standard offset; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-701","status":"not-run"},{"id":"VO-REST-103","status":"passed"}],"contracts":[{"id":"rest.org-identity-discovery","slug":"rest--org-identity-discovery","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-701","file":"integration/reference-api3.test.ts","layer":"integration","line":16},{"id":"VO-REST-103","file":"tests/api3.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"REST protocol (third API wave) [VO-REST-103] reports identity utcOffset as the zone's standard (non-daylight-saving) offset","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":146}],"qualifiers":["/services/oauth2/userinfo and /id/{org}/{user} with the recorded keys; URLs point at this instance; photo URLs are placeholders; utcOffset is the zone's standard offset","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.org-identity-discovery-685ab1e","kind":"differential-test","result":"pass","capabilityId":"rest.org-identity-discovery","recipe":"pnpm test:integration / pnpm test (VO-DIFF-701) against tests/compatibility/reference/2026-10-07-api3-api67.0.json","fixtureDigest":"sha256:ec1c80d2345e6d2fa1922b0254f9c717674928b6db2513a0f1a7a2558725bbee","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.sobject-collection-endpoint","area":"composite","title":"sObject collection endpoint","kind":"catalog-slice","capabilityIds":["rest.sobject-collection-endpoint"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/rest.ts"],"localTestIds":["VO-E2E-005","VO-E2E-006","VO-DIFF-015","VO-DIFF-324"],"evidenceIds":["EV-rest.sobject-collection-endpoint-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Not yet differentially compared against the reference beyond the cited cases; Create, update, upsert by external ID or idLookup field, retrieve (GET and POST) and delete with allOrNone; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Not yet differentially compared against the reference beyond the cited cases; Create, update, upsert by external ID or idLookup field, retrieve (GET and POST) and delete with allOrNone; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-E2E-005","status":"not-run"},{"id":"VO-E2E-006","status":"not-run"},{"id":"VO-DIFF-015","status":"not-run"},{"id":"VO-DIFF-324","status":"not-run"}],"contracts":[{"id":"rest.sobject-collection-endpoint","slug":"rest--sobject-collection-endpoint","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-E2E-005","file":"integration/org.test.ts","layer":"integration","line":66},{"id":"VO-E2E-006","file":"integration/org.test.ts","layer":"integration","line":82},{"id":"VO-DIFF-015","file":"integration/reference-standard.test.ts","layer":"integration","line":29},{"id":"VO-DIFF-324","file":"integration/reference-api.test.ts","layer":"integration","line":14}],"qualifiers":["Not yet differentially compared against the reference beyond the cited cases","Create, update, upsert by external ID or idLookup field, retrieve (GET and POST) and delete with allOrNone","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.sobject-collection-endpoint-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.sobject-collection-endpoint","recipe":"pnpm test:integration / pnpm test (VO-DIFF-324) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.sobject-record-endpoints","area":"rest-records","title":"sObject record endpoints","kind":"catalog-slice","capabilityIds":["rest.sobject-record-endpoints"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-002","VO-CLI-002","VO-DIFF-014","VO-DIFF-010"],"evidenceIds":["EV-rest.sobject-record-endpoints-2026-10-06"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-002","status":"not-run"},{"id":"VO-CLI-002","status":"not-run"},{"id":"VO-DIFF-014","status":"not-run"},{"id":"VO-DIFF-010","status":"not-run"}],"contracts":[{"id":"rest.sobject-record-endpoints","slug":"rest--sobject-record-endpoints","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-002","file":"integration/reference.test.ts","layer":"integration","line":38},{"id":"VO-CLI-002","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":59},{"id":"VO-DIFF-014","file":"integration/reference-standard.test.ts","layer":"integration","line":28},{"id":"VO-DIFF-010","file":"integration/reference-standard.test.ts","layer":"integration","line":24},{"id":"VO-NATIVEQUERY-004","file":"integration/native-query-locality.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"[VO-NATIVEQUERY-004] stamps an exact native object batch without reading the org-wide projection and rolls back its view state","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":98}],"qualifiers":["Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.sobject-record-endpoints-2026-10-06","kind":"differential-test","result":"pass","capabilityId":"rest.sobject-record-endpoints","recipe":"pnpm test:integration (integration/reference*.test.ts: VO-DIFF-002, VO-DIFF-014) against tests/compatibility/reference/2026-10-06-standard-api67.0.json","fixtureDigest":"sha256:853cb9232c423d17caf23f1f9abc1680f9a573cc23e1b284f4e8c2bd8796ff14","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts captured 2026-10-06 (RES-REF-001)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.external-id-endpoint","area":"rest-records","title":"External ID endpoint","kind":"catalog-slice","capabilityIds":["rest.external-id-endpoint"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-020"],"evidenceIds":["EV-rest.external-id-endpoint-cf693b4"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"GET and PATCH by external ID; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: GET and PATCH by external ID; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-020","status":"not-run"}],"contracts":[{"id":"rest.external-id-endpoint","slug":"rest--external-id-endpoint","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-020","file":"integration/reference-behavior.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"Reference API 67.0 behavior differential [VO-DIFF-020] upsert and lookup by external ID match the reference","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":26}],"qualifiers":["GET and PATCH by external ID","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.external-id-endpoint-cf693b4","kind":"differential-test","result":"pass","capabilityId":"rest.external-id-endpoint","recipe":"pnpm test:integration / pnpm test (VO-DIFF-020) against tests/compatibility/reference/2026-10-06-behavior-api67.0.json","fixtureDigest":"sha256:27dfe2827201a01dfd5337fe45ce10dd2512e05e4aeeb089f52ed5749401bb98","revision":"cf693b48f89b1b60582e79bf0395e1da6d01bece","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"cf693b48f89b1b60582e79bf0395e1da6d01bece","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.relationship-endpoints","area":"rest-records","title":"Relationship endpoints","kind":"catalog-slice","capabilityIds":["rest.relationship-endpoints"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-710"],"evidenceIds":["EV-rest.relationship-endpoints-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Child relationship URLs answer a query result (GET only, fields parameter honored); parent relationship URLs pass GET, PATCH and DELETE to the parent record; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Child relationship URLs answer a query result (GET only, fields parameter honored); parent relationship URLs pass GET, PATCH and DELETE to the parent record; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-710","status":"not-run"}],"contracts":[{"id":"rest.relationship-endpoints","slug":"rest--relationship-endpoints","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-710","file":"integration/reference-api3.test.ts","layer":"integration","line":24}],"qualifiers":["Child relationship URLs answer a query result (GET only, fields parameter honored); parent relationship URLs pass GET, PATCH and DELETE to the parent record","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.relationship-endpoints-685ab1e","kind":"differential-test","result":"pass","capabilityId":"rest.relationship-endpoints","recipe":"pnpm test:integration / pnpm test (VO-DIFF-710) against tests/compatibility/reference/2026-10-07-api3-api67.0.json","fixtureDigest":"sha256:ec1c80d2345e6d2fa1922b0254f9c717674928b6db2513a0f1a7a2558725bbee","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.sobject-tree","area":"composite","title":"sObject tree","kind":"catalog-slice","capabilityIds":["rest.sobject-tree"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/rest.ts"],"localTestIds":["VO-CLI-005","VO-DIFF-326","VO-CLI-105"],"evidenceIds":["EV-rest.sobject-tree-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Not yet differentially compared against the reference beyond the cited cases; Results list parents before children; 200-record, reference-ID and entity-type validation as recorded; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Not yet differentially compared against the reference beyond the cited cases; Results list parents before children; 200-record, reference-ID and entity-type validation as recorded; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-005","status":"not-run"},{"id":"VO-DIFF-326","status":"not-run"},{"id":"VO-CLI-105","status":"not-run"}],"contracts":[{"id":"rest.sobject-tree","slug":"rest--sobject-tree","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-005","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-005] imports a record tree and deletes a record","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-005] imports a record tree and deletes a record","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":87},{"id":"VO-DIFF-326","file":"integration/reference-api.test.ts","layer":"integration","line":16},{"id":"VO-CLI-105","file":"integration/sf-cli-api.test.ts","layer":"integration","line":62}],"qualifiers":["Not yet differentially compared against the reference beyond the cited cases","Results list parents before children; 200-record, reference-ID and entity-type validation as recorded","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.sobject-tree-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.sobject-tree","recipe":"pnpm test:integration / pnpm test (VO-DIFF-326, VO-CLI-105) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.composite-requests","area":"composite","title":"Composite requests","kind":"catalog-slice","capabilityIds":["rest.composite-requests"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/rest.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-320","VO-DIFF-322"],"evidenceIds":["EV-rest.composite-requests-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"References @{id.path} in URLs and bodies; 25 subrequests, 5 query/collection subrequests; supported resources are sObjects, query and collections; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: References @{id.path} in URLs and bodies; 25 subrequests, 5 query/collection subrequests; supported resources are sObjects, query and collections; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-320","status":"not-run"},{"id":"VO-DIFF-322","status":"not-run"}],"contracts":[{"id":"rest.composite-requests","slug":"rest--composite-requests","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-320","file":"integration/reference-api.test.ts","layer":"integration","line":10},{"id":"VO-DIFF-322","file":"integration/reference-api.test.ts","layer":"integration","line":12}],"qualifiers":["References @{id.path} in URLs and bodies; 25 subrequests, 5 query/collection subrequests; supported resources are sObjects, query and collections","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.composite-requests-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.composite-requests","recipe":"pnpm test:integration / pnpm test (VO-DIFF-320, VO-DIFF-322) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.composite-graph","area":"composite","title":"Composite graph","kind":"catalog-slice","capabilityIds":["rest.composite-graph"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/rest.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-325"],"evidenceIds":["EV-rest.composite-graph-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Each graph is all-or-none; node and depth limits not enforced; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Each graph is all-or-none; node and depth limits not enforced; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-325","status":"not-run"}],"contracts":[{"id":"rest.composite-graph","slug":"rest--composite-graph","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-325","file":"integration/reference-api.test.ts","layer":"integration","line":15}],"qualifiers":["Each graph is all-or-none; node and depth limits not enforced","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.composite-graph-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.composite-graph","recipe":"pnpm test:integration / pnpm test (VO-DIFF-325) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.batch-requests","area":"composite","title":"Batch requests","kind":"catalog-slice","capabilityIds":["rest.batch-requests"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/rest.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-323"],"evidenceIds":["EV-rest.batch-requests-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"haltOnError; error results omit fields, as recorded; binaryPartName not supported; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: haltOnError; error results omit fields, as recorded; binaryPartName not supported; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-323","status":"not-run"}],"contracts":[{"id":"rest.batch-requests","slug":"rest--batch-requests","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-323","file":"integration/reference-api.test.ts","layer":"integration","line":13}],"qualifiers":["haltOnError; error results omit fields, as recorded; binaryPartName not supported","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.batch-requests-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.batch-requests","recipe":"pnpm test:integration / pnpm test (VO-DIFF-323) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.all-or-none-composite","area":"composite","title":"All-or-none composite","kind":"catalog-slice","capabilityIds":["rest.all-or-none-composite"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/rest.ts"],"localTestIds":["VO-DIFF-321"],"evidenceIds":["EV-rest.all-or-none-composite-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"allOrNone rolls back every subrequest and halts the rest with the recorded message; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: allOrNone rolls back every subrequest and halts the rest with the recorded message; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-321","status":"not-run"}],"contracts":[{"id":"rest.all-or-none-composite","slug":"rest--all-or-none-composite","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-321","file":"integration/reference-api.test.ts","layer":"integration","line":11}],"qualifiers":["allOrNone rolls back every subrequest and halts the rest with the recorded message","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.all-or-none-composite-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.all-or-none-composite","recipe":"pnpm test:integration / pnpm test (VO-DIFF-321) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.rest-query-endpoint","area":"rest-query-search","title":"REST query endpoint","kind":"catalog-slice","capabilityIds":["rest.rest-query-endpoint"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-002","VO-CLI-002","VO-DIFF-009"],"evidenceIds":["EV-rest.rest-query-endpoint-2026-10-06"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-002","status":"not-run"},{"id":"VO-CLI-002","status":"not-run"},{"id":"VO-DIFF-009","status":"not-run"}],"contracts":[{"id":"rest.rest-query-endpoint","slug":"rest--rest-query-endpoint","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-002","file":"integration/reference.test.ts","layer":"integration","line":38},{"id":"VO-CLI-002","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":59},{"id":"VO-DIFF-009","file":"integration/reference-standard.test.ts","layer":"integration","line":23}],"qualifiers":["Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.rest-query-endpoint-2026-10-06","kind":"differential-test","result":"pass","capabilityId":"rest.rest-query-endpoint","recipe":"pnpm test:integration (integration/reference*.test.ts: VO-DIFF-002, VO-DIFF-009) against tests/compatibility/reference/2026-10-06-standard-api67.0.json","fixtureDigest":"sha256:853cb9232c423d17caf23f1f9abc1680f9a573cc23e1b284f4e8c2bd8796ff14","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts captured 2026-10-06 (RES-REF-001)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.rest-queryall-endpoint","area":"rest-query-search","title":"REST queryAll endpoint","kind":"catalog-slice","capabilityIds":["rest.rest-queryall-endpoint"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-E2E-006","VO-DIFF-014"],"evidenceIds":["EV-rest.rest-queryall-endpoint-2026-10-06"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Not yet differentially compared against the reference beyond the cited cases; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Not yet differentially compared against the reference beyond the cited cases; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-E2E-006","status":"not-run"},{"id":"VO-DIFF-014","status":"not-run"}],"contracts":[{"id":"rest.rest-queryall-endpoint","slug":"rest--rest-queryall-endpoint","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-E2E-006","file":"integration/org.test.ts","layer":"integration","line":82},{"id":"VO-DIFF-014","file":"integration/reference-standard.test.ts","layer":"integration","line":28}],"qualifiers":["Not yet differentially compared against the reference beyond the cited cases","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.rest-queryall-endpoint-2026-10-06","kind":"differential-test","result":"pass","capabilityId":"rest.rest-queryall-endpoint","recipe":"pnpm test:integration (integration/reference*.test.ts: VO-DIFF-014) against tests/compatibility/reference/2026-10-06-standard-api67.0.json","fixtureDigest":"sha256:853cb9232c423d17caf23f1f9abc1680f9a573cc23e1b284f4e8c2bd8796ff14","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts captured 2026-10-06 (RES-REF-001)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.rest-query-locator-endpoint","area":"rest-query-search","title":"REST query locator endpoint","kind":"catalog-slice","capabilityIds":["rest.rest-query-locator-endpoint"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/soql.ts"],"localTestIds":["VO-E2E-005","VO-DIFF-309"],"evidenceIds":["EV-rest.rest-query-locator-endpoint-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Not yet differentially compared against the reference beyond the cited cases; See soql.query-locators; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Not yet differentially compared against the reference beyond the cited cases; See soql.query-locators; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-E2E-005","status":"not-run"},{"id":"VO-DIFF-309","status":"not-run"}],"contracts":[{"id":"rest.rest-query-locator-endpoint","slug":"rest--rest-query-locator-endpoint","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-E2E-005","file":"integration/org.test.ts","layer":"integration","line":66},{"id":"VO-DIFF-309","file":"integration/reference-soql2.test.ts","layer":"integration","line":22}],"qualifiers":["Not yet differentially compared against the reference beyond the cited cases","See soql.query-locators","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.rest-query-locator-endpoint-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.rest-query-locator-endpoint","recipe":"pnpm test:integration / pnpm test (VO-DIFF-309) against tests/compatibility/reference/2026-10-06-soql2-api67.0.json","fixtureDigest":"sha256:92140069070cf0b6dcc835fe29f7ade2a69b4fa6b31a5226b817ac9b7082e2c4","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.rest-search-endpoint","area":"rest-query-search","title":"REST search endpoint","kind":"catalog-slice","capabilityIds":["rest.rest-search-endpoint"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-034","VO-CLI-012"],"evidenceIds":["EV-rest.rest-search-endpoint-de18f70"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"GET /search; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: GET /search; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-034","status":"not-run"},{"id":"VO-CLI-012","status":"not-run"}],"contracts":[{"id":"rest.rest-search-endpoint","slug":"rest--rest-search-endpoint","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-034","file":"integration/reference-sosl.test.ts","layer":"integration","line":17},{"id":"VO-CLI-012","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-012] searches with SOSL through sf data search","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-012] searches with SOSL through sf data search","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":231},{"id":"VO-SEARCH-011","file":"integration/ui-indexed-search.test.ts","layer":"integration","line":100}],"qualifiers":["GET /search","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.rest-search-endpoint-de18f70","kind":"differential-test","result":"pass","capabilityId":"rest.rest-search-endpoint","recipe":"pnpm test:integration / pnpm test (VO-DIFF-034) against tests/compatibility/reference/2026-10-06-sosl-api67.0.json","fixtureDigest":"sha256:9be51fba75bdde5e654f0889f7817b66400e389c415c218b16b88625dafe8185","revision":"de18f709e8220ee424863d00499dbd6f5fd53a45","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"de18f709e8220ee424863d00499dbd6f5fd53a45","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.salesforce-style-error-arrays","area":"rest-records","title":"Salesforce-style error arrays","kind":"catalog-slice","capabilityIds":["rest.salesforce-style-error-arrays"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/rest.ts"],"localTestIds":["VO-DIFF-005","VO-RUNTIME-001","VO-DIFF-010","VO-DIFF-011","VO-DIFF-333"],"evidenceIds":["EV-rest.salesforce-style-error-arrays-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches the recorded API 67.0 reference receipt for the Project__c profile (RES-REF-001); Jackson-style JSON parse messages for common syntax errors; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches the recorded API 67.0 reference receipt for the Project__c profile (RES-REF-001); Jackson-style JSON parse messages for common syntax errors; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-005","status":"not-run"},{"id":"VO-RUNTIME-001","status":"passed"},{"id":"VO-DIFF-010","status":"not-run"},{"id":"VO-DIFF-011","status":"not-run"},{"id":"VO-DIFF-333","status":"not-run"}],"contracts":[{"id":"rest.salesforce-style-error-arrays","slug":"rest--salesforce-style-error-arrays","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-005","file":"integration/reference.test.ts","layer":"integration","line":41},{"id":"VO-RUNTIME-001","file":"tests/runtime.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"[VO-RUNTIME-001] serves Salesforce-shaped discovery and error envelopes without credentials","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":3},{"id":"VO-DIFF-010","file":"integration/reference-standard.test.ts","layer":"integration","line":24},{"id":"VO-DIFF-011","file":"integration/reference-standard.test.ts","layer":"integration","line":25},{"id":"VO-DIFF-333","file":"integration/reference-api.test.ts","layer":"integration","line":22}],"qualifiers":["Matches the recorded API 67.0 reference receipt for the Project__c profile (RES-REF-001)","Jackson-style JSON parse messages for common syntax errors","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.salesforce-style-error-arrays-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.salesforce-style-error-arrays","recipe":"pnpm test:integration / pnpm test (VO-DIFF-333) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.http-status-mapping","area":"rest-records","title":"HTTP status mapping","kind":"catalog-slice","capabilityIds":["rest.http-status-mapping"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-333"],"evidenceIds":["EV-rest.http-status-mapping-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"404/405 (with Allow)/400/415 as recorded; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: 404/405 (with Allow)/400/415 as recorded; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-333","status":"not-run"}],"contracts":[{"id":"rest.http-status-mapping","slug":"rest--http-status-mapping","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-333","file":"integration/reference-api.test.ts","layer":"integration","line":22}],"qualifiers":["404/405 (with Allow)/400/415 as recorded","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.http-status-mapping-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.http-status-mapping","recipe":"pnpm test:integration / pnpm test (VO-DIFF-333) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.date-serialization","area":"rest-records","title":"Date serialization","kind":"catalog-slice","capabilityIds":["rest.date-serialization"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/records.ts"],"localTestIds":["VO-DIFF-711"],"evidenceIds":["EV-rest.date-serialization-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Recorded date, datetime (offsets, Z, fractional seconds) and time input forms and errors; datetimes render as .000+0000 in UTC; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Recorded date, datetime (offsets, Z, fractional seconds) and time input forms and errors; datetimes render as .000+0000 in UTC; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-711","status":"not-run"}],"contracts":[{"id":"rest.date-serialization","slug":"rest--date-serialization","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-711","file":"integration/reference-api3.test.ts","layer":"integration","line":25}],"qualifiers":["Recorded date, datetime (offsets, Z, fractional seconds) and time input forms and errors; datetimes render as .000+0000 in UTC","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.date-serialization-685ab1e","kind":"differential-test","result":"pass","capabilityId":"rest.date-serialization","recipe":"pnpm test:integration / pnpm test (VO-DIFF-711) against tests/compatibility/reference/2026-10-07-api3-api67.0.json","fixtureDigest":"sha256:ec1c80d2345e6d2fa1922b0254f9c717674928b6db2513a0f1a7a2558725bbee","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.decimal-serialization","area":"rest-records","title":"Decimal serialization","kind":"catalog-slice","capabilityIds":["rest.decimal-serialization"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/records.ts"],"localTestIds":["VO-DIFF-712","VO-DIFF-2172","VO-DIFF-2173","VO-DIFF-2174","VO-DIFF-2175"],"evidenceIds":["EV-rest.decimal-serialization-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Number, currency and percent values are doubles: extra decimal places are kept as sent (no rounding to scale), literals beyond double precision round to the nearest double, and precision errors report the rounded number (API3-DECIMALS-001, NUMEXACT-REST-001); Record GET, SOQL rows, aggregates and queryMore pages render doubles as Java Double.toString text (12.0, 1.0E7, 1.2345678901234568E17, 5.0E-5) while counts and integer fields stay plain, matching the API 67.0 numeric-exact receipt; composite, collection, tree and Apex REST bodies keep JavaScript number text; API SOQL integer literals beyond the int range fail with For input string as recorded; Apex inline SOQL literals are not compared; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Number, currency and percent values are doubles: extra decimal places are kept as sent (no rounding to scale), literals beyond double precision round to the nearest double, and precision errors report the rounded number (API3-DECIMALS-001, NUMEXACT-REST-001); Record GET, SOQL rows, aggregates and queryMore pages render doubles as Java Double.toString text (12.0, 1.0E7, 1.2345678901234568E17, 5.0E-5) while counts and integer fields stay plain, matching the API 67.0 numeric-exact receipt; composite, collection, tree and Apex REST bodies keep JavaScript number text; API SOQL integer literals beyond the int range fail with For input string as recorded; Apex inline SOQL literals are not compared; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-712","status":"not-run"},{"id":"VO-DIFF-2172","status":"not-run"},{"id":"VO-DIFF-2173","status":"not-run"},{"id":"VO-DIFF-2174","status":"not-run"},{"id":"VO-DIFF-2175","status":"not-run"}],"contracts":[{"id":"rest.decimal-serialization","slug":"rest--decimal-serialization","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-712","file":"integration/reference-api3.test.ts","layer":"integration","line":26},{"id":"VO-DIFF-2172","file":"integration/reference-numeric-exact.test.ts","layer":"integration","line":14},{"id":"VO-DIFF-2173","file":"integration/reference-numeric-exact.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-2174","file":"integration/reference-numeric-exact.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-2175","file":"integration/reference-numeric-exact.test.ts","layer":"integration","line":17}],"qualifiers":["Number, currency and percent values are doubles: extra decimal places are kept as sent (no rounding to scale), literals beyond double precision round to the nearest double, and precision errors report the rounded number (API3-DECIMALS-001, NUMEXACT-REST-001)","Record GET, SOQL rows, aggregates and queryMore pages render doubles as Java Double.toString text (12.0, 1.0E7, 1.2345678901234568E17, 5.0E-5) while counts and integer fields stay plain, matching the API 67.0 numeric-exact receipt; composite, collection, tree and Apex REST bodies keep JavaScript number text","API SOQL integer literals beyond the int range fail with For input string as recorded; Apex inline SOQL literals are not compared","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.decimal-serialization-685ab1e","kind":"differential-test","result":"pass","capabilityId":"rest.decimal-serialization","recipe":"pnpm test:integration / pnpm test (VO-DIFF-712) against tests/compatibility/reference/2026-10-07-api3-api67.0.json","fixtureDigest":"sha256:ec1c80d2345e6d2fa1922b0254f9c717674928b6db2513a0f1a7a2558725bbee","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.content-type-negotiation","area":"rest-records","title":"Content type negotiation","kind":"catalog-slice","capabilityIds":["rest.content-type-negotiation"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/rest.ts"],"localTestIds":["VO-DIFF-332","VO-DIFF-705","VO-REST-102"],"evidenceIds":["EV-rest.content-type-negotiation-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"JSON only (application/json;charset=UTF-8); gzip responses; non-JSON request bodies get 415; clients that prefer XML (Accept lists XML first) get 406 NOT_ACCEPTABLE where the reference answers XML (documented divergence, VO-DIFF-705); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: JSON only (application/json;charset=UTF-8); gzip responses; non-JSON request bodies get 415; clients that prefer XML (Accept lists XML first) get 406 NOT_ACCEPTABLE where the reference answers XML (documented divergence, VO-DIFF-705); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-332","status":"not-run"},{"id":"VO-DIFF-705","status":"not-run"},{"id":"VO-REST-102","status":"passed"}],"contracts":[{"id":"rest.content-type-negotiation","slug":"rest--content-type-negotiation","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-332","file":"integration/reference-api.test.ts","layer":"integration","line":21},{"id":"VO-DIFF-705","file":"integration/reference-api3.test.ts","layer":"integration","line":56},{"id":"VO-REST-102","file":"tests/api3.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"REST protocol (third API wave) [VO-REST-102] rejects clients that prefer XML with 406 NOT_ACCEPTABLE and serves JSON otherwise","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":137}],"qualifiers":["JSON only (application/json;charset=UTF-8); gzip responses; non-JSON request bodies get 415; clients that prefer XML (Accept lists XML first) get 406 NOT_ACCEPTABLE where the reference answers XML (documented divergence, VO-DIFF-705)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.content-type-negotiation-685ab1e","kind":"differential-test","result":"pass","capabilityId":"rest.content-type-negotiation","recipe":"pnpm test:integration / pnpm test (VO-DIFF-332) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.request-size-limits","area":"rest-records","title":"Request size limits","kind":"catalog-slice","capabilityIds":["rest.request-size-limits"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/soql.ts"],"localTestIds":["VO-DIFF-704"],"evidenceIds":["EV-rest.request-size-limits-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"REST bodies above 52,428,800 bytes fail with the recorded JSON_PARSER_ERROR; SOQL string literals longer than 4,000 characters fail as recorded; Bulk 2.0 uploads accept up to 150 MB (documented, not measured); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: REST bodies above 52,428,800 bytes fail with the recorded JSON_PARSER_ERROR; SOQL string literals longer than 4,000 characters fail as recorded; Bulk 2.0 uploads accept up to 150 MB (documented, not measured); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-704","status":"not-run"}],"contracts":[{"id":"rest.request-size-limits","slug":"rest--request-size-limits","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-704","file":"integration/reference-api3.test.ts","layer":"integration","line":19}],"qualifiers":["REST bodies above 52,428,800 bytes fail with the recorded JSON_PARSER_ERROR; SOQL string literals longer than 4,000 characters fail as recorded; Bulk 2.0 uploads accept up to 150 MB (documented, not measured)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.request-size-limits-685ab1e","kind":"differential-test","result":"pass","capabilityId":"rest.request-size-limits","recipe":"pnpm test:integration / pnpm test (VO-DIFF-704) against tests/compatibility/reference/2026-10-07-api3-api67.0.json","fixtureDigest":"sha256:ec1c80d2345e6d2fa1922b0254f9c717674928b6db2513a0f1a7a2558725bbee","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.conditional-requests","area":"rest-records","title":"Conditional requests","kind":"catalog-slice","capabilityIds":["rest.conditional-requests"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/conditional.ts"],"localTestIds":["VO-DIFF-331","VO-DIFF-087","VO-DIFF-088"],"evidenceIds":["EV-rest.conditional-requests-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Describe ETag/Last-Modified with If-None-Match/If-Modified-Since 304; record If-Match/If-Unmodified-Since 412; Last-Modified is when Virtual Org first served the current describe; Row GET honors If-None-Match: * and ignores date conditions; PATCH checks If-Unmodified-Since and If-Match; describe ignores a future If-Modified-Since; standalone record GETs issue no ETag; conditional DELETE not run (the reference returned 500); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Describe ETag/Last-Modified with If-None-Match/If-Modified-Since 304; record If-Match/If-Unmodified-Since 412; Last-Modified is when Virtual Org first served the current describe; Row GET honors If-None-Match: * and ignores date conditions; PATCH checks If-Unmodified-Since and If-Match; describe ignores a future If-Modified-Since; standalone record GETs issue no ETag; conditional DELETE not run (the reference returned 500); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-331","status":"not-run"},{"id":"VO-DIFF-087","status":"not-run"},{"id":"VO-DIFF-088","status":"not-run"}],"contracts":[{"id":"rest.conditional-requests","slug":"rest--conditional-requests","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-331","file":"integration/reference-api.test.ts","layer":"integration","line":20},{"id":"VO-DIFF-087","file":"integration/reference-conditional.test.ts","layer":"integration","line":18},{"id":"VO-DIFF-088","file":"integration/reference-conditional.test.ts","layer":"integration","line":19}],"qualifiers":["Describe ETag/Last-Modified with If-None-Match/If-Modified-Since 304; record If-Match/If-Unmodified-Since 412; Last-Modified is when Virtual Org first served the current describe","Row GET honors If-None-Match: * and ignores date conditions; PATCH checks If-Unmodified-Since and If-Match; describe ignores a future If-Modified-Since; standalone record GETs issue no ETag; conditional DELETE not run (the reference returned 500)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.conditional-requests-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.conditional-requests","recipe":"pnpm test:integration / pnpm test (VO-DIFF-331) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.cors-policy","area":"rest-records","title":"CORS policy","kind":"catalog-slice","capabilityIds":["rest.cors-policy"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-703","VO-REST-101"],"evidenceIds":["EV-rest.cors-policy-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"No CORS allowlist: OPTIONS answers 200 without a body or Access-Control headers and Origin is ignored; allowlisted origins are not modeled; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: No CORS allowlist: OPTIONS answers 200 without a body or Access-Control headers and Origin is ignored; allowlisted origins are not modeled; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-703","status":"not-run"},{"id":"VO-REST-101","status":"passed"}],"contracts":[{"id":"rest.cors-policy","slug":"rest--cors-policy","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-703","file":"integration/reference-api3.test.ts","layer":"integration","line":18},{"id":"VO-REST-101","file":"tests/api3.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"REST protocol (third API wave) [VO-REST-101] answers OPTIONS with 200 and no CORS headers, and stamps one request ID under both names","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":126}],"qualifiers":["No CORS allowlist: OPTIONS answers 200 without a body or Access-Control headers and Origin is ignored; allowlisted origins are not modeled","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.cors-policy-685ab1e","kind":"differential-test","result":"pass","capabilityId":"rest.cors-policy","recipe":"pnpm test:integration / pnpm test (VO-DIFF-703) against tests/compatibility/reference/2026-10-07-api3-api67.0.json","fixtureDigest":"sha256:ec1c80d2345e6d2fa1922b0254f9c717674928b6db2513a0f1a7a2558725bbee","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.api-version-rejection","area":"rest-records","title":"API version rejection","kind":"catalog-slice","capabilityIds":["rest.api-version-rejection"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-RUNTIME-001","VO-DIFF-333","VO-DIFF-700","VO-REST-100"],"evidenceIds":["EV-rest.api-version-rejection-9366705"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Not yet differentially compared against the reference beyond the cited cases; Retired versions 20.0–30.0 answer 410 GONE (404 without a body for /limits before 29.0, where it never existed); older, malformed and future versions answer NOT_FOUND; Differential match is profile-bound; broader parity unverified; The recorded v68 root is admitted and has the observed resource keys. v69 remains a local future-version rejection control; full version/resource conformance beyond the cited observations remains unverified.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Not yet differentially compared against the reference beyond the cited cases; Retired versions 20.0–30.0 answer 410 GONE (404 without a body for /limits before 29.0, where it never existed); older, malformed and future versions answer NOT_FOUND; Differential match is profile-bound; broader parity unverified; The recorded v68 root is admitted and has the observed resource keys. v69 remains a local future-version rejection control; full version/resource conformance beyond the cited observations remains unverified.","localChecks":[{"id":"VO-RUNTIME-001","status":"passed"},{"id":"VO-DIFF-333","status":"not-run"},{"id":"VO-DIFF-700","status":"not-run"},{"id":"VO-REST-100","status":"passed"}],"contracts":[{"id":"rest.api-version-rejection","slug":"rest--api-version-rejection","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-RUNTIME-001","file":"tests/runtime.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"[VO-RUNTIME-001] serves Salesforce-shaped discovery and error envelopes without credentials","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":3},{"id":"VO-DIFF-333","file":"integration/reference-api.test.ts","layer":"integration","line":22},{"id":"VO-DIFF-700","file":"integration/reference-api3.test.ts","layer":"integration","line":15},{"id":"VO-REST-100","file":"tests/api3.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"REST protocol (third API wave) [VO-REST-100] answers retired API versions with 410 GONE and unknown ones with NOT_FOUND","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":109},{"id":"VO-DRIFT-002","file":"integration/reference-release-drift.test.ts","layer":"integration","line":55},{"id":"VO-RESTDRIFT-001","file":"tests/rest-release-drift.test.ts","layer":"unit","sinceVersion":"0.7.25","observations":[{"profile":"unit","status":"passed","fullName":"[VO-RESTDRIFT-001] advertises the recorded Winter27 inventory while retaining the API67 schema profile","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":8}],"qualifiers":["Not yet differentially compared against the reference beyond the cited cases","Retired versions 20.0–30.0 answer 410 GONE (404 without a body for /limits before 29.0, where it never existed); older, malformed and future versions answer NOT_FOUND","Differential match is profile-bound; broader parity unverified","The recorded v68 root is admitted and has the observed resource keys. v69 remains a local future-version rejection control; full version/resource conformance beyond the cited observations remains unverified."],"evidence":[{"id":"EV-rest.api-version-rejection-9366705","kind":"differential-test","result":"pass","capabilityId":"rest.api-version-rejection","recipe":"VIRTUALORG_TEST_RELEASE_DRIFT=1 pnpm test:integration integration/reference-release-drift.test.ts plus the unchanged broad replay with its dated successor case; compare tests/compatibility/reference/2026-10-18-api-discovery-successor-api67.0.json","fixtureDigest":"sha256:79ac3849955cbc25f51df6fb805da554e715e2f5d3d532c8e4952e36cc1b6ce8","revision":"93667050048d8788c658b39cb4514401376d0923","recordedAt":"2026-10-18","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Dated API67 observations with October17/18 successor comparisons; original receipts remain preserved."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"93667050048d8788c658b39cb4514401376d0923","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.rate-limits","area":"rest-records","title":"Rate limits","kind":"catalog-slice","capabilityIds":["rest.rate-limits"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/rest.ts"],"localTestIds":["VO-DIFF-702"],"evidenceIds":["EV-rest.rate-limits-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Authenticated data API responses (errors included) carry Sforce-Limit-Info api-usage=<count>/<DailyApiRequests max>, counted per org and UTC day; /limits Remaining follows the count; requests are never refused (REQUEST_LIMIT_EXCEEDED not modeled); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Authenticated data API responses (errors included) carry Sforce-Limit-Info api-usage=<count>/<DailyApiRequests max>, counted per org and UTC day; /limits Remaining follows the count; requests are never refused (REQUEST_LIMIT_EXCEEDED not modeled); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-702","status":"not-run"}],"contracts":[{"id":"rest.rate-limits","slug":"rest--rate-limits","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-702","file":"integration/reference-api3.test.ts","layer":"integration","line":17},{"id":"VO-NATIVEFORMULA-005","file":"integration/native-formula-locality.test.ts","layer":"integration","line":290}],"qualifiers":["Authenticated data API responses (errors included) carry Sforce-Limit-Info api-usage=<count>/<DailyApiRequests max>, counted per org and UTC day; /limits Remaining follows the count; requests are never refused (REQUEST_LIMIT_EXCEEDED not modeled)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.rate-limits-685ab1e","kind":"differential-test","result":"pass","capabilityId":"rest.rate-limits","recipe":"pnpm test:integration / pnpm test (VO-DIFF-702) against tests/compatibility/reference/2026-10-07-api3-api67.0.json","fixtureDigest":"sha256:ec1c80d2345e6d2fa1922b0254f9c717674928b6db2513a0f1a7a2558725bbee","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.request-ids","area":"rest-records","title":"Request IDs","kind":"catalog-slice","capabilityIds":["rest.request-ids"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-702","VO-REST-101","VO-DRIFT-004","VO-DRIFT-005","VO-DRIFT-006","VO-DRIFT-007"],"evidenceIds":["EV-rest.request-ids-9366705"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"A nonempty supplied correlation ID is preserved under both response names; absent markers get one native32hex ID; Differential match is profile-bound; broader parity unverified; Caller X-SFDC-Request-ID or X-Request-ID markers are preserved under both response names, including the four nonempty October18 markers. Native generated IDs remain32hex; other fresh reference generated-ID formats, empty/duplicate headers and header precedence are not fully compared.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: A nonempty supplied correlation ID is preserved under both response names; absent markers get one native32hex ID; Differential match is profile-bound; broader parity unverified; Caller X-SFDC-Request-ID or X-Request-ID markers are preserved under both response names, including the four nonempty October18 markers. Native generated IDs remain32hex; other fresh reference generated-ID formats, empty/duplicate headers and header precedence are not fully compared.","localChecks":[{"id":"VO-DIFF-702","status":"not-run"},{"id":"VO-REST-101","status":"passed"},{"id":"VO-DRIFT-004","status":"not-run"},{"id":"VO-DRIFT-005","status":"not-run"},{"id":"VO-DRIFT-006","status":"not-run"},{"id":"VO-DRIFT-007","status":"not-run"}],"contracts":[{"id":"rest.request-ids","slug":"rest--request-ids","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-702","file":"integration/reference-api3.test.ts","layer":"integration","line":17},{"id":"VO-REST-101","file":"tests/api3.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"REST protocol (third API wave) [VO-REST-101] answers OPTIONS with 200 and no CORS headers, and stamps one request ID under both names","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":126},{"id":"VO-DRIFT-004","file":"integration/reference-release-drift.test.ts","layer":"integration","line":84},{"id":"VO-DRIFT-005","file":"integration/reference-release-drift.test.ts","layer":"integration","line":84},{"id":"VO-DRIFT-006","file":"integration/reference-release-drift.test.ts","layer":"integration","line":84},{"id":"VO-DRIFT-007","file":"integration/reference-release-drift.test.ts","layer":"integration","line":84},{"id":"VO-RESTDRIFT-002","file":"tests/rest-release-drift.test.ts","layer":"unit","sinceVersion":"0.7.25","observations":[{"profile":"unit","status":"passed","fullName":"[VO-RESTDRIFT-002] preserves every recorded caller correlation ID under both response names","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":27}],"qualifiers":["A nonempty supplied correlation ID is preserved under both response names; absent markers get one native32hex ID","Differential match is profile-bound; broader parity unverified","Caller X-SFDC-Request-ID or X-Request-ID markers are preserved under both response names, including the four nonempty October18 markers. Native generated IDs remain32hex; other fresh reference generated-ID formats, empty/duplicate headers and header precedence are not fully compared."],"evidence":[{"id":"EV-rest.request-ids-9366705","kind":"differential-test","result":"pass","capabilityId":"rest.request-ids","recipe":"VIRTUALORG_TEST_RELEASE_DRIFT=1 pnpm test:integration integration/reference-release-drift.test.ts plus the unchanged broad replay with its dated successor case; compare tests/compatibility/reference/2026-10-18-release-drift-admission-api67.0.json","fixtureDigest":"sha256:19c2647b06ceb48b866039e2e2454ac7c712cdd237953bb80789222f55b1ab71","revision":"93667050048d8788c658b39cb4514401376d0923","recordedAt":"2026-10-18","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Dated API67 observations with October17/18 successor comparisons; original receipts remain preserved."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"93667050048d8788c658b39cb4514401376d0923","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.pagination-urls","area":"rest-query-search","title":"Pagination URLs","kind":"catalog-slice","capabilityIds":["rest.pagination-urls"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soql.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-309"],"evidenceIds":["EV-rest.pagination-urls-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"nextRecordsUrl /services/data/vXX.X/query/{locator}-{offset}; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: nextRecordsUrl /services/data/vXX.X/query/{locator}-{offset}; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-309","status":"not-run"}],"contracts":[{"id":"rest.pagination-urls","slug":"rest--pagination-urls","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-309","file":"integration/reference-soql2.test.ts","layer":"integration","line":22}],"qualifiers":["nextRecordsUrl /services/data/vXX.X/query/{locator}-{offset}","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.pagination-urls-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.pagination-urls","recipe":"pnpm test:integration / pnpm test (VO-DIFF-309) against tests/compatibility/reference/2026-10-06-soql2-api67.0.json","fixtureDigest":"sha256:92140069070cf0b6dcc835fe29f7ade2a69b4fa6b31a5226b817ac9b7082e2c4","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"metadata.retrieve-zip","area":"metadata-cli-soap","title":"Retrieve ZIP","kind":"catalog-slice","capabilityIds":["metadata.retrieve-zip"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts","packages/metadata/src/index.ts","packages/runtime/src/deploy.ts"],"localTestIds":["VO-CLI-008","VO-CLI-102","VO-CLI-103","VO-CLI-104"],"evidenceIds":["EV-metadata.retrieve-zip-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Unpackaged manifests only; Retrieved XML is the deployed source, not reference-normalized XML; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Unpackaged manifests only; Retrieved XML is the deployed source, not reference-normalized XML; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-008","status":"not-run"},{"id":"VO-CLI-102","status":"not-run"},{"id":"VO-CLI-103","status":"not-run"},{"id":"VO-CLI-104","status":"not-run"}],"contracts":[{"id":"metadata.retrieve-zip","slug":"metadata--retrieve-zip","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-008","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-008] retrieves deployed metadata back into a DX project with sf project retrieve start","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-008] retrieves deployed metadata back into a DX project with sf project retrieve start","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":126},{"id":"VO-CLI-102","file":"integration/sf-cli-api.test.ts","layer":"integration","line":59},{"id":"VO-CLI-103","file":"integration/sf-cli-api.test.ts","layer":"integration","line":60},{"id":"VO-CLI-104","file":"integration/sf-cli-api.test.ts","layer":"integration","line":61},{"id":"VO-DIFF-9209","file":"integration/reference-metadata-fidelity.test.ts","layer":"integration","line":4},{"id":"VO-METAFIDELITY-001","file":"tests/metadata-fidelity.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"[VO-METAFIDELITY-001] retrieve XML uses four-space indentation and exactly one final newline","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":14},{"id":"VO-METAFIDELITY-002","file":"tests/metadata-fidelity.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"[VO-METAFIDELITY-002] retrieve package echoes a missing explicitly requested member","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":23}],"qualifiers":["Unpackaged manifests and the existing declared type profiles only.","Fresh API67 FlexiPage XML uses four-space indentation and one final newline; missing explicitly requested members remain in package.xml with the recorded warning.","This does not establish full reference normalization of every metadata type, binary/resource support, unknown type schemas or server-injected defaults.","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-metadata.retrieve-zip-80ab2d0","kind":"differential-test","result":"pass","capabilityId":"metadata.retrieve-zip","recipe":"pnpm test:integration / pnpm test (VO-DIFF-9209) against tests/compatibility/manifests/next-ui-platform-2026-10-16.json","fixtureDigest":"sha256:bb8b5b72a0718ae4bf3a41d59bdde800a1746f71f0d125697e4678ddf7b2fd43","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]},{"id":"EV-metadata.retrieve-zip-feaf503","kind":"differential-test","result":"pass","capabilityId":"metadata.retrieve-zip","recipe":"pnpm test:integration / pnpm test (VO-CLI-102, VO-CLI-103, VO-CLI-104) against tests/compatibility/reference/2026-10-06-cli-api67.0.json","fixtureDigest":"sha256:91f17c2b26b1e95c0a81593d7a5f0c7235dbac6ed127d1a97eed3c63e92a4406","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]}],"reference":{"sourceIds":["metadata"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Original selected reference fixtures; observed2026-10-16 PDT /17UTC; API67 requests on the current API68 service. Exact profiles, source receipts and digests are in tests/compatibility/manifests/next-ui-platform-2026-10-16.json. Only individually mapped passing comparisons are admitted."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","environment":"local workerd + PostgreSQL 18 + local R2","profile":"next-ui-platform-api67-selected-profiles"}}]},{"id":"metadata.retrieve-status","area":"metadata-cli-soap","title":"Retrieve status","kind":"catalog-slice","capabilityIds":["metadata.retrieve-status"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts","packages/metadata/src/index.ts","packages/runtime/src/deploy.ts"],"localTestIds":["VO-CLI-008","VO-CLI-102","VO-CLI-103"],"evidenceIds":["EV-metadata.retrieve-status-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Retrieve completes inside the retrieve call; As recorded; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Retrieve completes inside the retrieve call; As recorded; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-008","status":"not-run"},{"id":"VO-CLI-102","status":"not-run"},{"id":"VO-CLI-103","status":"not-run"}],"contracts":[{"id":"metadata.retrieve-status","slug":"metadata--retrieve-status","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-008","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-008] retrieves deployed metadata back into a DX project with sf project retrieve start","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-008] retrieves deployed metadata back into a DX project with sf project retrieve start","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":126},{"id":"VO-CLI-102","file":"integration/sf-cli-api.test.ts","layer":"integration","line":59},{"id":"VO-CLI-103","file":"integration/sf-cli-api.test.ts","layer":"integration","line":60}],"qualifiers":["Retrieve completes inside the retrieve call","As recorded","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-metadata.retrieve-status-feaf503","kind":"differential-test","result":"pass","capabilityId":"metadata.retrieve-status","recipe":"pnpm test:integration / pnpm test (VO-CLI-102, VO-CLI-103) against tests/compatibility/reference/2026-10-06-cli-api67.0.json","fixtureDigest":"sha256:91f17c2b26b1e95c0a81593d7a5f0c7235dbac6ed127d1a97eed3c63e92a4406","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]}],"reference":{"sourceIds":["metadata"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"metadata.deploy-zip","area":"metadata-cli-soap","title":"Deploy ZIP","kind":"catalog-slice","capabilityIds":["metadata.deploy-zip"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts","packages/metadata/src/index.ts","packages/runtime/src/deploy.ts","packages/metadata/src/xml.ts","packages/metadata/src/validation.ts","packages/metadata/src/conversion.ts","packages/runtime/src/archive.ts"],"localTestIds":["VO-CLI-006","VO-CLI-100","VO-CLI-101","VO-CLI-104","VO-DIFF-613","VO-DIFF-615","VO-DIFF-616","VO-META-310","VO-MDEP-300","VO-MDEP-304","VO-MDEP-307","VO-META-314","VO-MDEP-309"],"evidenceIds":["EV-metadata.deploy-zip-315a408"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Metadata API text ZIP with pre/post/ordinary destructive changes; components selected by package.xml and canonical child identities.; ZIP directory/header consistency, CRC, UTF-8, normalized duplicate paths, traversal, encryption, symlinks and expansion limits are checked. Binary entries, ZIP64 and multiple packages are unavailable.; Multiple structural failures carry file, identity, property and location; exact new result-shape mapping remains reference-pending.; ZIP size and CRC checks use actual incrementally inflated bytes; forged declared sizes cannot truncate accepted XML. Compressed input chunks are bounded before output retention.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Metadata API text ZIP with pre/post/ordinary destructive changes; components selected by package.xml and canonical child identities.; ZIP directory/header consistency, CRC, UTF-8, normalized duplicate paths, traversal, encryption, symlinks and expansion limits are checked. Binary entries, ZIP64 and multiple packages are unavailable.; Multiple structural failures carry file, identity, property and location; exact new result-shape mapping remains reference-pending.; ZIP size and CRC checks use actual incrementally inflated bytes; forged declared sizes cannot truncate accepted XML. Compressed input chunks are bounded before output retention.","localChecks":[{"id":"VO-CLI-006","status":"not-run"},{"id":"VO-CLI-100","status":"not-run"},{"id":"VO-CLI-101","status":"not-run"},{"id":"VO-CLI-104","status":"not-run"},{"id":"VO-DIFF-613","status":"not-run"},{"id":"VO-DIFF-615","status":"not-run"},{"id":"VO-DIFF-616","status":"not-run"},{"id":"VO-META-310","status":"passed"},{"id":"VO-MDEP-300","status":"not-run"},{"id":"VO-MDEP-304","status":"not-run"},{"id":"VO-MDEP-307","status":"not-run"},{"id":"VO-META-314","status":"not-run"},{"id":"VO-MDEP-309","status":"not-run"}],"contracts":[{"id":"metadata.deploy-zip","slug":"metadata--deploy-zip","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-006","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":98},{"id":"VO-CLI-100","file":"integration/sf-cli-api.test.ts","layer":"integration","line":57},{"id":"VO-CLI-101","file":"integration/sf-cli-api.test.ts","layer":"integration","line":58},{"id":"VO-CLI-104","file":"integration/sf-cli-api.test.ts","layer":"integration","line":61},{"id":"VO-DIFF-613","file":"integration/reference-metadata2.test.ts","layer":"integration","line":29},{"id":"VO-DIFF-615","file":"integration/reference-metadata2.test.ts","layer":"integration","line":31},{"id":"VO-DIFF-616","file":"integration/reference-metadata2.test.ts","layer":"integration","line":32},{"id":"VO-META-310","file":"tests/deploy-archive.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"[VO-META-310] rejects traversal, duplicate ZIP names, corrupt checksums and bounded expansion","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":11},{"id":"VO-MDEP-300","file":"integration/metadata-boundary.test.ts","layer":"integration","line":158},{"id":"VO-MDEP-304","file":"integration/metadata-boundary.test.ts","layer":"integration","line":438},{"id":"VO-MDEP-307","file":"integration/metadata-boundary.test.ts","layer":"integration","line":525},{"id":"VO-META-314","file":"tests/deploy-archive.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"[VO-META-314] counts actual output when ZIP lengths and prefix CRCs lie, including stored entries and bounded expansion","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":34},{"id":"VO-MDEP-309","file":"integration/metadata-boundary.test.ts","layer":"integration","line":568}],"qualifiers":["Metadata API text ZIP with pre/post/ordinary destructive changes; components selected by package.xml and canonical child identities.","ZIP directory/header consistency, CRC, UTF-8, normalized duplicate paths, traversal, encryption, symlinks and expansion limits are checked. Binary entries, ZIP64 and multiple packages are unavailable.","Multiple structural failures carry file, identity, property and location; exact new result-shape mapping remains reference-pending.","ZIP size and CRC checks use actual incrementally inflated bytes; forged declared sizes cannot truncate accepted XML. Compressed input chunks are bounded before output retention."],"evidence":[{"id":"EV-metadata.deploy-zip-315a408","kind":"differential-test","result":"pass","capabilityId":"metadata.deploy-zip","recipe":"pnpm test:integration / pnpm test (VO-DIFF-613, VO-DIFF-615, VO-DIFF-616) against tests/compatibility/reference/2026-10-07-metadata2-api67.0.json","fixtureDigest":"sha256:6d8b4924b10eb68f21074ec2f7765f68d089ccf2f9d6e130b9214c822ed8ca9f","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]}],"reference":{"sourceIds":["metadata"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"metadata.deploy-status","area":"metadata-cli-soap","title":"Deploy status","kind":"catalog-slice","capabilityIds":["metadata.deploy-status"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts","packages/metadata/src/index.ts","packages/runtime/src/deploy.ts","packages/metadata/src/xml.ts","packages/metadata/src/validation.ts","packages/metadata/src/conversion.ts"],"localTestIds":["VO-CLI-006","VO-CLI-007","VO-CLI-100","VO-CLI-101","VO-DIFF-621","VO-MDEP-305"],"evidenceIds":["EV-metadata.deploy-status-315a408"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"A native DeployRequest durably stores a queued job; the authorized poll executes under the existing request transaction and org lock. Unpolled jobs remain queued.; Cancellation discards queued work before execution; a completed result is retained after commit. This is a local polling executor, with no autonomous scheduler or manufactured finalization states.; Recorded API 67 terminal shapes remain profile-bound; asynchronous timing, finalization and new cancellation cases remain reference-pending.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: A native DeployRequest durably stores a queued job; the authorized poll executes under the existing request transaction and org lock. Unpolled jobs remain queued.; Cancellation discards queued work before execution; a completed result is retained after commit. This is a local polling executor, with no autonomous scheduler or manufactured finalization states.; Recorded API 67 terminal shapes remain profile-bound; asynchronous timing, finalization and new cancellation cases remain reference-pending.","localChecks":[{"id":"VO-CLI-006","status":"not-run"},{"id":"VO-CLI-007","status":"not-run"},{"id":"VO-CLI-100","status":"not-run"},{"id":"VO-CLI-101","status":"not-run"},{"id":"VO-DIFF-621","status":"not-run"},{"id":"VO-MDEP-305","status":"not-run"}],"contracts":[{"id":"metadata.deploy-status","slug":"metadata--deploy-status","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-006","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":98},{"id":"VO-CLI-007","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-007] reports a failing deploy with component errors and leaves metadata unchanged","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-007] reports a failing deploy with component errors and leaves metadata unchanged","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":116},{"id":"VO-CLI-100","file":"integration/sf-cli-api.test.ts","layer":"integration","line":57},{"id":"VO-CLI-101","file":"integration/sf-cli-api.test.ts","layer":"integration","line":58},{"id":"VO-DIFF-621","file":"integration/reference-metadata2.test.ts","layer":"integration","line":37},{"id":"VO-MDEP-305","file":"integration/metadata-boundary.test.ts","layer":"integration","line":458}],"qualifiers":["A native DeployRequest durably stores a queued job; the authorized poll executes under the existing request transaction and org lock. Unpolled jobs remain queued.","Cancellation discards queued work before execution; a completed result is retained after commit. This is a local polling executor, with no autonomous scheduler or manufactured finalization states.","Recorded API 67 terminal shapes remain profile-bound; asynchronous timing, finalization and new cancellation cases remain reference-pending."],"evidence":[{"id":"EV-metadata.deploy-status-315a408","kind":"differential-test","result":"pass","capabilityId":"metadata.deploy-status","recipe":"pnpm test:integration / pnpm test (VO-DIFF-621) against tests/compatibility/reference/2026-10-07-metadata2-api67.0.json","fixtureDigest":"sha256:6d8b4924b10eb68f21074ec2f7765f68d089ccf2f9d6e130b9214c822ed8ca9f","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]}],"reference":{"sourceIds":["metadata"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"metadata.check-only-deployment","area":"metadata-cli-soap","title":"Check-only deployment","kind":"catalog-slice","capabilityIds":["metadata.check-only-deployment"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts","packages/metadata/src/xml.ts","packages/metadata/src/validation.ts","packages/metadata/src/conversion.ts"],"localTestIds":["VO-CLI-100","VO-MDEP-301"],"evidenceIds":["EV-metadata.check-only-deployment-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"checkOnly runs real compilation and native schema changes, then rolls back source, compiled definitions, DDL, mappings and permissions while preserving the deployment record.; New native rollback assertions are local evidence; historical reference checkOnly receipts remain profile-bound.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: checkOnly runs real compilation and native schema changes, then rolls back source, compiled definitions, DDL, mappings and permissions while preserving the deployment record.; New native rollback assertions are local evidence; historical reference checkOnly receipts remain profile-bound.","localChecks":[{"id":"VO-CLI-100","status":"not-run"},{"id":"VO-MDEP-301","status":"not-run"}],"contracts":[{"id":"metadata.check-only-deployment","slug":"metadata--check-only-deployment","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-100","file":"integration/sf-cli-api.test.ts","layer":"integration","line":57},{"id":"VO-MDEP-301","file":"integration/metadata-boundary.test.ts","layer":"integration","line":333}],"qualifiers":["checkOnly runs real compilation and native schema changes, then rolls back source, compiled definitions, DDL, mappings and permissions while preserving the deployment record.","New native rollback assertions are local evidence; historical reference checkOnly receipts remain profile-bound."],"evidence":[{"id":"EV-metadata.check-only-deployment-feaf503","kind":"differential-test","result":"pass","capabilityId":"metadata.check-only-deployment","recipe":"pnpm test:integration / pnpm test (VO-CLI-100) against tests/compatibility/reference/2026-10-06-cli-api67.0.json","fixtureDigest":"sha256:91f17c2b26b1e95c0a81593d7a5f0c7235dbac6ed127d1a97eed3c63e92a4406","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]}],"reference":{"sourceIds":["metadata"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"metadata.quick-deployment","area":"metadata-cli-soap","title":"Quick deployment","kind":"catalog-slice","capabilityIds":["metadata.quick-deployment"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts","packages/metadata/src/xml.ts","packages/metadata/src/validation.ts","packages/metadata/src/conversion.ts"],"localTestIds":["VO-DIFF-620","VO-CLI-202","VO-MDEP-308"],"evidenceIds":["EV-metadata.quick-deployment-315a408"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Successful checkOnly that ran tests can be quick-deployed under deployment authority; intervening successful deploys and active-source changes invalidate it.; A ten-day expiry guard is locally tested; time boundary, cross-user eligibility and full Salesforce quick-deploy semantics remain reference-pending.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Successful checkOnly that ran tests can be quick-deployed under deployment authority; intervening successful deploys and active-source changes invalidate it.; A ten-day expiry guard is locally tested; time boundary, cross-user eligibility and full Salesforce quick-deploy semantics remain reference-pending.","localChecks":[{"id":"VO-DIFF-620","status":"not-run"},{"id":"VO-CLI-202","status":"not-run"},{"id":"VO-MDEP-308","status":"not-run"}],"contracts":[{"id":"metadata.quick-deployment","slug":"metadata--quick-deployment","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-620","file":"integration/reference-metadata2.test.ts","layer":"integration","line":36},{"id":"VO-CLI-202","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-202] sf project deploy quick deploys a validated change once as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":26},{"id":"VO-MDEP-308","file":"integration/metadata-boundary.test.ts","layer":"integration","line":543}],"qualifiers":["Successful checkOnly that ran tests can be quick-deployed under deployment authority; intervening successful deploys and active-source changes invalidate it.","A ten-day expiry guard is locally tested; time boundary, cross-user eligibility and full Salesforce quick-deploy semantics remain reference-pending."],"evidence":[{"id":"EV-metadata.quick-deployment-315a408","kind":"differential-test","result":"pass","capabilityId":"metadata.quick-deployment","recipe":"pnpm test:integration / pnpm test (VO-DIFF-620) against tests/compatibility/reference/2026-10-07-metadata2-api67.0.json","fixtureDigest":"sha256:6d8b4924b10eb68f21074ec2f7765f68d089ccf2f9d6e130b9214c822ed8ca9f","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]}],"reference":{"sourceIds":["metadata"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"metadata.rollback-on-error","area":"metadata-cli-soap","title":"Rollback on error","kind":"catalog-slice","capabilityIds":["metadata.rollback-on-error"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts","packages/metadata/src/index.ts","packages/runtime/src/deploy.ts","packages/runtime/src/native.ts","packages/storage/migrations/0004_native_objects.sql","packages/metadata/src/xml.ts","packages/metadata/src/validation.ts","packages/metadata/src/conversion.ts"],"localTestIds":["VO-CLI-007","VO-DIFF-613","VO-DIFF-614","VO-NATIVE-003","VO-NATIVE-005","VO-NATIVE-010","VO-NATIVE-015","VO-MDEP-301","VO-MDEP-304"],"evidenceIds":["EV-metadata.rollback-on-error-315a408"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"rollbackOnError rolls back candidate source, compiled state and native DDL/mappings; without it, the existing measured file-level partial-save contract applies.; Multiple structural failures are reported locally; failure followed by a valid deploy and rolled-back native state are tested. New diagnostic mappings remain reference-pending.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: rollbackOnError rolls back candidate source, compiled state and native DDL/mappings; without it, the existing measured file-level partial-save contract applies.; Multiple structural failures are reported locally; failure followed by a valid deploy and rolled-back native state are tested. New diagnostic mappings remain reference-pending.","localChecks":[{"id":"VO-CLI-007","status":"not-run"},{"id":"VO-DIFF-613","status":"not-run"},{"id":"VO-DIFF-614","status":"not-run"},{"id":"VO-NATIVE-003","status":"not-run"},{"id":"VO-NATIVE-005","status":"not-run"},{"id":"VO-NATIVE-010","status":"not-run"},{"id":"VO-NATIVE-015","status":"not-run"},{"id":"VO-MDEP-301","status":"not-run"},{"id":"VO-MDEP-304","status":"not-run"}],"contracts":[{"id":"metadata.rollback-on-error","slug":"metadata--rollback-on-error","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-007","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-007] reports a failing deploy with component errors and leaves metadata unchanged","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-007] reports a failing deploy with component errors and leaves metadata unchanged","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":116},{"id":"VO-DIFF-613","file":"integration/reference-metadata2.test.ts","layer":"integration","line":29},{"id":"VO-DIFF-614","file":"integration/reference-metadata2.test.ts","layer":"integration","line":30},{"id":"VO-NATIVE-003","file":"integration/native-storage.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"[VO-NATIVE-003] rolls back physical writes and metadata DDL with savepoints","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":52},{"id":"VO-NATIVE-005","file":"integration/native-storage.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"[VO-NATIVE-005] rejects a failed metadata conversion without changing records or the active definition","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":79},{"id":"VO-NATIVE-010","file":"integration/native-storage.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"[VO-NATIVE-010] rejects a potentially lossy type conversion on populated fields","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":137},{"id":"VO-NATIVE-015","file":"integration/native-storage.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"[VO-NATIVE-015] rejects enabling uniqueness over conflicting existing data atomically","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":187},{"id":"VO-MDEP-301","file":"integration/metadata-boundary.test.ts","layer":"integration","line":333},{"id":"VO-MDEP-304","file":"integration/metadata-boundary.test.ts","layer":"integration","line":438},{"id":"VO-NATIVEINSERT-002","file":"integration/native-insert.test.ts","layer":"integration","line":40}],"qualifiers":["rollbackOnError rolls back candidate source, compiled state and native DDL/mappings; without it, the existing measured file-level partial-save contract applies.","Multiple structural failures are reported locally; failure followed by a valid deploy and rolled-back native state are tested. New diagnostic mappings remain reference-pending."],"evidence":[{"id":"EV-metadata.rollback-on-error-315a408","kind":"differential-test","result":"pass","capabilityId":"metadata.rollback-on-error","recipe":"pnpm test:integration / pnpm test (VO-DIFF-613, VO-DIFF-614) against tests/compatibility/reference/2026-10-07-metadata2-api67.0.json","fixtureDigest":"sha256:6d8b4924b10eb68f21074ec2f7765f68d089ccf2f9d6e130b9214c822ed8ca9f","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]}],"reference":{"sourceIds":["metadata"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"metadata.destructive-changes-pre-deploy","area":"metadata-cli-soap","title":"Destructive changes pre-deploy","kind":"catalog-slice","capabilityIds":["metadata.destructive-changes-pre-deploy"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts","packages/runtime/src/deploy.ts","packages/metadata/src/index.ts"],"localTestIds":["VO-DIFF-616","VO-META-100"],"evidenceIds":["EV-metadata.destructive-changes-pre-deploy-315a408"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Fields, objects, Apex, global value sets, permission sets and email templates/folders; purgeOnDelete is accepted and deletions are always immediate; Dependency checks cover formula fields, lookups and global value set usage only; Differential match is profile-bound; broader parity unverified; Replayed through the canonical native deployment service; existing API 67 receipts establish only their recorded profile. New modern-source, cancellation and API 68 cases remain reference-pending.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Fields, objects, Apex, global value sets, permission sets and email templates/folders; purgeOnDelete is accepted and deletions are always immediate; Dependency checks cover formula fields, lookups and global value set usage only; Differential match is profile-bound; broader parity unverified; Replayed through the canonical native deployment service; existing API 67 receipts establish only their recorded profile. New modern-source, cancellation and API 68 cases remain reference-pending.","localChecks":[{"id":"VO-DIFF-616","status":"not-run"},{"id":"VO-META-100","status":"passed"}],"contracts":[{"id":"metadata.destructive-changes-pre-deploy","slug":"metadata--destructive-changes-pre-deploy","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-616","file":"integration/reference-metadata2.test.ts","layer":"integration","line":32},{"id":"VO-META-100","file":"tests/metadata2.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"Metadata API building blocks [VO-META-100] reads destructiveChanges, destructiveChangesPre and destructiveChangesPost manifests instead of rejecting them","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":20}],"qualifiers":["Fields, objects, Apex, global value sets, permission sets and email templates/folders; purgeOnDelete is accepted and deletions are always immediate","Dependency checks cover formula fields, lookups and global value set usage only","Differential match is profile-bound; broader parity unverified","Replayed through the canonical native deployment service; existing API 67 receipts establish only their recorded profile. New modern-source, cancellation and API 68 cases remain reference-pending."],"evidence":[{"id":"EV-metadata.destructive-changes-pre-deploy-315a408","kind":"differential-test","result":"pass","capabilityId":"metadata.destructive-changes-pre-deploy","recipe":"pnpm test:integration / pnpm test (VO-DIFF-616) against tests/compatibility/reference/2026-10-07-metadata2-api67.0.json","fixtureDigest":"sha256:6d8b4924b10eb68f21074ec2f7765f68d089ccf2f9d6e130b9214c822ed8ca9f","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]}],"reference":{"sourceIds":["metadata"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"metadata.destructive-changes-post-deploy","area":"metadata-cli-soap","title":"Destructive changes post-deploy","kind":"catalog-slice","capabilityIds":["metadata.destructive-changes-post-deploy"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts","packages/runtime/src/deploy.ts","packages/metadata/src/index.ts"],"localTestIds":["VO-DIFF-616","VO-DIFF-617","VO-META-100","VO-CLI-218"],"evidenceIds":["EV-metadata.destructive-changes-post-deploy-315a408"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Fields, objects, Apex, global value sets, permission sets and email templates/folders; purgeOnDelete is accepted and deletions are always immediate; Dependency checks cover formula fields, lookups and global value set usage only; Differential match is profile-bound; broader parity unverified; Replayed through the canonical native deployment service; existing API 67 receipts establish only their recorded profile. New modern-source, cancellation and API 68 cases remain reference-pending.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Fields, objects, Apex, global value sets, permission sets and email templates/folders; purgeOnDelete is accepted and deletions are always immediate; Dependency checks cover formula fields, lookups and global value set usage only; Differential match is profile-bound; broader parity unverified; Replayed through the canonical native deployment service; existing API 67 receipts establish only their recorded profile. New modern-source, cancellation and API 68 cases remain reference-pending.","localChecks":[{"id":"VO-DIFF-616","status":"not-run"},{"id":"VO-DIFF-617","status":"not-run"},{"id":"VO-META-100","status":"passed"},{"id":"VO-CLI-218","status":"not-run"}],"contracts":[{"id":"metadata.destructive-changes-post-deploy","slug":"metadata--destructive-changes-post-deploy","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-616","file":"integration/reference-metadata2.test.ts","layer":"integration","line":32},{"id":"VO-DIFF-617","file":"integration/reference-metadata2.test.ts","layer":"integration","line":33},{"id":"VO-META-100","file":"tests/metadata2.test.ts","layer":"unit","observations":[{"profile":"unit","status":"passed","fullName":"Metadata API building blocks [VO-META-100] reads destructiveChanges, destructiveChangesPre and destructiveChangesPost manifests instead of rejecting them","packetDigest":"sha256:347638061c54d52201d158c74ddbda4032a77e5f281542a51911eda2f2b95069"}],"line":20},{"id":"VO-CLI-218","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-218] local and remote deletions flow through source tracking and IsNameObsolete as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":42}],"qualifiers":["Fields, objects, Apex, global value sets, permission sets and email templates/folders; purgeOnDelete is accepted and deletions are always immediate","Dependency checks cover formula fields, lookups and global value set usage only","Differential match is profile-bound; broader parity unverified","Replayed through the canonical native deployment service; existing API 67 receipts establish only their recorded profile. New modern-source, cancellation and API 68 cases remain reference-pending."],"evidence":[{"id":"EV-metadata.destructive-changes-post-deploy-315a408","kind":"differential-test","result":"pass","capabilityId":"metadata.destructive-changes-post-deploy","recipe":"pnpm test:integration / pnpm test (VO-DIFF-616, VO-DIFF-617) against tests/compatibility/reference/2026-10-07-metadata2-api67.0.json","fixtureDigest":"sha256:6d8b4924b10eb68f21074ec2f7765f68d089ccf2f9d6e130b9214c822ed8ca9f","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]}],"reference":{"sourceIds":["metadata"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"metadata.deploy-test-levels","area":"metadata-cli-soap","title":"Deploy test levels","kind":"catalog-slice","capabilityIds":["metadata.deploy-test-levels"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/soap.ts","packages/runtime/src/deploy.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"rust-only-current","limitation":"Current Rust-only profile: predecessor TypeScript execution/coverage is retired. This workflow is explicitly unsupported or requires a new exact-source Rust comparison. Historical provider observations remain dated evidence, not current support.","nextAcceptance":"Verify the current explicit fence, then implement and compare a bounded canonical Rust workflow before admitting this slice.","historicalTypeScriptProfile":{"sourceRevision":"294ac9be","paths":["packages/runtime/src/soap.ts","packages/runtime/src/apex-tests.ts"],"reference":"linked-subset","evidenceIds":["EV-metadata.deploy-test-levels-315a408"],"limitation":"NoTestRun, RunSpecifiedTests, RunLocalTests and RunAllTestsInOrg (no managed packages, so the last two run the same tests); RunRelevantTests is rejected; Coverage comes from Virtual Org's Apex coverage analysis; RunSpecifiedTests needs 75% per deployed class, the others 75% org-wide; Differential match is profile-bound; broader parity unverified; Replayed through the canonical native deployment service; existing API 67 receipts establish only their recorded profile. New modern-source, cancellation and API 68 cases remain reference-pending."},"localChecks":[],"contracts":[{"id":"metadata.deploy-test-levels","slug":"metadata--deploy-test-levels","support":"experimental","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-619","file":"integration/reference-metadata2.test.ts","layer":"integration","line":35},{"id":"VO-CLI-200","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-200] sf project deploy validate runs the specified tests in a check-only deploy as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":24},{"id":"VO-CLI-203","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-203] sf project deploy validate fails on insufficient coverage as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":27}],"qualifiers":["Rust-only current profile: NoTestRun deployment/checkOnly remains; non-NoTestRun is UNSUPPORTED_APEX_DEPLOY_TESTS. Historical TypeScript-default parity is not current Rust parity. Exact current outcomes require source-bound receipts; broader API/annotation/authority behavior remains unqualified.","Historical TypeScript-default profile: NoTestRun, RunSpecifiedTests, RunLocalTests and RunAllTestsInOrg (no managed packages, so the last two run the same tests); RunRelevantTests is rejected","Historical TypeScript-default profile: Coverage comes from Virtual Org's Apex coverage analysis; RunSpecifiedTests needs 75% per deployed class, the others 75% org-wide","Historical TypeScript-default profile: Differential match is profile-bound; broader parity unverified","Historical TypeScript-default profile: Replayed through the canonical native deployment service; existing API 67 receipts establish only their recorded profile. New modern-source, cancellation and API 68 cases remain reference-pending."],"evidence":[{"id":"EV-metadata.deploy-test-levels-315a408","kind":"differential-test","result":"pass","capabilityId":"metadata.deploy-test-levels","recipe":"pnpm test:integration / pnpm test (VO-DIFF-619) against tests/compatibility/reference/2026-10-07-metadata2-api67.0.json","fixtureDigest":"sha256:6d8b4924b10eb68f21074ec2f7765f68d089ccf2f9d6e130b9214c822ed8ca9f","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]}],"reference":{"sourceIds":["metadata"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":null,"environment":"local Rust-only workerd + PostgreSQL 18; see source-bound current test receipts","profile":"rust-only-apex-api67-local-pilot"}}]},{"id":"tooling.tooling-query","area":"tooling","title":"Tooling query","kind":"catalog-slice","capabilityIds":["tooling.tooling-query"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/soql.ts","packages/runtime/src/tooling.ts","packages/runtime/src/schema.ts","packages/runtime/src/standard/tooling.json"],"localTestIds":["VO-DIFF-045","VO-DIFF-150","VO-DIFF-155","VO-DIFF-158"],"evidenceIds":["EV-tooling.tooling-query-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Tooling query envelope (size, entityTypeName, queryLocator) and tooling record URLs; objects: ApexClass, ApexTrigger, ApexTestQueueItem, ApexTestResult, ApexTestRunResult, ApexLog, AsyncApexJob, User; Other objects fail with INVALID_TYPE as observed; Polymorphic lookups report type Name; coverage objects refreshed at query time; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Tooling query envelope (size, entityTypeName, queryLocator) and tooling record URLs; objects: ApexClass, ApexTrigger, ApexTestQueueItem, ApexTestResult, ApexTestRunResult, ApexLog, AsyncApexJob, User; Other objects fail with INVALID_TYPE as observed; Polymorphic lookups report type Name; coverage objects refreshed at query time; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-045","status":"not-run"},{"id":"VO-DIFF-150","status":"not-run"},{"id":"VO-DIFF-155","status":"not-run"},{"id":"VO-DIFF-158","status":"not-run"}],"contracts":[{"id":"tooling.tooling-query","slug":"tooling--tooling-query","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-045","file":"integration/reference-tooling.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling API differential [VO-DIFF-045] tooling queries of Apex classes and triggers and tooling query errors match the reference","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":19},{"id":"VO-DIFF-150","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-150] DebugLevel records are created, read, queried and updated through the Tooling API","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":12},{"id":"VO-DIFF-155","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-155] traced executions create ApexLog rows queryable through the Tooling API","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":17},{"id":"VO-DIFF-158","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-158] ApexCodeCoverage rows record each test method's covered and uncovered lines","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":20}],"qualifiers":["Tooling query envelope (size, entityTypeName, queryLocator) and tooling record URLs; objects: ApexClass, ApexTrigger, ApexTestQueueItem, ApexTestResult, ApexTestRunResult, ApexLog, AsyncApexJob, User","Other objects fail with INVALID_TYPE as observed","Polymorphic lookups report type Name; coverage objects refreshed at query time","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-tooling.tooling-query-feaf503","kind":"differential-test","result":"pass","capabilityId":"tooling.tooling-query","recipe":"pnpm test:integration / pnpm test (VO-DIFF-045) against tests/compatibility/reference/2026-10-06-tooling-api67.0.json","fixtureDigest":"sha256:ca9c73a449b09dc698d48cf52c89acc1c5abe24ea244f107e951f0dfca3b6d45","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"tooling.apexclass-records","area":"tooling","title":"ApexClass records","kind":"catalog-slice","capabilityIds":["tooling.apexclass-records"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/deploy.ts"],"localTestIds":["VO-CLI-006","VO-DIFF-045"],"evidenceIds":["EV-tooling.apexclass-records-29bc263"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Historical0.2.0 record-query profile: class storage/read and its declared Tooling query subset; fresh class creation/compilation was not admitted in that profile.; Tooling query of Name, Status, ApiVersion, IsValid, NamespacePrefix matches the receipt; Differential match is profile-bound; broader parity unverified; Runtime0.7.21 separately measures fresh original named Active API67 Tooling class creation as setup in revenue-cloud.native-decision-table-apex. General Tooling ApexClass authoring/lifecycle/errors remain unadmitted; this older record-read evidence and first parity version stay unchanged.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Historical0.2.0 record-query profile: class storage/read and its declared Tooling query subset; fresh class creation/compilation was not admitted in that profile.; Tooling query of Name, Status, ApiVersion, IsValid, NamespacePrefix matches the receipt; Differential match is profile-bound; broader parity unverified; Runtime0.7.21 separately measures fresh original named Active API67 Tooling class creation as setup in revenue-cloud.native-decision-table-apex. General Tooling ApexClass authoring/lifecycle/errors remain unadmitted; this older record-read evidence and first parity version stay unchanged.","localChecks":[{"id":"VO-CLI-006","status":"not-run"},{"id":"VO-DIFF-045","status":"not-run"}],"contracts":[{"id":"tooling.apexclass-records","slug":"tooling--apexclass-records","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-006","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":98},{"id":"VO-DIFF-045","file":"integration/reference-tooling.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling API differential [VO-DIFF-045] tooling queries of Apex classes and triggers and tooling query errors match the reference","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":19}],"qualifiers":["Historical0.2.0 record-query profile: class storage/read and its declared Tooling query subset; fresh class creation/compilation was not admitted in that profile.","Tooling query of Name, Status, ApiVersion, IsValid, NamespacePrefix matches the receipt","Differential match is profile-bound; broader parity unverified","Runtime0.7.21 separately measures fresh original named Active API67 Tooling class creation as setup in revenue-cloud.native-decision-table-apex. General Tooling ApexClass authoring/lifecycle/errors remain unadmitted; this older record-read evidence and first parity version stay unchanged."],"evidence":[{"id":"EV-tooling.apexclass-records-29bc263","kind":"differential-test","result":"pass","capabilityId":"tooling.apexclass-records","recipe":"pnpm test:integration / pnpm test (VO-DIFF-045) against tests/compatibility/reference/2026-10-06-tooling-api67.0.json","fixtureDigest":"sha256:ca9c73a449b09dc698d48cf52c89acc1c5abe24ea244f107e951f0dfca3b6d45","revision":"29bc263511b7abc5cae2ca7dc300f882665b8293","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"29bc263511b7abc5cae2ca7dc300f882665b8293","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"tooling.apextrigger-records","area":"tooling","title":"ApexTrigger records","kind":"catalog-slice","capabilityIds":["tooling.apextrigger-records"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/deploy.ts"],"localTestIds":["VO-APEX-008","VO-DIFF-045"],"evidenceIds":["EV-tooling.apextrigger-records-29bc263"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Deployed triggers stored as ApexTrigger records with usage flags; Tooling query of TableEnumOrId and Usage* flags matches the receipt; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Deployed triggers stored as ApexTrigger records with usage flags; Tooling query of TableEnumOrId and Usage* flags matches the receipt; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-APEX-008","status":"not-run"},{"id":"VO-DIFF-045","status":"not-run"}],"contracts":[{"id":"tooling.apextrigger-records","slug":"tooling--apextrigger-records","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-APEX-008","file":"integration/apex.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"Apex execution and triggers [VO-APEX-008] fires before/after insert triggers for REST saves","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":29},{"id":"VO-DIFF-045","file":"integration/reference-tooling.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling API differential [VO-DIFF-045] tooling queries of Apex classes and triggers and tooling query errors match the reference","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":19}],"qualifiers":["Deployed triggers stored as ApexTrigger records with usage flags","Tooling query of TableEnumOrId and Usage* flags matches the receipt","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-tooling.apextrigger-records-29bc263","kind":"differential-test","result":"pass","capabilityId":"tooling.apextrigger-records","recipe":"pnpm test:integration / pnpm test (VO-DIFF-045) against tests/compatibility/reference/2026-10-06-tooling-api67.0.json","fixtureDigest":"sha256:ca9c73a449b09dc698d48cf52c89acc1c5abe24ea244f107e951f0dfca3b6d45","revision":"29bc263511b7abc5cae2ca7dc300f882665b8293","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"29bc263511b7abc5cae2ca7dc300f882665b8293","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"tooling.apex-test-run-records","area":"tooling","title":"Apex test run records","kind":"gap","capabilityIds":["tooling.apex-test-run-records"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"rust-only-current","limitation":"Current Rust-only profile: predecessor TypeScript execution/coverage is retired. This workflow is explicitly unsupported or requires a new exact-source Rust comparison. Historical provider observations remain dated evidence, not current support.","nextAcceptance":"Verify the current explicit fence, then implement and compare a bounded canonical Rust workflow before admitting this slice.","historicalTypeScriptProfile":{"sourceRevision":"294ac9be","paths":["packages/runtime/src/apex-tests.ts","packages/runtime/src/index.ts"],"reference":"linked-subset","evidenceIds":["EV-tooling.apex-test-run-records-feaf503"],"limitation":"runTestsAsynchronous returns a 15-character 707 ID; the run executes after the request commits; ApexTestResult rows include one IsTestSetup row per @testSetup method; code coverage rows are covered by tooling.apex-code-coverage-records; no logs or parallelism; Asynchronous runs of failing tests record results and coverage; Differential match is profile-bound; broader parity unverified"},"localChecks":[],"contracts":[{"id":"tooling.apex-test-run-records","slug":"tooling--apex-test-run-records","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-046","file":"integration/reference-tooling.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling API differential [VO-DIFF-046] runTestsAsynchronous records AsyncApexJob, ApexTestRunResult, ApexTestQueueItem and ApexTestResult as in the reference","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":20},{"id":"VO-DIFF-047","file":"integration/reference-tooling.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling API differential [VO-DIFF-047] runTestsAsynchronous input errors match the reference","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":21},{"id":"VO-CLI-013","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-013] runs Apex tests asynchronously (default) and polls results through sf apex run test --wait","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-013] runs Apex tests asynchronously (default) and polls results through sf apex run test --wait","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":184},{"id":"VO-DIFF-157","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-157] an asynchronous run of the coverage and sharing fixtures records the test results","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":19}],"qualifiers":["Rust partial reference admission: original standard-org-67.0 assertions (VO-DIFF-046, VO-DIFF-047) matched unchanged recorded expectations on 2026-10-20; no fresh reference capture; source sha256:25703cdb02556431718756fb2ad386143121ae00c7ce35a64f0b2aaa2d0d36f4.","Broader migration status: recovered in selected packets. Other failures and unexecuted regressions remain explicit in /Users/jalillaaraichi/VirtualOrg-worktrees/apex-rust-full-parity/reports/apex-migration-parity-2026-10-19/supplement-reference-d7c9290d31228e257b5f43ea0bb94a1678dd73d5-attempt2/reference-packets.json and the current implementation report.","Offline recovery of the original bounded behavior using the selected Rust engine and canonical host. Original historical limitations retained: runTestsAsynchronous returns a 15-character 707 ID; the run executes after the request commits ApexTestResult rows include one IsTestSetup row per @testSetup method; code coverage rows are covered by tooling.apex-code-coverage-records; no logs or parallelism Asynchronous runs of failing tests record results and coverage Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-tooling.apex-test-run-records-feaf503","kind":"differential-test","result":"pass","capabilityId":"tooling.apex-test-run-records","recipe":"pnpm test:integration / pnpm test (VO-DIFF-046, VO-DIFF-047) against tests/compatibility/reference/2026-10-06-tooling-api67.0.json","fixtureDigest":"sha256:ca9c73a449b09dc698d48cf52c89acc1c5abe24ea244f107e951f0dfca3b6d45","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]},{"id":"EV-tooling.apex-test-run-records-rust-d7c9290d3122-394f99ee","kind":"differential-test","result":"pass","capabilityId":"tooling.apex-test-run-records","recipe":"pnpm test:integration / pnpm test (VO-DIFF-046, VO-DIFF-047) against tests/compatibility/reference/2026-10-06-tooling-api67.0.json; offline Rust replay of original EV-tooling.apex-test-run-records-feaf503 observed 2026-10-07, profile standard-org-67.0; source sha256:25703cdb02556431718756fb2ad386143121ae00c7ce35a64f0b2aaa2d0d36f4; manifest /Users/jalillaaraichi/VirtualOrg-worktrees/apex-rust-full-parity/reports/apex-migration-parity-2026-10-19/supplement-reference-d7c9290d31228e257b5f43ea0bb94a1678dd73d5-attempt2/reference-packets.json; report digests service-original-reference=sha256:ded4198648a0fa6f92468d9677c527156c66c1068a35da198b542f0effa4180d","fixtureDigest":"sha256:ca9c73a449b09dc698d48cf52c89acc1c5abe24ea244f107e951f0dfca3b6d45","revision":"d7c9290d31228e257b5f43ea0bb94a1678dd73d5","recordedAt":"2026-10-20","environment":"Offline Rust Worker replay of unchanged recorded expectations; platform=darwin, arch=arm64, nodeVersion=v26.4.0, postgresVersion=180006, postgresCollation=C, postgresCtype=C, postgresEncoding=UTF8; no fresh reference operation","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"d7c9290d31228e257b5f43ea0bb94a1678dd73d5","environment":"Offline Rust Worker replay of unchanged recorded expectations; platform=darwin, arch=arm64, nodeVersion=v26.4.0, postgresVersion=180006, postgresCollation=C, postgresCtype=C, postgresEncoding=UTF8; no fresh reference operation","profile":"standard-org-67.0"}}]},{"id":"tooling.apex-code-coverage-records","area":"tooling","title":"Apex code coverage records","kind":"gap","capabilityIds":["tooling.apex-code-coverage-records"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"rust-only-current","limitation":"Current Rust-only profile: predecessor TypeScript execution/coverage is retired. This workflow is explicitly unsupported or requires a new exact-source Rust comparison. Historical provider observations remain dated evidence, not current support.","nextAcceptance":"Verify the current explicit fence, then implement and compare a bounded canonical Rust workflow before admitting this slice.","historicalTypeScriptProfile":{"sourceRevision":"294ac9be","paths":["packages/apex/src/coverage.ts","packages/runtime/src/coverage.ts","packages/runtime/src/tooling.ts","packages/runtime/src/schema.ts","packages/runtime/src/standard/tooling.json"],"reference":"linked-subset","evidenceIds":["EV-tooling.apex-code-coverage-records-feaf503"],"limitation":"ApexCodeCoverage per test method, aggregates as the union of current rows, floor org-wide percentage; Differential match is profile-bound; broader parity unverified; Fresh October 18 Tooling2 ApexCodeCoverageAggregate uncovered-line lists differ for untested fixture classes from the pinned October 6 observation. Test result, per-method coverage and org-wide percentage subsets are unchanged; fixture revision and instrumentation context must be reviewed before claiming release drift or renewed parity."},"localChecks":[],"contracts":[{"id":"tooling.apex-code-coverage-records","slug":"tooling--apex-code-coverage-records","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-158","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-158] ApexCodeCoverage rows record each test method's covered and uncovered lines","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":20},{"id":"VO-DIFF-159","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-159] ApexCodeCoverageAggregate rows cover every class, with empty line lists for untested classes","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":21},{"id":"VO-DIFF-160","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-160] ApexOrgWideCoverage reports the org-wide percentage","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":22}],"qualifiers":["Rust partial reference admission: original standard-org-67.0 assertions (VO-DIFF-158, VO-DIFF-159, VO-DIFF-160) matched unchanged recorded expectations on 2026-10-20; no fresh reference capture; source sha256:25703cdb02556431718756fb2ad386143121ae00c7ce35a64f0b2aaa2d0d36f4.","Broader migration status: recovered in selected packets. Other failures and unexecuted regressions remain explicit in /Users/jalillaaraichi/VirtualOrg-worktrees/apex-rust-full-parity/reports/apex-migration-parity-2026-10-19/supplement-reference-d7c9290d31228e257b5f43ea0bb94a1678dd73d5-attempt2/reference-packets.json and the current implementation report.","Offline recovery of the original bounded behavior using the selected Rust engine and canonical host. Original historical limitations retained: ApexCodeCoverage per test method, aggregates as the union of current rows, floor org-wide percentage Differential match is profile-bound; broader parity unverified Fresh October 18 Tooling2 ApexCodeCoverageAggregate uncovered-line lists differ for untested fixture classes from the pinned October 6 observation. Test result, per-method coverage and org-wide percentage subsets are unchanged; fixture revision and instrumentation context must be reviewed before claiming release drift or renewed parity."],"evidence":[{"id":"EV-tooling.apex-code-coverage-records-feaf503","kind":"differential-test","result":"pass","capabilityId":"tooling.apex-code-coverage-records","recipe":"pnpm test:integration / pnpm test (VO-DIFF-158, VO-DIFF-159, VO-DIFF-160) against tests/compatibility/reference/2026-10-06-tooling2-api67.0.json","fixtureDigest":"sha256:cc6952b6ef8a598673dec3bd372371eb45aa15c293c524285be98294aa89c94c","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]},{"id":"EV-tooling.apex-code-coverage-records-rust-d7c9290d3122-d62c38c0","kind":"differential-test","result":"pass","capabilityId":"tooling.apex-code-coverage-records","recipe":"pnpm test:integration / pnpm test (VO-DIFF-158, VO-DIFF-159, VO-DIFF-160) against tests/compatibility/reference/2026-10-06-tooling2-api67.0.json; offline Rust replay of original EV-tooling.apex-code-coverage-records-feaf503 observed 2026-10-07, profile standard-org-67.0; source sha256:25703cdb02556431718756fb2ad386143121ae00c7ce35a64f0b2aaa2d0d36f4; manifest /Users/jalillaaraichi/VirtualOrg-worktrees/apex-rust-full-parity/reports/apex-migration-parity-2026-10-19/supplement-reference-d7c9290d31228e257b5f43ea0bb94a1678dd73d5-attempt2/reference-packets.json; report digests service-original-reference=sha256:ded4198648a0fa6f92468d9677c527156c66c1068a35da198b542f0effa4180d","fixtureDigest":"sha256:cc6952b6ef8a598673dec3bd372371eb45aa15c293c524285be98294aa89c94c","revision":"d7c9290d31228e257b5f43ea0bb94a1678dd73d5","recordedAt":"2026-10-20","environment":"Offline Rust Worker replay of unchanged recorded expectations; platform=darwin, arch=arm64, nodeVersion=v26.4.0, postgresVersion=180006, postgresCollation=C, postgresCtype=C, postgresEncoding=UTF8; no fresh reference operation","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"d7c9290d31228e257b5f43ea0bb94a1678dd73d5","environment":"Offline Rust Worker replay of unchanged recorded expectations; platform=darwin, arch=arm64, nodeVersion=v26.4.0, postgresVersion=180006, postgresCollation=C, postgresCtype=C, postgresEncoding=UTF8; no fresh reference operation","profile":"standard-org-67.0"}}]},{"id":"tooling.trace-flags","area":"tooling","title":"Trace flags","kind":"catalog-slice","capabilityIds":["tooling.trace-flags"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/tooling.ts","packages/runtime/src/schema.ts","packages/runtime/src/standard/tooling.json"],"localTestIds":["VO-DIFF-150","VO-DIFF-151","VO-DIFF-152","VO-DIFF-153","VO-APEX-101","VO-APEX-105","VO-APEX-106"],"evidenceIds":["EV-tooling.trace-flags-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"DEVELOPER_LOG and USER_DEBUG flags trace users; class/trigger tracing not implemented; Default levels for omitted DebugLevel categories are unverified; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: DEVELOPER_LOG and USER_DEBUG flags trace users; class/trigger tracing not implemented; Default levels for omitted DebugLevel categories are unverified; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-150","status":"not-run"},{"id":"VO-DIFF-151","status":"not-run"},{"id":"VO-DIFF-152","status":"not-run"},{"id":"VO-DIFF-153","status":"not-run"},{"id":"VO-APEX-101","status":"not-run"},{"id":"VO-APEX-105","status":"not-run"},{"id":"VO-APEX-106","status":"not-run"}],"contracts":[{"id":"tooling.trace-flags","slug":"tooling--trace-flags","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-150","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-150] DebugLevel records are created, read, queried and updated through the Tooling API","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":12},{"id":"VO-DIFF-151","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-151] DebugLevel duplicate names and invalid levels are rejected","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":13},{"id":"VO-DIFF-152","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-152] TraceFlag records enforce the 24-hour window and reject overlapping flags","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":14},{"id":"VO-DIFF-153","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-153] deleting a DebugLevel deletes its trace flags; missing records report cross-reference errors","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":15},{"id":"VO-APEX-101","file":"integration/sf-cli-apex.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI Apex tests, coverage and logs against Virtual Org [VO-APEX-101] sf data create record --use-tooling-api creates a DebugLevel and a TraceFlag","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":21},{"id":"VO-APEX-105","file":"integration/sf-cli-apex.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI Apex tests, coverage and logs against Virtual Org [VO-APEX-105] sf data delete record --use-tooling-api deletes the DebugLevel","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":25},{"id":"VO-APEX-106","file":"integration/sf-cli-apex.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI Apex tests, coverage and logs against Virtual Org [VO-APEX-106] sf apex tail log sets a trace flag and streams new debug logs over CometD","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":65}],"qualifiers":["DEVELOPER_LOG and USER_DEBUG flags trace users; class/trigger tracing not implemented","Default levels for omitted DebugLevel categories are unverified","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-tooling.trace-flags-feaf503","kind":"differential-test","result":"pass","capabilityId":"tooling.trace-flags","recipe":"pnpm test:integration / pnpm test (VO-DIFF-150, VO-DIFF-151, VO-DIFF-152, VO-DIFF-153) against tests/compatibility/reference/2026-10-06-tooling2-api67.0.json","fixtureDigest":"sha256:cc6952b6ef8a598673dec3bd372371eb45aa15c293c524285be98294aa89c94c","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"tooling.debug-logs","area":"tooling","title":"Debug logs","kind":"catalog-slice","capabilityIds":["tooling.debug-logs"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/tooling.ts","packages/runtime/src/soap.ts","packages/runtime/src/streaming.ts","engine/core/src/compiler/exceptions.rs","engine/core/src/compiler/assertions.rs","engine/core/src/vm/exceptions.rs","engine/core/src/vm/assertions.rs","packages/runtime/src/apex-log.ts","packages/runtime/src/apex-execution.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"rust-only-current","limitation":"Current Rust-only profile: predecessor TypeScript execution/coverage is retired. This workflow is explicitly unsupported or requires a new exact-source Rust comparison. Historical provider observations remain dated evidence, not current support.","nextAcceptance":"Verify the current explicit fence, then implement and compare a bounded canonical Rust workflow before admitting this slice.","historicalTypeScriptProfile":{"sourceRevision":"294ac9be","paths":["packages/apex/src/log.ts","packages/runtime/src/tooling.ts","packages/runtime/src/soap.ts","packages/runtime/src/streaming.ts"],"reference":"linked-subset","evidenceIds":["EV-tooling.debug-logs-feaf503"],"limitation":"Events at ERROR/WARN/INFO/DEBUG (user debug, SOQL, DML, exceptions, limits); FINE-and-finer events (statements, variables, heap) are not emitted; Bodies stored in the record store, not R2; Differential match is profile-bound; broader parity unverified; The recorded Apex CLI log comparisons explicitly select the receipt API67 connection profile. Automatic v68 discovery and metadata behavior are separately compared; current API68 Apex-log parity is not established by these API67 checks."},"localChecks":[],"contracts":[{"id":"tooling.debug-logs","slug":"tooling--debug-logs","support":"experimental","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-154","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-154] executeAnonymous results are unchanged while the user is traced","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":16},{"id":"VO-DIFF-155","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-155] traced executions create ApexLog rows queryable through the Tooling API","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":17},{"id":"VO-DIFF-156","file":"integration/reference-tooling2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling debug log and coverage differential [VO-DIFF-156] ApexLog bodies carry the trace flag's levels and the filtered events, through Tooling and data APIs","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":18},{"id":"VO-APEX-102","file":"integration/sf-cli-apex.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI Apex tests, coverage and logs against Virtual Org [VO-APEX-102] sf apex run returns the debug log at the trace flag's levels while the user is traced","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":22},{"id":"VO-APEX-103","file":"integration/sf-cli-apex.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI Apex tests, coverage and logs against Virtual Org [VO-APEX-103] sf apex list log lists the traced execution's ApexLog","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":23},{"id":"VO-APEX-104","file":"integration/sf-cli-apex.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI Apex tests, coverage and logs against Virtual Org [VO-APEX-104] sf apex get log returns the stored log body","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":24},{"id":"VO-APEX-106","file":"integration/sf-cli-apex.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI Apex tests, coverage and logs against Virtual Org [VO-APEX-106] sf apex tail log sets a trace flag and streams new debug logs over CometD","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":65}],"qualifiers":["Rust-only current profile: Bounded source implementation exists; original integration/API scope requires exact-source replay. Historical TypeScript-default parity is not current Rust parity. Exact current outcomes require source-bound receipts; broader API/annotation/authority behavior remains unqualified.","Historical TypeScript-default profile: Events at ERROR/WARN/INFO/DEBUG (user debug, SOQL, DML, exceptions, limits); FINE-and-finer events (statements, variables, heap) are not emitted","Historical TypeScript-default profile: Bodies stored in the record store, not R2","Historical TypeScript-default profile: Differential match is profile-bound; broader parity unverified","The recorded Apex CLI log comparisons explicitly select the receipt API67 connection profile. Automatic v68 discovery and metadata behavior are separately compared; current API68 Apex-log parity is not established by these API67 checks."],"evidence":[{"id":"EV-tooling.debug-logs-feaf503","kind":"differential-test","result":"pass","capabilityId":"tooling.debug-logs","recipe":"pnpm test:integration / pnpm test (VO-DIFF-154, VO-DIFF-155, VO-DIFF-156) against tests/compatibility/reference/2026-10-06-tooling2-api67.0.json","fixtureDigest":"sha256:cc6952b6ef8a598673dec3bd372371eb45aa15c293c524285be98294aa89c94c","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":null,"environment":"local Rust-only workerd + PostgreSQL 18; see source-bound current test receipts","profile":"rust-only-apex-api67-local-pilot"}}]},{"id":"tooling.metadatacontainer","area":"tooling","title":"MetadataContainer","kind":"catalog-slice","capabilityIds":["tooling.metadatacontainer"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/apex-container.ts","packages/runtime/src/tooling.ts","packages/runtime/src/standard/tooling.json"],"localTestIds":["VO-DIFF-2110","VO-DIFF-2111","VO-DIFF-2112","VO-DIFF-2118"],"evidenceIds":["EV-tooling.metadatacontainer-1532fe5"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Recorded describe, required/length/duplicate Name errors, reads, queries and deletion with member cascade; containers hold ApexClassMember records only; Deleting a container also removes its requests in Virtual Org; Salesforce request retention after deletion is unmeasured; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Recorded describe, required/length/duplicate Name errors, reads, queries and deletion with member cascade; containers hold ApexClassMember records only; Deleting a container also removes its requests in Virtual Org; Salesforce request retention after deletion is unmeasured; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-2110","status":"not-run"},{"id":"VO-DIFF-2111","status":"not-run"},{"id":"VO-DIFF-2112","status":"not-run"},{"id":"VO-DIFF-2118","status":"not-run"}],"contracts":[{"id":"tooling.metadatacontainer","slug":"tooling--metadatacontainer","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2110","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2110] MetadataContainer names are required, at most 32 characters and unique","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":13},{"id":"VO-DIFF-2111","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2111] MetadataContainer records are read, queried and deleted","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":14},{"id":"VO-DIFF-2112","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2112] requests and members reject unknown containers; an empty container compiles to Completed","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":15},{"id":"VO-DIFF-2118","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2118] deleting a container deletes its members","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":21}],"qualifiers":["Recorded describe, required/length/duplicate Name errors, reads, queries and deletion with member cascade; containers hold ApexClassMember records only","Deleting a container also removes its requests in Virtual Org; Salesforce request retention after deletion is unmeasured","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-tooling.metadatacontainer-1532fe5","kind":"differential-test","result":"pass","capabilityId":"tooling.metadatacontainer","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2110, VO-DIFF-2111, VO-DIFF-2112, VO-DIFF-2118) against tests/compatibility/reference/2026-10-15-tooling3-api67.0.json","fixtureDigest":"sha256:377cdd287e01168b14f3fc8b4ac2e0b787f2c75799e94b23a096f5a755ac890d","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Tooling receipt (tooling3 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"tooling.containerasyncrequest","area":"tooling","title":"ContainerAsyncRequest","kind":"catalog-slice","capabilityIds":["tooling.containerasyncrequest"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/apex-container.ts","packages/runtime/src/soap.ts","packages/runtime/src/tooling.ts"],"localTestIds":["VO-DIFF-2112","VO-DIFF-2113","VO-DIFF-2114","VO-DIFF-2116","VO-DIFF-2117","VO-DIFF-2119"],"evidenceIds":["EV-tooling.containerasyncrequest-1532fe5"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Requests compile inside the creating API transaction through the shared Metadata deploy service; the first read already shows Completed or Failed (the reference reports Queued first); Check-only compiles roll back; unchanged member bodies are skipped; completed requests cannot be aborted; IsRunTests, MetadataContainerMemberId and non-class members are rejected as not implemented; Compiler diagnostics are compared for two syntax errors; other messages follow the shared Apex parser and remain reference-pending; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Requests compile inside the creating API transaction through the shared Metadata deploy service; the first read already shows Completed or Failed (the reference reports Queued first); Check-only compiles roll back; unchanged member bodies are skipped; completed requests cannot be aborted; IsRunTests, MetadataContainerMemberId and non-class members are rejected as not implemented; Compiler diagnostics are compared for two syntax errors; other messages follow the shared Apex parser and remain reference-pending; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-2112","status":"not-run"},{"id":"VO-DIFF-2113","status":"not-run"},{"id":"VO-DIFF-2114","status":"not-run"},{"id":"VO-DIFF-2116","status":"not-run"},{"id":"VO-DIFF-2117","status":"not-run"},{"id":"VO-DIFF-2119","status":"not-run"}],"contracts":[{"id":"tooling.containerasyncrequest","slug":"tooling--containerasyncrequest","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2112","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2112] requests and members reject unknown containers; an empty container compiles to Completed","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":15},{"id":"VO-DIFF-2113","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2113] ApexClassMember records carry the class metadata, content and an empty symbol table","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":16},{"id":"VO-DIFF-2114","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2114] a check-only ContainerAsyncRequest completes with DeployDetails and leaves the class unchanged","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":17},{"id":"VO-DIFF-2116","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2116] an applied ContainerAsyncRequest replaces the class body and symbol table","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":19},{"id":"VO-DIFF-2117","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2117] a request for unchanged members completes empty; completed requests cannot be aborted","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":20},{"id":"VO-DIFF-2119","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2119] failed compiles report component failures, keep the class body and leave no member symbol table","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":22}],"qualifiers":["Requests compile inside the creating API transaction through the shared Metadata deploy service; the first read already shows Completed or Failed (the reference reports Queued first)","Check-only compiles roll back; unchanged member bodies are skipped; completed requests cannot be aborted; IsRunTests, MetadataContainerMemberId and non-class members are rejected as not implemented","Compiler diagnostics are compared for two syntax errors; other messages follow the shared Apex parser and remain reference-pending","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-tooling.containerasyncrequest-1532fe5","kind":"differential-test","result":"pass","capabilityId":"tooling.containerasyncrequest","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2112, VO-DIFF-2113, VO-DIFF-2114, VO-DIFF-2116, VO-DIFF-2117, VO-DIFF-2119) against tests/compatibility/reference/2026-10-15-tooling3-api67.0.json","fixtureDigest":"sha256:377cdd287e01168b14f3fc8b4ac2e0b787f2c75799e94b23a096f5a755ac890d","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Tooling receipt (tooling3 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"tooling.symbol-tables","area":"tooling","title":"Symbol tables","kind":"gap","capabilityIds":["tooling.symbol-tables"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"rust-only-current","limitation":"Current Rust-only profile: predecessor TypeScript execution/coverage is retired. This workflow is explicitly unsupported or requires a new exact-source Rust comparison. Historical provider observations remain dated evidence, not current support.","nextAcceptance":"Verify the current explicit fence, then implement and compare a bounded canonical Rust workflow before admitting this slice.","historicalTypeScriptProfile":{"sourceRevision":"294ac9be","paths":["packages/runtime/src/symbol-table.ts","packages/runtime/src/tooling.ts","packages/runtime/src/apex-container.ts"],"reference":"linked-subset","evidenceIds":["EV-tooling.symbol-tables-1532fe5"],"limitation":"ApexClass and compiled ApexClassMember symbol tables match for constructors, methods, fields, properties, inner classes, enums, interfaces, parameters and locals in the recorded classes; externalReferences is always empty; member references cover in-class field, method, parameter and local usages; Modifier order, multi-argument generic spelling, extends, global/transient/webservice and static properties beyond the recorded cases are reference-pending; Differential match is profile-bound; broader parity unverified"},"localChecks":[],"contracts":[{"id":"tooling.symbol-tables","slug":"tooling--symbol-tables","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2115","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2115] a compiled member exposes a symbol table with the class ID and in-class references","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":18},{"id":"VO-DIFF-2116","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2116] an applied ContainerAsyncRequest replaces the class body and symbol table","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":19},{"id":"VO-DIFF-2120","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2120] ApexClass symbol tables describe members, modifiers, inner types, enums, interfaces and locals","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":23}],"qualifiers":["Rust partial reference admission: original standard-org-67.0 assertions (VO-DIFF-2115, VO-DIFF-2116, VO-DIFF-2120) matched unchanged recorded expectations on 2026-10-20; no fresh reference capture; source sha256:25703cdb02556431718756fb2ad386143121ae00c7ce35a64f0b2aaa2d0d36f4.","Broader migration status: unexecuted in selected packets. Other failures and unexecuted regressions remain explicit in /Users/jalillaaraichi/VirtualOrg-worktrees/apex-rust-full-parity/reports/apex-migration-parity-2026-10-19/supplement-reference-d7c9290d31228e257b5f43ea0bb94a1678dd73d5-attempt2/reference-packets.json and the current implementation report.","Offline recovery of the original bounded behavior using the selected Rust engine and canonical host. Original historical limitations retained: ApexClass and compiled ApexClassMember symbol tables match for constructors, methods, fields, properties, inner classes, enums, interfaces, parameters and locals in the recorded classes externalReferences is always empty; member references cover in-class field, method, parameter and local usages Modifier order, multi-argument generic spelling, extends, global/transient/webservice and static properties beyond the recorded cases are reference-pending Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-tooling.symbol-tables-1532fe5","kind":"differential-test","result":"pass","capabilityId":"tooling.symbol-tables","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2115, VO-DIFF-2116, VO-DIFF-2120) against tests/compatibility/reference/2026-10-15-tooling3-api67.0.json","fixtureDigest":"sha256:377cdd287e01168b14f3fc8b4ac2e0b787f2c75799e94b23a096f5a755ac890d","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]},{"id":"EV-tooling.symbol-tables-rust-d7c9290d3122-2f17c55b","kind":"differential-test","result":"pass","capabilityId":"tooling.symbol-tables","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2115, VO-DIFF-2116, VO-DIFF-2120) against tests/compatibility/reference/2026-10-15-tooling3-api67.0.json; offline Rust replay of original EV-tooling.symbol-tables-1532fe5 observed 2026-10-17, profile standard-org-67.0; source sha256:25703cdb02556431718756fb2ad386143121ae00c7ce35a64f0b2aaa2d0d36f4; manifest /Users/jalillaaraichi/VirtualOrg-worktrees/apex-rust-full-parity/reports/apex-migration-parity-2026-10-19/supplement-reference-d7c9290d31228e257b5f43ea0bb94a1678dd73d5-attempt2/reference-packets.json; report digests service-original-reference=sha256:ded4198648a0fa6f92468d9677c527156c66c1068a35da198b542f0effa4180d","fixtureDigest":"sha256:377cdd287e01168b14f3fc8b4ac2e0b787f2c75799e94b23a096f5a755ac890d","revision":"d7c9290d31228e257b5f43ea0bb94a1678dd73d5","recordedAt":"2026-10-20","environment":"Offline Rust Worker replay of unchanged recorded expectations; platform=darwin, arch=arm64, nodeVersion=v26.4.0, postgresVersion=180006, postgresCollation=C, postgresCtype=C, postgresEncoding=UTF8; no fresh reference operation","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Tooling receipt (tooling3 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"d7c9290d31228e257b5f43ea0bb94a1678dd73d5","environment":"Offline Rust Worker replay of unchanged recorded expectations; platform=darwin, arch=arm64, nodeVersion=v26.4.0, postgresVersion=180006, postgresCollation=C, postgresCtype=C, postgresEncoding=UTF8; no fresh reference operation","profile":"standard-org-67.0"}}]},{"id":"tooling.flowdefinition-records","area":"tooling","title":"FlowDefinition records","kind":"catalog-slice","capabilityIds":["tooling.flowdefinition-records"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/flow-records.ts","packages/runtime/src/tooling.ts"],"localTestIds":["VO-DIFF-516","VO-DIFF-517","VO-DIFF-568"],"evidenceIds":["EV-tooling.flowdefinition-records-c3441f6"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"FlowDefinitionView and FlowVersionView rows keep the 15-character ID with a vvv suffix; Differential match is profile-bound; broader parity unverified; Fresh October 18 Flow3 Tooling FlowDefinition ApiVersion is 68 for 19 rows, versus 67 in the selected October 10 oracle. Authored flow XML API versions and active Flow version observations are distinct and unchanged in that comparison; current-native renewal of the definition field is pending.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: FlowDefinitionView and FlowVersionView rows keep the 15-character ID with a vvv suffix; Differential match is profile-bound; broader parity unverified; Fresh October 18 Flow3 Tooling FlowDefinition ApiVersion is 68 for 19 rows, versus 67 in the selected October 10 oracle. Authored flow XML API versions and active Flow version observations are distinct and unchanged in that comparison; current-native renewal of the definition field is pending.","localChecks":[{"id":"VO-DIFF-516","status":"not-run"},{"id":"VO-DIFF-517","status":"not-run"},{"id":"VO-DIFF-568","status":"not-run"}],"contracts":[{"id":"tooling.flowdefinition-records","slug":"tooling--flowdefinition-records","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-516","file":"integration/reference-flow3.test.ts","layer":"integration","observations":[{"profile":"apex-final-original-services","status":"passed","fullName":"API 67.0 flow3 differential (flow3 org) [VO-DIFF-516] Tooling flow versions, FlowDefinition activation and active-version execution match the reference","packetDigest":"sha256:9d10e8ae3f99cee8e55f65bbe988e81d225c642e7be59963edd6b52fb3ea278b"}],"line":51},{"id":"VO-DIFF-517","file":"integration/reference-flow3.test.ts","layer":"integration","observations":[{"profile":"apex-final-original-services","status":"passed","fullName":"API 67.0 flow3 differential (flow3 org) [VO-DIFF-517] FlowDefinitionView, Tooling FlowDefinition and Flow records, API versions and run modes match the reference","packetDigest":"sha256:9d10e8ae3f99cee8e55f65bbe988e81d225c642e7be59963edd6b52fb3ea278b"}],"line":52},{"id":"VO-DIFF-568","file":"integration/reference-flow4.test.ts","layer":"integration","observations":[{"profile":"apex-final-original-services","status":"passed","fullName":"API 67.0 flow4 differential (flow4 org) [VO-DIFF-568] a flow version referenced by a failed interview cannot be deleted until the interview is, as in the reference","packetDigest":"sha256:9d10e8ae3f99cee8e55f65bbe988e81d225c642e7be59963edd6b52fb3ea278b"}],"line":67}],"qualifiers":["FlowDefinitionView and FlowVersionView rows keep the 15-character ID with a vvv suffix","Differential match is profile-bound; broader parity unverified","Fresh October 18 Flow3 Tooling FlowDefinition ApiVersion is 68 for 19 rows, versus 67 in the selected October 10 oracle. Authored flow XML API versions and active Flow version observations are distinct and unchanged in that comparison; current-native renewal of the definition field is pending."],"evidence":[{"id":"EV-tooling.flowdefinition-records-c3441f6","kind":"differential-test","result":"pass","capabilityId":"tooling.flowdefinition-records","recipe":"pnpm test:integration / pnpm test (VO-DIFF-568) against tests/compatibility/reference/2026-10-10-flow4-api67.0.json","fixtureDigest":"sha256:f947aa235db01bc7c871c47fa57a1f22abf221ea76b9e448dc011085a0c0d5d2","revision":"c3441f629f66b9bddf02f50b191dc11b061b3ba3","recordedAt":"2026-10-10","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.6.18","revision":"c3441f629f66b9bddf02f50b191dc11b061b3ba3","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"tooling.execute-anonymous-tooling-endpoint","area":"tooling","title":"Execute anonymous Tooling endpoint","kind":"catalog-slice","capabilityIds":["tooling.execute-anonymous-tooling-endpoint"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/soap.ts"],"localTestIds":["VO-APEX-011","VO-DIFF-100","VO-DIFF-122"],"evidenceIds":["EV-tooling.execute-anonymous-tooling-endpoint-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"GET tooling/executeAnonymous; GET tooling/executeAnonymous; traced runs store ApexLog rows; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: GET tooling/executeAnonymous; GET tooling/executeAnonymous; traced runs store ApexLog rows; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-APEX-011","status":"not-run"},{"id":"VO-DIFF-100","status":"not-run"},{"id":"VO-DIFF-122","status":"not-run"}],"contracts":[{"id":"tooling.execute-anonymous-tooling-endpoint","slug":"tooling--execute-anonymous-tooling-endpoint","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-APEX-011","file":"integration/apex.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"Apex execution and triggers [VO-APEX-011] executeAnonymous over Tooling REST reports compile and runtime failures","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":54},{"id":"VO-DIFF-100","file":"integration/reference-apex2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Apex language and standard library differential [VO-DIFF-100] String search, slicing and case methods matches the recorded executeAnonymous results","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":17},{"id":"VO-DIFF-122","file":"integration/reference-apex2.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Apex language and standard library differential [VO-DIFF-122] uncaught system exception in anonymous code matches the recorded executeAnonymous results","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":39}],"qualifiers":["GET tooling/executeAnonymous","GET tooling/executeAnonymous; traced runs store ApexLog rows","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-tooling.execute-anonymous-tooling-endpoint-feaf503","kind":"differential-test","result":"pass","capabilityId":"tooling.execute-anonymous-tooling-endpoint","recipe":"pnpm test:integration / pnpm test (VO-DIFF-100, VO-DIFF-122) against tests/compatibility/reference/2026-10-06-apex2-api67.0.json","fixtureDigest":"sha256:e8cdda2ecfaedb19f36ab7dca35ffd5642f204b013ec5f81f929c4b69932e378","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"cli.sf-org-login-access-token","area":"metadata-cli-soap","title":"sf org login access-token","kind":"catalog-slice","capabilityIds":["cli.sf-org-login-access-token"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/clients.ts"],"localTestIds":["VO-CLI-001","VO-DIFF-2101","VO-DIFF-2103"],"evidenceIds":["EV-cli.sf-org-login-access-token-1532fe5"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Unmodified @salesforce/cli 2.152.14 in an isolated CLI home; matches the API 67.0 reference receipt for access-token login and malformed, invalid and unparsable inputs (CLIAUTH-LOGIN-001/002); Declared profile difference: Virtual Org orgs have no TrialExpirationDate, so the CLI reports isScratch false and isExpired unknown where the reference reports the reference environment; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Unmodified @salesforce/cli 2.152.14 in an isolated CLI home; matches the API 67.0 reference receipt for access-token login and malformed, invalid and unparsable inputs (CLIAUTH-LOGIN-001/002); Declared profile difference: Virtual Org orgs have no TrialExpirationDate, so the CLI reports isScratch false and isExpired unknown where the reference reports the reference environment; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-001","status":"not-run"},{"id":"VO-DIFF-2101","status":"not-run"},{"id":"VO-DIFF-2103","status":"not-run"}],"contracts":[{"id":"cli.sf-org-login-access-token","slug":"cli--sf-org-login-access-token","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-001","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-001] logs in with sf org login access-token and displays the org","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-001] logs in with sf org login access-token and displays the org","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":51},{"id":"VO-DIFF-2101","file":"integration/reference-cli-auth.test.ts","layer":"integration","line":29},{"id":"VO-DIFF-2103","file":"integration/reference-cli-auth.test.ts","layer":"integration","line":31}],"qualifiers":["Unmodified @salesforce/cli 2.152.14 in an isolated CLI home; matches the API 67.0 reference receipt for access-token login and malformed, invalid and unparsable inputs (CLIAUTH-LOGIN-001/002)","Declared profile difference: Virtual Org orgs have no TrialExpirationDate, so the CLI reports isScratch false and isExpired unknown where the reference reports the reference environment","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-cli.sf-org-login-access-token-1532fe5","kind":"differential-test","result":"pass","capabilityId":"cli.sf-org-login-access-token","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2101, VO-DIFF-2103) against tests/compatibility/reference/2026-10-15-cli-auth-api67.0.json","fixtureDigest":"sha256:1bfa4bd5b078d87933f05aa394e028306abde7179c5f59886850a93cf083b067","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment CLI receipt (cli-auth suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"cli.sf-data-query","area":"metadata-cli-soap","title":"sf data query","kind":"catalog-slice","capabilityIds":["cli.sf-data-query"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts","packages/runtime/src/soql.ts","packages/runtime/src/tooling.ts"],"localTestIds":["VO-CLI-002","VO-CLI-005","VO-CLI-212"],"evidenceIds":["EV-cli.sf-data-query-315a408"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Requires columns=true metadata endpoint; Differential match is profile-bound; broader parity unverified; Fresh October 17 CLI record/query observations contain /services/data/v68.0/ attribute URLs. The pinned API 67.0 comparison does not renew those negotiated-version URL observations; create/update/delete subsets are unchanged in this comparison.; October18 cli2 successor selects the observed v68 query/tooling record-URL version segments. Historical identifier placeholders remain profile-bound; this does not admit all current CLI2 behavior.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Requires columns=true metadata endpoint; Differential match is profile-bound; broader parity unverified; Fresh October 17 CLI record/query observations contain /services/data/v68.0/ attribute URLs. The pinned API 67.0 comparison does not renew those negotiated-version URL observations; create/update/delete subsets are unchanged in this comparison.; October18 cli2 successor selects the observed v68 query/tooling record-URL version segments. Historical identifier placeholders remain profile-bound; this does not admit all current CLI2 behavior.","localChecks":[{"id":"VO-CLI-002","status":"not-run"},{"id":"VO-CLI-005","status":"not-run"},{"id":"VO-CLI-212","status":"not-run"}],"contracts":[{"id":"cli.sf-data-query","slug":"cli--sf-data-query","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-002","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":59},{"id":"VO-CLI-005","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-005] imports a record tree and deletes a record","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-005] imports a record tree and deletes a record","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":87},{"id":"VO-CLI-212","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-212] sf data query runs SOQL, COUNT(), Tooling and all-rows queries as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":36}],"qualifiers":["Requires columns=true metadata endpoint","Differential match is profile-bound; broader parity unverified","Fresh October 17 CLI record/query observations contain /services/data/v68.0/ attribute URLs. The pinned API 67.0 comparison does not renew those negotiated-version URL observations; create/update/delete subsets are unchanged in this comparison.","October18 cli2 successor selects the observed v68 query/tooling record-URL version segments. Historical identifier placeholders remain profile-bound; this does not admit all current CLI2 behavior."],"evidence":[{"id":"EV-cli.sf-data-query-315a408","kind":"differential-test","result":"pass","capabilityId":"cli.sf-data-query","recipe":"pnpm test:integration / pnpm test (VO-CLI-212) against tests/compatibility/reference/2026-10-07-cli2-api67.0.json","fixtureDigest":"sha256:9a7fb37ec550b0e2ca5d05393e0bb00484f7f326cbf0f5fde57605c47ab01bcc","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"cli.sf-data-upsert-bulk","area":"metadata-cli-soap","title":"sf data upsert bulk","kind":"catalog-slice","capabilityIds":["cli.sf-data-upsert-bulk"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-106"],"evidenceIds":["EV-cli.sf-data-upsert-bulk-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"With sf data bulk results and sf data export bulk; sf data query --bulk no longer exists in CLI 2.152; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: With sf data bulk results and sf data export bulk; sf data query --bulk no longer exists in CLI 2.152; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-106","status":"not-run"}],"contracts":[{"id":"cli.sf-data-upsert-bulk","slug":"cli--sf-data-upsert-bulk","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-106","file":"integration/sf-cli-api.test.ts","layer":"integration","line":63}],"qualifiers":["With sf data bulk results and sf data export bulk; sf data query --bulk no longer exists in CLI 2.152","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-cli.sf-data-upsert-bulk-feaf503","kind":"differential-test","result":"pass","capabilityId":"cli.sf-data-upsert-bulk","recipe":"pnpm test:integration / pnpm test (VO-CLI-106) against tests/compatibility/reference/2026-10-06-cli-api67.0.json","fixtureDigest":"sha256:91f17c2b26b1e95c0a81593d7a5f0c7235dbac6ed127d1a97eed3c63e92a4406","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"cli.sf-project-retrieve-start","area":"metadata-cli-soap","title":"sf project retrieve start","kind":"catalog-slice","capabilityIds":["cli.sf-project-retrieve-start"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts","packages/metadata/src/index.ts","packages/runtime/src/deploy.ts"],"localTestIds":["VO-CLI-008","VO-CLI-102","VO-CLI-103","VO-CLI-104"],"evidenceIds":["EV-cli.sf-project-retrieve-start-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Retrieves previously deployed source for objects, fields, permission sets, profiles, roles and Apex; standard-object retrieval not supported; --manifest, --source-dir and tracked retrieves; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Retrieves previously deployed source for objects, fields, permission sets, profiles, roles and Apex; standard-object retrieval not supported; --manifest, --source-dir and tracked retrieves; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-008","status":"not-run"},{"id":"VO-CLI-102","status":"not-run"},{"id":"VO-CLI-103","status":"not-run"},{"id":"VO-CLI-104","status":"not-run"}],"contracts":[{"id":"cli.sf-project-retrieve-start","slug":"cli--sf-project-retrieve-start","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-008","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-008] retrieves deployed metadata back into a DX project with sf project retrieve start","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-008] retrieves deployed metadata back into a DX project with sf project retrieve start","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":126},{"id":"VO-CLI-102","file":"integration/sf-cli-api.test.ts","layer":"integration","line":59},{"id":"VO-CLI-103","file":"integration/sf-cli-api.test.ts","layer":"integration","line":60},{"id":"VO-CLI-104","file":"integration/sf-cli-api.test.ts","layer":"integration","line":61}],"qualifiers":["Retrieves previously deployed source for objects, fields, permission sets, profiles, roles and Apex; standard-object retrieval not supported","--manifest, --source-dir and tracked retrieves","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-cli.sf-project-retrieve-start-feaf503","kind":"differential-test","result":"pass","capabilityId":"cli.sf-project-retrieve-start","recipe":"pnpm test:integration / pnpm test (VO-CLI-102, VO-CLI-103, VO-CLI-104) against tests/compatibility/reference/2026-10-06-cli-api67.0.json","fixtureDigest":"sha256:91f17c2b26b1e95c0a81593d7a5f0c7235dbac6ed127d1a97eed3c63e92a4406","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"cli.sf-project-deploy-start","area":"metadata-cli-soap","title":"sf project deploy start","kind":"catalog-slice","capabilityIds":["cli.sf-project-deploy-start"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts","packages/metadata/src/index.ts","packages/runtime/src/deploy.ts"],"localTestIds":["VO-CLI-006","VO-CLI-007","VO-CLI-100","VO-CLI-101","VO-CLI-104","VO-CLI-216","VO-CLI-218"],"evidenceIds":["EV-cli.sf-project-deploy-start-315a408"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"SOAP Metadata API deploy; synchronous completion reported through checkDeployStatus; test levels run Apex tests; --dry-run, failures and tracked deploys as recorded; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: SOAP Metadata API deploy; synchronous completion reported through checkDeployStatus; test levels run Apex tests; --dry-run, failures and tracked deploys as recorded; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-006","status":"not-run"},{"id":"VO-CLI-007","status":"not-run"},{"id":"VO-CLI-100","status":"not-run"},{"id":"VO-CLI-101","status":"not-run"},{"id":"VO-CLI-104","status":"not-run"},{"id":"VO-CLI-216","status":"not-run"},{"id":"VO-CLI-218","status":"not-run"}],"contracts":[{"id":"cli.sf-project-deploy-start","slug":"cli--sf-project-deploy-start","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-006","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":98},{"id":"VO-CLI-007","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-007] reports a failing deploy with component errors and leaves metadata unchanged","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-007] reports a failing deploy with component errors and leaves metadata unchanged","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":116},{"id":"VO-CLI-100","file":"integration/sf-cli-api.test.ts","layer":"integration","line":57},{"id":"VO-CLI-101","file":"integration/sf-cli-api.test.ts","layer":"integration","line":58},{"id":"VO-CLI-104","file":"integration/sf-cli-api.test.ts","layer":"integration","line":61},{"id":"VO-CLI-216","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-216] a class keeps the API version its source declares through deploy and retrieve as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":40},{"id":"VO-CLI-218","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-218] local and remote deletions flow through source tracking and IsNameObsolete as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":42}],"qualifiers":["SOAP Metadata API deploy; synchronous completion reported through checkDeployStatus; test levels run Apex tests","--dry-run, failures and tracked deploys as recorded","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-cli.sf-project-deploy-start-315a408","kind":"differential-test","result":"pass","capabilityId":"cli.sf-project-deploy-start","recipe":"pnpm test:integration / pnpm test (VO-CLI-216, VO-CLI-218) against tests/compatibility/reference/2026-10-07-cli2-api67.0.json","fixtureDigest":"sha256:9a7fb37ec550b0e2ca5d05393e0bb00484f7f326cbf0f5fde57605c47ab01bcc","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"cli.sf-project-deploy-validate","area":"metadata-cli-soap","title":"sf project deploy validate","kind":"catalog-slice","capabilityIds":["cli.sf-project-deploy-validate"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/soap.ts","packages/runtime/src/deploy.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"rust-only-current","limitation":"Current Rust-only profile: predecessor TypeScript execution/coverage is retired. This workflow is explicitly unsupported or requires a new exact-source Rust comparison. Historical provider observations remain dated evidence, not current support.","nextAcceptance":"Verify the current explicit fence, then implement and compare a bounded canonical Rust workflow before admitting this slice.","historicalTypeScriptProfile":{"sourceRevision":"294ac9be","paths":["packages/runtime/src/soap.ts","packages/runtime/src/apex-tests.ts"],"reference":"linked-subset","evidenceIds":["EV-cli.sf-project-deploy-validate-315a408"],"limitation":"Check-only SOAP deploy with tests; RunRelevantTests is not supported; Differential match is profile-bound; broader parity unverified"},"localChecks":[],"contracts":[{"id":"cli.sf-project-deploy-validate","slug":"cli--sf-project-deploy-validate","support":"experimental","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-200","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-200] sf project deploy validate runs the specified tests in a check-only deploy as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":24},{"id":"VO-CLI-203","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-203] sf project deploy validate fails on insufficient coverage as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":27}],"qualifiers":["Rust-only current profile: NoTestRun deployment/checkOnly remains; non-NoTestRun is UNSUPPORTED_APEX_DEPLOY_TESTS. Historical TypeScript-default parity is not current Rust parity. Exact current outcomes require source-bound receipts; broader API/annotation/authority behavior remains unqualified.","Historical TypeScript-default profile: Check-only SOAP deploy with tests; RunRelevantTests is not supported","Historical TypeScript-default profile: Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-cli.sf-project-deploy-validate-315a408","kind":"differential-test","result":"pass","capabilityId":"cli.sf-project-deploy-validate","recipe":"pnpm test:integration / pnpm test (VO-CLI-200, VO-CLI-203) against tests/compatibility/reference/2026-10-07-cli2-api67.0.json","fixtureDigest":"sha256:9a7fb37ec550b0e2ca5d05393e0bb00484f7f326cbf0f5fde57605c47ab01bcc","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":null,"environment":"local Rust-only workerd + PostgreSQL 18; see source-bound current test receipts","profile":"rust-only-apex-api67-local-pilot"}}]},{"id":"cli.sf-project-deploy-report","area":"metadata-cli-soap","title":"sf project deploy report","kind":"catalog-slice","capabilityIds":["cli.sf-project-deploy-report"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts"],"localTestIds":["VO-CLI-201"],"evidenceIds":["EV-cli.sf-project-deploy-report-315a408"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"checkDeployStatus of completed deploys; deploys complete synchronously; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: checkDeployStatus of completed deploys; deploys complete synchronously; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-201","status":"not-run"}],"contracts":[{"id":"cli.sf-project-deploy-report","slug":"cli--sf-project-deploy-report","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-201","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-201] sf project deploy report reports a validation and rejects a malformed job ID as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":25}],"qualifiers":["checkDeployStatus of completed deploys; deploys complete synchronously","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-cli.sf-project-deploy-report-315a408","kind":"differential-test","result":"pass","capabilityId":"cli.sf-project-deploy-report","recipe":"pnpm test:integration / pnpm test (VO-CLI-201) against tests/compatibility/reference/2026-10-07-cli2-api67.0.json","fixtureDigest":"sha256:9a7fb37ec550b0e2ca5d05393e0bb00484f7f326cbf0f5fde57605c47ab01bcc","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"cli.sf-apex-run","area":"metadata-cli-soap","title":"sf apex run","kind":"catalog-slice","capabilityIds":["cli.sf-apex-run"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/soap.ts"],"localTestIds":["VO-CLI-009","VO-CLI-204"],"evidenceIds":["EV-cli.sf-apex-run-315a408"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"SOAP Apex API executeAnonymous with DebuggingInfo log; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: SOAP Apex API executeAnonymous with DebuggingInfo log; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-009","status":"not-run"},{"id":"VO-CLI-204","status":"not-run"}],"contracts":[{"id":"cli.sf-apex-run","slug":"cli--sf-apex-run","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-009","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-009] runs anonymous Apex that calls a deployed class through sf apex run","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-009] runs anonymous Apex that calls a deployed class through sf apex run","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":138},{"id":"VO-CLI-204","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-204] sf apex run reports debug output, compile problems and uncaught exceptions as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":28}],"qualifiers":["SOAP Apex API executeAnonymous with DebuggingInfo log","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-cli.sf-apex-run-315a408","kind":"differential-test","result":"pass","capabilityId":"cli.sf-apex-run","recipe":"pnpm test:integration / pnpm test (VO-CLI-204) against tests/compatibility/reference/2026-10-07-cli2-api67.0.json","fixtureDigest":"sha256:9a7fb37ec550b0e2ca5d05393e0bb00484f7f326cbf0f5fde57605c47ab01bcc","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"cli.sf-apex-run-test","area":"metadata-cli-soap","title":"sf apex run test","kind":"gap","capabilityIds":["cli.sf-apex-run-test"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"rust-only-current","limitation":"Current Rust-only profile: predecessor TypeScript execution/coverage is retired. This workflow is explicitly unsupported or requires a new exact-source Rust comparison. Historical provider observations remain dated evidence, not current support.","nextAcceptance":"Verify the current explicit fence, then implement and compare a bounded canonical Rust workflow before admitting this slice.","historicalTypeScriptProfile":{"sourceRevision":"294ac9be","paths":["packages/runtime/src/apex-tests.ts"],"reference":"linked-subset","evidenceIds":["EV-cli.sf-apex-run-test-29bc263"],"limitation":"Asynchronous (default) runs poll Tooling queries; sf apex get test (streaming) is not supported; Differential match is profile-bound; broader parity unverified; Fresh October18 asynchronous CLI test output records null Message and StackTrace on the passing test where the pinned October6 observation has empty strings. Outcome/counts and failure details are unchanged. The exact nullable cells match the actual Rust-entry VO-CLI-013 comparison at revision157138cb with VIRTUALORG_TEST_RELEASE_DRIFT=1; broader CLI row limits and historical observations remain separate."},"localChecks":[],"contracts":[{"id":"cli.sf-apex-run-test","slug":"cli--sf-apex-run-test","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-010","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-010] runs Apex tests with setup, isolation and failures through sf apex run test","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-010] runs Apex tests with setup, isolation and failures through sf apex run test","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":147},{"id":"VO-CLI-013","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-013] runs Apex tests asynchronously (default) and polls results through sf apex run test --wait","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-013] runs Apex tests asynchronously (default) and polls results through sf apex run test --wait","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":184}],"qualifiers":["Rust partial reference admission: original standard-org-67.0 assertions (VO-CLI-013) matched unchanged recorded expectations on 2026-10-20; no fresh reference capture; source sha256:25703cdb02556431718756fb2ad386143121ae00c7ce35a64f0b2aaa2d0d36f4.","Broader migration status: recovered in selected packets. Other failures and unexecuted regressions remain explicit in /Users/jalillaaraichi/VirtualOrg-worktrees/apex-rust-full-parity/reports/apex-migration-parity-2026-10-19/supplement-reference-d7c9290d31228e257b5f43ea0bb94a1678dd73d5-attempt2/reference-packets.json and the current implementation report.","Offline recovery of the original bounded behavior using the selected Rust engine and canonical host. Original historical limitations retained: Asynchronous (default) runs poll Tooling queries; sf apex get test (streaming) is not supported Differential match is profile-bound; broader parity unverified Fresh October18 asynchronous CLI test output records null Message and StackTrace on the passing test where the pinned October6 observation has empty strings. Outcome/counts and failure details are unchanged. The exact nullable cells match the actual Rust-entry VO-CLI-013 comparison at revision157138cb with VIRTUALORG_TEST_RELEASE_DRIFT=1; broader CLI row limits and historical observations remain separate."],"evidence":[{"id":"EV-cli.sf-apex-run-test-29bc263","kind":"differential-test","result":"pass","capabilityId":"cli.sf-apex-run-test","recipe":"pnpm test:integration / pnpm test (VO-CLI-013) against tests/compatibility/reference/apex-async-cli-api67.0.json","fixtureDigest":"sha256:d9d0da8b0372c890e399bd77e96379934c79b9a187bb9d1c0ea472886f1270e0","revision":"29bc263511b7abc5cae2ca7dc300f882665b8293","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]},{"id":"EV-cli.sf-apex-run-test-rust-d7c9290d3122-6660e4c4","kind":"differential-test","result":"pass","capabilityId":"cli.sf-apex-run-test","recipe":"pnpm test:integration / pnpm test (VO-CLI-013) against tests/compatibility/reference/apex-async-cli-api67.0.json; offline Rust replay of original EV-cli.sf-apex-run-test-29bc263 observed 2026-10-06, profile standard-org-67.0; source sha256:25703cdb02556431718756fb2ad386143121ae00c7ce35a64f0b2aaa2d0d36f4; manifest /Users/jalillaaraichi/VirtualOrg-worktrees/apex-rust-full-parity/reports/apex-migration-parity-2026-10-19/supplement-reference-d7c9290d31228e257b5f43ea0bb94a1678dd73d5-attempt2/reference-packets.json; report digests service-original-reference=sha256:ded4198648a0fa6f92468d9677c527156c66c1068a35da198b542f0effa4180d","fixtureDigest":"sha256:d9d0da8b0372c890e399bd77e96379934c79b9a187bb9d1c0ea472886f1270e0","revision":"d7c9290d31228e257b5f43ea0bb94a1678dd73d5","recordedAt":"2026-10-20","environment":"Offline Rust Worker replay of unchanged recorded expectations; platform=darwin, arch=arm64, nodeVersion=v26.4.0, postgresVersion=180006, postgresCollation=C, postgresCtype=C, postgresEncoding=UTF8; no fresh reference operation","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"d7c9290d31228e257b5f43ea0bb94a1678dd73d5","environment":"Offline Rust Worker replay of unchanged recorded expectations; platform=darwin, arch=arm64, nodeVersion=v26.4.0, postgresVersion=180006, postgresCollation=C, postgresCtype=C, postgresEncoding=UTF8; no fresh reference operation","profile":"standard-org-67.0"}}]},{"id":"cli.current-sf-cli-command-version","area":"metadata-cli-soap","title":"Current sf CLI command version","kind":"catalog-slice","capabilityIds":["cli.current-sf-cli-command-version"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/index.ts"],"localTestIds":["VO-CLI-206","VO-CLI-220"],"evidenceIds":["EV-cli.current-sf-cli-command-version-315a408"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Receipts and tests pinned to @salesforce/cli 2.152.14 (sf v2 commands); the CLI negotiates API 67.0 from /services/data; Differential match is profile-bound; broader parity unverified; The fresh October 17 CLI observation reports instance API 68.0; current comparisons remain pinned to the earlier API 67.0 instance observation. Installed CLI version and instance API version are separate contracts.; October18 cli2 successor compares observed v68 discovery fields; other assertions remain the historical API67 project profile. CLI binary identity remains checked separately.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Receipts and tests pinned to @salesforce/cli 2.152.14 (sf v2 commands); the CLI negotiates API 67.0 from /services/data; Differential match is profile-bound; broader parity unverified; The fresh October 17 CLI observation reports instance API 68.0; current comparisons remain pinned to the earlier API 67.0 instance observation. Installed CLI version and instance API version are separate contracts.; October18 cli2 successor compares observed v68 discovery fields; other assertions remain the historical API67 project profile. CLI binary identity remains checked separately.","localChecks":[{"id":"VO-CLI-206","status":"not-run"},{"id":"VO-CLI-220","status":"not-run"}],"contracts":[{"id":"cli.current-sf-cli-command-version","slug":"cli--current-sf-cli-command-version","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-206","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-206] sf org display reports the recorded current discovery version as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":30},{"id":"VO-CLI-220","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-220] the installed sf CLI is the version the receipt was recorded with","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":87}],"qualifiers":["Receipts and tests pinned to @salesforce/cli 2.152.14 (sf v2 commands); the CLI negotiates API 67.0 from /services/data","Differential match is profile-bound; broader parity unverified","The fresh October 17 CLI observation reports instance API 68.0; current comparisons remain pinned to the earlier API 67.0 instance observation. Installed CLI version and instance API version are separate contracts.","October18 cli2 successor compares observed v68 discovery fields; other assertions remain the historical API67 project profile. CLI binary identity remains checked separately."],"evidence":[{"id":"EV-cli.current-sf-cli-command-version-315a408","kind":"differential-test","result":"pass","capabilityId":"cli.current-sf-cli-command-version","recipe":"pnpm test:integration / pnpm test (VO-CLI-206, VO-CLI-220) against tests/compatibility/reference/2026-10-07-cli2-api67.0.json","fixtureDigest":"sha256:9a7fb37ec550b0e2ca5d05393e0bb00484f7f326cbf0f5fde57605c47ab01bcc","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.bulk-api-2-0-ingest-jobs","area":"bulk2","title":"Bulk API 2.0 ingest jobs","kind":"catalog-slice","capabilityIds":["bulk.bulk-api-2-0-ingest-jobs"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-344","VO-DIFF-345","VO-DIFF-348"],"evidenceIds":["EV-bulk.bulk-api-2-0-ingest-jobs-9366705"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Processed synchronously when the upload completes, in 200-record batches; Job info shapes per resource as recorded; Differential match is profile-bound; broader parity unverified; Missing-content UploadComplete is rejected without changing Open state; immediate readback retains contentUrl and omits processing counters, matching October17. Historical opposite observations remain retained; eventual processing and release causality are not inferred.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Processed synchronously when the upload completes, in 200-record batches; Job info shapes per resource as recorded; Differential match is profile-bound; broader parity unverified; Missing-content UploadComplete is rejected without changing Open state; immediate readback retains contentUrl and omits processing counters, matching October17. Historical opposite observations remain retained; eventual processing and release causality are not inferred.","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-344","status":"not-run"},{"id":"VO-DIFF-345","status":"not-run"},{"id":"VO-DIFF-348","status":"not-run"}],"contracts":[{"id":"bulk.bulk-api-2-0-ingest-jobs","slug":"bulk--bulk-api-2-0-ingest-jobs","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-344","file":"integration/reference-bulk2.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-345","file":"integration/reference-bulk2.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-348","file":"integration/reference-bulk2.test.ts","layer":"integration","line":19},{"id":"VO-DRIFT-003","file":"integration/reference-release-drift.test.ts","layer":"integration","line":65},{"id":"VO-DRIFT-009","file":"integration/reference-release-drift.test.ts","layer":"integration","sinceVersion":"0.7.25","line":70}],"qualifiers":["Processed synchronously when the upload completes, in 200-record batches","Job info shapes per resource as recorded","Differential match is profile-bound; broader parity unverified","Missing-content UploadComplete is rejected without changing Open state; immediate readback retains contentUrl and omits processing counters, matching October17. Historical opposite observations remain retained; eventual processing and release causality are not inferred."],"evidence":[{"id":"EV-bulk.bulk-api-2-0-ingest-jobs-9366705","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-2-0-ingest-jobs","recipe":"VIRTUALORG_TEST_RELEASE_DRIFT=1 pnpm test:integration integration/reference-release-drift.test.ts plus the unchanged broad replay with its dated successor case; compare tests/compatibility/reference/2026-10-18-bulk-empty-successor-api67.0.json","fixtureDigest":"sha256:e2d37057295e5c4988f1e3d30c4730bd8195ee30c5a05f4719ae6bfa73f98cb4","revision":"93667050048d8788c658b39cb4514401376d0923","recordedAt":"2026-10-18","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Dated API67 observations with October17/18 successor comparisons; original receipts remain preserved."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"93667050048d8788c658b39cb4514401376d0923","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.csv-parsing","area":"bulk2","title":"CSV parsing","kind":"catalog-slice","capabilityIds":["bulk.csv-parsing"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-344","VO-DIFF-345"],"evidenceIds":["EV-bulk.csv-parsing-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"RFC 4180 quoting; empty cells leave fields unset; #N/A sets null; COMMA, PIPE, SEMICOLON, TAB, CARET, BACKQUOTE; LF and CRLF; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: RFC 4180 quoting; empty cells leave fields unset; #N/A sets null; COMMA, PIPE, SEMICOLON, TAB, CARET, BACKQUOTE; LF and CRLF; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-344","status":"not-run"},{"id":"VO-DIFF-345","status":"not-run"}],"contracts":[{"id":"bulk.csv-parsing","slug":"bulk--csv-parsing","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-344","file":"integration/reference-bulk2.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-345","file":"integration/reference-bulk2.test.ts","layer":"integration","line":16}],"qualifiers":["RFC 4180 quoting; empty cells leave fields unset; #N/A sets null","COMMA, PIPE, SEMICOLON, TAB, CARET, BACKQUOTE; LF and CRLF","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.csv-parsing-feaf503","kind":"differential-test","result":"pass","capabilityId":"bulk.csv-parsing","recipe":"pnpm test:integration / pnpm test (VO-DIFF-344, VO-DIFF-345) against tests/compatibility/reference/2026-10-06-bulk2-api67.0.json","fixtureDigest":"sha256:2d7a2c8a7967ab4403d70a904e46889e9192fb1cb854d966f14867a61807cc57","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.bulk-insert","area":"bulk2","title":"Bulk insert","kind":"catalog-slice","capabilityIds":["bulk.bulk-insert"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-345"],"evidenceIds":["EV-bulk.bulk-insert-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Runs the shared save path (triggers, validation rules); Quoted delimiters, invalid dates and restricted picklists; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Runs the shared save path (triggers, validation rules); Quoted delimiters, invalid dates and restricted picklists; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-345","status":"not-run"}],"contracts":[{"id":"bulk.bulk-insert","slug":"bulk--bulk-insert","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-345","file":"integration/reference-bulk2.test.ts","layer":"integration","line":16}],"qualifiers":["Runs the shared save path (triggers, validation rules)","Quoted delimiters, invalid dates and restricted picklists","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-insert-feaf503","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-insert","recipe":"pnpm test:integration / pnpm test (VO-DIFF-345) against tests/compatibility/reference/2026-10-06-bulk2-api67.0.json","fixtureDigest":"sha256:2d7a2c8a7967ab4403d70a904e46889e9192fb1cb854d966f14867a61807cc57","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.bulk-update","area":"bulk2","title":"Bulk update","kind":"catalog-slice","capabilityIds":["bulk.bulk-update"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-737","VO-DIFF-2178","VO-DIFF-2179"],"evidenceIds":["EV-bulk.bulk-update-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Id column required; 15- and 18-character IDs, invalid and duplicate IDs and empty cells behave as recorded; A record ID repeated in one file is saved once per row in file order, so the last value wins (PARTIAL-BULK-UPDATE-001); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Id column required; 15- and 18-character IDs, invalid and duplicate IDs and empty cells behave as recorded; A record ID repeated in one file is saved once per row in file order, so the last value wins (PARTIAL-BULK-UPDATE-001); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-737","status":"not-run"},{"id":"VO-DIFF-2178","status":"not-run"},{"id":"VO-DIFF-2179","status":"not-run"}],"contracts":[{"id":"bulk.bulk-update","slug":"bulk--bulk-update","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-737","file":"integration/reference-api3.test.ts","layer":"integration","line":50},{"id":"VO-DIFF-2178","file":"integration/reference-partial-save.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-2179","file":"integration/reference-partial-save.test.ts","layer":"integration","line":14}],"qualifiers":["Id column required; 15- and 18-character IDs, invalid and duplicate IDs and empty cells behave as recorded","A record ID repeated in one file is saved once per row in file order, so the last value wins (PARTIAL-BULK-UPDATE-001)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-update-685ab1e","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-update","recipe":"pnpm test:integration / pnpm test (VO-DIFF-737) against tests/compatibility/reference/2026-10-07-api3-api67.0.json","fixtureDigest":"sha256:ec1c80d2345e6d2fa1922b0254f9c717674928b6db2513a0f1a7a2558725bbee","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.bulk-upsert","area":"bulk2","title":"Bulk upsert","kind":"catalog-slice","capabilityIds":["bulk.bulk-upsert"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-344","VO-CLI-106","VO-DIFF-738","VO-DIFF-2180","VO-DIFF-2181"],"evidenceIds":["EV-bulk.bulk-upsert-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Results in uploaded row order; deserialization failures listed after DML failures; External ID or Id; case-insensitive matches and duplicate keys as recorded; A row without an external ID value fails with MISSING_ARGUMENT, a failed update of a matched record reports its ID, and a created record without a Name is named by its ID (PARTIAL-BULK-UPSERT-001); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Results in uploaded row order; deserialization failures listed after DML failures; External ID or Id; case-insensitive matches and duplicate keys as recorded; A row without an external ID value fails with MISSING_ARGUMENT, a failed update of a matched record reports its ID, and a created record without a Name is named by its ID (PARTIAL-BULK-UPSERT-001); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-344","status":"not-run"},{"id":"VO-CLI-106","status":"not-run"},{"id":"VO-DIFF-738","status":"not-run"},{"id":"VO-DIFF-2180","status":"not-run"},{"id":"VO-DIFF-2181","status":"not-run"}],"contracts":[{"id":"bulk.bulk-upsert","slug":"bulk--bulk-upsert","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-344","file":"integration/reference-bulk2.test.ts","layer":"integration","line":15},{"id":"VO-CLI-106","file":"integration/sf-cli-api.test.ts","layer":"integration","line":63},{"id":"VO-DIFF-738","file":"integration/reference-api3.test.ts","layer":"integration","line":51},{"id":"VO-DIFF-2180","file":"integration/reference-partial-save.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-2181","file":"integration/reference-partial-save.test.ts","layer":"integration","line":16}],"qualifiers":["Results in uploaded row order; deserialization failures listed after DML failures","External ID or Id; case-insensitive matches and duplicate keys as recorded","A row without an external ID value fails with MISSING_ARGUMENT, a failed update of a matched record reports its ID, and a created record without a Name is named by its ID (PARTIAL-BULK-UPSERT-001)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-upsert-685ab1e","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-upsert","recipe":"pnpm test:integration / pnpm test (VO-DIFF-738) against tests/compatibility/reference/2026-10-07-api3-api67.0.json","fixtureDigest":"sha256:ec1c80d2345e6d2fa1922b0254f9c717674928b6db2513a0f1a7a2558725bbee","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.bulk-delete","area":"bulk2","title":"Bulk delete","kind":"catalog-slice","capabilityIds":["bulk.bulk-delete"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-347"],"evidenceIds":["EV-bulk.bulk-delete-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Soft delete; hardDelete treated as delete; Unknown IDs fail with INVALID_CROSS_REFERENCE_KEY; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Soft delete; hardDelete treated as delete; Unknown IDs fail with INVALID_CROSS_REFERENCE_KEY; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-347","status":"not-run"}],"contracts":[{"id":"bulk.bulk-delete","slug":"bulk--bulk-delete","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-347","file":"integration/reference-bulk2.test.ts","layer":"integration","line":18}],"qualifiers":["Soft delete; hardDelete treated as delete","Unknown IDs fail with INVALID_CROSS_REFERENCE_KEY","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-delete-feaf503","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-delete","recipe":"pnpm test:integration / pnpm test (VO-DIFF-347) against tests/compatibility/reference/2026-10-06-bulk2-api67.0.json","fixtureDigest":"sha256:2d7a2c8a7967ab4403d70a904e46889e9192fb1cb854d966f14867a61807cc57","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.bulk-hard-delete","area":"bulk2","title":"Bulk hard delete","kind":"catalog-slice","capabilityIds":["bulk.bulk-hard-delete"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-DIFF-347"],"evidenceIds":["EV-bulk.bulk-hard-delete-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Always FEATURENOTENABLED: the Bulk API Hard Delete permission is not modeled (the recorded administrator lacks it too); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Always FEATURENOTENABLED: the Bulk API Hard Delete permission is not modeled (the recorded administrator lacks it too); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-347","status":"not-run"}],"contracts":[{"id":"bulk.bulk-hard-delete","slug":"bulk--bulk-hard-delete","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-347","file":"integration/reference-bulk2.test.ts","layer":"integration","line":18}],"qualifiers":["Always FEATURENOTENABLED: the Bulk API Hard Delete permission is not modeled (the recorded administrator lacks it too)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-hard-delete-feaf503","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-hard-delete","recipe":"pnpm test:integration / pnpm test (VO-DIFF-347) against tests/compatibility/reference/2026-10-06-bulk2-api67.0.json","fixtureDigest":"sha256:2d7a2c8a7967ab4403d70a904e46889e9192fb1cb854d966f14867a61807cc57","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.bulk-query-jobs","area":"bulk2","title":"Bulk query jobs","kind":"catalog-slice","capabilityIds":["bulk.bulk-query-jobs"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-341","VO-DIFF-342","VO-DIFF-343"],"evidenceIds":["EV-bulk.bulk-query-jobs-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Query executed at job creation; Processed at creation; COUNT(), aggregates, sub-queries and OFFSET rejected with recorded messages; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Query executed at job creation; Processed at creation; COUNT(), aggregates, sub-queries and OFFSET rejected with recorded messages; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-341","status":"not-run"},{"id":"VO-DIFF-342","status":"not-run"},{"id":"VO-DIFF-343","status":"not-run"}],"contracts":[{"id":"bulk.bulk-query-jobs","slug":"bulk--bulk-query-jobs","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-341","file":"integration/reference-bulk2.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-342","file":"integration/reference-bulk2.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-343","file":"integration/reference-bulk2.test.ts","layer":"integration","line":14}],"qualifiers":["Query executed at job creation","Processed at creation; COUNT(), aggregates, sub-queries and OFFSET rejected with recorded messages","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-query-jobs-feaf503","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-query-jobs","recipe":"pnpm test:integration / pnpm test (VO-DIFF-341, VO-DIFF-342, VO-DIFF-343) against tests/compatibility/reference/2026-10-06-bulk2-api67.0.json","fixtureDigest":"sha256:2d7a2c8a7967ab4403d70a904e46889e9192fb1cb854d966f14867a61807cc57","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.bulk-query-results","area":"bulk2","title":"Bulk query results","kind":"catalog-slice","capabilityIds":["bulk.bulk-query-results"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-341","VO-DIFF-342","VO-CLI-106","VO-DIFF-2177"],"evidenceIds":["EV-bulk.bulk-query-results-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Locator-based paging over a stored result; Opaque locators, maxRecords, delimiters and line endings; datetimes in Z form; Doubles render as Java Double.toString below sixteen significant digits and as plain digits from sixteen (123456789012345680, 0.0001234567890123456), as recorded (NUMEXACT-BULK-001); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Locator-based paging over a stored result; Opaque locators, maxRecords, delimiters and line endings; datetimes in Z form; Doubles render as Java Double.toString below sixteen significant digits and as plain digits from sixteen (123456789012345680, 0.0001234567890123456), as recorded (NUMEXACT-BULK-001); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-341","status":"not-run"},{"id":"VO-DIFF-342","status":"not-run"},{"id":"VO-CLI-106","status":"not-run"},{"id":"VO-DIFF-2177","status":"not-run"}],"contracts":[{"id":"bulk.bulk-query-results","slug":"bulk--bulk-query-results","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-341","file":"integration/reference-bulk2.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-342","file":"integration/reference-bulk2.test.ts","layer":"integration","line":13},{"id":"VO-CLI-106","file":"integration/sf-cli-api.test.ts","layer":"integration","line":63},{"id":"VO-DIFF-2177","file":"integration/reference-numeric-exact.test.ts","layer":"integration","line":19}],"qualifiers":["Locator-based paging over a stored result","Opaque locators, maxRecords, delimiters and line endings; datetimes in Z form","Doubles render as Java Double.toString below sixteen significant digits and as plain digits from sixteen (123456789012345680, 0.0001234567890123456), as recorded (NUMEXACT-BULK-001)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-query-results-feaf503","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-query-results","recipe":"pnpm test:integration / pnpm test (VO-DIFF-341, VO-DIFF-342, VO-CLI-106) against tests/compatibility/reference/2026-10-06-bulk2-api67.0.json","fixtureDigest":"sha256:2d7a2c8a7967ab4403d70a904e46889e9192fb1cb854d966f14867a61807cc57","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.job-cancellation","area":"bulk2","title":"Job cancellation","kind":"catalog-slice","capabilityIds":["bulk.job-cancellation"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-DIFF-346","VO-DIFF-343"],"evidenceIds":["EV-bulk.job-cancellation-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Aborted ingest jobs reject uploads and UploadComplete; completed jobs cannot be aborted; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Aborted ingest jobs reject uploads and UploadComplete; completed jobs cannot be aborted; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-346","status":"not-run"},{"id":"VO-DIFF-343","status":"not-run"}],"contracts":[{"id":"bulk.job-cancellation","slug":"bulk--job-cancellation","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-346","file":"integration/reference-bulk2.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-343","file":"integration/reference-bulk2.test.ts","layer":"integration","line":14}],"qualifiers":["Aborted ingest jobs reject uploads and UploadComplete; completed jobs cannot be aborted","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.job-cancellation-feaf503","kind":"differential-test","result":"pass","capabilityId":"bulk.job-cancellation","recipe":"pnpm test:integration / pnpm test (VO-DIFF-346, VO-DIFF-343) against tests/compatibility/reference/2026-10-06-bulk2-api67.0.json","fixtureDigest":"sha256:2d7a2c8a7967ab4403d70a904e46889e9192fb1cb854d966f14867a61807cc57","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.job-state-transitions","area":"bulk2","title":"Job state transitions","kind":"catalog-slice","capabilityIds":["bulk.job-state-transitions"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-346","VO-DIFF-348"],"evidenceIds":["EV-bulk.job-state-transitions-9366705"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Open, UploadComplete, JobComplete, Aborted; A missing-content UploadComplete rejection preserves Open state and contentUrl; Differential match is profile-bound; broader parity unverified; Missing-content close leaves an Open uploadable job. Actual local recovery accepts its first CSV and completes; broad asynchronous/eventual state behavior remains unverified.","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Open, UploadComplete, JobComplete, Aborted; A missing-content UploadComplete rejection preserves Open state and contentUrl; Differential match is profile-bound; broader parity unverified; Missing-content close leaves an Open uploadable job. Actual local recovery accepts its first CSV and completes; broad asynchronous/eventual state behavior remains unverified.","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-346","status":"not-run"},{"id":"VO-DIFF-348","status":"not-run"}],"contracts":[{"id":"bulk.job-state-transitions","slug":"bulk--job-state-transitions","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-346","file":"integration/reference-bulk2.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-348","file":"integration/reference-bulk2.test.ts","layer":"integration","line":19},{"id":"VO-DRIFT-003","file":"integration/reference-release-drift.test.ts","layer":"integration","line":65},{"id":"VO-DRIFT-009","file":"integration/reference-release-drift.test.ts","layer":"integration","sinceVersion":"0.7.25","line":70}],"qualifiers":["Open, UploadComplete, JobComplete, Aborted","A missing-content UploadComplete rejection preserves Open state and contentUrl","Differential match is profile-bound; broader parity unverified","Missing-content close leaves an Open uploadable job. Actual local recovery accepts its first CSV and completes; broad asynchronous/eventual state behavior remains unverified."],"evidence":[{"id":"EV-bulk.job-state-transitions-9366705","kind":"differential-test","result":"pass","capabilityId":"bulk.job-state-transitions","recipe":"VIRTUALORG_TEST_RELEASE_DRIFT=1 pnpm test:integration integration/reference-release-drift.test.ts plus the unchanged broad replay with its dated successor case; compare tests/compatibility/reference/2026-10-18-bulk-empty-successor-api67.0.json","fixtureDigest":"sha256:e2d37057295e5c4988f1e3d30c4730bd8195ee30c5a05f4719ae6bfa73f98cb4","revision":"93667050048d8788c658b39cb4514401376d0923","recordedAt":"2026-10-18","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Dated API67 observations with October17/18 successor comparisons; original receipts remain preserved."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"93667050048d8788c658b39cb4514401376d0923","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.successful-result-csv","area":"bulk2","title":"Successful result CSV","kind":"catalog-slice","capabilityIds":["bulk.successful-result-csv"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-344","VO-DIFF-345","VO-DIFF-2176"],"evidenceIds":["EV-bulk.successful-result-csv-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"sf__Id, sf__Created plus uploaded columns; Echoed values are converted (doubles as 11.0); echoed doubles keep Java form even at sixteen or more significant digits (1.2345678901234568E17), as recorded (NUMEXACT-BULK-001); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: sf__Id, sf__Created plus uploaded columns; Echoed values are converted (doubles as 11.0); echoed doubles keep Java form even at sixteen or more significant digits (1.2345678901234568E17), as recorded (NUMEXACT-BULK-001); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-344","status":"not-run"},{"id":"VO-DIFF-345","status":"not-run"},{"id":"VO-DIFF-2176","status":"not-run"}],"contracts":[{"id":"bulk.successful-result-csv","slug":"bulk--successful-result-csv","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-344","file":"integration/reference-bulk2.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-345","file":"integration/reference-bulk2.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-2176","file":"integration/reference-numeric-exact.test.ts","layer":"integration","line":18}],"qualifiers":["sf__Id, sf__Created plus uploaded columns","Echoed values are converted (doubles as 11.0); echoed doubles keep Java form even at sixteen or more significant digits (1.2345678901234568E17), as recorded (NUMEXACT-BULK-001)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.successful-result-csv-feaf503","kind":"differential-test","result":"pass","capabilityId":"bulk.successful-result-csv","recipe":"pnpm test:integration / pnpm test (VO-DIFF-344, VO-DIFF-345) against tests/compatibility/reference/2026-10-06-bulk2-api67.0.json","fixtureDigest":"sha256:2d7a2c8a7967ab4403d70a904e46889e9192fb1cb854d966f14867a61807cc57","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.failed-result-csv","area":"bulk2","title":"Failed result CSV","kind":"catalog-slice","capabilityIds":["bulk.failed-result-csv"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-344","VO-DIFF-345","VO-DIFF-348","VO-DIFF-2179","VO-DIFF-2181"],"evidenceIds":["EV-bulk.failed-result-csv-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"sf__Error as CODE:message:fields --; Error column CODE:message:fields --; Save failures keep file order and deserialization failures follow them; sf__Id is set only when the row named or matched a record (PARTIAL-BULK-UPDATE-001, PARTIAL-BULK-UPSERT-001); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: sf__Error as CODE:message:fields --; Error column CODE:message:fields --; Save failures keep file order and deserialization failures follow them; sf__Id is set only when the row named or matched a record (PARTIAL-BULK-UPDATE-001, PARTIAL-BULK-UPSERT-001); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-344","status":"not-run"},{"id":"VO-DIFF-345","status":"not-run"},{"id":"VO-DIFF-348","status":"not-run"},{"id":"VO-DIFF-2179","status":"not-run"},{"id":"VO-DIFF-2181","status":"not-run"}],"contracts":[{"id":"bulk.failed-result-csv","slug":"bulk--failed-result-csv","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-344","file":"integration/reference-bulk2.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-345","file":"integration/reference-bulk2.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-348","file":"integration/reference-bulk2.test.ts","layer":"integration","line":19},{"id":"VO-DIFF-2179","file":"integration/reference-partial-save.test.ts","layer":"integration","line":14},{"id":"VO-DIFF-2181","file":"integration/reference-partial-save.test.ts","layer":"integration","line":16}],"qualifiers":["sf__Error as CODE:message:fields --","Error column CODE:message:fields --","Save failures keep file order and deserialization failures follow them; sf__Id is set only when the row named or matched a record (PARTIAL-BULK-UPDATE-001, PARTIAL-BULK-UPSERT-001)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.failed-result-csv-feaf503","kind":"differential-test","result":"pass","capabilityId":"bulk.failed-result-csv","recipe":"pnpm test:integration / pnpm test (VO-DIFF-344, VO-DIFF-345, VO-DIFF-348) against tests/compatibility/reference/2026-10-06-bulk2-api67.0.json","fixtureDigest":"sha256:2d7a2c8a7967ab4403d70a904e46889e9192fb1cb854d966f14867a61807cc57","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.unprocessed-result-csv","area":"bulk2","title":"Unprocessed result CSV","kind":"catalog-slice","capabilityIds":["bulk.unprocessed-result-csv"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts"],"localTestIds":["VO-CLI-011","VO-DIFF-344"],"evidenceIds":["EV-bulk.unprocessed-result-csv-feaf503"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Always empty because processing is synchronous; Empty after completion as recorded; for aborted jobs the reference answered 500 in the recording, so that path is unverified; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Always empty because processing is synchronous; Empty after completion as recorded; for aborted jobs the reference answered 500 in the recording, so that path is unverified; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-CLI-011","status":"not-run"},{"id":"VO-DIFF-344","status":"not-run"}],"contracts":[{"id":"bulk.unprocessed-result-csv","slug":"bulk--unprocessed-result-csv","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-344","file":"integration/reference-bulk2.test.ts","layer":"integration","line":15}],"qualifiers":["Always empty because processing is synchronous","Empty after completion as recorded; for aborted jobs the reference answered 500 in the recording, so that path is unverified","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.unprocessed-result-csv-feaf503","kind":"differential-test","result":"pass","capabilityId":"bulk.unprocessed-result-csv","recipe":"pnpm test:integration / pnpm test (VO-DIFF-344) against tests/compatibility/reference/2026-10-06-bulk2-api67.0.json","fixtureDigest":"sha256:2d7a2c8a7967ab4403d70a904e46889e9192fb1cb854d966f14867a61807cc57","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.bulk-api-1-0-batches","area":"bulk1","title":"Bulk API 1.0 batches","kind":"catalog-slice","capabilityIds":["bulk.bulk-api-1-0-batches"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk1.ts","packages/runtime/src/bulk.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-2121","VO-DIFF-2122","VO-DIFF-2123","VO-DIFF-2124","VO-DIFF-2125","VO-DIFF-2126","VO-DIFF-2127","VO-DIFF-2128","VO-DIFF-2129","VO-BULK1-001"],"evidenceIds":["EV-bulk.bulk-api-1-0-batches-1532fe5"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"XML and JSON job info, CSV and JSON batches for insert, update, upsert by Id and delete, JSON and CSV query result lists, closing, aborting and the recorded error envelopes on Account; Batches are processed inside the request that adds them; the add response shows the created Queued batch; XML batch content, hardDelete, queryAll, PK chunking, serial concurrency, binary attachments and session-error envelopes are not implemented; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: XML and JSON job info, CSV and JSON batches for insert, update, upsert by Id and delete, JSON and CSV query result lists, closing, aborting and the recorded error envelopes on Account; Batches are processed inside the request that adds them; the add response shows the created Queued batch; XML batch content, hardDelete, queryAll, PK chunking, serial concurrency, binary attachments and session-error envelopes are not implemented; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-2121","status":"not-run"},{"id":"VO-DIFF-2122","status":"not-run"},{"id":"VO-DIFF-2123","status":"not-run"},{"id":"VO-DIFF-2124","status":"not-run"},{"id":"VO-DIFF-2125","status":"not-run"},{"id":"VO-DIFF-2126","status":"not-run"},{"id":"VO-DIFF-2127","status":"not-run"},{"id":"VO-DIFF-2128","status":"not-run"},{"id":"VO-DIFF-2129","status":"not-run"},{"id":"VO-BULK1-001","status":"not-run"}],"contracts":[{"id":"bulk.bulk-api-1-0-batches","slug":"bulk--bulk-api-1-0-batches","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2121","file":"integration/reference-bulk1.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-2122","file":"integration/reference-bulk1.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-2123","file":"integration/reference-bulk1.test.ts","layer":"integration","line":14},{"id":"VO-DIFF-2124","file":"integration/reference-bulk1.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-2125","file":"integration/reference-bulk1.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-2126","file":"integration/reference-bulk1.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-2127","file":"integration/reference-bulk1.test.ts","layer":"integration","line":18},{"id":"VO-DIFF-2128","file":"integration/reference-bulk1.test.ts","layer":"integration","line":19},{"id":"VO-DIFF-2129","file":"integration/reference-bulk1.test.ts","layer":"integration","line":20},{"id":"VO-BULK1-001","file":"integration/reference-bulk1.test.ts","layer":"integration","line":57}],"qualifiers":["XML and JSON job info, CSV and JSON batches for insert, update, upsert by Id and delete, JSON and CSV query result lists, closing, aborting and the recorded error envelopes on Account","Batches are processed inside the request that adds them; the add response shows the created Queued batch","XML batch content, hardDelete, queryAll, PK chunking, serial concurrency, binary attachments and session-error envelopes are not implemented","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-api-1-0-batches-1532fe5","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-1-0-batches","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2121, VO-DIFF-2122, VO-DIFF-2123, VO-DIFF-2124, VO-DIFF-2125, VO-DIFF-2126, VO-DIFF-2127, VO-DIFF-2128, VO-DIFF-2129) against tests/compatibility/reference/2026-10-15-bulk1-api67.0.json","fixtureDigest":"sha256:af626db313dcde7ba87948cae616816a4bf034b35190203cd638a963515f8022","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Bulk API 1.0 receipt (bulk1 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk.large-dataset-limits","area":"bulk2","title":"Large dataset limits","kind":"catalog-slice","capabilityIds":["bulk.large-dataset-limits"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/bulk.ts","packages/runtime/src/soql.ts"],"localTestIds":["VO-DIFF-727"],"evidenceIds":["EV-bulk.large-dataset-limits-685ab1e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"2,100-row ingest and query jobs with maxRecords and locator paging as recorded; the 150 MB upload limit is documented, not measured; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: 2,100-row ingest and query jobs with maxRecords and locator paging as recorded; the 150 MB upload limit is documented, not measured; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-727","status":"not-run"}],"contracts":[{"id":"bulk.large-dataset-limits","slug":"bulk--large-dataset-limits","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-727","file":"integration/reference-api3.test.ts","layer":"integration","line":71}],"qualifiers":["2,100-row ingest and query jobs with maxRecords and locator paging as recorded; the 150 MB upload limit is documented, not measured","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.large-dataset-limits-685ab1e","kind":"differential-test","result":"pass","capabilityId":"bulk.large-dataset-limits","recipe":"pnpm test:integration / pnpm test (VO-DIFF-727) against tests/compatibility/reference/2026-10-07-api3-bulk-api67.0.json","fixtureDigest":"sha256:85b313c57fde56ab82c8fdb29a87868fccb2d6a840e674a7f0cc46f279833fa3","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"685ab1eb3acb36e7325baa476217ab90415152bb","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"ui-api.object-info","area":"ui-api","title":"UI API object info","kind":"catalog-slice","capabilityIds":["ui-api.object-info"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/salesforce-ui-api.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7120","VO-UNTRK-006","VO-DIFF-7129"],"evidenceIds":["EV-ui-api.object-info-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches the recorded API 67.0 receipt for a custom object without record types (examples/untracked-org); childRelationships and the CloneSourceId system field (added to custom objects by the 2026-10 release) are documented exclusions; Standard objects are served by the LWC-backed resource, compared on Account under lwc.object-info-and-picklists (VO-DIFF-8123); for custom objects themeInfo is the default custom-object color and record types, dependent fields and compound fields are not modeled; A restricted Standard User comparison (field-level security) also matches (VO-DIFF-7129); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches the recorded API 67.0 receipt for a custom object without record types (examples/untracked-org); childRelationships and the CloneSourceId system field (added to custom objects by the 2026-10 release) are documented exclusions; Standard objects are served by the LWC-backed resource, compared on Account under lwc.object-info-and-picklists (VO-DIFF-8123); for custom objects themeInfo is the default custom-object color and record types, dependent fields and compound fields are not modeled; A restricted Standard User comparison (field-level security) also matches (VO-DIFF-7129); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7120","status":"not-run"},{"id":"VO-UNTRK-006","status":"not-run"},{"id":"VO-DIFF-7129","status":"not-run"}],"contracts":[{"id":"ui-api.object-info","slug":"ui-api--object-info","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7120","file":"integration/reference-uiapi.test.ts","layer":"integration","line":11},{"id":"VO-UNTRK-006","file":"integration/uiapi-native.test.ts","layer":"integration","line":10},{"id":"VO-DIFF-7129","file":"integration/reference-principals-untracked.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-9204","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":55},{"id":"VO-DIFF-9211","file":"integration/reference-metadata-fidelity.test.ts","layer":"integration","line":6}],"qualifiers":["API67 recorded reference comparisons use the System Administrator and a distinct Standard User with original read-only field/record-type grants. Account, Contact and original custom objects are the selected profiles; other objects/principals remain unmeasured.","The installed scalar custom layout, two custom record types, dependent picklists, Contact relationship reads, mixed batch envelopes and opaque/conditional eTags are the bounded additions. Standard Account/Contact Full layouts remain a recorded501/200 mismatch; multiple layout types/modes reject501.","Theme/icon/child-relationship sections, clone defaults, list-ui, lookups/actions and hosted component/cache timing are outside these projections. No full UI API or Salesforce browser equivalence is claimed.","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.object-info-80ab2d0","kind":"differential-test","result":"pass","capabilityId":"ui-api.object-info","recipe":"pnpm test:integration / pnpm test (VO-DIFF-9204, VO-DIFF-9211) against tests/compatibility/manifests/next-ui-platform-2026-10-16.json","fixtureDigest":"sha256:bb8b5b72a0718ae4bf3a41d59bdde800a1746f71f0d125697e4678ddf7b2fd43","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-object-info-2026-10-15"]},{"id":"EV-ui-api.object-info-63938c8","kind":"differential-test","result":"pass","capabilityId":"ui-api.object-info","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7120) against tests/compatibility/reference/2026-10-15-uiapi-api67.0.json","fixtureDigest":"sha256:89f8f0e2208f2a3142fa5df9706eb0c842ac37deec5277b73608e36072e06a8e","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-object-info-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-object-info-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Original selected reference fixtures; observed2026-10-16 PDT /17UTC; API67 requests on the current API68 service. Exact profiles, source receipts and digests are in tests/compatibility/manifests/next-ui-platform-2026-10-16.json. Only individually mapped passing comparisons are admitted."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","environment":"local workerd + PostgreSQL 18 + local R2","profile":"next-ui-platform-api67-selected-profiles"}}]},{"id":"ui-api.object-info-batch","area":"ui-api","title":"UI API batch object info","kind":"catalog-slice","capabilityIds":["ui-api.object-info-batch"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/salesforce-ui-api.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7121"],"evidenceIds":["EV-ui-api.object-info-batch-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches batch object info and the 403 unknown-object envelopes (FORBIDDEN in batch, INSUFFICIENT_ACCESS single) as recorded; Same object-info exclusions as ui-api.object-info; Batches naming a standard object answer UNSUPPORTED_UI_API (501); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches batch object info and the 403 unknown-object envelopes (FORBIDDEN in batch, INSUFFICIENT_ACCESS single) as recorded; Same object-info exclusions as ui-api.object-info; Batches naming a standard object answer UNSUPPORTED_UI_API (501); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7121","status":"not-run"}],"contracts":[{"id":"ui-api.object-info-batch","slug":"ui-api--object-info-batch","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7121","file":"integration/reference-uiapi.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-9202","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":51}],"qualifiers":["API67 recorded reference comparisons use the System Administrator and a distinct Standard User with original read-only field/record-type grants. Account, Contact and original custom objects are the selected profiles; other objects/principals remain unmeasured.","The installed scalar custom layout, two custom record types, dependent picklists, Contact relationship reads, mixed batch envelopes and opaque/conditional eTags are the bounded additions. Standard Account/Contact Full layouts remain a recorded501/200 mismatch; multiple layout types/modes reject501.","Theme/icon/child-relationship sections, clone defaults, list-ui, lookups/actions and hosted component/cache timing are outside these projections. No full UI API or Salesforce browser equivalence is claimed.","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.object-info-batch-80ab2d0","kind":"differential-test","result":"pass","capabilityId":"ui-api.object-info-batch","recipe":"pnpm test:integration / pnpm test (VO-DIFF-9202) against tests/compatibility/manifests/next-ui-platform-2026-10-16.json","fixtureDigest":"sha256:bb8b5b72a0718ae4bf3a41d59bdde800a1746f71f0d125697e4678ddf7b2fd43","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-object-info-2026-10-15"]},{"id":"EV-ui-api.object-info-batch-63938c8","kind":"differential-test","result":"pass","capabilityId":"ui-api.object-info-batch","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7121) against tests/compatibility/reference/2026-10-15-uiapi-api67.0.json","fixtureDigest":"sha256:89f8f0e2208f2a3142fa5df9706eb0c842ac37deec5277b73608e36072e06a8e","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-object-info-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-object-info-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Original selected reference fixtures; observed2026-10-16 PDT /17UTC; API67 requests on the current API68 service. Exact profiles, source receipts and digests are in tests/compatibility/manifests/next-ui-platform-2026-10-16.json. Only individually mapped passing comparisons are admitted."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","environment":"local workerd + PostgreSQL 18 + local R2","profile":"next-ui-platform-api67-selected-profiles"}}]},{"id":"ui-api.picklist-values","area":"ui-api","title":"UI API picklist values","kind":"catalog-slice","capabilityIds":["ui-api.picklist-values"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/salesforce-ui-api.ts"],"localTestIds":["VO-DIFF-7127"],"evidenceIds":["EV-ui-api.picklist-values-fec9c34"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches master-record-type picklist values for one field and for all picklists, and the not-a-picklist error, on a custom object (2026-10-15 receipt); Dependent picklists (controllerValues/validFor) and non-master record types return UNSUPPORTED_UI_API (501); Standard-object picklist values are served by the LWC-backed resource, compared on Account under lwc.object-info-and-picklists (VO-DIFF-8123); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches master-record-type picklist values for one field and for all picklists, and the not-a-picklist error, on a custom object (2026-10-15 receipt); Dependent picklists (controllerValues/validFor) and non-master record types return UNSUPPORTED_UI_API (501); Standard-object picklist values are served by the LWC-backed resource, compared on Account under lwc.object-info-and-picklists (VO-DIFF-8123); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7127","status":"not-run"}],"contracts":[{"id":"ui-api.picklist-values","slug":"ui-api--picklist-values","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7127","file":"integration/reference-uiapi2.test.ts","layer":"integration","line":11},{"id":"VO-DIFF-9201","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":49}],"qualifiers":["API67 recorded reference comparisons use the System Administrator and a distinct Standard User with original read-only field/record-type grants. Account, Contact and original custom objects are the selected profiles; other objects/principals remain unmeasured.","The installed scalar custom layout, two custom record types, dependent picklists, Contact relationship reads, mixed batch envelopes and opaque/conditional eTags are the bounded additions. Standard Account/Contact Full layouts remain a recorded501/200 mismatch; multiple layout types/modes reject501.","Theme/icon/child-relationship sections, clone defaults, list-ui, lookups/actions and hosted component/cache timing are outside these projections. No full UI API or Salesforce browser equivalence is claimed.","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.picklist-values-80ab2d0","kind":"differential-test","result":"pass","capabilityId":"ui-api.picklist-values","recipe":"pnpm test:integration / pnpm test (VO-DIFF-9201) against tests/compatibility/manifests/next-ui-platform-2026-10-16.json","fixtureDigest":"sha256:bb8b5b72a0718ae4bf3a41d59bdde800a1746f71f0d125697e4678ddf7b2fd43","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-object-info-2026-10-15"]},{"id":"EV-ui-api.picklist-values-fec9c34","kind":"differential-test","result":"pass","capabilityId":"ui-api.picklist-values","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7127) against tests/compatibility/reference/2026-10-15-uiapi2-api67.0.json","fixtureDigest":"sha256:2330922349b97f758050ac73ff9f7bc4798c8d18d949171ce40c457a90be5363","revision":"fec9c34cd8a11b21ffc4e80821a2967f2ed55018","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-object-info-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-object-info-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Original selected reference fixtures; observed2026-10-16 PDT /17UTC; API67 requests on the current API68 service. Exact profiles, source receipts and digests are in tests/compatibility/manifests/next-ui-platform-2026-10-16.json. Only individually mapped passing comparisons are admitted."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","environment":"local workerd + PostgreSQL 18 + local R2","profile":"next-ui-platform-api67-selected-profiles"}}]},{"id":"ui-api.record-read","area":"ui-api","title":"UI API get record","kind":"catalog-slice","capabilityIds":["ui-api.record-read"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/salesforce-ui-api.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7122","VO-DIFF-7123","VO-UNTRK-006","VO-DIFF-7129"],"evidenceIds":["EV-ui-api.record-read-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches fields/optionalFields reads with picklist, date, datetime (user time zone), number, boolean, text and single-target lookup values on a custom object; eTag values are opaque digests (format checked, value not compared); layoutTypes/modes reads return NOT_FOUND; Unknown required fields return INVALID_FIELD without Salesforce's embedded SOQL text; A restricted Standard User comparison (field-level security) also matches (VO-DIFF-7129); Standard-object reads are served by the LWC-backed resource, compared on Account under lwc.record-read-services (VO-DIFF-8121); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches fields/optionalFields reads with picklist, date, datetime (user time zone), number, boolean, text and single-target lookup values on a custom object; eTag values are opaque digests (format checked, value not compared); layoutTypes/modes reads return NOT_FOUND; Unknown required fields return INVALID_FIELD without Salesforce's embedded SOQL text; A restricted Standard User comparison (field-level security) also matches (VO-DIFF-7129); Standard-object reads are served by the LWC-backed resource, compared on Account under lwc.record-read-services (VO-DIFF-8121); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7122","status":"not-run"},{"id":"VO-DIFF-7123","status":"not-run"},{"id":"VO-UNTRK-006","status":"not-run"},{"id":"VO-DIFF-7129","status":"not-run"}],"contracts":[{"id":"ui-api.record-read","slug":"ui-api--record-read","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7122","file":"integration/reference-uiapi.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-7123","file":"integration/reference-uiapi.test.ts","layer":"integration","line":14},{"id":"VO-UNTRK-006","file":"integration/uiapi-native.test.ts","layer":"integration","line":10},{"id":"VO-DIFF-7129","file":"integration/reference-principals-untracked.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-9202","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":51},{"id":"VO-DIFF-9203","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":53},{"id":"VO-DIFF-9204","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":55}],"qualifiers":["API67 recorded reference comparisons use the System Administrator and a distinct Standard User with original read-only field/record-type grants. Account, Contact and original custom objects are the selected profiles; other objects/principals remain unmeasured.","The installed scalar custom layout, two custom record types, dependent picklists, Contact relationship reads, mixed batch envelopes and opaque/conditional eTags are the bounded additions. Standard Account/Contact Full layouts remain a recorded501/200 mismatch; multiple layout types/modes reject501.","Theme/icon/child-relationship sections, clone defaults, list-ui, lookups/actions and hosted component/cache timing are outside these projections. No full UI API or Salesforce browser equivalence is claimed.","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.record-read-80ab2d0","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-read","recipe":"pnpm test:integration / pnpm test (VO-DIFF-9202, VO-DIFF-9203, VO-DIFF-9204) against tests/compatibility/manifests/next-ui-platform-2026-10-16.json","fixtureDigest":"sha256:bb8b5b72a0718ae4bf3a41d59bdde800a1746f71f0d125697e4678ddf7b2fd43","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-get-2026-10-15"]},{"id":"EV-ui-api.record-read-63938c8","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-read","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7122, VO-DIFF-7123) against tests/compatibility/reference/2026-10-15-uiapi-api67.0.json","fixtureDigest":"sha256:89f8f0e2208f2a3142fa5df9706eb0c842ac37deec5277b73608e36072e06a8e","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-get-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-record-get-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Original selected reference fixtures; observed2026-10-16 PDT /17UTC; API67 requests on the current API68 service. Exact profiles, source receipts and digests are in tests/compatibility/manifests/next-ui-platform-2026-10-16.json. Only individually mapped passing comparisons are admitted."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","environment":"local workerd + PostgreSQL 18 + local R2","profile":"next-ui-platform-api67-selected-profiles"}}]},{"id":"ui-api.record-batch-read","area":"ui-api","title":"UI API batch records","kind":"catalog-slice","capabilityIds":["ui-api.record-batch-read"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/salesforce-ui-api.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7124"],"evidenceIds":["EV-ui-api.record-batch-read-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches batch reads with a missing record (404 'Resource not found.') as recorded; Batches containing a standard-object record answer UNSUPPORTED_UI_API (501); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches batch reads with a missing record (404 'Resource not found.') as recorded; Batches containing a standard-object record answer UNSUPPORTED_UI_API (501); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7124","status":"not-run"}],"contracts":[{"id":"ui-api.record-batch-read","slug":"ui-api--record-batch-read","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7124","file":"integration/reference-uiapi.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-9202","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":51}],"qualifiers":["API67 recorded reference comparisons use the System Administrator and a distinct Standard User with original read-only field/record-type grants. Account, Contact and original custom objects are the selected profiles; other objects/principals remain unmeasured.","The installed scalar custom layout, two custom record types, dependent picklists, Contact relationship reads, mixed batch envelopes and opaque/conditional eTags are the bounded additions. Standard Account/Contact Full layouts remain a recorded501/200 mismatch; multiple layout types/modes reject501.","Theme/icon/child-relationship sections, clone defaults, list-ui, lookups/actions and hosted component/cache timing are outside these projections. No full UI API or Salesforce browser equivalence is claimed.","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.record-batch-read-80ab2d0","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-batch-read","recipe":"pnpm test:integration / pnpm test (VO-DIFF-9202) against tests/compatibility/manifests/next-ui-platform-2026-10-16.json","fixtureDigest":"sha256:bb8b5b72a0718ae4bf3a41d59bdde800a1746f71f0d125697e4678ddf7b2fd43","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-get-2026-10-15"]},{"id":"EV-ui-api.record-batch-read-63938c8","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-batch-read","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7124) against tests/compatibility/reference/2026-10-15-uiapi-api67.0.json","fixtureDigest":"sha256:89f8f0e2208f2a3142fa5df9706eb0c842ac37deec5277b73608e36072e06a8e","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-get-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-record-get-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Original selected reference fixtures; observed2026-10-16 PDT /17UTC; API67 requests on the current API68 service. Exact profiles, source receipts and digests are in tests/compatibility/manifests/next-ui-platform-2026-10-16.json. Only individually mapped passing comparisons are admitted."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","environment":"local workerd + PostgreSQL 18 + local R2","profile":"next-ui-platform-api67-selected-profiles"}}]},{"id":"ui-api.record-create","area":"ui-api","title":"UI API create record","kind":"catalog-slice","capabilityIds":["ui-api.record-create"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/salesforce-ui-api.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7125","VO-DIFF-7126"],"evidenceIds":["EV-ui-api.record-create-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches create status and persisted values; the response field set follows the reference's page layout and only apiName/id are compared; RecordError envelopes compared for a restricted picklist and missing apiName; Standard-object writes are served by the LWC-backed resource, compared on Account under lwc.record-write-services (VO-DIFF-8122); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches create status and persisted values; the response field set follows the reference's page layout and only apiName/id are compared; RecordError envelopes compared for a restricted picklist and missing apiName; Standard-object writes are served by the LWC-backed resource, compared on Account under lwc.record-write-services (VO-DIFF-8122); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7125","status":"not-run"},{"id":"VO-DIFF-7126","status":"not-run"}],"contracts":[{"id":"ui-api.record-create","slug":"ui-api--record-create","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7125","file":"integration/reference-uiapi.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-7126","file":"integration/reference-uiapi.test.ts","layer":"integration","line":17}],"qualifiers":["Matches create status and persisted values; the response field set follows the reference's page layout and only apiName/id are compared","RecordError envelopes compared for a restricted picklist and missing apiName","Standard-object writes are served by the LWC-backed resource, compared on Account under lwc.record-write-services (VO-DIFF-8122)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.record-create-63938c8","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-create","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7125) against tests/compatibility/reference/2026-10-15-uiapi-api67.0.json","fixtureDigest":"sha256:89f8f0e2208f2a3142fa5df9706eb0c842ac37deec5277b73608e36072e06a8e","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-get-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-record-get-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-uiapi-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"ui-api.record-update","area":"ui-api","title":"UI API update record","kind":"catalog-slice","capabilityIds":["ui-api.record-update"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/salesforce-ui-api.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7125","VO-DIFF-7126"],"evidenceIds":["EV-ui-api.record-update-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches update status and persisted values including clearing a field; response field set compared by apiName/id only; If-Unmodified-Since conflicts are not implemented; Standard-object writes are served by the LWC-backed resource, compared on Account under lwc.record-write-services (VO-DIFF-8122); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches update status and persisted values including clearing a field; response field set compared by apiName/id only; If-Unmodified-Since conflicts are not implemented; Standard-object writes are served by the LWC-backed resource, compared on Account under lwc.record-write-services (VO-DIFF-8122); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7125","status":"not-run"},{"id":"VO-DIFF-7126","status":"not-run"}],"contracts":[{"id":"ui-api.record-update","slug":"ui-api--record-update","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7125","file":"integration/reference-uiapi.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-7126","file":"integration/reference-uiapi.test.ts","layer":"integration","line":17}],"qualifiers":["Matches update status and persisted values including clearing a field; response field set compared by apiName/id only","If-Unmodified-Since conflicts are not implemented","Standard-object writes are served by the LWC-backed resource, compared on Account under lwc.record-write-services (VO-DIFF-8122)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.record-update-63938c8","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-update","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7125) against tests/compatibility/reference/2026-10-15-uiapi-api67.0.json","fixtureDigest":"sha256:89f8f0e2208f2a3142fa5df9706eb0c842ac37deec5277b73608e36072e06a8e","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-get-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-record-get-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-uiapi-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"ui-api.record-delete","area":"ui-api","title":"UI API delete record","kind":"catalog-slice","capabilityIds":["ui-api.record-delete"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/salesforce-ui-api.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7125","VO-DIFF-7126"],"evidenceIds":["EV-ui-api.record-delete-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches delete (204), the following 404 read and the INVALID_CROSS_REFERENCE_KEY RecordError for a missing record; Standard-object writes are served by the LWC-backed resource, compared on Account under lwc.record-write-services (VO-DIFF-8122); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches delete (204), the following 404 read and the INVALID_CROSS_REFERENCE_KEY RecordError for a missing record; Standard-object writes are served by the LWC-backed resource, compared on Account under lwc.record-write-services (VO-DIFF-8122); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7125","status":"not-run"},{"id":"VO-DIFF-7126","status":"not-run"}],"contracts":[{"id":"ui-api.record-delete","slug":"ui-api--record-delete","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7125","file":"integration/reference-uiapi.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-7126","file":"integration/reference-uiapi.test.ts","layer":"integration","line":17}],"qualifiers":["Matches delete (204), the following 404 read and the INVALID_CROSS_REFERENCE_KEY RecordError for a missing record","Standard-object writes are served by the LWC-backed resource, compared on Account under lwc.record-write-services (VO-DIFF-8122)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.record-delete-63938c8","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-delete","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7125) against tests/compatibility/reference/2026-10-15-uiapi-api67.0.json","fixtureDigest":"sha256:89f8f0e2208f2a3142fa5df9706eb0c842ac37deec5277b73608e36072e06a8e","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-get-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-record-get-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-uiapi-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"ui-api.record-ui","area":"ui-api","title":"UI API record UI","kind":"catalog-slice","capabilityIds":["ui-api.record-ui"],"implementation":"missing","reference":"pending","paths":[],"localTestIds":[],"evidenceIds":[],"apiVersions":[],"profile":"headless-core","limitation":"The Salesforce record-ui resource is unimplemented; native workspaces and record reads do not establish it. Layout work owns this contract.","nextAcceptance":"Cross-reference the layout task's record-ui case for record types, modes and authority, without replacing its native authoring acceptance.","facets":["layout","read","api"],"localChecks":[],"contracts":[{"id":"ui-api.record-ui","slug":"ui-api--record-ui","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-9200","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":47},{"id":"VO-UIP-001","file":"integration/ui-platform.test.ts","layer":"integration","line":37},{"id":"VO-UIP-004","file":"integration/ui-platform.test.ts","layer":"integration","line":103}],"qualifiers":["API67 recorded reference comparisons use the System Administrator and a distinct Standard User with original read-only field/record-type grants. Account, Contact and original custom objects are the selected profiles; other objects/principals remain unmeasured.","The installed scalar custom layout, two custom record types, dependent picklists, Contact relationship reads, mixed batch envelopes and opaque/conditional eTags are the bounded additions. Standard Account/Contact Full layouts remain a recorded501/200 mismatch; multiple layout types/modes reject501.","Theme/icon/child-relationship sections, clone defaults, list-ui, lookups/actions and hosted component/cache timing are outside these projections. No full UI API or Salesforce browser equivalence is claimed.","Only an installed scalar two-column custom Full layout and one selected type/mode per record-ui request are admitted. The full standard layout mismatch is retained in the private non-admission comparison.","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.record-ui-80ab2d0","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-ui","recipe":"pnpm test:integration / pnpm test (VO-DIFF-9200) against tests/compatibility/manifests/next-ui-platform-2026-10-16.json","fixtureDigest":"sha256:bb8b5b72a0718ae4bf3a41d59bdde800a1746f71f0d125697e4678ddf7b2fd43","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-ui-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-record-ui-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Original selected reference fixtures; observed2026-10-16 PDT /17UTC; API67 requests on the current API68 service. Exact profiles, source receipts and digests are in tests/compatibility/manifests/next-ui-platform-2026-10-16.json. Only individually mapped passing comparisons are admitted."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","environment":"local workerd + PostgreSQL 18 + local R2","profile":"next-ui-platform-api67-selected-profiles"}}]},{"id":"ui-api.layouts","area":"ui-api","title":"UI API layouts","kind":"catalog-slice","capabilityIds":["ui-api.layouts"],"implementation":"missing","reference":"pending","paths":[],"localTestIds":[],"evidenceIds":[],"apiVersions":[],"profile":"headless-core","limitation":"Inventory cross-reference only; layout semantics and assignments belong to the layouts work area. Native browser layout APIs are a different interface.","nextAcceptance":"Coordinate acceptance through ui-api.layouts: pin modes/record types and verify the exact UI API response separately from native authoring/browser rendering.","facets":["layout","api"],"localChecks":[],"contracts":[{"id":"ui-api.layouts","slug":"ui-api--layouts","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-9200","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":47},{"id":"VO-UIP-001","file":"integration/ui-platform.test.ts","layer":"integration","line":37},{"id":"VO-UIP-004","file":"integration/ui-platform.test.ts","layer":"integration","line":103}],"qualifiers":["API67 recorded reference comparisons use the System Administrator and a distinct Standard User with original read-only field/record-type grants. Account, Contact and original custom objects are the selected profiles; other objects/principals remain unmeasured.","The installed scalar custom layout, two custom record types, dependent picklists, Contact relationship reads, mixed batch envelopes and opaque/conditional eTags are the bounded additions. Standard Account/Contact Full layouts remain a recorded501/200 mismatch; multiple layout types/modes reject501.","Theme/icon/child-relationship sections, clone defaults, list-ui, lookups/actions and hosted component/cache timing are outside these projections. No full UI API or Salesforce browser equivalence is claimed.","Only an installed scalar two-column custom Full layout and one selected type/mode per record-ui request are admitted. The full standard layout mismatch is retained in the private non-admission comparison.","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.layouts-80ab2d0","kind":"differential-test","result":"pass","capabilityId":"ui-api.layouts","recipe":"pnpm test:integration / pnpm test (VO-DIFF-9200) against tests/compatibility/manifests/next-ui-platform-2026-10-16.json","fixtureDigest":"sha256:bb8b5b72a0718ae4bf3a41d59bdde800a1746f71f0d125697e4678ddf7b2fd43","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-ui-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-record-ui-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Original selected reference fixtures; observed2026-10-16 PDT /17UTC; API67 requests on the current API68 service. Exact profiles, source receipts and digests are in tests/compatibility/manifests/next-ui-platform-2026-10-16.json. Only individually mapped passing comparisons are admitted."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","environment":"local workerd + PostgreSQL 18 + local R2","profile":"next-ui-platform-api67-selected-profiles"}}]},{"id":"ui-api.list-info-and-records","area":"ui-api","title":"UI API list info and list records","kind":"catalog-slice","capabilityIds":["ui-api.list-info-and-records"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/salesforce-ui-api.ts","packages/runtime/src/rest-listviews.ts"],"localTestIds":["VO-DIFF-7128"],"evidenceIds":["EV-ui-api.list-info-and-records-fec9c34"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches list-records for metadata list views (record representation of view columns and system fields, offset page tokens, fields echo, unknown view 404) against a 2026-10-15 receipt; list-info and list-ui are not implemented (their inline-edit attributes follow the page layout); sortBy, where, searchTerm and lookup columns return UNSUPPORTED_UI_API (501); Standard-object list views answer UNSUPPORTED_UI_API (501); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches list-records for metadata list views (record representation of view columns and system fields, offset page tokens, fields echo, unknown view 404) against a 2026-10-15 receipt; list-info and list-ui are not implemented (their inline-edit attributes follow the page layout); sortBy, where, searchTerm and lookup columns return UNSUPPORTED_UI_API (501); Standard-object list views answer UNSUPPORTED_UI_API (501); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7128","status":"not-run"}],"contracts":[{"id":"ui-api.list-info-and-records","slug":"ui-api--list-info-and-records","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7128","file":"integration/reference-uiapi2.test.ts","layer":"integration","line":12}],"qualifiers":["Matches list-records for metadata list views (record representation of view columns and system fields, offset page tokens, fields echo, unknown view 404) against a 2026-10-15 receipt","list-info and list-ui are not implemented (their inline-edit attributes follow the page layout); sortBy, where, searchTerm and lookup columns return UNSUPPORTED_UI_API (501)","Standard-object list views answer UNSUPPORTED_UI_API (501)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.list-info-and-records-fec9c34","kind":"differential-test","result":"pass","capabilityId":"ui-api.list-info-and-records","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7128) against tests/compatibility/reference/2026-10-15-uiapi2-api67.0.json","fixtureDigest":"sha256:2330922349b97f758050ac73ff9f7bc4798c8d18d949171ce40c457a90be5363","revision":"fec9c34cd8a11b21ffc4e80821a2967f2ed55018","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-list-records-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-list-records-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-uiapi2-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"fec9c34cd8a11b21ffc4e80821a2967f2ed55018","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"ui-api.record-defaults","area":"ui-api","title":"UI API record defaults","kind":"catalog-slice","capabilityIds":["ui-api.record-defaults"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/ui-api.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-8124"],"evidenceIds":["EV-ui-api.record-defaults-563a7aa"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Create defaults (GET /ui-api/record-defaults/create/{object}) are served by the LWC-backed resource and match the API 67.0 receipt on Account for the master record type as the System Administrator (record and objectInfoApiNames compared); Clone defaults (record-defaults/clone) answer NOT_FOUND (not implemented); custom objects, other record types, optionalFields and formFactor variants and non-administrator users have no recorded comparison; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Create defaults (GET /ui-api/record-defaults/create/{object}) are served by the LWC-backed resource and match the API 67.0 receipt on Account for the master record type as the System Administrator (record and objectInfoApiNames compared); Clone defaults (record-defaults/clone) answer NOT_FOUND (not implemented); custom objects, other record types, optionalFields and formFactor variants and non-administrator users have no recorded comparison; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-8124","status":"not-run"}],"contracts":[{"id":"ui-api.record-defaults","slug":"ui-api--record-defaults","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-8124","file":"integration/reference-lwc.test.ts","layer":"integration","line":22}],"qualifiers":["Create defaults (GET /ui-api/record-defaults/create/{object}) are served by the LWC-backed resource and match the API 67.0 receipt on Account for the master record type as the System Administrator (record and objectInfoApiNames compared)","Clone defaults (record-defaults/clone) answer NOT_FOUND (not implemented); custom objects, other record types, optionalFields and formFactor variants and non-administrator users have no recorded comparison","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.record-defaults-563a7aa","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-defaults","recipe":"pnpm test:integration / pnpm test (VO-DIFF-8124) against tests/compatibility/reference/2026-10-16-lwc-uiapi-api67.0.json","fixtureDigest":"sha256:e1e68a58991e77383f775cf4cbc06cfe3a9a181bee20b4d551883e65993c1774","revision":"563a7aa3acc48db451441b1156f937a1a70b7785","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-object-info-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-object-info-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-16 by the automation lane (2026-10-16-lwc-uiapi-api67.0.json, RES-LWC-UIAPI-001); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"563a7aa3acc48db451441b1156f937a1a70b7785","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"ui-api.lookups","area":"ui-api","title":"UI API lookups","kind":"catalog-slice","capabilityIds":["ui-api.lookups"],"implementation":"missing","reference":"pending","paths":[],"localTestIds":[],"evidenceIds":[],"apiVersions":[],"profile":"headless-core","limitation":"Salesforce UI API lookup/action resources are absent; original native lookup/action routes are not equivalent claims.","nextAcceptance":"Specify lookup search/filter/security and action discovery/execution separately, linking ui-api.lookups and ui-api.actions.","facets":["filter","authority","actions"],"localChecks":[],"contracts":[{"id":"ui-api.lookups","slug":"ui-api--lookups","support":"not-implemented","localReportState":"not-run","testedVersion":null,"tests":[],"qualifiers":["Not implemented: the runtime's /ui-api/ routes answer NOT_FOUND for this resource (verified 2026-10-15); VirtualOrg's native /ui/ workspace routes are a separate original contract."],"evidence":[],"reference":{"sourceIds":["sf-uiapi-object-info-2026-10-15"],"resolution":"family-reference","apiVersions":[],"editions":[],"licenses":[],"notes":"Discovery row added 2026-10-15 (gap-untracked lane, RES-UNTRACKED-001). Primary source reviewed 2026-10-15 on the Winter '27 (API 68.0) documentation; the reference pins API 67.0."},"target":{"runtime":"virtualorg","release":"0.0.0-scaffold","revision":null,"environment":"cloudflare-workers","profile":"headless-core"}}]},{"id":"ui-api.actions","area":"ui-api","title":"UI API actions","kind":"catalog-slice","capabilityIds":["ui-api.actions"],"implementation":"missing","reference":"pending","paths":[],"localTestIds":[],"evidenceIds":[],"apiVersions":[],"profile":"headless-core","limitation":"Salesforce UI API lookup/action resources are absent; original native lookup/action routes are not equivalent claims.","nextAcceptance":"Specify lookup search/filter/security and action discovery/execution separately, linking ui-api.lookups and ui-api.actions.","facets":["filter","authority","actions"],"localChecks":[],"contracts":[{"id":"ui-api.actions","slug":"ui-api--actions","support":"not-implemented","localReportState":"not-run","testedVersion":null,"tests":[],"qualifiers":["Not implemented: the runtime's /ui-api/ routes answer NOT_FOUND for this resource (verified 2026-10-15); VirtualOrg's native /ui/ workspace routes are a separate original contract."],"evidence":[],"reference":{"sourceIds":["sf-uiapi-object-info-2026-10-15"],"resolution":"family-reference","apiVersions":[],"editions":[],"licenses":[],"notes":"Discovery row added 2026-10-15 (gap-untracked lane, RES-UNTRACKED-001). Primary source reviewed 2026-10-15 on the Winter '27 (API 68.0) documentation; the reference pins API 67.0."},"target":{"runtime":"virtualorg","release":"0.0.0-scaffold","revision":null,"environment":"cloudflare-workers","profile":"headless-core"}}]},{"id":"ui-api.error-representation","area":"ui-api","title":"UI API error representation","kind":"catalog-slice","capabilityIds":["ui-api.error-representation"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/salesforce-ui-api.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7126","VO-UNTRK-006"],"evidenceIds":["EV-ui-api.error-representation-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches four recorded write errors (missing apiName, restricted picklist, unknown field, missing record); Duplicate-rule, validation-rule and enhanced field error variants are unverified; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches four recorded write errors (missing apiName, restricted picklist, unknown field, missing record); Duplicate-rule, validation-rule and enhanced field error variants are unverified; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7126","status":"not-run"},{"id":"VO-UNTRK-006","status":"not-run"}],"contracts":[{"id":"ui-api.error-representation","slug":"ui-api--error-representation","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7126","file":"integration/reference-uiapi.test.ts","layer":"integration","line":17},{"id":"VO-UNTRK-006","file":"integration/uiapi-native.test.ts","layer":"integration","line":10}],"qualifiers":["Matches four recorded write errors (missing apiName, restricted picklist, unknown field, missing record)","Duplicate-rule, validation-rule and enhanced field error variants are unverified","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.error-representation-63938c8","kind":"differential-test","result":"pass","capabilityId":"ui-api.error-representation","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7126) against tests/compatibility/reference/2026-10-15-uiapi-api67.0.json","fixtureDigest":"sha256:89f8f0e2208f2a3142fa5df9706eb0c842ac37deec5277b73608e36072e06a8e","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-object-info-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-object-info-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-uiapi-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.record-queries","area":"graphql","title":"GraphQL record queries","kind":"catalog-slice","capabilityIds":["graphql.record-queries"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7140","VO-DIFF-7145"],"evidenceIds":["EV-graphql.record-queries-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches uiapi record queries with value/displayValue, Id and variables on a custom object (examples/untracked-org); Fragments, directives, child relationships, scope/upperBound arguments and standard objects with record types are unverified; unsupported syntax returns ValidationError; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches uiapi record queries with value/displayValue, Id and variables on a custom object (examples/untracked-org); Fragments, directives, child relationships, scope/upperBound arguments and standard objects with record types are unverified; unsupported syntax returns ValidationError; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7140","status":"not-run"},{"id":"VO-DIFF-7145","status":"not-run"}],"contracts":[{"id":"graphql.record-queries","slug":"graphql--record-queries","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7140","file":"integration/reference-graphql.test.ts","layer":"integration","line":11},{"id":"VO-DIFF-7145","file":"integration/reference-graphql.test.ts","layer":"integration","line":16}],"qualifiers":["Matches uiapi record queries with value/displayValue, Id and variables on a custom object (examples/untracked-org)","Fragments, directives, child relationships, scope/upperBound arguments and standard objects with record types are unverified; unsupported syntax returns ValidationError","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.record-queries-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.record-queries","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7140) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.filtering","area":"graphql","title":"GraphQL where filters","kind":"catalog-slice","capabilityIds":["graphql.filtering"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7141"],"evidenceIds":["EV-graphql.filtering-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches gt/gte/eq/like/in, and/or and eq null filters; Relationship filters, date literals/ranges and nin/ne/lt/lte are implemented but not compared; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches gt/gte/eq/like/in, and/or and eq null filters; Relationship filters, date literals/ranges and nin/ne/lt/lte are implemented but not compared; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7141","status":"not-run"}],"contracts":[{"id":"graphql.filtering","slug":"graphql--filtering","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7141","file":"integration/reference-graphql.test.ts","layer":"integration","line":12}],"qualifiers":["Matches gt/gte/eq/like/in, and/or and eq null filters","Relationship filters, date literals/ranges and nin/ne/lt/lte are implemented but not compared","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.filtering-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.filtering","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7141) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.ordering","area":"graphql","title":"GraphQL ordering","kind":"catalog-slice","capabilityIds":["graphql.ordering"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7140"],"evidenceIds":["EV-graphql.ordering-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches ASC and DESC NULLS LAST ordering; an Id tie-breaker is appended (an inferred stable order); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches ASC and DESC NULLS LAST ordering; an Id tie-breaker is appended (an inferred stable order); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7140","status":"not-run"}],"contracts":[{"id":"graphql.ordering","slug":"graphql--ordering","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7140","file":"integration/reference-graphql.test.ts","layer":"integration","line":11}],"qualifiers":["Matches ASC and DESC NULLS LAST ordering; an Id tie-breaker is appended (an inferred stable order)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.ordering-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.ordering","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7140) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.pagination","area":"graphql","title":"GraphQL pagination","kind":"catalog-slice","capabilityIds":["graphql.pagination"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7142","VO-UNTRK-007"],"evidenceIds":["EV-graphql.pagination-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches first/after paging, totalCount and pageInfo across three pages; cursors are VirtualOrg's own opaque offsets and foreign cursors are rejected; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches first/after paging, totalCount and pageInfo across three pages; cursors are VirtualOrg's own opaque offsets and foreign cursors are rejected; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7142","status":"not-run"},{"id":"VO-UNTRK-007","status":"not-run"}],"contracts":[{"id":"graphql.pagination","slug":"graphql--pagination","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7142","file":"integration/reference-graphql.test.ts","layer":"integration","line":13},{"id":"VO-UNTRK-007","file":"integration/graphql-native.test.ts","layer":"integration","line":10}],"qualifiers":["Matches first/after paging, totalCount and pageInfo across three pages; cursors are VirtualOrg's own opaque offsets and foreign cursors are rejected","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.pagination-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.pagination","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7142) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.relationships","area":"graphql","title":"GraphQL parent and child relationships","kind":"catalog-slice","capabilityIds":["graphql.relationships"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7143"],"evidenceIds":["EV-graphql.relationships-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches single-target parent relationship fields; child relationship connections are not implemented; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches single-target parent relationship fields; child relationship connections are not implemented; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7143","status":"not-run"}],"contracts":[{"id":"graphql.relationships","slug":"graphql--relationships","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7143","file":"integration/reference-graphql.test.ts","layer":"integration","line":14}],"qualifiers":["Matches single-target parent relationship fields; child relationship connections are not implemented","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.relationships-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.relationships","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7143) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.aggregate-queries","area":"graphql","title":"GraphQL aggregate queries","kind":"catalog-slice","capabilityIds":["graphql.aggregate-queries"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7144"],"evidenceIds":["EV-graphql.aggregate-queries-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches groupBy on a picklist with sum/max/count and picklist definition ordering; avg/min/countDistinct, groupBy functions and pagination of aggregates are not compared; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches groupBy on a picklist with sum/max/count and picklist definition ordering; avg/min/countDistinct, groupBy functions and pagination of aggregates are not compared; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7144","status":"not-run"}],"contracts":[{"id":"graphql.aggregate-queries","slug":"graphql--aggregate-queries","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7144","file":"integration/reference-graphql.test.ts","layer":"integration","line":15}],"qualifiers":["Matches groupBy on a picklist with sum/max/count and picklist definition ordering","avg/min/countDistinct, groupBy functions and pagination of aggregates are not compared","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.aggregate-queries-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.aggregate-queries","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7144) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.mutations","area":"graphql","title":"GraphQL mutations","kind":"catalog-slice","capabilityIds":["graphql.mutations"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7147"],"evidenceIds":["EV-graphql.mutations-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches Create, Update and Delete mutations with Record selections; mutation error payloads and allOrNone batches are unverified; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches Create, Update and Delete mutations with Record selections; mutation error payloads and allOrNone batches are unverified; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7147","status":"not-run"}],"contracts":[{"id":"graphql.mutations","slug":"graphql--mutations","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7147","file":"integration/reference-graphql.test.ts","layer":"integration","line":18}],"qualifiers":["Matches Create, Update and Delete mutations with Record selections; mutation error payloads and allOrNone batches are unverified","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.mutations-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.mutations","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7147) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.object-info-queries","area":"graphql","title":"GraphQL object info","kind":"catalog-slice","capabilityIds":["graphql.object-info-queries"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7146"],"evidenceIds":["EV-graphql.object-info-queries-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches objectInfos ApiName/label/labelPlural/keyPrefix/createable and field ApiName/dataType/label (compared sorted; CloneSourceId excluded); Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches objectInfos ApiName/label/labelPlural/keyPrefix/createable and field ApiName/dataType/label (compared sorted; CloneSourceId excluded); Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7146","status":"not-run"}],"contracts":[{"id":"graphql.object-info-queries","slug":"graphql--object-info-queries","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7146","file":"integration/reference-graphql.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-9211","file":"integration/reference-metadata-fidelity.test.ts","layer":"integration","line":6}],"qualifiers":["Existing objectInfos field projections plus freshly compared custom-object CloneSourceId metadata in UI API/GraphQL at API67. REST describe correctly omits that metadata-only field in the same selected profile.","Broader object/field DTOs, all principal/language variants and record cloning are unmeasured; this is metadata projection only.","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.object-info-queries-80ab2d0","kind":"differential-test","result":"pass","capabilityId":"graphql.object-info-queries","recipe":"pnpm test:integration / pnpm test (VO-DIFF-9211) against tests/compatibility/manifests/next-ui-platform-2026-10-16.json","fixtureDigest":"sha256:bb8b5b72a0718ae4bf3a41d59bdde800a1746f71f0d125697e4678ddf7b2fd43","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]},{"id":"EV-graphql.object-info-queries-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.object-info-queries","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7146) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Original selected reference fixtures; observed2026-10-16 PDT /17UTC; API67 requests on the current API68 service. Exact profiles, source receipts and digests are in tests/compatibility/manifests/next-ui-platform-2026-10-16.json. Only individually mapped passing comparisons are admitted."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","environment":"local workerd + PostgreSQL 18 + local R2","profile":"next-ui-platform-api67-selected-profiles"}}]},{"id":"graphql.errors","area":"graphql","title":"GraphQL errors","kind":"catalog-slice","capabilityIds":["graphql.errors"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":["VO-DIFF-7148","VO-UNTRK-007"],"evidenceIds":["EV-graphql.errors-63938c8"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches InvalidSyntax and FieldUndefined ValidationError messages and locations and the GET input error; Other graphql-java validation rules are not modeled; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches InvalidSyntax and FieldUndefined ValidationError messages and locations and the GET input error; Other graphql-java validation rules are not modeled; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-DIFF-7148","status":"not-run"},{"id":"VO-UNTRK-007","status":"not-run"}],"contracts":[{"id":"graphql.errors","slug":"graphql--errors","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7148","file":"integration/reference-graphql.test.ts","layer":"integration","line":19},{"id":"VO-UNTRK-007","file":"integration/graphql-native.test.ts","layer":"integration","line":10}],"qualifiers":["Matches InvalidSyntax and FieldUndefined ValidationError messages and locations and the GET input error","Other graphql-java validation rules are not modeled","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.errors-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.errors","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7148) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.field-level-security","area":"graphql","title":"GraphQL field-level security","kind":"catalog-slice","capabilityIds":["graphql.field-level-security"],"implementation":"bounded","reference":"linked-subset","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/security.ts"],"localTestIds":["VO-UNTRK-007","VO-DIFF-7149"],"evidenceIds":["EV-graphql.field-level-security-82a584e"],"apiVersions":["67.0"],"profile":"standard-org-67.0","limitation":"Matches a Standard User with object read and partial field access: readable fields resolve, an unreadable selected field is FieldUndefined and an unreadable filter field is a WrongType validation error (2026-10-15 receipt); Objects without read access report FieldUndefined (native test only); mutations under restricted access are not compared; Differential match is profile-bound; broader parity unverified","nextAcceptance":"Reproduce this exact linked slice, then compare the remaining qualifiers independently: Matches a Standard User with object read and partial field access: readable fields resolve, an unreadable selected field is FieldUndefined and an unreadable filter field is a WrongType validation error (2026-10-15 receipt); Objects without read access report FieldUndefined (native test only); mutations under restricted access are not compared; Differential match is profile-bound; broader parity unverified","localChecks":[{"id":"VO-UNTRK-007","status":"not-run"},{"id":"VO-DIFF-7149","status":"not-run"}],"contracts":[{"id":"graphql.field-level-security","slug":"graphql--field-level-security","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-UNTRK-007","file":"integration/graphql-native.test.ts","layer":"integration","line":10},{"id":"VO-DIFF-7149","file":"integration/reference-principals-untracked.test.ts","layer":"integration","line":14}],"qualifiers":["Matches a Standard User with object read and partial field access: readable fields resolve, an unreadable selected field is FieldUndefined and an unreadable filter field is a WrongType validation error (2026-10-15 receipt)","Objects without read access report FieldUndefined (native test only); mutations under restricted access are not compared","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.field-level-security-82a584e","kind":"differential-test","result":"pass","capabilityId":"graphql.field-level-security","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7149) against tests/compatibility/reference/2026-10-15-principals-api67.0.json","fixtureDigest":"sha256:b45febb22c5062e77c36d21885b68d2e394796558eb453f9b6db5894f0bf2064","revision":"82a584e159dc38dbc15e88351e357af47252c539","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-principals-api67.0.json, Standard User reader); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"82a584e159dc38dbc15e88351e357af47252c539","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.typed-null-multi-profile","area":"rest-records","title":"Round-trip typed nulls under standard and custom schemas","kind":"gap","capabilityIds":["rest.sobject-record-endpoints"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Existing CRUD/type receipts do not verify every type, missing/null transition and principal combination.","nextAcceptance":"Create, read, patch null, read and delete Number, Date, Boolean and lookup fields on one standard and one custom object as administrator and restricted user; preserve each effect and error.","facets":["create","read","update","delete","typed-values","nulls","authority"],"localChecks":[],"contracts":[{"id":"rest.sobject-record-endpoints","slug":"rest--sobject-record-endpoints","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-002","file":"integration/reference.test.ts","layer":"integration","line":38},{"id":"VO-CLI-002","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":59},{"id":"VO-DIFF-014","file":"integration/reference-standard.test.ts","layer":"integration","line":28},{"id":"VO-DIFF-010","file":"integration/reference-standard.test.ts","layer":"integration","line":24},{"id":"VO-NATIVEQUERY-004","file":"integration/native-query-locality.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"[VO-NATIVEQUERY-004] stamps an exact native object batch without reading the org-wide projection and rolls back its view state","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":98}],"qualifiers":["Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.sobject-record-endpoints-2026-10-06","kind":"differential-test","result":"pass","capabilityId":"rest.sobject-record-endpoints","recipe":"pnpm test:integration (integration/reference*.test.ts: VO-DIFF-002, VO-DIFF-014) against tests/compatibility/reference/2026-10-06-standard-api67.0.json","fixtureDigest":"sha256:853cb9232c423d17caf23f1f9abc1680f9a573cc23e1b284f4e8c2bd8796ff14","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts captured 2026-10-06 (RES-REF-001)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.retry-after-lost-response","area":"rest-records","title":"Retry writes after a response is lost","kind":"gap","capabilityIds":["rest.sobject-record-endpoints"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"No general idempotency-key or exactly-once retry contract is declared for record creation.","nextAcceptance":"Interrupt a response after commit, retry the same create and external-ID upsert separately, and measure duplicates and errors before declaring retry semantics.","facets":["retry","idempotency","transaction"],"localChecks":[],"contracts":[{"id":"rest.sobject-record-endpoints","slug":"rest--sobject-record-endpoints","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-002","file":"integration/reference.test.ts","layer":"integration","line":38},{"id":"VO-CLI-002","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":59},{"id":"VO-DIFF-014","file":"integration/reference-standard.test.ts","layer":"integration","line":28},{"id":"VO-DIFF-010","file":"integration/reference-standard.test.ts","layer":"integration","line":24},{"id":"VO-NATIVEQUERY-004","file":"integration/native-query-locality.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"[VO-NATIVEQUERY-004] stamps an exact native object batch without reading the org-wide projection and rolls back its view state","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":98}],"qualifiers":["Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.sobject-record-endpoints-2026-10-06","kind":"differential-test","result":"pass","capabilityId":"rest.sobject-record-endpoints","recipe":"pnpm test:integration (integration/reference*.test.ts: VO-DIFF-002, VO-DIFF-014) against tests/compatibility/reference/2026-10-06-standard-api67.0.json","fixtureDigest":"sha256:853cb9232c423d17caf23f1f9abc1680f9a573cc23e1b284f4e8c2bd8796ff14","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts captured 2026-10-06 (RES-REF-001)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.cursor-expiry-principals","area":"rest-query-search","title":"Continue an expired or foreign REST locator","kind":"gap","capabilityIds":["rest.rest-query-locator-endpoint"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/index.ts","packages/runtime/src/soql.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Native locators store user identity and a fifteen-minute expiry; the linked paging match is not a complete multi-principal or expiry comparison.","nextAcceptance":"Create a locator with more than one page; continue as owner, second user, other org and after controlled expiry; compare errors and re-evaluated access.","facets":["pagination","expiry","ownership","authority"],"localChecks":[],"contracts":[{"id":"rest.rest-query-locator-endpoint","slug":"rest--rest-query-locator-endpoint","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-E2E-005","file":"integration/org.test.ts","layer":"integration","line":66},{"id":"VO-DIFF-309","file":"integration/reference-soql2.test.ts","layer":"integration","line":22}],"qualifiers":["Not yet differentially compared against the reference beyond the cited cases","See soql.query-locators","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.rest-query-locator-endpoint-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.rest-query-locator-endpoint","recipe":"pnpm test:integration / pnpm test (VO-DIFF-309) against tests/compatibility/reference/2026-10-06-soql2-api67.0.json","fixtureDigest":"sha256:92140069070cf0b6dcc835fe29f7ade2a69b4fa6b31a5226b817ac9b7082e2c4","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"rest.query-security-projections","area":"rest-query-search","title":"Filter and project parents and children under revoked access","kind":"gap","capabilityIds":["rest.rest-query-endpoint"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"SOQL, sharing and field-security contracts have separate evidence; their full REST combination is not implied by one query receipt.","nextAcceptance":"Compare a parent field and child subquery, sort/filter fields and mid-pagination grant revocation with two principals; link SOQL and permissions cases.","facets":["filter","sort","parent","child","authority"],"localChecks":[],"contracts":[{"id":"rest.rest-query-endpoint","slug":"rest--rest-query-endpoint","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-002","file":"integration/reference.test.ts","layer":"integration","line":38},{"id":"VO-CLI-002","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":59},{"id":"VO-DIFF-009","file":"integration/reference-standard.test.ts","layer":"integration","line":23}],"qualifiers":["Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.rest-query-endpoint-2026-10-06","kind":"differential-test","result":"pass","capabilityId":"rest.rest-query-endpoint","recipe":"pnpm test:integration (integration/reference*.test.ts: VO-DIFF-002, VO-DIFF-009) against tests/compatibility/reference/2026-10-06-standard-api67.0.json","fixtureDigest":"sha256:853cb9232c423d17caf23f1f9abc1680f9a573cc23e1b284f4e8c2bd8796ff14","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts captured 2026-10-06 (RES-REF-001)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"composite.principal-transaction-workflow","area":"composite","title":"Mixed create/update/read/error as administrator and denied user","kind":"gap","capabilityIds":["rest.all-or-none-composite"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/rest.ts"],"localTestIds":["VO-APIWF-001"],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"VO-APIWF-001 exercises actual local workerd; its two-principal workflow has no selected reference comparison.","nextAcceptance":"Replay VO-APIWF-001 on an explicitly selected authorized API67 target, preserving invalid-field and denied-principal error codes plus independent committed-state readback.","facets":["validation","create","read","update","delete","partial-save","rollback","authority"],"localChecks":[{"id":"VO-APIWF-001","status":"not-run"}],"contracts":[{"id":"rest.all-or-none-composite","slug":"rest--all-or-none-composite","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-321","file":"integration/reference-api.test.ts","layer":"integration","line":11}],"qualifiers":["allOrNone rolls back every subrequest and halts the rest with the recorded message","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.all-or-none-composite-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.all-or-none-composite","recipe":"pnpm test:integration / pnpm test (VO-DIFF-321) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"composite.graph-cross-graph-isolation","area":"composite","title":"Mixed graph success and rollback across graphs","kind":"gap","capabilityIds":["rest.composite-graph"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/rest.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"A graph match does not verify every cross-graph reference, grant or resource-limit combination.","nextAcceptance":"Execute two graphs, one with a later invalid field; read back each graph under two users and compare graph boundaries and unsupported cross-graph references.","facets":["rollback","per-item-errors","authority","limits"],"localChecks":[],"contracts":[{"id":"rest.composite-graph","slug":"rest--composite-graph","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-325","file":"integration/reference-api.test.ts","layer":"integration","line":15}],"qualifiers":["Each graph is all-or-none; node and depth limits not enforced","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.composite-graph-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.composite-graph","recipe":"pnpm test:integration / pnpm test (VO-DIFF-325) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"composite.tree-depth-authority","area":"composite","title":"Tree depth and child authorization fail without orphan rows","kind":"gap","capabilityIds":["rest.sobject-tree"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/index.ts","packages/runtime/src/rest.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Existing nested-tree evidence is bounded; arbitrary relationship depths, child denial and standard/custom combinations remain unestablished.","nextAcceptance":"Create a parent/child/grandchild tree, deny one child field and exceed the documented depth separately; verify zero orphan rows and exact reference errors.","facets":["parent","child","rollback","authority","limits"],"localChecks":[],"contracts":[{"id":"rest.sobject-tree","slug":"rest--sobject-tree","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-005","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-005] imports a record tree and deletes a record","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-005] imports a record tree and deletes a record","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":87},{"id":"VO-DIFF-326","file":"integration/reference-api.test.ts","layer":"integration","line":16},{"id":"VO-CLI-105","file":"integration/sf-cli-api.test.ts","layer":"integration","line":62}],"qualifiers":["Not yet differentially compared against the reference beyond the cited cases","Results list parents before children; 200-record, reference-ID and entity-type validation as recorded","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.sobject-tree-feaf503","kind":"differential-test","result":"pass","capabilityId":"rest.sobject-tree","recipe":"pnpm test:integration / pnpm test (VO-DIFF-326, VO-CLI-105) against tests/compatibility/reference/2026-10-06-api-api67.0.json","fixtureDigest":"sha256:59e6055b0c78fd238f44d705ae329d3eb62c34bd7843d9261b86e230b9c8e609","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk2.background-execution","area":"bulk2","title":"Observe and cancel a genuinely running asynchronous job","kind":"gap","capabilityIds":["bulk.job-state-transitions"],"implementation":"different-lifecycle","reference":"pending","paths":["packages/runtime/src/bulk.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Ingest processing occurs during UploadComplete and query processing during creation; durable job records do not establish background scheduling or cancellation races.","nextAcceptance":"Compare Open, UploadComplete, InProgress and terminal polling while a job runs; cancel before, during and after execution and verify committed rows.","facets":["async","polling","cancellation","transaction"],"localChecks":[],"contracts":[{"id":"bulk.job-state-transitions","slug":"bulk--job-state-transitions","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-346","file":"integration/reference-bulk2.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-348","file":"integration/reference-bulk2.test.ts","layer":"integration","line":19},{"id":"VO-DRIFT-003","file":"integration/reference-release-drift.test.ts","layer":"integration","line":65},{"id":"VO-DRIFT-009","file":"integration/reference-release-drift.test.ts","layer":"integration","sinceVersion":"0.7.25","line":70}],"qualifiers":["Open, UploadComplete, JobComplete, Aborted","A missing-content UploadComplete rejection preserves Open state and contentUrl","Differential match is profile-bound; broader parity unverified","Missing-content close leaves an Open uploadable job. Actual local recovery accepts its first CSV and completes; broad asynchronous/eventual state behavior remains unverified."],"evidence":[{"id":"EV-bulk.job-state-transitions-9366705","kind":"differential-test","result":"pass","capabilityId":"bulk.job-state-transitions","recipe":"VIRTUALORG_TEST_RELEASE_DRIFT=1 pnpm test:integration integration/reference-release-drift.test.ts plus the unchanged broad replay with its dated successor case; compare tests/compatibility/reference/2026-10-18-bulk-empty-successor-api67.0.json","fixtureDigest":"sha256:e2d37057295e5c4988f1e3d30c4730bd8195ee30c5a05f4719ae6bfa73f98cb4","revision":"93667050048d8788c658b39cb4514401376d0923","recordedAt":"2026-10-18","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Dated API67 observations with October17/18 successor comparisons; original receipts remain preserved."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"93667050048d8788c658b39cb4514401376d0923","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk2.job-owner-current-authority","area":"bulk2","title":"Access and poll another principal's job after grants change","kind":"gap","capabilityIds":["bulk.bulk-api-2-0-ingest-jobs"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/bulk.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"loadJob is org-scoped without an explicit creator predicate; list/info use the current principal. Exact creator/admin access and revocation behavior are reference-pending.","nextAcceptance":"Create a job as user A; fetch, list, upload, close, download and cancel as A, B and administrator before/after CRUD revocation; compare ownership fields and effects.","facets":["ownership","authority","polling","results"],"localChecks":[],"contracts":[{"id":"bulk.bulk-api-2-0-ingest-jobs","slug":"bulk--bulk-api-2-0-ingest-jobs","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-344","file":"integration/reference-bulk2.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-345","file":"integration/reference-bulk2.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-348","file":"integration/reference-bulk2.test.ts","layer":"integration","line":19},{"id":"VO-DRIFT-003","file":"integration/reference-release-drift.test.ts","layer":"integration","line":65},{"id":"VO-DRIFT-009","file":"integration/reference-release-drift.test.ts","layer":"integration","sinceVersion":"0.7.25","line":70}],"qualifiers":["Processed synchronously when the upload completes, in 200-record batches","Job info shapes per resource as recorded","Differential match is profile-bound; broader parity unverified","Missing-content UploadComplete is rejected without changing Open state; immediate readback retains contentUrl and omits processing counters, matching October17. Historical opposite observations remain retained; eventual processing and release causality are not inferred."],"evidence":[{"id":"EV-bulk.bulk-api-2-0-ingest-jobs-9366705","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-2-0-ingest-jobs","recipe":"VIRTUALORG_TEST_RELEASE_DRIFT=1 pnpm test:integration integration/reference-release-drift.test.ts plus the unchanged broad replay with its dated successor case; compare tests/compatibility/reference/2026-10-18-bulk-empty-successor-api67.0.json","fixtureDigest":"sha256:e2d37057295e5c4988f1e3d30c4730bd8195ee30c5a05f4719ae6bfa73f98cb4","revision":"93667050048d8788c658b39cb4514401376d0923","recordedAt":"2026-10-18","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Dated API67 observations with October17/18 successor comparisons; original receipts remain preserved."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"93667050048d8788c658b39cb4514401376d0923","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk2.result-pagination-lifetime","area":"bulk2","title":"Continue Bulk query results after expiry or as another user","kind":"gap","capabilityIds":["bulk.bulk-query-results"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/bulk.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Existing CSV paging does not establish every locator lifetime, current-authority or principal combination.","nextAcceptance":"Fetch a paged result, switch principal, revoke fields and advance time; compare locator headers, result visibility and expiry errors.","facets":["pagination","expiry","ownership","results"],"localChecks":[],"contracts":[{"id":"bulk.bulk-query-results","slug":"bulk--bulk-query-results","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-341","file":"integration/reference-bulk2.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-342","file":"integration/reference-bulk2.test.ts","layer":"integration","line":13},{"id":"VO-CLI-106","file":"integration/sf-cli-api.test.ts","layer":"integration","line":63},{"id":"VO-DIFF-2177","file":"integration/reference-numeric-exact.test.ts","layer":"integration","line":19}],"qualifiers":["Locator-based paging over a stored result","Opaque locators, maxRecords, delimiters and line endings; datetimes in Z form","Doubles render as Java Double.toString below sixteen significant digits and as plain digits from sixteen (123456789012345680, 0.0001234567890123456), as recorded (NUMEXACT-BULK-001)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-query-results-feaf503","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-query-results","recipe":"pnpm test:integration / pnpm test (VO-DIFF-341, VO-DIFF-342, VO-CLI-106) against tests/compatibility/reference/2026-10-06-bulk2-api67.0.json","fixtureDigest":"sha256:2d7a2c8a7967ab4403d70a904e46889e9192fb1cb854d966f14867a61807cc57","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"feaf503298df4f529292d7c5e6d2066ed665359c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk2.retry-upload-close","area":"bulk2","title":"Retry upload and close after ambiguous network outcomes","kind":"gap","capabilityIds":["bulk.bulk-api-2-0-ingest-jobs"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/bulk.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"One upload is accepted per ingest job; this is not a general retry/idempotency guarantee.","nextAcceptance":"Lose each upload/close response after commit, retry once and compare job state, row counts, duplicate-write prevention and precise error envelope.","facets":["retry","idempotency","transaction"],"localChecks":[],"contracts":[{"id":"bulk.bulk-api-2-0-ingest-jobs","slug":"bulk--bulk-api-2-0-ingest-jobs","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-011","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-011] loads CSV data with sf data import bulk and matches the recorded reference result files","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":213},{"id":"VO-DIFF-344","file":"integration/reference-bulk2.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-345","file":"integration/reference-bulk2.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-348","file":"integration/reference-bulk2.test.ts","layer":"integration","line":19},{"id":"VO-DRIFT-003","file":"integration/reference-release-drift.test.ts","layer":"integration","line":65},{"id":"VO-DRIFT-009","file":"integration/reference-release-drift.test.ts","layer":"integration","sinceVersion":"0.7.25","line":70}],"qualifiers":["Processed synchronously when the upload completes, in 200-record batches","Job info shapes per resource as recorded","Differential match is profile-bound; broader parity unverified","Missing-content UploadComplete is rejected without changing Open state; immediate readback retains contentUrl and omits processing counters, matching October17. Historical opposite observations remain retained; eventual processing and release causality are not inferred."],"evidence":[{"id":"EV-bulk.bulk-api-2-0-ingest-jobs-9366705","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-2-0-ingest-jobs","recipe":"VIRTUALORG_TEST_RELEASE_DRIFT=1 pnpm test:integration integration/reference-release-drift.test.ts plus the unchanged broad replay with its dated successor case; compare tests/compatibility/reference/2026-10-18-bulk-empty-successor-api67.0.json","fixtureDigest":"sha256:e2d37057295e5c4988f1e3d30c4730bd8195ee30c5a05f4719ae6bfa73f98cb4","revision":"93667050048d8788c658b39cb4514401376d0923","recordedAt":"2026-10-18","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Dated API67 observations with October17/18 successor comparisons; original receipts remain preserved."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"93667050048d8788c658b39cb4514401376d0923","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk1.xml-batch","area":"bulk1","title":"Upload XML record batches","kind":"gap","capabilityIds":["bulk.bulk-api-1-0-batches"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/bulk1.ts","packages/runtime/src/bulk.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"XML job envelopes are implemented; XML batch content is explicitly excluded.","nextAcceptance":"Create an XML-format job and upload a two-row XML batch with one invalid row; compare result envelopes and partial writes.","facets":["validation","typed-values","partial-save"],"localChecks":[],"contracts":[{"id":"bulk.bulk-api-1-0-batches","slug":"bulk--bulk-api-1-0-batches","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2121","file":"integration/reference-bulk1.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-2122","file":"integration/reference-bulk1.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-2123","file":"integration/reference-bulk1.test.ts","layer":"integration","line":14},{"id":"VO-DIFF-2124","file":"integration/reference-bulk1.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-2125","file":"integration/reference-bulk1.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-2126","file":"integration/reference-bulk1.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-2127","file":"integration/reference-bulk1.test.ts","layer":"integration","line":18},{"id":"VO-DIFF-2128","file":"integration/reference-bulk1.test.ts","layer":"integration","line":19},{"id":"VO-DIFF-2129","file":"integration/reference-bulk1.test.ts","layer":"integration","line":20},{"id":"VO-BULK1-001","file":"integration/reference-bulk1.test.ts","layer":"integration","line":57}],"qualifiers":["XML and JSON job info, CSV and JSON batches for insert, update, upsert by Id and delete, JSON and CSV query result lists, closing, aborting and the recorded error envelopes on Account","Batches are processed inside the request that adds them; the add response shows the created Queued batch","XML batch content, hardDelete, queryAll, PK chunking, serial concurrency, binary attachments and session-error envelopes are not implemented","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-api-1-0-batches-1532fe5","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-1-0-batches","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2121, VO-DIFF-2122, VO-DIFF-2123, VO-DIFF-2124, VO-DIFF-2125, VO-DIFF-2126, VO-DIFF-2127, VO-DIFF-2128, VO-DIFF-2129) against tests/compatibility/reference/2026-10-15-bulk1-api67.0.json","fixtureDigest":"sha256:af626db313dcde7ba87948cae616816a4bf034b35190203cd638a963515f8022","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Bulk API 1.0 receipt (bulk1 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk1.hard-delete","area":"bulk1","title":"Bulk 1.0 hard delete","kind":"gap","capabilityIds":["bulk.bulk-api-1-0-batches"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/bulk1.ts","packages/runtime/src/bulk.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Bulk 2.0 delete evidence cannot establish Bulk 1.0 hardDelete or queryAll, both explicitly excluded.","nextAcceptance":"Independently measure hardDelete permission/undelete effects and queryAll visibility on deleted records with clean fixtures.","facets":["delete","authority","query"],"localChecks":[],"contracts":[{"id":"bulk.bulk-api-1-0-batches","slug":"bulk--bulk-api-1-0-batches","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2121","file":"integration/reference-bulk1.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-2122","file":"integration/reference-bulk1.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-2123","file":"integration/reference-bulk1.test.ts","layer":"integration","line":14},{"id":"VO-DIFF-2124","file":"integration/reference-bulk1.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-2125","file":"integration/reference-bulk1.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-2126","file":"integration/reference-bulk1.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-2127","file":"integration/reference-bulk1.test.ts","layer":"integration","line":18},{"id":"VO-DIFF-2128","file":"integration/reference-bulk1.test.ts","layer":"integration","line":19},{"id":"VO-DIFF-2129","file":"integration/reference-bulk1.test.ts","layer":"integration","line":20},{"id":"VO-BULK1-001","file":"integration/reference-bulk1.test.ts","layer":"integration","line":57}],"qualifiers":["XML and JSON job info, CSV and JSON batches for insert, update, upsert by Id and delete, JSON and CSV query result lists, closing, aborting and the recorded error envelopes on Account","Batches are processed inside the request that adds them; the add response shows the created Queued batch","XML batch content, hardDelete, queryAll, PK chunking, serial concurrency, binary attachments and session-error envelopes are not implemented","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-api-1-0-batches-1532fe5","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-1-0-batches","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2121, VO-DIFF-2122, VO-DIFF-2123, VO-DIFF-2124, VO-DIFF-2125, VO-DIFF-2126, VO-DIFF-2127, VO-DIFF-2128, VO-DIFF-2129) against tests/compatibility/reference/2026-10-15-bulk1-api67.0.json","fixtureDigest":"sha256:af626db313dcde7ba87948cae616816a4bf034b35190203cd638a963515f8022","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Bulk API 1.0 receipt (bulk1 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk1.queryall","area":"bulk1","title":"Bulk 1.0 queryAll","kind":"gap","capabilityIds":["bulk.bulk-api-1-0-batches"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/bulk1.ts","packages/runtime/src/bulk.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Bulk 2.0 delete evidence cannot establish Bulk 1.0 hardDelete or queryAll, both explicitly excluded.","nextAcceptance":"Independently measure hardDelete permission/undelete effects and queryAll visibility on deleted records with clean fixtures.","facets":["delete","authority","query"],"localChecks":[],"contracts":[{"id":"bulk.bulk-api-1-0-batches","slug":"bulk--bulk-api-1-0-batches","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2121","file":"integration/reference-bulk1.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-2122","file":"integration/reference-bulk1.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-2123","file":"integration/reference-bulk1.test.ts","layer":"integration","line":14},{"id":"VO-DIFF-2124","file":"integration/reference-bulk1.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-2125","file":"integration/reference-bulk1.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-2126","file":"integration/reference-bulk1.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-2127","file":"integration/reference-bulk1.test.ts","layer":"integration","line":18},{"id":"VO-DIFF-2128","file":"integration/reference-bulk1.test.ts","layer":"integration","line":19},{"id":"VO-DIFF-2129","file":"integration/reference-bulk1.test.ts","layer":"integration","line":20},{"id":"VO-BULK1-001","file":"integration/reference-bulk1.test.ts","layer":"integration","line":57}],"qualifiers":["XML and JSON job info, CSV and JSON batches for insert, update, upsert by Id and delete, JSON and CSV query result lists, closing, aborting and the recorded error envelopes on Account","Batches are processed inside the request that adds them; the add response shows the created Queued batch","XML batch content, hardDelete, queryAll, PK chunking, serial concurrency, binary attachments and session-error envelopes are not implemented","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-api-1-0-batches-1532fe5","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-1-0-batches","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2121, VO-DIFF-2122, VO-DIFF-2123, VO-DIFF-2124, VO-DIFF-2125, VO-DIFF-2126, VO-DIFF-2127, VO-DIFF-2128, VO-DIFF-2129) against tests/compatibility/reference/2026-10-15-bulk1-api67.0.json","fixtureDigest":"sha256:af626db313dcde7ba87948cae616816a4bf034b35190203cd638a963515f8022","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Bulk API 1.0 receipt (bulk1 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk1.pk-chunking","area":"bulk1","title":"Bulk 1.0 PK chunking","kind":"gap","capabilityIds":["bulk.bulk-api-1-0-batches"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/bulk1.ts","packages/runtime/src/bulk.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"PK chunking and serial concurrency are explicitly unimplemented; small batch results establish neither.","nextAcceptance":"Pin source limits and compare chunk boundaries and two contending batches under serial mode without relaxing transaction isolation.","facets":["limits","async","transaction"],"localChecks":[],"contracts":[{"id":"bulk.bulk-api-1-0-batches","slug":"bulk--bulk-api-1-0-batches","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2121","file":"integration/reference-bulk1.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-2122","file":"integration/reference-bulk1.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-2123","file":"integration/reference-bulk1.test.ts","layer":"integration","line":14},{"id":"VO-DIFF-2124","file":"integration/reference-bulk1.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-2125","file":"integration/reference-bulk1.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-2126","file":"integration/reference-bulk1.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-2127","file":"integration/reference-bulk1.test.ts","layer":"integration","line":18},{"id":"VO-DIFF-2128","file":"integration/reference-bulk1.test.ts","layer":"integration","line":19},{"id":"VO-DIFF-2129","file":"integration/reference-bulk1.test.ts","layer":"integration","line":20},{"id":"VO-BULK1-001","file":"integration/reference-bulk1.test.ts","layer":"integration","line":57}],"qualifiers":["XML and JSON job info, CSV and JSON batches for insert, update, upsert by Id and delete, JSON and CSV query result lists, closing, aborting and the recorded error envelopes on Account","Batches are processed inside the request that adds them; the add response shows the created Queued batch","XML batch content, hardDelete, queryAll, PK chunking, serial concurrency, binary attachments and session-error envelopes are not implemented","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-api-1-0-batches-1532fe5","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-1-0-batches","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2121, VO-DIFF-2122, VO-DIFF-2123, VO-DIFF-2124, VO-DIFF-2125, VO-DIFF-2126, VO-DIFF-2127, VO-DIFF-2128, VO-DIFF-2129) against tests/compatibility/reference/2026-10-15-bulk1-api67.0.json","fixtureDigest":"sha256:af626db313dcde7ba87948cae616816a4bf034b35190203cd638a963515f8022","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Bulk API 1.0 receipt (bulk1 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk1.serial-concurrency","area":"bulk1","title":"Bulk 1.0 serial concurrency","kind":"gap","capabilityIds":["bulk.bulk-api-1-0-batches"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/bulk1.ts","packages/runtime/src/bulk.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"PK chunking and serial concurrency are explicitly unimplemented; small batch results establish neither.","nextAcceptance":"Pin source limits and compare chunk boundaries and two contending batches under serial mode without relaxing transaction isolation.","facets":["limits","async","transaction"],"localChecks":[],"contracts":[{"id":"bulk.bulk-api-1-0-batches","slug":"bulk--bulk-api-1-0-batches","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2121","file":"integration/reference-bulk1.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-2122","file":"integration/reference-bulk1.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-2123","file":"integration/reference-bulk1.test.ts","layer":"integration","line":14},{"id":"VO-DIFF-2124","file":"integration/reference-bulk1.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-2125","file":"integration/reference-bulk1.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-2126","file":"integration/reference-bulk1.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-2127","file":"integration/reference-bulk1.test.ts","layer":"integration","line":18},{"id":"VO-DIFF-2128","file":"integration/reference-bulk1.test.ts","layer":"integration","line":19},{"id":"VO-DIFF-2129","file":"integration/reference-bulk1.test.ts","layer":"integration","line":20},{"id":"VO-BULK1-001","file":"integration/reference-bulk1.test.ts","layer":"integration","line":57}],"qualifiers":["XML and JSON job info, CSV and JSON batches for insert, update, upsert by Id and delete, JSON and CSV query result lists, closing, aborting and the recorded error envelopes on Account","Batches are processed inside the request that adds them; the add response shows the created Queued batch","XML batch content, hardDelete, queryAll, PK chunking, serial concurrency, binary attachments and session-error envelopes are not implemented","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-api-1-0-batches-1532fe5","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-1-0-batches","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2121, VO-DIFF-2122, VO-DIFF-2123, VO-DIFF-2124, VO-DIFF-2125, VO-DIFF-2126, VO-DIFF-2127, VO-DIFF-2128, VO-DIFF-2129) against tests/compatibility/reference/2026-10-15-bulk1-api67.0.json","fixtureDigest":"sha256:af626db313dcde7ba87948cae616816a4bf034b35190203cd638a963515f8022","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Bulk API 1.0 receipt (bulk1 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk1.background-and-abort","area":"bulk1","title":"Poll and abort a running Bulk 1.0 batch","kind":"gap","capabilityIds":["bulk.bulk-api-1-0-batches"],"implementation":"different-lifecycle","reference":"pending","paths":["packages/runtime/src/bulk1.ts","packages/runtime/src/bulk.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"The add-batch request processes the batch synchronously while returning its initial Queued representation.","nextAcceptance":"Compare queued/running/completed batch polling and abort during processing, including partial writes and terminal-state errors.","facets":["async","polling","cancellation","transaction"],"localChecks":[],"contracts":[{"id":"bulk.bulk-api-1-0-batches","slug":"bulk--bulk-api-1-0-batches","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2121","file":"integration/reference-bulk1.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-2122","file":"integration/reference-bulk1.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-2123","file":"integration/reference-bulk1.test.ts","layer":"integration","line":14},{"id":"VO-DIFF-2124","file":"integration/reference-bulk1.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-2125","file":"integration/reference-bulk1.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-2126","file":"integration/reference-bulk1.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-2127","file":"integration/reference-bulk1.test.ts","layer":"integration","line":18},{"id":"VO-DIFF-2128","file":"integration/reference-bulk1.test.ts","layer":"integration","line":19},{"id":"VO-DIFF-2129","file":"integration/reference-bulk1.test.ts","layer":"integration","line":20},{"id":"VO-BULK1-001","file":"integration/reference-bulk1.test.ts","layer":"integration","line":57}],"qualifiers":["XML and JSON job info, CSV and JSON batches for insert, update, upsert by Id and delete, JSON and CSV query result lists, closing, aborting and the recorded error envelopes on Account","Batches are processed inside the request that adds them; the add response shows the created Queued batch","XML batch content, hardDelete, queryAll, PK chunking, serial concurrency, binary attachments and session-error envelopes are not implemented","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-api-1-0-batches-1532fe5","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-1-0-batches","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2121, VO-DIFF-2122, VO-DIFF-2123, VO-DIFF-2124, VO-DIFF-2125, VO-DIFF-2126, VO-DIFF-2127, VO-DIFF-2128, VO-DIFF-2129) against tests/compatibility/reference/2026-10-15-bulk1-api67.0.json","fixtureDigest":"sha256:af626db313dcde7ba87948cae616816a4bf034b35190203cd638a963515f8022","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Bulk API 1.0 receipt (bulk1 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk1.binary-attachments","area":"bulk1","title":"Bulk 1.0 binary attachments","kind":"gap","capabilityIds":["bulk.bulk-api-1-0-batches"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/bulk1.ts","packages/runtime/src/bulk.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Binary attachments and Bulk 1.0 session-error envelopes are explicitly excluded.","nextAcceptance":"Keep independent binary-upload and expired/revoked/wrong-org X-SFDC-Session cases; compare content types and error bodies without logging secrets.","facets":["validation","authority","errors"],"localChecks":[],"contracts":[{"id":"bulk.bulk-api-1-0-batches","slug":"bulk--bulk-api-1-0-batches","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2121","file":"integration/reference-bulk1.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-2122","file":"integration/reference-bulk1.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-2123","file":"integration/reference-bulk1.test.ts","layer":"integration","line":14},{"id":"VO-DIFF-2124","file":"integration/reference-bulk1.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-2125","file":"integration/reference-bulk1.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-2126","file":"integration/reference-bulk1.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-2127","file":"integration/reference-bulk1.test.ts","layer":"integration","line":18},{"id":"VO-DIFF-2128","file":"integration/reference-bulk1.test.ts","layer":"integration","line":19},{"id":"VO-DIFF-2129","file":"integration/reference-bulk1.test.ts","layer":"integration","line":20},{"id":"VO-BULK1-001","file":"integration/reference-bulk1.test.ts","layer":"integration","line":57}],"qualifiers":["XML and JSON job info, CSV and JSON batches for insert, update, upsert by Id and delete, JSON and CSV query result lists, closing, aborting and the recorded error envelopes on Account","Batches are processed inside the request that adds them; the add response shows the created Queued batch","XML batch content, hardDelete, queryAll, PK chunking, serial concurrency, binary attachments and session-error envelopes are not implemented","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-api-1-0-batches-1532fe5","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-1-0-batches","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2121, VO-DIFF-2122, VO-DIFF-2123, VO-DIFF-2124, VO-DIFF-2125, VO-DIFF-2126, VO-DIFF-2127, VO-DIFF-2128, VO-DIFF-2129) against tests/compatibility/reference/2026-10-15-bulk1-api67.0.json","fixtureDigest":"sha256:af626db313dcde7ba87948cae616816a4bf034b35190203cd638a963515f8022","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Bulk API 1.0 receipt (bulk1 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"bulk1.session-errors","area":"bulk1","title":"Bulk 1.0 session-error envelopes","kind":"gap","capabilityIds":["bulk.bulk-api-1-0-batches"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/bulk1.ts","packages/runtime/src/bulk.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Binary attachments and Bulk 1.0 session-error envelopes are explicitly excluded.","nextAcceptance":"Keep independent binary-upload and expired/revoked/wrong-org X-SFDC-Session cases; compare content types and error bodies without logging secrets.","facets":["validation","authority","errors"],"localChecks":[],"contracts":[{"id":"bulk.bulk-api-1-0-batches","slug":"bulk--bulk-api-1-0-batches","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2121","file":"integration/reference-bulk1.test.ts","layer":"integration","line":12},{"id":"VO-DIFF-2122","file":"integration/reference-bulk1.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-2123","file":"integration/reference-bulk1.test.ts","layer":"integration","line":14},{"id":"VO-DIFF-2124","file":"integration/reference-bulk1.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-2125","file":"integration/reference-bulk1.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-2126","file":"integration/reference-bulk1.test.ts","layer":"integration","line":17},{"id":"VO-DIFF-2127","file":"integration/reference-bulk1.test.ts","layer":"integration","line":18},{"id":"VO-DIFF-2128","file":"integration/reference-bulk1.test.ts","layer":"integration","line":19},{"id":"VO-DIFF-2129","file":"integration/reference-bulk1.test.ts","layer":"integration","line":20},{"id":"VO-BULK1-001","file":"integration/reference-bulk1.test.ts","layer":"integration","line":57}],"qualifiers":["XML and JSON job info, CSV and JSON batches for insert, update, upsert by Id and delete, JSON and CSV query result lists, closing, aborting and the recorded error envelopes on Account","Batches are processed inside the request that adds them; the add response shows the created Queued batch","XML batch content, hardDelete, queryAll, PK chunking, serial concurrency, binary attachments and session-error envelopes are not implemented","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-bulk.bulk-api-1-0-batches-1532fe5","kind":"differential-test","result":"pass","capabilityId":"bulk.bulk-api-1-0-batches","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2121, VO-DIFF-2122, VO-DIFF-2123, VO-DIFF-2124, VO-DIFF-2125, VO-DIFF-2126, VO-DIFF-2127, VO-DIFF-2128, VO-DIFF-2129) against tests/compatibility/reference/2026-10-15-bulk1-api67.0.json","fixtureDigest":"sha256:af626db313dcde7ba87948cae616816a4bf034b35190203cd638a963515f8022","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["bulk"]}],"reference":{"sourceIds":["bulk"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Bulk API 1.0 receipt (bulk1 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.child-connections","area":"graphql","title":"Select child connections with nested pageInfo","kind":"gap","capabilityIds":["graphql.relationships"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"VO-DIFF-7143 matches single-target parent fields only; child connection execution is absent.","nextAcceptance":"Query a parent with two child pages, null parents, a denied child field and independent parent/child cursors; compare data, errors and ordering.","facets":["parent","child","pagination","authority"],"localChecks":[],"contracts":[{"id":"graphql.relationships","slug":"graphql--relationships","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7143","file":"integration/reference-graphql.test.ts","layer":"integration","line":14}],"qualifiers":["Matches single-target parent relationship fields; child relationship connections are not implemented","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.relationships-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.relationships","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7143) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.fragments-directives","area":"graphql","title":"Execute fragments and conditional directives","kind":"gap","capabilityIds":["graphql.record-queries"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Native tests explicitly reject fragments and directives; a record-query match does not include them.","nextAcceptance":"Compare named/inline fragments and include/skip directives with variables, denied fields and malformed definitions.","facets":["validation","projection","authority"],"localChecks":[],"contracts":[{"id":"graphql.record-queries","slug":"graphql--record-queries","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7140","file":"integration/reference-graphql.test.ts","layer":"integration","line":11},{"id":"VO-DIFF-7145","file":"integration/reference-graphql.test.ts","layer":"integration","line":16}],"qualifiers":["Matches uiapi record queries with value/displayValue, Id and variables on a custom object (examples/untracked-org)","Fragments, directives, child relationships, scope/upperBound arguments and standard objects with record types are unverified; unsupported syntax returns ValidationError","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.record-queries-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.record-queries","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7140) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.cursor-identity-expiry","area":"graphql","title":"Bind cursors to query, principal and expiry","kind":"gap","capabilityIds":["graphql.pagination"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Current cursors encode offsets, unlike durable REST locators; query identity, ownership and expiration are not established.","nextAcceptance":"Reuse a cursor across filters, objects, users and orgs; mutate data and advance time; compare allowed continuation and errors against a selected profile.","facets":["pagination","expiry","ownership","authority"],"localChecks":[],"contracts":[{"id":"graphql.pagination","slug":"graphql--pagination","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7142","file":"integration/reference-graphql.test.ts","layer":"integration","line":13},{"id":"VO-UNTRK-007","file":"integration/graphql-native.test.ts","layer":"integration","line":10}],"qualifiers":["Matches first/after paging, totalCount and pageInfo across three pages; cursors are VirtualOrg's own opaque offsets and foreign cursors are rejected","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.pagination-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.pagination","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7142) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.mutation-rollback-errors","area":"graphql","title":"Multiple mutations with a later error","kind":"gap","capabilityIds":["graphql.mutations"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Create/update/delete in one recorded case does not establish all mutation transaction/error permutations; the handler catches client errors inside the request.","nextAcceptance":"Run successful then invalid or denied mutations in one operation; compare response data/errors and committed state under the documented transaction option.","facets":["create","update","delete","rollback","per-item-errors","authority"],"localChecks":[],"contracts":[{"id":"graphql.mutations","slug":"graphql--mutations","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7147","file":"integration/reference-graphql.test.ts","layer":"integration","line":18}],"qualifiers":["Matches Create, Update and Delete mutations with Record selections; mutation error payloads and allOrNone batches are unverified","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.mutations-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.mutations","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7147) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.aggregate-variants","area":"graphql","title":"Nested and paged aggregate variants","kind":"gap","capabilityIds":["graphql.aggregate-queries"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"The grouped aggregate match covers selected scalar functions only, not every grouping, null, relationship, paging or permission combination.","nextAcceptance":"Compare null-only groups, filter/sort, unsupported group functions, denied grouping fields and aggregate pagination independently.","facets":["aggregate","nulls","filter","sort","pagination","authority"],"localChecks":[],"contracts":[{"id":"graphql.aggregate-queries","slug":"graphql--aggregate-queries","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7144","file":"integration/reference-graphql.test.ts","layer":"integration","line":15}],"qualifiers":["Matches groupBy on a picklist with sum/max/count and picklist definition ordering","avg/min/countDistinct, groupBy functions and pagination of aggregates are not compared","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.aggregate-queries-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.aggregate-queries","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7144) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"graphql.schema-introspection","area":"graphql","title":"Discover schema and select operationName","kind":"gap","capabilityIds":["graphql.errors"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/graphql.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"The bounded parser does not implement general schema introspection or multi-operation selection.","nextAcceptance":"Compare __schema/__type and multiple named operations with operationName, invalid names and principal-specific visibility.","facets":["validation","discovery","authority"],"localChecks":[],"contracts":[{"id":"graphql.errors","slug":"graphql--errors","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7148","file":"integration/reference-graphql.test.ts","layer":"integration","line":19},{"id":"VO-UNTRK-007","file":"integration/graphql-native.test.ts","layer":"integration","line":10}],"qualifiers":["Matches InvalidSyntax and FieldUndefined ValidationError messages and locations and the GET input error","Other graphql-java validation rules are not modeled","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-graphql.errors-63938c8","kind":"differential-test","result":"pass","capabilityId":"graphql.errors","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7148) against tests/compatibility/reference/2026-10-15-graphql-api67.0.json","fixtureDigest":"sha256:9bfdc457615a791bf98862f1eebb0fa6682f1915698702cccd0cfc9a53e81b2c","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-graphql-2026-10-15"]}],"reference":{"sourceIds":["sf-graphql-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-graphql-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"tooling.real-queued-container","area":"tooling","title":"Poll and abort a queued container compile","kind":"gap","capabilityIds":["tooling.containerasyncrequest"],"implementation":"different-lifecycle","reference":"pending","paths":["packages/runtime/src/apex-container.ts","packages/runtime/src/soap.ts","packages/runtime/src/tooling.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Compilation runs inside create; first read is Completed or Failed while the recorded reference service initially reports Queued.","nextAcceptance":"Compare queued-to-compiling-to-terminal transitions, creator authority and abort before completion; retain existing terminal diagnostics.","facets":["async","polling","cancellation","transaction"],"localChecks":[],"contracts":[{"id":"tooling.containerasyncrequest","slug":"tooling--containerasyncrequest","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2112","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2112] requests and members reject unknown containers; an empty container compiles to Completed","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":15},{"id":"VO-DIFF-2113","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2113] ApexClassMember records carry the class metadata, content and an empty symbol table","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":16},{"id":"VO-DIFF-2114","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2114] a check-only ContainerAsyncRequest completes with DeployDetails and leaves the class unchanged","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":17},{"id":"VO-DIFF-2116","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2116] an applied ContainerAsyncRequest replaces the class body and symbol table","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":19},{"id":"VO-DIFF-2117","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2117] a request for unchanged members completes empty; completed requests cannot be aborted","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":20},{"id":"VO-DIFF-2119","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2119] failed compiles report component failures, keep the class body and leave no member symbol table","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":22}],"qualifiers":["Requests compile inside the creating API transaction through the shared Metadata deploy service; the first read already shows Completed or Failed (the reference reports Queued first)","Check-only compiles roll back; unchanged member bodies are skipped; completed requests cannot be aborted; IsRunTests, MetadataContainerMemberId and non-class members are rejected as not implemented","Compiler diagnostics are compared for two syntax errors; other messages follow the shared Apex parser and remain reference-pending","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-tooling.containerasyncrequest-1532fe5","kind":"differential-test","result":"pass","capabilityId":"tooling.containerasyncrequest","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2112, VO-DIFF-2113, VO-DIFF-2114, VO-DIFF-2116, VO-DIFF-2117, VO-DIFF-2119) against tests/compatibility/reference/2026-10-15-tooling3-api67.0.json","fixtureDigest":"sha256:377cdd287e01168b14f3fc8b4ac2e0b787f2c75799e94b23a096f5a755ac890d","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Tooling receipt (tooling3 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"tooling.nonclass-container-members","area":"tooling","title":"Compile trigger and other container members","kind":"gap","capabilityIds":["tooling.metadatacontainer"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/apex-container.ts","packages/runtime/src/tooling.ts","packages/runtime/src/standard/tooling.json"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Only class members are admitted; non-class members, IsRunTests and MetadataContainerMemberId variants are rejected.","nextAcceptance":"Create trigger and class members with dependent syntax, check-only and invalid requests; verify no partial source installation.","facets":["validation","create","rollback","authority"],"localChecks":[],"contracts":[{"id":"tooling.metadatacontainer","slug":"tooling--metadatacontainer","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-2110","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2110] MetadataContainer names are required, at most 32 characters and unique","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":13},{"id":"VO-DIFF-2111","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2111] MetadataContainer records are read, queried and deleted","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":14},{"id":"VO-DIFF-2112","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2112] requests and members reject unknown containers; an empty container compiles to Completed","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":15},{"id":"VO-DIFF-2118","file":"integration/reference-tooling3.test.ts","layer":"integration","observations":[{"profile":"apex-final-supplement","status":"passed","fullName":"API 67.0 Tooling compile-on-save and symbol table differential [VO-DIFF-2118] deleting a container deletes its members","packetDigest":"sha256:776ea8cffe8795d9d4e0e4546317b062021ecb3ac9fcff5ce95936641845f81c"}],"line":21}],"qualifiers":["Recorded describe, required/length/duplicate Name errors, reads, queries and deletion with member cascade; containers hold ApexClassMember records only","Deleting a container also removes its requests in Virtual Org; Salesforce request retention after deletion is unmeasured","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-tooling.metadatacontainer-1532fe5","kind":"differential-test","result":"pass","capabilityId":"tooling.metadatacontainer","recipe":"pnpm test:integration / pnpm test (VO-DIFF-2110, VO-DIFF-2111, VO-DIFF-2112, VO-DIFF-2118) against tests/compatibility/reference/2026-10-15-tooling3-api67.0.json","fixtureDigest":"sha256:377cdd287e01168b14f3fc8b4ac2e0b787f2c75799e94b23a096f5a755ac890d","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to the 2026-10-15 API 67.0 the reference environment Tooling receipt (tooling3 suite, gap-data-api lane)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"1532fe5a5bab3c10ada37f9fff84fb3ecb0965b1","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"tooling.source-authority-concurrency","area":"tooling","title":"Edit source after revocation or concurrent changes","kind":"gap","capabilityIds":["tooling.apexclass-records"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/deploy.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Source lifecycle receipts do not establish every version-conflict, principal, dependency and rollback combination.","nextAcceptance":"Have two users read then update a class, revoke authoring authority and submit an invalid trigger dependency; compare source and diagnostics after failure.","facets":["update","delete","authority","transaction"],"localChecks":[],"contracts":[{"id":"tooling.apexclass-records","slug":"tooling--apexclass-records","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-006","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":98},{"id":"VO-DIFF-045","file":"integration/reference-tooling.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"API 67.0 Tooling API differential [VO-DIFF-045] tooling queries of Apex classes and triggers and tooling query errors match the reference","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":19}],"qualifiers":["Historical0.2.0 record-query profile: class storage/read and its declared Tooling query subset; fresh class creation/compilation was not admitted in that profile.","Tooling query of Name, Status, ApiVersion, IsValid, NamespacePrefix matches the receipt","Differential match is profile-bound; broader parity unverified","Runtime0.7.21 separately measures fresh original named Active API67 Tooling class creation as setup in revenue-cloud.native-decision-table-apex. General Tooling ApexClass authoring/lifecycle/errors remain unadmitted; this older record-read evidence and first parity version stay unchanged."],"evidence":[{"id":"EV-tooling.apexclass-records-29bc263","kind":"differential-test","result":"pass","capabilityId":"tooling.apexclass-records","recipe":"pnpm test:integration / pnpm test (VO-DIFF-045) against tests/compatibility/reference/2026-10-06-tooling-api67.0.json","fixtureDigest":"sha256:ca9c73a449b09dc698d48cf52c89acc1c5abe24ea244f107e951f0dfca3b6d45","revision":"29bc263511b7abc5cae2ca7dc300f882665b8293","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"29bc263511b7abc5cae2ca7dc300f882665b8293","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"ui-api.required-optional-fields","area":"ui-api","title":"Read required versus optional denied fields on standard objects","kind":"gap","capabilityIds":["ui-api.record-read"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/salesforce-ui-api.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Custom object and Account/LWC source paths differ; a custom typed-value match is not standard-object, compound-field or layout coverage.","nextAcceptance":"Read Account and a custom object as two users with the same required/optional denied fields; compare omissions, error arrays and compound display values.","facets":["read","typed-values","nulls","authority"],"localChecks":[],"contracts":[{"id":"ui-api.record-read","slug":"ui-api--record-read","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7122","file":"integration/reference-uiapi.test.ts","layer":"integration","line":13},{"id":"VO-DIFF-7123","file":"integration/reference-uiapi.test.ts","layer":"integration","line":14},{"id":"VO-UNTRK-006","file":"integration/uiapi-native.test.ts","layer":"integration","line":10},{"id":"VO-DIFF-7129","file":"integration/reference-principals-untracked.test.ts","layer":"integration","line":15},{"id":"VO-DIFF-9202","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":51},{"id":"VO-DIFF-9203","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":53},{"id":"VO-DIFF-9204","file":"integration/reference-ui-platform.test.ts","layer":"integration","line":55}],"qualifiers":["API67 recorded reference comparisons use the System Administrator and a distinct Standard User with original read-only field/record-type grants. Account, Contact and original custom objects are the selected profiles; other objects/principals remain unmeasured.","The installed scalar custom layout, two custom record types, dependent picklists, Contact relationship reads, mixed batch envelopes and opaque/conditional eTags are the bounded additions. Standard Account/Contact Full layouts remain a recorded501/200 mismatch; multiple layout types/modes reject501.","Theme/icon/child-relationship sections, clone defaults, list-ui, lookups/actions and hosted component/cache timing are outside these projections. No full UI API or Salesforce browser equivalence is claimed.","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.record-read-80ab2d0","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-read","recipe":"pnpm test:integration / pnpm test (VO-DIFF-9202, VO-DIFF-9203, VO-DIFF-9204) against tests/compatibility/manifests/next-ui-platform-2026-10-16.json","fixtureDigest":"sha256:bb8b5b72a0718ae4bf3a41d59bdde800a1746f71f0d125697e4678ddf7b2fd43","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","recordedAt":"2026-10-17","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-get-2026-10-15"]},{"id":"EV-ui-api.record-read-63938c8","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-read","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7122, VO-DIFF-7123) against tests/compatibility/reference/2026-10-15-uiapi-api67.0.json","fixtureDigest":"sha256:89f8f0e2208f2a3142fa5df9706eb0c842ac37deec5277b73608e36072e06a8e","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-get-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-record-get-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Original selected reference fixtures; observed2026-10-16 PDT /17UTC; API67 requests on the current API68 service. Exact profiles, source receipts and digests are in tests/compatibility/manifests/next-ui-platform-2026-10-16.json. Only individually mapped passing comparisons are admitted."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"80ab2d0fc68c6823d4c1add8c0d748033de61f27","environment":"local workerd + PostgreSQL 18 + local R2","profile":"next-ui-platform-api67-selected-profiles"}}]},{"id":"ui-api.write-retry-preconditions","area":"ui-api","title":"Retry UI API saves with conditional preconditions","kind":"gap","capabilityIds":["ui-api.record-update"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/salesforce-ui-api.ts","packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Record CRUD comparisons do not declare general idempotency or all concurrent If-Unmodified-Since/eTag combinations.","nextAcceptance":"Edit the same record as two users, retry with stale preconditions and compare error payload, field values and absence of duplicate side effects.","facets":["update","retry","idempotency","transaction"],"localChecks":[],"contracts":[{"id":"ui-api.record-update","slug":"ui-api--record-update","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-7125","file":"integration/reference-uiapi.test.ts","layer":"integration","line":16},{"id":"VO-DIFF-7126","file":"integration/reference-uiapi.test.ts","layer":"integration","line":17}],"qualifiers":["Matches update status and persisted values including clearing a field; response field set compared by apiName/id only","If-Unmodified-Since conflicts are not implemented","Standard-object writes are served by the LWC-backed resource, compared on Account under lwc.record-write-services (VO-DIFF-8122)","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-ui-api.record-update-63938c8","kind":"differential-test","result":"pass","capabilityId":"ui-api.record-update","recipe":"pnpm test:integration / pnpm test (VO-DIFF-7125) against tests/compatibility/reference/2026-10-15-uiapi-api67.0.json","fixtureDigest":"sha256:89f8f0e2208f2a3142fa5df9706eb0c842ac37deec5277b73608e36072e06a8e","revision":"63938c873cfc2639aab7554d7a273e1b21435564","recordedAt":"2026-10-16","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["sf-uiapi-record-get-2026-10-15"]}],"reference":{"sourceIds":["sf-uiapi-record-get-2026-10-15"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to a reference receipt recorded 2026-10-15 (2026-10-15-uiapi-api67.0.json); discovery row added 2026-10-15 (RES-UNTRACKED-001)."},"target":{"runtime":"virtualorg","release":"0.7.25","revision":"63938c873cfc2639aab7554d7a273e1b21435564","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"soap.partner-crud-query","area":"metadata-cli-soap","title":"Use general Partner or Enterprise SOAP CRUD/query","kind":"gap","capabilityIds":["rest.sobject-record-endpoints"],"implementation":"missing","reference":"pending","paths":["packages/runtime/src/soap.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"soap.ts contains selected Partner lead conversion/assignment and Apex/Metadata operations; general Partner/Enterprise CRUD and query are not implemented.","nextAcceptance":"Inventory WSDL operations independently; start with Partner create/query/queryMore/update/delete and session faults before claiming general SOAP data coverage.","facets":["create","read","update","delete","pagination","authority"],"localChecks":[],"contracts":[{"id":"rest.sobject-record-endpoints","slug":"rest--sobject-record-endpoints","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-DIFF-002","file":"integration/reference.test.ts","layer":"integration","line":38},{"id":"VO-CLI-002","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-002] creates, queries, updates, gets and deletes a standard Account record","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":59},{"id":"VO-DIFF-014","file":"integration/reference-standard.test.ts","layer":"integration","line":28},{"id":"VO-DIFF-010","file":"integration/reference-standard.test.ts","layer":"integration","line":24},{"id":"VO-NATIVEQUERY-004","file":"integration/native-query-locality.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"[VO-NATIVEQUERY-004] stamps an exact native object batch without reading the org-wide projection and rolls back its view state","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"}],"line":98}],"qualifiers":["Profile-bound: reference-shaped org, API 31.0–67.0 accepted, 67.0 reference","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-rest.sobject-record-endpoints-2026-10-06","kind":"differential-test","result":"pass","capabilityId":"rest.sobject-record-endpoints","recipe":"pnpm test:integration (integration/reference*.test.ts: VO-DIFF-002, VO-DIFF-014) against tests/compatibility/reference/2026-10-06-standard-api67.0.json","fixtureDigest":"sha256:853cb9232c423d17caf23f1f9abc1680f9a573cc23e1b284f4e8c2bd8796ff14","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","recordedAt":"2026-10-06","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["rest"]}],"reference":{"sourceIds":["rest"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts captured 2026-10-06 (RES-REF-001)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"deac2b488dd36ffa2715e50b93dfde6488a6aa5c","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"metadata.async-recovery","area":"metadata-cli-soap","title":"Recover a metadata deployment after restart","kind":"gap","capabilityIds":["metadata.deploy-status"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/soap.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Metadata deploy/poll/retrieve and native deployment are separate from REST data support; current poll owns durable pending deployment execution.","nextAcceptance":"Create a deployment, restart the Worker before polling, then poll/cancel as owner and another principal; compare atomic schema/source and status history.","facets":["async","polling","cancellation","transaction"],"localChecks":[],"contracts":[{"id":"metadata.deploy-status","slug":"metadata--deploy-status","support":"partial","localReportState":"not-run","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-006","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-006] deploys a DX project with Apex, roles and fields on standard objects through sf project deploy start","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":98},{"id":"VO-CLI-007","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-007] reports a failing deploy with component errors and leaves metadata unchanged","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-007] reports a failing deploy with component errors and leaves metadata unchanged","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":116},{"id":"VO-CLI-100","file":"integration/sf-cli-api.test.ts","layer":"integration","line":57},{"id":"VO-CLI-101","file":"integration/sf-cli-api.test.ts","layer":"integration","line":58},{"id":"VO-DIFF-621","file":"integration/reference-metadata2.test.ts","layer":"integration","line":37},{"id":"VO-MDEP-305","file":"integration/metadata-boundary.test.ts","layer":"integration","line":458}],"qualifiers":["A native DeployRequest durably stores a queued job; the authorized poll executes under the existing request transaction and org lock. Unpolled jobs remain queued.","Cancellation discards queued work before execution; a completed result is retained after commit. This is a local polling executor, with no autonomous scheduler or manufactured finalization states.","Recorded API 67 terminal shapes remain profile-bound; asynchronous timing, finalization and new cancellation cases remain reference-pending."],"evidence":[{"id":"EV-metadata.deploy-status-315a408","kind":"differential-test","result":"pass","capabilityId":"metadata.deploy-status","recipe":"pnpm test:integration / pnpm test (VO-DIFF-621) against tests/compatibility/reference/2026-10-07-metadata2-api67.0.json","fixtureDigest":"sha256:6d8b4924b10eb68f21074ec2f7765f68d089ccf2f9d6e130b9214c822ed8ca9f","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["metadata"]}],"reference":{"sourceIds":["metadata"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"cli.other-versions","area":"metadata-cli-soap","title":"Run selected workflows on other CLI/API versions","kind":"gap","capabilityIds":["cli.current-sf-cli-command-version"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/index.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"not-selected","limitation":"Recorded CLI recipes pin @salesforce/cli 2.152.14 and API67; API discovery of 68 is not evidence for all API68 or newer CLI behavior.","nextAcceptance":"Select one CLI/plugin version and one API version explicitly, repeat login/describe/query/deploy/retrieve and preserve independent version-bound results.","facets":["version","cli","validation"],"localChecks":[],"contracts":[{"id":"cli.current-sf-cli-command-version","slug":"cli--current-sf-cli-command-version","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-206","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-206] sf org display reports the recorded current discovery version as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":30},{"id":"VO-CLI-220","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-220] the installed sf CLI is the version the receipt was recorded with","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":87}],"qualifiers":["Receipts and tests pinned to @salesforce/cli 2.152.14 (sf v2 commands); the CLI negotiates API 67.0 from /services/data","Differential match is profile-bound; broader parity unverified","The fresh October 17 CLI observation reports instance API 68.0; current comparisons remain pinned to the earlier API 67.0 instance observation. Installed CLI version and instance API version are separate contracts.","October18 cli2 successor compares observed v68 discovery fields; other assertions remain the historical API67 project profile. CLI binary identity remains checked separately."],"evidence":[{"id":"EV-cli.current-sf-cli-command-version-315a408","kind":"differential-test","result":"pass","capabilityId":"cli.current-sf-cli-command-version","recipe":"pnpm test:integration / pnpm test (VO-CLI-206, VO-CLI-220) against tests/compatibility/reference/2026-10-07-cli2-api67.0.json","fixtureDigest":"sha256:9a7fb37ec550b0e2ca5d05393e0bb00484f7f326cbf0f5fde57605c47ab01bcc","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]},{"id":"soap.apex-user-defined","area":"metadata-cli-soap","title":"Invoke authored Apex SOAP webservice methods","kind":"gap","capabilityIds":["cli.sf-apex-run"],"implementation":"uncompared","reference":"pending","paths":["packages/runtime/src/soap.ts"],"localTestIds":[],"evidenceIds":[],"apiVersions":["67.0"],"profile":"rust-only-current","limitation":"Current Rust-only profile: predecessor TypeScript execution/coverage is retired. This workflow is explicitly unsupported or requires a new exact-source Rust comparison. Historical provider observations remain dated evidence, not current support.","nextAcceptance":"Verify the current explicit fence, then implement and compare a bounded canonical Rust workflow before admitting this slice.","facets":["validation","authority","transaction"],"historicalTypeScriptProfile":{"sourceRevision":"294ac9be","paths":["packages/runtime/src/apex-soap.ts","packages/runtime/src/soap.ts"],"reference":"pending","evidenceIds":[],"limitation":"Apex executeAnonymous, selected Partner operations and user-defined Apex SOAP services have independent dispatch/authority contracts."},"localChecks":[],"contracts":[{"id":"cli.sf-apex-run","slug":"cli--sf-apex-run","support":"partial","localReportState":"passed","testedVersion":"0.7.25","tests":[{"id":"VO-CLI-009","file":"integration/sf-cli.test.ts","layer":"integration","observations":[{"profile":"apex-final-other105","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-009] runs anonymous Apex that calls a deployed class through sf apex run","packetDigest":"sha256:822b8783f601cf9de44ecffbad27a380d7df6fb26023c7e5db8816991dfa58b0"},{"profile":"release-drift","status":"passed","fullName":"unmodified Salesforce CLI against Virtual Org [VO-CLI-009] runs anonymous Apex that calls a deployed class through sf apex run","packetDigest":"sha256:60982c6de6ba399684b3d23db51c9a024c0fa37b71e42f623cd26daed788d822"}],"line":138},{"id":"VO-CLI-204","file":"integration/sf-cli-metadata.test.ts","layer":"integration","observations":[{"profile":"apex-final-cli2-original","status":"passed","fullName":"unmodified Salesforce CLI against a source-tracked Virtual Org (examples/metadata-org) [VO-CLI-204] sf apex run reports debug output, compile problems and uncaught exceptions as on the reference","packetDigest":"sha256:336fa623fd89b04eb938ad5853a26777d0734c120920aed1c31c34e92c288362"}],"line":28}],"qualifiers":["SOAP Apex API executeAnonymous with DebuggingInfo log","Differential match is profile-bound; broader parity unverified"],"evidence":[{"id":"EV-cli.sf-apex-run-315a408","kind":"differential-test","result":"pass","capabilityId":"cli.sf-apex-run","recipe":"pnpm test:integration / pnpm test (VO-CLI-204) against tests/compatibility/reference/2026-10-07-cli2-api67.0.json","fixtureDigest":"sha256:9a7fb37ec550b0e2ca5d05393e0bb00484f7f326cbf0f5fde57605c47ab01bcc","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","recordedAt":"2026-10-07","environment":"local workerd + PostgreSQL 18 vs recorded reference API 67.0","sourceIds":["cli"]}],"reference":{"sourceIds":["cli"],"resolution":"behavior-pinned","apiVersions":["67.0"],"editions":[],"licenses":[],"notes":"Pinned to recorded reference receipts (2026-10-06)."},"target":{"runtime":"virtualorg","release":"0.2.0","revision":"315a40827de8ab3d1b2b5492e788dadd1f1605ed","environment":"local workerd + PostgreSQL 18 + local R2","profile":"standard-org-67.0"}}]}],"localObservation":{"kind":"local-api-workflow-observation","runtimeVersion":"0.7.25","sourceRevision":"3fd0cace470eec831d5a382a3455abb0aa9a3a45","sourceDigest":"sha256:6b3c3660a48c5aff6fe520d9772b47d0f190d8a94081157c9a6dfec9a27e074b","recordedAt":"2026-10-19T08:25:54.606Z","apiVersion":"67.0","workflowDigest":"sha256:81cc1cc73d387c9e8a5461a1516bc14c98ba44cff065b1f702ba22ab462b1b38","reportDigest":"sha256:034fac2dc0c03a5022aa406cba7a3415a9443ecd90b576f82690bfa8d7f93a0b","receiptDigest":"sha256:4a63a1f5bee79d9181147bcf421820dd23b9e400ffbbb70f0f111dadaa63e429","configuration":{"transactionProfile":"runtime-default","environment":{"platform":"darwin","arch":"arm64","nodeVersion":"v26.4.0","postgresVersion":"180006","postgresCollation":"C","postgresCtype":"C","postgresEncoding":"UTF8"},"rustEntry":true,"emailEntry":false,"rustBuild":{"sourceDigest":"4a6678f71670857e3d5b1f452e9debba4dbe32adb0b023fb6e5a29f32804dff2","outputHashes":{"index_bg.wasm":"1a4f76f47d097c568eb1b4376d59fb06357047e6569c49ee0ae6c087d2c9ee18","index.js":"cd2490f40aafc2dec51ff420645575254d6f794ba21974738c99fcb7aaa3d3fb","api.js":"291cb687b96eda605cce2f5f28009f790a0c6c30a43e2b032643a583e0e24813","host-index.js":"56cb1ce1ac912df53b81c3325601e7d6cfadcd169692d16624e383aee591aa09","index.js.meta.json":"b7fb5bf62b6031561baebd45a22a64e8dfaf8c381eb87ef95c952f2f2d054f19","api.js.meta.json":"bef805e8e9ae383d1de23589214a857396a36cb7ffb4b497ee9819a1f39280ce","host-index.js.meta.json":"974580b56e449320a29b0ef95c8815066c5a6eb706b240c3dea23b2d74f9b771","hook-index.js":"1273bcd19bc74c3d2830fc8061fad85b75e4faef5041d0d08eb550358c9a89e2","hook-index.js.meta.json":"70604f09fb3ca5ceb9315e265f620cc882a6ec44177e63adf3ffe37ad461f776"}},"releaseDriftReference":false,"clientIpSource":"unknown","geocodingProviderTransport":"not-selected"},"notice":"Current-source local unit and PostgreSQL/workerd assertions only. Missing, duplicate and skipped observations are not passes. Historical reference observations remain separate; this is not complete API support.","tests":[{"id":"VO-RUNTIME-001","file":"tests/runtime.test.ts","status":"passed","observations":[{"layer":"unit","file":"tests/runtime.test.ts","status":"passed"}]},{"id":"VO-CLI-001","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-700","file":"","status":"not-run","observations":[]},{"id":"VO-REST-100","file":"tests/api3.test.ts","status":"passed","observations":[{"layer":"unit","file":"tests/api3.test.ts","status":"passed"}]},{"id":"VO-E2E-011","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-327","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-001","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-003","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-718","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-701","file":"","status":"not-run","observations":[]},{"id":"VO-REST-103","file":"tests/api3.test.ts","status":"passed","observations":[{"layer":"unit","file":"tests/api3.test.ts","status":"passed"}]},{"id":"VO-E2E-005","file":"","status":"not-run","observations":[]},{"id":"VO-E2E-006","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-015","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-324","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-002","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-002","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-014","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-010","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-020","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-710","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-005","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-326","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-105","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-320","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-322","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-325","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-323","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-321","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-009","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-309","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-034","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-012","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-005","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-011","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-333","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-711","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-712","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2172","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2173","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2174","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2175","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-332","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-705","file":"","status":"not-run","observations":[]},{"id":"VO-REST-102","file":"tests/api3.test.ts","status":"passed","observations":[{"layer":"unit","file":"tests/api3.test.ts","status":"passed"}]},{"id":"VO-DIFF-704","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-331","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-087","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-088","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-703","file":"","status":"not-run","observations":[]},{"id":"VO-REST-101","file":"tests/api3.test.ts","status":"passed","observations":[{"layer":"unit","file":"tests/api3.test.ts","status":"passed"}]},{"id":"VO-DIFF-702","file":"","status":"not-run","observations":[]},{"id":"VO-DRIFT-004","file":"","status":"not-run","observations":[]},{"id":"VO-DRIFT-005","file":"","status":"not-run","observations":[]},{"id":"VO-DRIFT-006","file":"","status":"not-run","observations":[]},{"id":"VO-DRIFT-007","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-008","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-102","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-103","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-104","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-006","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-100","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-101","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-613","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-615","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-616","file":"","status":"not-run","observations":[]},{"id":"VO-META-310","file":"tests/deploy-archive.test.ts","status":"passed","observations":[{"layer":"unit","file":"tests/deploy-archive.test.ts","status":"passed"}]},{"id":"VO-MDEP-300","file":"","status":"not-run","observations":[]},{"id":"VO-MDEP-304","file":"","status":"not-run","observations":[]},{"id":"VO-MDEP-307","file":"","status":"not-run","observations":[]},{"id":"VO-META-314","file":"tests/deploy-archive.test.ts","status":"not-run","observations":[{"layer":"unit","file":"tests/deploy-archive.test.ts","status":"passed"},{"layer":"unit","file":"tests/metadata-boundary.test.ts","status":"passed"}]},{"id":"VO-MDEP-309","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-007","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-621","file":"","status":"not-run","observations":[]},{"id":"VO-MDEP-305","file":"","status":"not-run","observations":[]},{"id":"VO-MDEP-301","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-620","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-202","file":"","status":"not-run","observations":[]},{"id":"VO-MDEP-308","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-614","file":"","status":"not-run","observations":[]},{"id":"VO-NATIVE-003","file":"","status":"not-run","observations":[]},{"id":"VO-NATIVE-005","file":"","status":"not-run","observations":[]},{"id":"VO-NATIVE-010","file":"","status":"not-run","observations":[]},{"id":"VO-NATIVE-015","file":"","status":"not-run","observations":[]},{"id":"VO-META-100","file":"tests/metadata2.test.ts","status":"passed","observations":[{"layer":"unit","file":"tests/metadata2.test.ts","status":"passed"}]},{"id":"VO-DIFF-617","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-218","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-045","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-150","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-155","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-158","file":"","status":"not-run","observations":[]},{"id":"VO-APEX-008","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-151","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-152","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-153","file":"","status":"not-run","observations":[]},{"id":"VO-APEX-101","file":"","status":"not-run","observations":[]},{"id":"VO-APEX-105","file":"","status":"not-run","observations":[]},{"id":"VO-APEX-106","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2110","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2111","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2112","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2118","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2113","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2114","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2116","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2117","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2119","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-516","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-517","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-568","file":"","status":"not-run","observations":[]},{"id":"VO-APEX-011","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-100","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-122","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2101","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2103","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-212","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-106","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-216","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-201","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-009","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-204","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-206","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-220","file":"","status":"not-run","observations":[]},{"id":"VO-CLI-011","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-344","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-345","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-348","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-737","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2178","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2179","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-738","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2180","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2181","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-347","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-341","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-342","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-343","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2177","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-346","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2176","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2121","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2122","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2123","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2124","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2125","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2126","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2127","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2128","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-2129","file":"","status":"not-run","observations":[]},{"id":"VO-BULK1-001","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-727","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7120","file":"","status":"not-run","observations":[]},{"id":"VO-UNTRK-006","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7129","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7121","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7127","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7122","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7123","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7124","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7125","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7126","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7128","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-8124","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7140","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7145","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7141","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7142","file":"","status":"not-run","observations":[]},{"id":"VO-UNTRK-007","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7143","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7144","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7147","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7146","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7148","file":"","status":"not-run","observations":[]},{"id":"VO-DIFF-7149","file":"","status":"not-run","observations":[]},{"id":"VO-APIWF-001","file":"","status":"not-run","observations":[]}]},"snapshot":{"revision":"6af9c0dec73d3a8e2513d2076e78c2242c2cad75","corpusDigest":"sha256:69178a7d43da57d5de40d9da858cb0869d781205d7182887af11d6e50b383a0d","reportRecordedAt":"2026-10-20T05:21:43.965Z","testedSourceDigest":"sha256:dbc89422570b1cd32aa436ef5846c83491671936550e46c1e97665fbcb4bcb13"}}