feat(compliance): add signals-specific universal storyboards for error_handling and core tracks#3358
Draft
feat(compliance): add signals-specific universal storyboards for error_handling and core tracks#3358
Conversation
…r_handling and core tracks Adds error-compliance-signals.yaml and schema-validation-signals.yaml to static/compliance/source/universal/, restoring error handling and schema compliance coverage for signals-only agents (supported_protocols: ["signals"]). The existing error-compliance.yaml and schema-validation.yaml storyboards have required_tools: [get_products] at the storyboard root, causing the 5.13 runner to skip them entirely for signals agents (missing_tool). New storyboards use required_tools: [get_signals, activate_signal] and [get_signals] respectively. Closes #3350 https://claude.ai/code/session_01J2r8RXmLEsooTH82Q3XyY9
… check The error_code check validator expects allowed_values (list) not value (scalar). Fixes the unsupported_major_version step in error-compliance-signals.yaml. https://claude.ai/code/session_01J2r8RXmLEsooTH82Q3XyY9
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #3350
Summary
Signals-only agents (
supported_protocols: ["signals"], noget_productstool) get 0 steps from theerror_handlingandcorecompliance tracks in the 5.13 runner. Root cause:error-compliance.yamlandschema-validation.yamlboth carryrequired_tools: [get_products]at the storyboard root — the runner interprets this as an applicability gate and emitsmissing_tool/ skips the storyboard entirely for agents that lackget_products.This PR adds two new universal storyboards targeting signals agents:
error-compliance-signals.yaml(track: error_handling,required_tools: [get_signals, activate_signal]) — 5 phases: capability discovery, error responses (nonexistent segment ID, missing required field), error structure validation, VERSION_UNSUPPORTED / version negotiation, MCP transport bindingschema-validation-signals.yaml(track: core,required_tools: [get_signals]) — 2 phases: capability discovery, schema compliance (required fields on signals, pricing options structure)Updates
docs/building/conformance.mdxanddocs/building/compliance-catalog.mdxper the doc-parity lint requirement.Non-breaking justification: adds new storyboards; no existing storyboard is modified; media-buy agents are unaffected. Signals agents gain new required compliance coverage — this was always the spec intent (universal tracks must run for all agents), so this restores correct behavior rather than expanding requirements.
Note: The existing
error-compliance.yamlandschema-validation.yamlstill haverequired_tools: [get_products]at the root, which means they remain scoped to media-buy agents. A complementary fix in theadcp-clientrunner (usingsupported_protocolsfor track applicability rather thanrequired_toolsas a proxy) would be the complete solution. That fix is inadcp-client, not this repo.Pre-PR review
activate_signalsteps,sample_request_skip_schemaon intentionally-malformed step,REFERENCE_NOT_FOUNDcorrect error code for unresolvablesignal_agent_segment_id,modelfield correct for signals pricing)REFERENCE_NOT_FOUNDfor opaquesignal_agent_segment_id, notSIGNAL_NOT_FOUNDwhich is forsignal_idcatalog references); VERSION_UNSUPPORTED pattern viaget_signalsis sound; coverage sufficient to restore zero-step agents to participationSession: https://claude.ai/code/session_01J2r8RXmLEsooTH82Q3XyY9
Generated by Claude Code