Repository navigation
row 155 F25 REHOME: 51 engine answer tests onto the served reply (exchange_reply.rs) - #877
Merged
Merged
Conversation
…F25 REHOME, row 155) The legacy engine's answer tests (crates/busbar-llm/src/engine/**) that the coverage map rehomes to exchange_reply.rs and that pin no money figure, ported onto the plane's exchange::reply API at equal strength: exact statuses, head field values and counts, frame shapes and bytes. Map rows 11 12 89 90 91 154 164 183 201 326 327 331 332 344 345 346 347 352 353 355 357 358 371 387 388 389 390 391 392 393 396 397 409 411 412 445 446 447 449 450 498 499 500 501 502 503 559 564 565 635 636.
Collaborator
Author
|
Rule 20 note from #1031 (row 155, draft): disjoint hunks in tests/exchange_reply.rs (ReplyCtx/RelayCtx/WholeCtx literals gain translate_cap). A test merge is clean. |
MattJackson
added a commit
that referenced
this pull request
Oct 15, 2026
… now exchange_reply's rehome (#877) holds a twin of each
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.
Status row 155 (lane-p3-llm), F25 REHOME. The coverage map (
coverage-map-v2.tsv) rehomes these legacy engine answer tests tocrates/busbar-plane-llm/tests/exchange_reply.rs. This PR ports the 51 that pin no money figure onto the served reply (exchange::replyReply/Relay/whole/failure/wire). Each assertion keeps the legacy test's strength: exact statuses, exact head-field values and counts (exactly-once request ids), exact frame shapes and bytes, and the full 3840-case class grid.They live in a new
mod rehomed_answers, appended at the end of the file, with their own helpers. Each test has a doc comment naming the legacyfile::testand map row, the 1.5.5 behaviour it pins, and aRED:line saying which failure it catches.No product code changed. I did not run these tests locally (no cargo build or test on the laptop). ModernCI is the proof.
Where the legacy test needed something the plane does not have, the port pins the same figure another way:
busbar-kernel-breaker, so the breaker'snormalize_raw_erroris copied into the test asbreaker_rule. The test compares the plane'sfailure::normalizeagainst that copy across the same 3840 cases.write_error(with its mintedrequest_idtaken out). For same-dialect answers the test compares the far bytes directly.Map rows covered (51)
attempt/tests/failed_generation.rs::ungoverned_same_protocol_cohere_error_split_key_faults_the_breakerrehomed_answers::ungoverned_same_protocol_cohere_error_split_key_faults_the_breakerattempt/tests/failed_generation.rs::ungoverned_same_protocol_cohere_complete_split_key_is_no_faultrehomed_answers::ungoverned_same_protocol_cohere_complete_split_key_is_no_faulttests/client_header_forwarding_tests.rs::a_same_dialect_answer_relays_the_upstream_headrehomed_answers::a_same_dialect_answer_relays_the_upstream_headtests/client_header_forwarding_tests.rs::a_same_dialect_error_relays_the_upstream_headrehomed_answers::a_same_dialect_error_relays_the_upstream_headtests/client_header_forwarding_tests.rs::a_translated_answer_relays_no_upstream_headrehomed_answers::a_translated_answer_relays_no_upstream_headtests/forward_pool_integration_tests.rs::test_sse_events_single_data_prefixrehomed_answers::test_sse_events_single_data_prefixtests/forward_pool_integration_tests.rs::test_stream_inspection_tap_usage_parsingrehomed_answers::test_stream_inspection_tap_usage_parsingtests/forward_pool_integration_tests.rs::test_forward_once_cross_protocol_auth_kinds_match_main_pathrehomed_answers::test_forward_once_cross_protocol_auth_kinds_match_main_pathtests/forward_pool_integration_tests.rs::test_cross_protocol_stream_openai_lane_to_anthropic_clientrehomed_answers::test_cross_protocol_stream_openai_lane_to_anthropic_clienttests/ingress_indistinguishability_tests.rs::test_cross_protocol_error_kind_mappingrehomed_answers::test_cross_protocol_error_kind_mappingtests/ingress_indistinguishability_tests.rs::test_shape_cross_protocol_error_auth_kindsrehomed_answers::test_shape_cross_protocol_error_auth_kindstests/ingress_indistinguishability_tests.rs::test_ingress_stream_content_type_by_protocolrehomed_answers::test_ingress_stream_content_type_by_protocoltests/ingress_indistinguishability_tests.rs::test_cross_protocol_response_carries_ingress_ct_and_native_idrehomed_answers::test_cross_protocol_response_carries_ingress_ct_and_native_idtests/ingress_indistinguishability_tests.rs::test_bedrock_ingress_success_carries_amzn_request_idrehomed_answers::test_bedrock_ingress_success_carries_amzn_request_idtests/ingress_indistinguishability_tests.rs::test_anthropic_ingress_success_carries_request_id_headerrehomed_answers::test_anthropic_ingress_success_carries_request_id_headertests/ingress_indistinguishability_tests.rs::test_anthropic_ingress_stream_carries_request_id_headerrehomed_answers::test_anthropic_ingress_stream_carries_request_id_headertests/ingress_indistinguishability_tests.rs::test_cross_protocol_client_fault_reshapes_error_enveloperehomed_answers::test_cross_protocol_client_fault_reshapes_error_envelopetests/ingress_indistinguishability_tests.rs::test_anthropic_same_proto_error_relays_upstream_request_id_verbatim_oncerehomed_answers::test_anthropic_same_proto_error_relays_upstream_request_id_verbatim_oncetests/ingress_indistinguishability_tests.rs::test_anthropic_same_proto_passthrough_401_relays_request_id_verbatim_oncerehomed_answers::test_anthropic_same_proto_passthrough_401_relays_request_id_verbatim_oncetests/ingress_indistinguishability_tests.rs::test_bedrock_converse_stream_buffered_cross_protocol_emits_binary_eventstreamrehomed_answers::test_bedrock_converse_stream_buffered_cross_protocol_emits_binary_eventstreamtests/ingress_indistinguishability_tests.rs::test_gemini_json_array_buffered_cross_protocol_emits_one_element_arrayrehomed_answers::test_gemini_json_array_buffered_cross_protocol_emits_one_element_arraytests/ingress_indistinguishability_tests.rs::test_gemini_json_array_buffered_via_forward_once_matches_primaryrehomed_answers::test_gemini_json_array_buffered_via_forward_once_matches_primarytests/ingress_indistinguishability_tests.rs::test_non_gemini_stream_buffered_cross_protocol_stays_a_plain_object_not_an_arrayrehomed_answers::test_non_gemini_stream_buffered_cross_protocol_stays_a_plain_object_not_an_arraytests/ingress_integration_tests.rs::test_bedrock_converse_routes_and_returns_jsonrehomed_answers::test_bedrock_converse_routes_and_returns_jsontests/ingress_integration_tests.rs::test_bedrock_converse_stream_returns_binary_eventstreamrehomed_answers::test_bedrock_converse_stream_returns_binary_eventstreamtests/ingress_integration_tests.rs::test_bedrock_same_protocol_stream_passthrough_forwards_upstream_request_idrehomed_answers::test_bedrock_same_protocol_stream_passthrough_forwards_upstream_request_idtests/ingress_integration_tests.rs::test_bedrock_same_protocol_converse_non_stream_forwards_upstream_request_idrehomed_answers::test_bedrock_same_protocol_converse_non_stream_forwards_upstream_request_idtests/ingress_integration_tests.rs::test_bedrock_same_protocol_stream_mid_stream_transport_error_appends_binary_exceptionrehomed_answers::test_bedrock_same_protocol_stream_mid_stream_transport_error_appends_binary_exceptiontests/ingress_integration_tests.rs::test_bedrock_ingress_mid_stream_transport_error_appends_binary_exceptionrehomed_answers::test_bedrock_ingress_mid_stream_transport_error_appends_binary_exceptiontests/ingress_integration_tests.rs::test_openai_ingress_mid_stream_transport_error_appends_native_sserehomed_answers::test_openai_ingress_mid_stream_transport_error_appends_native_ssetests/ingress_integration_tests.rs::test_gemini_stream_generate_content_alt_sse_is_event_streamrehomed_answers::test_gemini_stream_generate_content_alt_sse_is_event_streamtests/ingress_integration_tests.rs::test_gemini_alt_sse_mid_stream_transport_error_appends_native_sse_framerehomed_answers::test_gemini_alt_sse_mid_stream_transport_error_appends_native_sse_frametests/ingress_integration_tests.rs::test_gemini_json_array_mid_stream_error_closes_array_no_sserehomed_answers::test_gemini_json_array_mid_stream_error_closes_array_no_ssetests/ingress_integration_tests.rs::test_anthropic_cross_protocol_message_start_full_skeletonrehomed_answers::test_anthropic_cross_protocol_message_start_full_skeletontests/ingress_integration_tests.rs::test_passthrough_401_cross_protocol_reshaped_to_ingressrehomed_answers::test_passthrough_401_cross_protocol_reshaped_to_ingresstests/ingress_integration_tests.rs::test_openai_ingress_stream_emits_native_openai_framesrehomed_answers::test_openai_ingress_stream_emits_native_openai_framestests/ingress_integration_tests.rs::test_cohere_ingress_stream_emits_native_cohere_framesrehomed_answers::test_cohere_ingress_stream_emits_native_cohere_framestests/ingress_integration_tests.rs::test_responses_ingress_stream_emits_native_responses_eventsrehomed_answers::test_responses_ingress_stream_emits_native_responses_eventstests/ingress_integration_tests.rs::test_cohere_ingress_mid_stream_transport_error_appends_native_sserehomed_answers::test_cohere_ingress_mid_stream_transport_error_appends_native_ssetests/ingress_integration_tests.rs::test_responses_ingress_mid_stream_transport_error_appends_response_failedrehomed_answers::test_responses_ingress_mid_stream_transport_error_appends_response_failedtests/mid_stream_error_tests.rs::test_mid_stream_generic_detail_has_no_leak_markersrehomed_answers::test_mid_stream_generic_detail_has_no_leak_markerstests/mid_stream_error_tests.rs::test_bedrock_ingress_mid_stream_error_is_binary_exception_framerehomed_answers::test_bedrock_ingress_mid_stream_error_is_binary_exception_frametests/mid_stream_error_tests.rs::test_sse_ingress_mid_stream_error_uses_native_framingrehomed_answers::test_sse_ingress_mid_stream_error_uses_native_framingtests/mid_stream_error_tests.rs::test_client_fault_kind_mappingrehomed_answers::test_client_fault_kind_mappingtests/mid_stream_error_tests.rs::test_extract_error_messagerehomed_answers::test_extract_error_messagetests/mid_stream_error_tests.rs::test_is_stream_content_typerehomed_answers::test_is_stream_content_typetests/plane_reply_parity_tests.rs::the_planes_class_rule_is_the_breakersrehomed_answers::the_planes_class_rule_is_the_breakerstests/plane_reply_parity_tests.rs::a_far_end_error_reads_the_same_through_the_planerehomed_answers::a_far_end_error_reads_the_same_through_the_planetests/plane_reply_parity_tests.rs::a_far_end_errors_relay_is_the_enginesrehomed_answers::a_far_end_errors_relay_is_the_enginestests/wire_tests.rs::unknown_ingress_mid_stream_error_is_a_bare_data_frame_from_corerehomed_answers::unknown_ingress_mid_stream_error_is_a_bare_data_frame_from_coretests/wire_tests.rs::status_word_golden_engine_client_fault_kindrehomed_answers::status_word_golden_engine_client_fault_kindRED-able tests
Every test above can go RED: each one's doc comment carries a
RED:line naming the regression it catches. Reading the served code, I found no behaviour that differs from the 1.5.5 figure, so I do not expect any of them to be red on predev.