# Conformance Matrix

This matrix maps current source-of-truth requirements to executable behavioral coverage. Fixture-only/self-equality tests have been removed; test files listed here call production APIs directly.

| Requirement area | Source | Test files | Status |
|---|---|---|---|
| RFC 854 command bytes and IAC framing | RFC 854 | `telnet_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_restored_generated_history_test.mbt`, `telnet_restored_matrix_history_test.mbt` | Behavioral coverage |
| Data, escaped IAC, command/data ordering | RFC 854 | `telnet_test.mbt`, `telnet_edge_cases_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_restored_matrix_history_test.mbt`, `telnet_finish_span_target_test.mbt`, `telnet_feed_span_into_contract_test.mbt`, `telnet_native_scanner_stress_test.mbt`, `telnet_named_fuzz_seed_regression_test.mbt` | Behavioral coverage, including target-parity scanner stress and named dense escaped-IAC regression seeds through public parser paths |
| Subnegotiation framing, escaped IAC in payloads, and oversized-SB recovery | RFC 854/RFC 855 + project limits | `telnet_test.mbt`, `telnet_edge_cases_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_restored_matrix_history_test.mbt`, `telnet_subnegotiation_recovery_matrix_test.mbt`, `telnet_finish_span_target_test.mbt`, `telnet_cr_policy_split_matrix_test.mbt`, `telnet_named_fuzz_seed_regression_test.mbt` | Behavioral coverage, including split-boundary overflow/discard behavior and named nested-looking/oversized SB regression seeds |
| Incomplete parser states and parser recovery | RFC 854 + project policy | `telnet_test.mbt`, `telnet_edge_cases_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_restored_history_test.mbt`, `telnet_restored_generated_history_test.mbt`, `telnet_restored_matrix_history_test.mbt`, `telnet_restored_hardening_history_test.mbt`, `telnet_subnegotiation_recovery_matrix_test.mbt`, `telnet_finish_span_target_test.mbt`, `telnet_invalid_command_split_matrix_test.mbt`, `telnet_more_docs_examples_test.mbt` | Behavioral coverage |
| Strict vs lenient command policy | Project policy | `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_lenient_matrix_test.mbt`, `telnet_invalid_command_split_matrix_test.mbt` | Behavioral coverage, including invalid-command split-boundary recovery parity |
| NVT CR/LF/CR-NUL policy | RFC 854 + project policy | `telnet_expanded_behavior_tdd_test.mbt`, `telnet_policy_blind_spots_tdd_test.mbt`, `telnet_restored_history_test.mbt`, `telnet_parser_policy_matrix_test.mbt`, `telnet_cr_policy_split_matrix_test.mbt` | Behavioral coverage |
| BINARY directional behavior | RFC 856 | `telnet_policy_blind_spots_tdd_test.mbt`, `telnet_session_tdd_test.mbt` | Behavioral coverage, including Session negotiated-state helpers |
| ECHO and SUPPRESS-GO-AHEAD negotiation | RFC 857/RFC 858 | `telnet_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_restored_history_test.mbt`, `telnet_session_tdd_test.mbt` | Behavioral coverage, including Session server-side local ECHO after negotiation |
| RFC 1143 Q-method receiving transitions | RFC 1143 | `telnet_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_restored_negotiation_matrix_test.mbt`, `telnet_rfc1143_loop_characterization_test.mbt`, `telnet_rfc1143_normative_characterization_test.mbt`, `telnet_negotiator_sequence_characterization_test.mbt`, `telnet_more_docs_examples_test.mbt` | Behavioral coverage + documented normative gaps |
| RFC 1143 local initiation transitions | RFC 1143 | `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_policy_blind_spots_tdd_test.mbt`, `telnet_restored_negotiation_matrix_test.mbt`, `telnet_rfc1143_normative_characterization_test.mbt`, `telnet_negotiator_sequence_characterization_test.mbt` | Behavioral coverage + documented normative gaps |
| TERMINAL-TYPE | RFC 1091 | `telnet_test.mbt`, `telnet_edge_cases_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_restored_history_test.mbt`, `telnet_restored_generated_history_test.mbt`, `telnet_option_codec_roundtrip_matrix_test.mbt`, `telnet_malformed_codec_matrix_test.mbt`, `telnet_more_docs_examples_test.mbt`, `telnet_target_parity_codec_encoder_test.mbt` | Behavioral coverage, including string ASCII/high-byte boundaries and target-parity ASCII edge bytes |
| NAWS | RFC 1073 | `telnet_test.mbt`, `telnet_edge_cases_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_restored_history_test.mbt`, `telnet_restored_generated_history_test.mbt`, `telnet_restored_matrix_history_test.mbt`, `telnet_option_codec_roundtrip_matrix_test.mbt`, `telnet_malformed_codec_matrix_test.mbt`, `telnet_target_parity_codec_encoder_test.mbt`, `telnet_session_tdd_test.mbt` | Behavioral coverage, including target-parity min/max word encoding bytes, Session opaque remote-NAWS negotiation, and window-size tracking after negotiation |
| NEW-ENVIRON | RFC 1572 | `telnet_test.mbt`, `telnet_edge_cases_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_option_codec_roundtrip_matrix_test.mbt`, `telnet_malformed_codec_matrix_test.mbt`, `telnet_interop_transcript_corpus_test.mbt` | Behavioral coverage, including IS/SEND transcript decoding, escaped VAR/VALUE/ESC/USERVAR handling, high-byte rejection, and current empty-field characterization |
| CHARSET | RFC 2066 | `telnet_test.mbt`, `telnet_edge_cases_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_restored_history_test.mbt`, `telnet_restored_generated_history_test.mbt`, `telnet_option_codec_roundtrip_matrix_test.mbt`, `telnet_malformed_codec_matrix_test.mbt`, `telnet_target_parity_codec_encoder_test.mbt` | Behavioral coverage, including separator-only, ASCII/high-byte boundaries, and target-parity ASCII edge bytes |
| LINEMODE | RFC 1184 | `telnet_test.mbt`, `telnet_edge_cases_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_restored_generated_history_test.mbt`, `telnet_option_codec_roundtrip_matrix_test.mbt`, `telnet_malformed_codec_matrix_test.mbt` | Behavioral coverage, including high-byte raw SLC/forward-mask preservation |
| IANA option registry mapping | IANA Telnet Options Registry | `telnet_test.mbt`, `telnet_restored_generated_history_test.mbt`, `telnet_iana_registry_characterization_test.mbt`, `telnet_option_mapping_registry_samples_test.mbt`, `telnet_unknown_raw_payload_matrix_test.mbt`, `telnet_target_parity_codec_encoder_test.mbt` | Exhaustive modeled `KnownOption` table for `0..49` and `255`; assigned unmodeled values are lossless `Unknown`, including target-parity raw high-byte payloads |
| START_TLS state boundary | RFC 2946 + project security policy | `telnet_test.mbt`, `telnet_edge_cases_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_policy_blind_spots_tdd_test.mbt`, `telnet_restored_generated_history_test.mbt`, `telnet_restored_hardening_history_test.mbt`, `telnet_option_codec_roundtrip_matrix_test.mbt`, `telnet_malformed_codec_matrix_test.mbt`, `telnet_session_boundary_characterization_test.mbt`, `telnet_more_docs_examples_test.mbt`, `telnet_session_tdd_test.mbt` | Behavioral coverage; Session emits transport-upgrade boundary events while adapter enforces TLS |
| Encoder canonicalization and sizing | RFC 854 + project performance policy | `telnet_test.mbt`, `telnet_edge_cases_test.mbt`, `telnet_behavior_tdd_test.mbt`, `telnet_expanded_behavior_tdd_test.mbt`, `telnet_missing_behavior_tdd_test.mbt`, `telnet_restored_history_test.mbt`, `telnet_restored_generated_history_test.mbt`, `telnet_restored_hardening_history_test.mbt`, `telnet_capacity_roundtrip_test.mbt`, `telnet_option_codec_roundtrip_matrix_test.mbt`, `telnet_encoder_edge_matrix_test.mbt`, `telnet_rawdata_invalid_span_contract_test.mbt`, `telnet_public_invalid_span_safety_test.mbt`, `telnet_more_docs_examples_test.mbt`, `telnet_target_parity_codec_encoder_test.mbt` | Behavioral coverage, including simple-command acceptance/rejection atomicity, safe assume-capacity wrong-`required` characterization, and large target-parity raw/escaped payload bytes |
| Differential/reference corpus | Project verification policy | `telnet_differential_reference_test.mbt`, `telnet_differential_subnegotiation_test.mbt`, `telnet_encode_parse_roundtrip_matrix_test.mbt`, `telnet_interop_transcript_corpus_test.mbt`, `telnet_named_fuzz_seed_regression_test.mbt` | Independent complete-stream, interop-inspired coverage, and manually reviewed named fuzz regression seeds, including deterministic option transcripts for EOR, STATUS, X-DISPLAY-LOCATION, NEW-ENVIRON, AUTHENTICATION, ENCRYPTION, KERMIT, SEND-URL, and FORWARD-X |
| Public API contracts and hardening | Project API/security policy | `telnet_missing_behavior_tdd_test.mbt`, `telnet_policy_blind_spots_tdd_test.mbt`, `telnet_session_tdd_test.mbt`, `telnet_restored_generated_history_test.mbt`, `telnet_restored_matrix_history_test.mbt`, `telnet_restored_negotiation_matrix_test.mbt`, `telnet_restored_hardening_history_test.mbt`, `telnet_capacity_roundtrip_test.mbt`, `telnet_finish_span_target_test.mbt`, `telnet_parser_policy_matrix_test.mbt`, `telnet_encoder_edge_matrix_test.mbt`, `telnet_public_invalid_span_safety_test.mbt`, `telnet_complexity_guardrail_test.mbt`, `telnet_feed_span_into_contract_test.mbt`, `telnet_bytespan_ownership_characterization_test.mbt`, `tools/check-test-tautologies.sh` | Behavioral coverage + CI guard, including Session output-buffer atomicity |
