Select a compatible advertised interface
Implement a selector for an already parsed, trusted-location **partial A2A 1.0 card**. Find exactly one requested skill. Its inputModes, when present, override defaultInputModes. Enforce any streaming requirement. Return a copy of the first interface whose (protocolBinding, protocolVersion) is in the client's supported pairs, or None. Preserve advertised preference order. This is a compatibility exercise, not complete schema, security, or protocol validation. It performs no discovery requests.
Your task
- Complete the starter function using the contract above.
- Use the examples and visible tests to check normal inputs, boundaries, and rejected inputs.
- Run tests to record your result, then compare with the explained reference solution.
Examples
Inputreview + text/plain + {(JSONRPC, 1.0)}
OutputThe first matching 1.0 interface
InputA skill with inputModes=[] and defaultInputModes=[text/plain]
OutputNone
Implement the function, then run the tests.
Ctrl / ⌘ + Enter to test · Shift + Tab leaves editor