Skip to content

error-compliance.yaml: add release-precision VERSION_UNSUPPORTED probe (#3570 follow-up) #4712

Description

@bokelley

Context

static/compliance/source/universal/error-compliance.yaml (phase version_negotiation, step at ~line 341-383) probes VERSION_UNSUPPORTED by sending adcp_major_version: 99 (integer field). With 3.1 promoting release-precision negotiation to the primary wire field, the error-path coverage should also exercise an unknown release-precision pin (e.g., adcp_version: "99.0").

Without this addition, a seller could implement integer-only VERSION_UNSUPPORTED validation and pass all storyboards while shipping a broken 3.1 buyer experience — the new version_negotiation universal storyboard (#4702) covers advertise + echo but explicitly defers the error path.

What to add

A parallel step in the same phase that:

  • Sends adcp_version: "99.0" (release-precision shape, unsupported value)
  • Asserts error_code: VERSION_UNSUPPORTED
  • Asserts error.data.supported_versions[] is present and non-empty (per static/schemas/source/error-details/version-unsupported.json)

Advisory at 3.1, promoted with the rest of the version-negotiation suite at the 3.2 storyboard cut.

Refs

Metadata

Metadata

Assignees

No one assigned

    Labels

    claude-triagedIssue has been triaged by the Claude Code triage routine. Remove to re-triage.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions