f8e447ffee
Remove legacy SDL/OpenGL adapters from the workspace and introduce winit/Vulkan adapter boundaries for the rendered composition root. Add reproducible toolchain and xtask CI coverage for formatting, tests, clippy, docs, policy, deny, acceptance auditing, and hosted OS matrix evidence. Strengthen Stage 1 data contracts with byte-first paths, VFS hardening, structured diagnostics, RsLi writer/edit scaffolding, corpus reporting, and resource error classification. Advance Stage 2 asset preparation by moving mission loading through assets/runtime boundaries, materializing prototype graph data, preserving provenance, and adding inspection/viewer integration. Record the Stage 0-2 audit input, acceptance roadmap, coverage updates, and documentation notes for follow-up evidence.
39 KiB
39 KiB
| 1 | # Acceptance coverage manifest. | ||
|---|---|---|---|
| 2 | # Format: <acceptance-id>\t<covered|partial|blocked|omitted>\t<evidence> | ||
| 3 | L0-COPYRIGHT-001 | covered | cargo test -p fparkan-corpus --offline report_json_contains_metrics_and_hashes_not_paths_or_payloads |
| 4 | L0-P1-001 | covered | cargo test -p fparkan-corpus --offline licensed_part1_manifest_profile_and_counts_match_baseline |
| 5 | L0-P1-002 | covered | cargo test -p fparkan-corpus --offline licensed_part1_has_no_casefold_relative_path_collisions |
| 6 | L0-P2-001 | covered | cargo test -p fparkan-corpus --offline licensed_part2_manifest_profile_and_counts_match_baseline |
| 7 | L0-P2-002 | covered | cargo test -p fparkan-corpus --offline licensed_part2_has_no_casefold_relative_path_collisions |
| 8 | S0-ARCH-001 | covered | cargo xtask policy runs cargo metadata --offline --no-deps successfully |
| 9 | S0-ARCH-002 | covered | cargo xtask policy rejects forbidden GUI/adapter dependencies from domain crates |
| 10 | S0-ARCH-003 | covered | cargo xtask policy rejects platform/render adapter dependencies from fparkan-headless |
| 11 | S0-ARCH-004 | covered | cargo xtask policy scans workspace-owned Rust/TOML for unsafe constructs and workspace lints forbid unsafe_code |
| 12 | S0-ARCH-005 | covered | cargo xtask policy rejects Python source files, Python shebangs, and Python CI workflow steps while allowing docs requirements.txt |
| 13 | S0-ARCH-006 | covered | cargo xtask policy rejects non-fparkan package directories under crates/ |
| 14 | S0-DIAG-001 | covered | cargo test -p fparkan-diagnostics --offline diagnostic_chain_preserves_context |
| 15 | S0-DIAG-002 | covered | cargo test -p fparkan-diagnostics --offline json_is_stable |
| 16 | S0-CORPUS-001 | covered | cargo test -p fparkan-corpus --offline deterministic_traversal_is_creation_order_independent |
| 17 | S0-CORPUS-002 | covered | cargo test -p fparkan-corpus --offline unreadable_directory_produces_error |
| 18 | S0-CORPUS-003 | covered | cargo test -p fparkan-corpus --offline symlink_loop_is_not_traversed_by_default |
| 19 | S0-CORPUS-004 | covered | cargo test -p fparkan-corpus --offline casefold_collisions_are_registered |
| 20 | S0-CORPUS-005 | covered | cargo test -p fparkan-corpus --offline fingerprint_changes |
| 21 | S0-CORPUS-006 | covered | cargo test -p fparkan-corpus --offline atomic_report_write |
| 22 | S0-CLI-001 | covered | cargo test -p fparkan-cli --offline stable_exit_codes_are_mapped |
| 23 | S0-CLI-002 | covered | cargo test -p fparkan-cli --offline accepts_json_format_option archive_json_has_schema_version |
| 24 | S0-GL-001 | covered | cargo test -p fparkan-render-vulkan --offline backend_tracks_render_request_and_presents |
| 25 | S0-LIMIT-001 | covered | cargo test -p fparkan-binary --offline rejects_count_stride_overflow |
| 26 | S0-LIMIT-002 | covered | cargo test -p fparkan-binary --offline rejects_oversized_declared_allocation_before_read |
| 27 | L1-P1-NRES-001 | covered | cargo test -p fparkan-nres --offline licensed_corpora_nres_roundtrip_gates |
| 28 | L1-P2-NRES-001 | covered | cargo test -p fparkan-nres --offline licensed_corpora_nres_roundtrip_gates |
| 29 | L1-P1-NRES-002 | covered | cargo test -p fparkan-nres --offline licensed_corpora_nres_roundtrip_gates |
| 30 | L1-P2-NRES-002 | covered | cargo test -p fparkan-nres --offline licensed_corpora_nres_roundtrip_gates |
| 31 | L1-P1-NRES-003 | covered | cargo test -p fparkan-nres --offline licensed_corpora_nres_roundtrip_gates |
| 32 | L1-P2-NRES-003 | covered | cargo test -p fparkan-nres --offline licensed_corpora_nres_roundtrip_gates |
| 33 | L1-P1-RSLI-001 | covered | cargo test -p fparkan-rsli --offline licensed_part1_rsli_method_distribution_baseline |
| 34 | L1-P2-RSLI-001 | covered | cargo test -p fparkan-rsli --offline licensed_part2_rsli_method_distribution_baseline |
| 35 | L1-RSLI-QUIRK-001 | covered | cargo test -p fparkan-rsli --offline licensed_corpora_rsli_quirk_is_only_approved_interf8_tex |
| 36 | L1-P1-PATH-001 | covered | cargo test -p fparkan-corpus --offline licensed_part1_paths_stay_under_root |
| 37 | L1-P2-PATH-001 | covered | cargo test -p fparkan-corpus --offline licensed_part2_paths_stay_under_root |
| 38 | S1-NRES-001 | covered | cargo test -p fparkan-nres --offline parses_minimal_empty_archive |
| 39 | S1-NRES-002 | covered | cargo test -p fparkan-nres --offline one_entry_archive_uses_8_byte_alignment |
| 40 | S1-NRES-003 | covered | cargo test -p fparkan-nres --offline rejects_invalid_magic |
| 41 | S1-NRES-004 | covered | cargo test -p fparkan-nres --offline rejects_unsupported_version |
| 42 | S1-NRES-005 | covered | cargo test -p fparkan-nres --offline rejects_negative_entry_count |
| 43 | S1-NRES-006 | covered | cargo test -p fparkan-nres --offline rejects_directory_size_before_allocation |
| 44 | S1-NRES-007 | covered | cargo test -p fparkan-nres --offline rejects_total_size_mismatch |
| 45 | S1-NRES-008 | covered | cargo test -p fparkan-nres --offline rejects_directory_before_header |
| 46 | S1-NRES-009 | covered | cargo test -p fparkan-nres --offline rejects_payload_before_data_region |
| 47 | S1-NRES-010 | covered | cargo test -p fparkan-nres --offline rejects_payload_crossing_directory |
| 48 | S1-NRES-020 | covered | cargo test -p fparkan-nres --offline preserves_nonzero_unindexed_region |
| 49 | S1-NRES-021 | covered | cargo test -p fparkan-nres --offline licensed_corpora_nres_roundtrip_gates |
| 50 | S1-NRES-011 | covered | cargo test -p fparkan-nres --offline rejects_overlapping_payloads |
| 51 | S1-NRES-012 | covered | cargo test -p fparkan-nres --offline rejects_name_without_nul_terminator |
| 52 | S1-NRES-013 | covered | cargo test -p fparkan-nres --offline preserves_name_bytes_after_nul |
| 53 | S1-NRES-014 | covered | cargo test -p fparkan-nres --offline rejects_sort_index_out_of_range |
| 54 | S1-NRES-015 | covered | cargo test -p fparkan-nres --offline rejects_duplicate_sort_mapping |
| 55 | S1-NRES-016 | covered | cargo test -p fparkan-nres --offline binary_lookup_returns_original_entry_index |
| 56 | S1-NRES-017 | covered | cargo test -p fparkan-nres --offline compatible_profile_uses_linear_fallback_for_broken_mapping |
| 57 | S1-NRES-018 | covered | cargo test -p fparkan-nres --offline lookup_is_ascii_case_insensitive |
| 58 | S1-NRES-019 | covered | cargo test -p fparkan-nres --offline rejects_empty_names_and_resolves_duplicates_to_first_entry |
| 59 | S1-NRES-022 | covered | cargo test -p fparkan-nres --offline canonical_compact_roundtrip_preserves_entry_semantics |
| 60 | S1-NRES-023 | covered | cargo test -p fparkan-nres --offline editor_payload_update_rewrites_offsets_and_size |
| 61 | S1-NRES-024 | covered | cargo test -p fparkan-nres --offline editor_rename_rebuilds_search_mapping |
| 62 | S1-NRES-025 | covered | cargo test -p fparkan-nres --offline editor_rejects_invalid_authoring_names |
| 63 | S1-NRES-PROP-001 | covered | cargo test -p fparkan-nres --offline generated_archives_preserve_lossless_and_canonical_semantics |
| 64 | S1-NRES-PROP-002 | covered | cargo test -p fparkan-nres --offline generated_editor_updates_roundtrip |
| 65 | S1-NRES-FUZZ-001 | covered | cargo test -p fparkan-nres --offline arbitrary_small_inputs_do_not_panic_or_overallocate |
| 66 | S1-PATH-001 | covered | cargo test -p fparkan-path --offline normalizes_separators |
| 67 | S1-PATH-002 | covered | cargo test -p fparkan-path --offline ascii_casefold_does_not_unicode_fold |
| 68 | S1-PATH-003 | covered | cargo test -p fparkan-path --offline non_ascii_original_bytes_remain_stable |
| 69 | S1-PATH-004 | covered | cargo test -p fparkan-path --offline rejects_absolute_drive_and_nul_paths |
| 70 | S1-PATH-005 | covered | cargo test -p fparkan-path --offline rejects_escape |
| 71 | S1-PATH-006 | covered | cargo test -p fparkan-path --offline rejects_absolute_drive_and_nul_paths |
| 72 | S1-PATH-007 | covered | cargo test -p fparkan-path --offline join_under_keeps_normalized_path_below_root |
| 73 | S1-PATH-008 | covered | cargo test -p fparkan-path --offline original_separators_and_raw_bytes_are_preserved |
| 74 | S1-H02 | covered | cargo test -p fparkan-path --offline accepts_non_utf8_legacy_bytes |
| 75 | S1-M01 | covered | cargo test -p fparkan-vfs --offline memory_vfs_list_prefix_is_boundary_safe |
| 76 | S1-RSLI-001 | covered | cargo test -p fparkan-rsli --offline parses_minimal_empty_library |
| 77 | S1-RSLI-002 | covered | cargo test -p fparkan-rsli --offline rejects_invalid_header_fields |
| 78 | S1-RSLI-003 | covered | cargo test -p fparkan-rsli --offline rejects_entry_table_bounds |
| 79 | S1-RSLI-004 | covered | cargo test -p fparkan-rsli --offline table_xor_transform_uses_known_vector |
| 80 | S1-RSLI-005 | covered | cargo test -p fparkan-rsli --offline table_xor_transform_is_symmetric |
| 81 | S1-RSLI-006 | covered | cargo test -p fparkan-rsli --offline table_xor_state_spans_entries |
| 82 | S1-RSLI-007 | covered | cargo test -p fparkan-rsli --offline presorted_mapping_uses_valid_permutation |
| 83 | S1-RSLI-008 | covered | cargo test -p fparkan-rsli --offline compatible_profile_rebuilds_invalid_presorted_mapping |
| 84 | S1-RSLI-009 | covered | cargo test -p fparkan-rsli --offline stored_method_uses_exact_size |
| 85 | S1-RSLI-010 | covered | cargo test -p fparkan-rsli --offline xor_only_method_uses_entry_key |
| 86 | S1-RSLI-011 | covered | cargo test -p fparkan-rsli --offline lzss_method_decodes_literals_references_and_wrap |
| 87 | S1-RSLI-012 | covered | cargo test -p fparkan-rsli --offline xor_lzss_method_uses_entry_key |
| 88 | S1-RSLI-013 | covered | cargo test -p fparkan-rsli --offline adaptive_lzss_method_decodes_synthetic_vector |
| 89 | S1-RSLI-014 | covered | cargo test -p fparkan-rsli --offline xor_adaptive_lzss_method_decodes_synthetic_vector |
| 90 | S1-RSLI-015 | covered | cargo test -p fparkan-rsli --offline raw_deflate_method_expects_raw_stream_not_zlib_wrapper |
| 91 | S1-RSLI-016 | covered | cargo test -p fparkan-rsli --offline unknown_method_is_rejected_on_load |
| 92 | S1-RSLI-017 | covered | cargo test -p fparkan-rsli --offline decoded_size_mismatch_is_rejected |
| 93 | S1-RSLI-018 | covered | cargo test -p fparkan-rsli --offline ao_overlay_adjusts_effective_offsets |
| 94 | S1-RSLI-019 | covered | cargo test -p fparkan-rsli --offline invalid_ao_overlay_is_rejected |
| 95 | S1-RSLI-020 | covered | cargo test -p fparkan-rsli --offline rejects_registered_quirks_in_strict_profile |
| 96 | S1-RSLI-021 | covered | cargo test -p fparkan-rsli --offline named_deflate_eof_plus_one_quirk_accepts_only_approved_entry |
| 97 | S1-RSLI-022 | covered | cargo test -p fparkan-rsli --offline unknown_header_bytes_are_lossless |
| 98 | S1-RSLI-023 | covered | cargo test -p fparkan-rsli --offline no_op_lossless_roundtrip_preserves_bytes |
| 99 | S1-RSLI-PROP-001 | covered | cargo test -p fparkan-rsli --offline generated_supported_methods_decode_expected_bytes |
| 100 | S1-RSLI-FUZZ-001 | covered | cargo test -p fparkan-rsli --offline arbitrary_small_inputs_do_not_panic |
| 101 | S1-RES-001 | covered | cargo test -p fparkan-resource --offline cached_repository_reads_synthetic_nres |
| 102 | S1-RES-002 | covered | cargo test -p fparkan-resource --offline entry_handles_are_archive_qualified |
| 103 | S1-RES-003 | covered | cargo test -p fparkan-resource --offline archive_cache_and_decoded_payload_cache_evict_independently |
| 104 | S1-RES-004 | covered | cargo test -p fparkan-resource --offline entry_read_error_carries_archive_path_and_entry_name |
| 105 | S1-VFS-001 | covered | cargo test -p fparkan-vfs --offline memory_vfs_uses_exact_lookup |
| 106 | S1-VFS-002 | covered | cargo test -p fparkan-vfs --offline overlay_vfs_uses_first_matching_layer |
| 107 | S1-VFS-003 | covered | cargo test -p fparkan-vfs --offline directory_vfs_resolves_ascii_casefolded_segments |
| 108 | S1-VFS-004 | covered | cargo test -p fparkan-vfs --offline casefold_selector_reports_ambiguous_segments |
| 109 | L2-P1-UNIT-001 | covered | cargo test -p fparkan-prototype --offline licensed_corpora_unit_dat_parse_counts |
| 110 | L2-P2-UNIT-001 | covered | cargo test -p fparkan-prototype --offline licensed_corpora_unit_dat_parse_counts |
| 111 | L2-P1-REG-001 | covered | cargo test -p fparkan-prototype --offline licensed_corpora_registry_payloads_are_record_aligned |
| 112 | L2-P2-REG-001 | covered | cargo test -p fparkan-prototype --offline licensed_corpora_registry_payloads_are_record_aligned |
| 113 | L2-P1-GRAPH-001 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 114 | L2-P2-GRAPH-001 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 115 | L2-P1-INHERIT-001 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 116 | L2-P2-INHERIT-001 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 117 | L2-P1-NONGEO-001 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 118 | L2-P2-NONGEO-001 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 119 | L2-P1-GRAPH-002 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 120 | L2-P2-GRAPH-002 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 121 | S2-REG-001 | covered | cargo test -p fparkan-prototype --offline registry_zero_records_payload_is_empty |
| 122 | S2-REG-002 | covered | cargo test -p fparkan-prototype --offline registry_requires_record_multiple |
| 123 | S2-REG-003 | covered | cargo test -p fparkan-prototype --offline registry_preserves_bounded_name_tails_and_order |
| 124 | S2-REG-004 | covered | cargo test -p fparkan-prototype --offline registry_preserves_bounded_name_tails_and_order |
| 125 | S2-UNIT-001 | covered | cargo test -p fparkan-prototype --offline unit_zero_records_uses_exact_size |
| 126 | S2-UNIT-002 | covered | cargo test -p fparkan-prototype --offline unit_dat_one_record_uses_exact_size_formula |
| 127 | S2-UNIT-003 | covered | cargo test -p fparkan-prototype --offline unit_dat_rejects_truncated_record |
| 128 | S2-UNIT-004 | covered | cargo test -p fparkan-prototype --offline unit_dat_preserves_header_description_tail_and_parent_link |
| 129 | S2-UNIT-005 | covered | cargo test -p fparkan-prototype --offline unit_dat_preserves_header_description_tail_and_parent_link |
| 130 | S2-UNIT-006 | covered | cargo test -p fparkan-prototype --offline unit_dat_accepts_full_description_without_nul |
| 131 | S2-UNIT-007 | covered | cargo test -p fparkan-prototype --offline unit_dat_preserves_header_description_tail_and_parent_link unit_dat_preserves_positive_parent_link |
| 132 | S2-PROTO-001 | covered | cargo test -p fparkan-prototype --offline resolves_synthetic_objects_registry_model |
| 133 | S2-PROTO-002 | covered | cargo test -p fparkan-prototype --offline base_only_registry_entry_is_nongeometric |
| 134 | S2-PROTO-003 | covered | cargo test -p fparkan-prototype --offline graph_report_records_resolved_roots_and_failures |
| 135 | S2-PROTO-004 | covered | cargo test -p fparkan-prototype --offline missing_referenced_archive_reports_root_chain |
| 136 | S2-PROTO-005 | covered | cargo test -p fparkan-prototype --offline missing_referenced_resource_reports_root_chain |
| 137 | S2-PROTO-006 | covered | cargo test -p fparkan-prototype --offline objects_registry_inheritance_merges_parent_then_local_refs |
| 138 | S2-PROTO-007 | covered | cargo test -p fparkan-prototype --offline objects_registry_inheritance_resolves_multiple_levels |
| 139 | S2-PROTO-008 | covered | cargo test -p fparkan-prototype --offline objects_registry_inheritance_rejects_direct_cycle |
| 140 | S2-PROTO-009 | covered | cargo test -p fparkan-prototype --offline objects_registry_inheritance_rejects_indirect_cycle |
| 141 | S2-PROTO-010 | covered | cargo test -p fparkan-prototype --offline objects_registry_inheritance_rejects_depth_limit |
| 142 | S2-PROTO-011 | covered | cargo test -p fparkan-prototype --offline base_only_registry_entry_is_nongeometric |
| 143 | S2-PROTO-012 | covered | cargo test -p fparkan-prototype --offline first_existing_explicit_msh_is_selected_in_order |
| 144 | S2-PROTO-013 | covered | cargo test -p fparkan-prototype --offline invalid_referenced_msh_is_error |
| 145 | S2-PROTO-014 | covered | cargo test -p fparkan-prototype --offline resolver_cache_invalidates_when_archive_fingerprint_changes |
| 146 | S2-GRAPH-001 | covered | cargo test -p fparkan-prototype --offline graph_report_records_resolved_roots_and_failures |
| 147 | S2-GRAPH-002 | covered | cargo test -p fparkan-prototype --offline unit_dat_expands_components_in_order |
| 148 | S2-GRAPH-003 | covered | cargo test -p fparkan-assets --offline repository_plan_deduplicates_duplicate_visuals_but_graph_preserves_requests |
| 149 | S2-GRAPH-004 | covered | cargo test -p fparkan-prototype --offline graph_report_records_resolved_roots_and_failures |
| 150 | S2-GRAPH-005 | covered | cargo test -p fparkan-cli --offline prototype_graph_json_has_canonical_field_order |
| 151 | S2-GRAPH-006 | covered | cargo test -p fparkan-prototype --offline graph_report_records_resolved_roots_and_failures |
| 152 | S2-PROP-001 | covered | cargo test -p fparkan-prototype --offline generated_acyclic_prototype_graph_resolves_deterministically |
| 153 | S2-FUZZ-001 | covered | cargo test -p fparkan-prototype --offline arbitrary_unit_and_registry_bytes_are_bounded_and_panic_free |
| 154 | L3-P1-MSH-001 | covered | cargo test -p fparkan-msh --offline licensed_corpus_msh_assets_validate |
| 155 | L3-P2-MSH-001 | covered | cargo test -p fparkan-msh --offline licensed_corpus_msh_assets_validate |
| 156 | L3-P1-TEXM-001 | covered | cargo test -p fparkan-texm --offline licensed_corpus_texm_assets_validate_and_decode_mip0 |
| 157 | L3-P2-TEXM-001 | covered | cargo test -p fparkan-texm --offline licensed_corpus_texm_assets_validate_and_decode_mip0 |
| 158 | L3-P1-MAT0-001 | covered | cargo test -p fparkan-material --offline licensed_corpus_mat0_and_wear_parse |
| 159 | L3-P2-MAT0-001 | covered | cargo test -p fparkan-material --offline licensed_corpus_mat0_and_wear_parse |
| 160 | L3-P1-WEAR-001 | covered | cargo test -p fparkan-material --offline licensed_corpus_mat0_and_wear_parse |
| 161 | L3-P2-WEAR-001 | covered | cargo test -p fparkan-material --offline licensed_corpus_mat0_and_wear_parse |
| 162 | L3-P1-ASSET-001 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 163 | L3-P2-ASSET-001 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 164 | L3-P1-CAPTURE-001 | covered | cargo test -p fparkan-game --offline selected_is_and_is2_missions_produce_approved_render_captures |
| 165 | L3-P2-CAPTURE-001 | covered | cargo test -p fparkan-game --offline selected_is_and_is2_missions_produce_approved_render_captures |
| 166 | S3-WEAR-001 | covered | cargo test -p fparkan-material --offline wear_preserves_legacy_id_but_selects_by_index |
| 167 | S3-WEAR-002 | covered | cargo test -p fparkan-material --offline wear_requires_declared_rows |
| 168 | S3-WEAR-003 | covered | cargo test -p fparkan-material --offline wear_preserves_legacy_id_but_selects_by_index |
| 169 | S3-WEAR-004 | covered | cargo test -p fparkan-material --offline wear_requires_blank_separator_before_lightmaps |
| 170 | S3-WEAR-005 | covered | cargo test -p fparkan-material --offline wear_parses_lightmaps |
| 171 | S3-MAT0-001 | covered | cargo test -p fparkan-material --offline mat0_version_prefix_and_primary_texture |
| 172 | S3-MAT0-002 | covered | cargo test -p fparkan-material --offline mat0_accepts_zero_phase_material |
| 173 | S3-MAT0-003 | covered | cargo test -p fparkan-material --offline mat0_phase34_exact_framing_and_full_texture_name |
| 174 | S3-MAT0-004 | covered | cargo test -p fparkan-material --offline mat0_phase34_exact_framing_and_full_texture_name |
| 175 | S3-MAT0-005 | covered | cargo test -p fparkan-material --offline mat0_animation_block_has_no_implicit_padding |
| 176 | S3-MAT0-006 | covered | cargo test -p fparkan-material --offline mat0_rejects_animation_block_count_limit |
| 177 | S3-MSH-001 | covered | cargo test -p fparkan-msh --offline canonical_stream_set_is_independent_of_entry_order |
| 178 | S3-MSH-002 | covered | cargo test -p fparkan-msh --offline missing_required_stream_is_error |
| 179 | S3-MSH-003 | covered | cargo test -p fparkan-msh --offline duplicate_required_stream_type_is_error |
| 180 | S3-MSH-004 | covered | cargo test -p fparkan-msh --offline node38_stride_is_exact |
| 181 | S3-MSH-005 | covered | cargo test -p fparkan-msh --offline node38_uses_three_by_five_slot_mapping_and_absent_marker |
| 182 | S3-MSH-006 | covered | cargo test -p fparkan-msh --offline node38_uses_three_by_five_slot_mapping_and_absent_marker |
| 183 | S3-MSH-007 | covered | cargo test -p fparkan-msh --offline type2_header_and_slot_tail_framing_are_exact |
| 184 | S3-MSH-008 | covered | cargo test -p fparkan-msh --offline type2_header_and_slot_tail_framing_are_exact |
| 185 | S3-MSH-009 | covered | cargo test -p fparkan-msh --offline slot_batch_range_out_of_bounds_is_error |
| 186 | S3-MSH-010 | covered | cargo test -p fparkan-msh --offline vertex_stream_strides_are_exact |
| 187 | S3-MSH-011 | covered | cargo test -p fparkan-msh --offline base_vertex_plus_index_must_reference_position |
| 188 | S3-MSH-012 | covered | cargo test -p fparkan-msh --offline batch20_uses_unaligned_field_offsets |
| 189 | S3-MSH-013 | covered | cargo test -p fparkan-msh --offline auxiliary_and_extended_streams_are_preserved |
| 190 | S3-MSH-014 | covered | cargo test -p fparkan-msh --offline auxiliary_and_extended_streams_are_preserved |
| 191 | S3-MSH-015 | covered | cargo test -p fparkan-msh --offline mtcheck_variant_is_preserved_and_recognized |
| 192 | S3-MSH-016 | covered | cargo test -p fparkan-msh --offline invalid_bounds_are_rejected |
| 193 | S3-MSH-017 | covered | cargo test -p fparkan-msh --offline slot_batch_range_out_of_bounds_is_error |
| 194 | S3-MSH-PROP-001 | covered | cargo test -p fparkan-msh --offline canonical_stream_set_is_independent_of_entry_order |
| 195 | S3-MSH-FUZZ-001 | covered | cargo test -p fparkan-msh --offline arbitrary_nested_payloads_are_bounded_and_panic_free |
| 196 | S3-TEXM-001 | covered | cargo test -p fparkan-texm --offline decodes_all_synthetic_formats |
| 197 | S3-TEXM-002 | covered | cargo test -p fparkan-texm --offline rejects_zero_dimensions |
| 198 | S3-TEXM-003 | covered | cargo test -p fparkan-texm --offline non_power_of_two_mip_chain_clamps_each_dimension |
| 199 | S3-TEXM-004 | covered | cargo test -p fparkan-texm --offline rejects_mip_size_arithmetic_overflow_or_oob |
| 200 | S3-TEXM-005 | covered | cargo test -p fparkan-texm --offline indexed_palette_requires_exact_1024_bytes |
| 201 | S3-TEXM-006 | covered | cargo test -p fparkan-texm --offline channel_expansion_boundary_values_are_stable |
| 202 | S3-TEXM-007 | covered | cargo test -p fparkan-texm --offline rgb888x_preserves_fourth_disk_byte_but_outputs_opaque_alpha |
| 203 | S3-TEXM-008 | covered | cargo test -p fparkan-texm --offline page_tail_absent_and_exact_rect_framing |
| 204 | S3-TEXM-009 | covered | cargo test -p fparkan-texm --offline page_tail_absent_and_exact_rect_framing |
| 205 | S3-TEXM-010 | covered | cargo test -p fparkan-texm --offline invalid_page_magic_size_and_trailing_bytes_are_rejected |
| 206 | S3-TEXM-011 | covered | cargo test -p fparkan-texm --offline invalid_page_magic_size_and_trailing_bytes_are_rejected |
| 207 | S3-TEXM-012 | covered | cargo test -p fparkan-texm --offline exposes_mip_views_and_upload_plan_without_mutating_document |
| 208 | S3-TEXM-013 | covered | cargo test -p fparkan-texm --offline page_scaling_uses_floor_origin_and_ceil_end_policy |
| 209 | S3-TEXM-FUZZ-001 | covered | cargo test -p fparkan-texm --offline arbitrary_texm_payloads_do_not_panic |
| 210 | S3-MAT0-007 | covered | cargo test -p fparkan-material --offline mat0_rejects_trailing_bytes |
| 211 | S3-MAT-RESOLVE-001 | covered | cargo test -p fparkan-material --offline resolve_material_uses_exact_match |
| 212 | S3-MAT-RESOLVE-002 | covered | cargo test -p fparkan-material --offline resolve_material_falls_back_to_default |
| 213 | S3-MAT-RESOLVE-003 | covered | cargo test -p fparkan-material --offline resolve_material_uses_first_entry_only_after_missing_default |
| 214 | S3-MAT-RESOLVE-004 | covered | cargo test -p fparkan-material --offline resolve_material_empty_texture_means_untextured |
| 215 | S3-MAT-RESOLVE-005 | covered | cargo test -p fparkan-material --offline resolve_material_without_lightmap_keeps_lightmap_absent |
| 216 | S3-RENDER-001 | covered | cargo test -p fparkan-render --offline one_snapshot_draw_produces_one_draw_command |
| 217 | S3-RENDER-002 | covered | cargo test -p fparkan-render --offline material_index_maps_through_resolved_material_slots |
| 218 | S3-RENDER-003 | covered | cargo test -p fparkan-render --offline node_transform_is_retained |
| 219 | S3-RENDER-004 | covered | cargo test -p fparkan-render --offline command_order_uses_phase_then_stable_key |
| 220 | S3-RENDER-005 | covered | cargo test -p fparkan-render --offline command_capture_independent_of_snapshot_construction_order |
| 221 | S3-RENDER-006 | covered | cargo test -p fparkan-render --offline invalid_range_returns_contextual_error |
| 222 | S3-RENDER-007 | covered | cargo test -p fparkan-render --offline capture_is_stable |
| 223 | S3-RENDER-008 | covered | cargo test -p fparkan-render --offline recording_backend_stores_captures |
| 224 | S3-RENDER-009 | covered | cargo xtask policy |
| 225 | S3-GL-001 | omitted | permanent macOS Desktop GL 3.3 adapter is not implemented; historical CGL probe is retained as external evidence only |
| 226 | S3-GL-002 | omitted | outside the current macOS-focused goal scope; GLES2 remains documented for portable/non-macOS targets |
| 227 | S3-GL-003 | blocked | legacy fparkan-render-gl adapter removed while Vulkan renderer path is being brought in as the stage-3 backend |
| 228 | S3-VIEWER-001 | covered | cargo test -p fparkan-viewer --offline model_fixture_uses_viewer_service_and_render_commands |
| 229 | S4-ANIM-001 | covered | cargo test -p fparkan-animation --offline anim_key24_decodes_signed_quaternion |
| 230 | S4-ANIM-002 | covered | cargo test -p fparkan-animation --offline frame_map_decodes_u16_and_uses_attr_frame_count |
| 231 | S4-ANIM-003 | covered | cargo test -p fparkan-animation --offline frame_map_falls_back_when_absent_or_invalid |
| 232 | S4-ANIM-004 | covered | cargo test -p fparkan-animation --offline frame_map_falls_back_when_absent_or_invalid |
| 233 | S4-ANIM-005 | covered | cargo test -p fparkan-animation --offline exact_key_time_returns_exact_pose |
| 234 | S4-ANIM-006 | covered | cargo test -p fparkan-animation --offline pose_track_blends_translation_and_rotation |
| 235 | S4-ANIM-007 | covered | cargo test -p fparkan-animation --offline quaternion_shortest_path_sign_flip_is_stable |
| 236 | S4-ANIM-008 | covered | cargo test -p fparkan-animation --offline zero_or_degenerate_key_interval_is_rejected |
| 237 | S4-ANIM-009 | omitted | current sampler is a portable reference path; runtime-captured x87 parity vectors are not implemented in the macOS-focused scope |
| 238 | S4-ANIM-010 | omitted | current sampler accepts the profile marker but does not implement an independent x87 compatibility path |
| 239 | S4-ANIM-011 | covered | cargo test -p fparkan-animation --offline blend_optional_pose_uses_valid_side |
| 240 | S4-ANIM-012 | covered | cargo test -p fparkan-animation --offline hierarchy_evaluates_parent_before_child_and_rejects_cycles |
| 241 | S4-ANIM-013 | covered | cargo test -p fparkan-animation --offline hierarchy_evaluates_parent_before_child_and_rejects_cycles |
| 242 | S4-ANIM-014 | covered | cargo test -p fparkan-animation --offline pose_capture_uses_float_bits |
| 243 | S4-ANIM-PROP-001 | covered | cargo test -p fparkan-animation --offline generated_valid_quaternions_remain_finite |
| 244 | S4-MAT-001 | covered | cargo test -p fparkan-material --offline material_modes_zero_to_three_choose_stable_phases |
| 245 | S4-MAT-002 | covered | cargo test -p fparkan-material --offline material_exact_key_boundary_selects_exact_phase |
| 246 | S4-MAT-003 | covered | cargo test -p fparkan-material --offline material_interpolation_mask_affects_only_selected_fields |
| 247 | S4-MAT-004 | covered | cargo test -p fparkan-material --offline material_timeline_profile_cases_are_evidence_labeled |
| 248 | S4-MAT-005 | covered | cargo test -p fparkan-material --offline material_random_offset_uses_material_stream_only |
| 249 | S4-MAT-006 | covered | cargo test -p fparkan-material --offline material_same_seed_and_timeline_produces_same_phase_capture |
| 250 | S4-FX-001 | covered | cargo test -p fparkan-fx --offline header_is_exactly_sixty_bytes_and_command_sizes_are_fixed |
| 251 | S4-FX-002 | covered | cargo test -p fparkan-fx --offline header_is_exactly_sixty_bytes_and_command_sizes_are_fixed |
| 252 | S4-FX-011 | covered | cargo test -p fparkan-fx --offline header_is_exactly_sixty_bytes_and_command_sizes_are_fixed |
| 253 | S4-FX-012 | covered | cargo test -p fparkan-fx --offline opcode6_four_byte_command_is_accepted |
| 254 | S4-FX-013 | covered | cargo test -p fparkan-fx --offline rejects_unknown_opcode_at_command_index |
| 255 | S4-FX-014 | covered | cargo test -p fparkan-fx --offline rejects_command_count_that_exceeds_payload |
| 256 | S4-FX-015 | covered | cargo test -p fparkan-fx --offline rejects_trailing_bytes_after_command_stream |
| 257 | S4-FX-016 | covered | cargo test -p fparkan-fx --offline fixed_resource_refs_preserve_tails |
| 258 | S4-FX-017 | covered | cargo test -p fparkan-fx --offline missing_dependency_error_contains_effect_command_archive_and_name |
| 259 | S4-FX-018 | omitted | FX create/update/emit is documented as a deterministic reference stub until runtime-captured lifecycle semantics are implemented |
| 260 | S4-FX-019 | omitted | FX update side-effect contract is stub-level only and not accepted as original runtime parity evidence |
| 261 | S4-FX-020 | omitted | FX emit side-effect contract is stub-level only and not accepted as original runtime parity evidence |
| 262 | S4-FX-021 | omitted | FX command order is deterministic for the stub but original runtime ordering evidence is not implemented |
| 263 | S4-FX-022 | omitted | FX lifecycle controls are deterministic for the stub but original stop/restart/end semantics are not implemented |
| 264 | S4-FX-023 | omitted | FX emission capture is deterministic for the stub but lacks runtime-captured parity evidence |
| 265 | S4-FX-024 | omitted | FX RNG accounting is not implemented beyond the reference stub and must not count as compatibility coverage |
| 266 | S4-FX-FUZZ-001 | covered | cargo test -p fparkan-fx --offline arbitrary_command_streams_are_bounded_and_panic_free |
| 267 | L4-P1-ANIM-001 | covered | cargo test -p fparkan-msh --offline licensed_corpus_animation_streams_sample_approved_pose_captures |
| 268 | L4-P2-ANIM-001 | covered | cargo test -p fparkan-msh --offline licensed_corpus_animation_streams_sample_approved_pose_captures |
| 269 | L4-P1-CAPTURE-001 | covered | cargo test -p fparkan-msh --offline licensed_corpus_animation_streams_sample_approved_pose_captures |
| 270 | L4-P2-CAPTURE-001 | covered | cargo test -p fparkan-msh --offline licensed_corpus_animation_streams_sample_approved_pose_captures |
| 271 | L4-P1-FX-001 | covered | cargo test -p fparkan-fx --offline licensed_corpus_fxid_exact_eof_and_distribution |
| 272 | L4-P2-FX-001 | covered | cargo test -p fparkan-fx --offline licensed_corpus_fxid_exact_eof_and_distribution |
| 273 | L4-P1-FX-002 | covered | cargo test -p fparkan-fx --offline licensed_corpus_fxid_exact_eof_and_distribution |
| 274 | L4-P2-FX-002 | covered | cargo test -p fparkan-fx --offline licensed_corpus_fxid_exact_eof_and_distribution |
| 275 | L4-FX-OP6-001 | covered | cargo test -p fparkan-fx --offline licensed_corpus_fxid_exact_eof_and_distribution |
| 276 | L4-P1-EFFECT-001 | omitted | licensed FX emission capture currently covers deterministic reference-stub output, not original runtime-captured effect parity |
| 277 | L4-P2-EFFECT-001 | omitted | licensed FX emission capture currently covers deterministic reference-stub output, not original runtime-captured effect parity |
| 278 | S5-LMESH-001 | covered | cargo test -p fparkan-terrain-format --offline land_msh_required_streams_are_order_independent_and_stride_checked |
| 279 | S5-LMESH-002 | covered | cargo test -p fparkan-terrain-format --offline land_msh_required_streams_are_order_independent_and_stride_checked |
| 280 | S5-LMESH-003 | covered | cargo test -p fparkan-terrain-format --offline decodes_minimal_land_msh |
| 281 | S5-LMESH-004 | covered | cargo test -p fparkan-terrain-format --offline decodes_minimal_land_msh |
| 282 | S5-LMESH-005 | covered | cargo test -p fparkan-terrain-format --offline rejects_invalid_vertex_index |
| 283 | S5-LMESH-006 | covered | cargo test -p fparkan-terrain-format --offline rejects_invalid_neighbor_index |
| 284 | S5-LMESH-007 | covered | cargo test -p fparkan-terrain-format --offline face_layout_preserves_tail_and_all_surface_mask_mappings_are_explicit |
| 285 | S5-LMESH-008 | covered | cargo test -p fparkan-terrain-format --offline face_layout_preserves_tail_and_all_surface_mask_mappings_are_explicit |
| 286 | S5-LMESH-009 | covered | cargo test -p fparkan-terrain-format --offline face_layout_preserves_tail_and_all_surface_mask_mappings_are_explicit |
| 287 | S5-LMAP-001 | covered | cargo test -p fparkan-terrain-format --offline decodes_minimal_land_map |
| 288 | S5-LMAP-002 | covered | cargo test -p fparkan-terrain-format --offline land_map_prefix_absent_links_polygon_blocks_grid_size_and_exact_eof |
| 289 | S5-LMAP-003 | covered | cargo test -p fparkan-terrain-format --offline land_map_prefix_absent_links_polygon_blocks_grid_size_and_exact_eof |
| 290 | S5-LMAP-004 | covered | cargo test -p fparkan-terrain-format --offline land_map_prefix_absent_links_polygon_blocks_grid_size_and_exact_eof |
| 291 | S5-LMAP-005 | covered | cargo test -p fparkan-terrain-format --offline land_map_prefix_absent_links_polygon_blocks_grid_size_and_exact_eof |
| 292 | S5-LMAP-006 | covered | cargo test -p fparkan-terrain-format --offline rejects_invalid_areal_link |
| 293 | S5-LMAP-007 | covered | cargo test -p fparkan-terrain-format --offline land_map_prefix_absent_links_polygon_blocks_grid_size_and_exact_eof |
| 294 | S5-LMAP-008 | covered | cargo test -p fparkan-terrain-format --offline land_map_prefix_absent_links_polygon_blocks_grid_size_and_exact_eof |
| 295 | S5-LMAP-009 | covered | cargo test -p fparkan-terrain-format --offline land_map_prefix_absent_links_polygon_blocks_grid_size_and_exact_eof |
| 296 | S5-LMAP-010 | covered | cargo test -p fparkan-terrain-format --offline rejects_invalid_grid_area_ref |
| 297 | S5-LMAP-011 | covered | cargo test -p fparkan-terrain-format --offline land_map_prefix_absent_links_polygon_blocks_grid_size_and_exact_eof |
| 298 | S5-TERRAIN-001 | covered | cargo test -p fparkan-terrain --offline locates_areal_and_routes_synthetic_neighbors |
| 299 | S5-TERRAIN-002 | covered | cargo test -p fparkan-terrain --offline locates_areal_and_routes_synthetic_neighbors |
| 300 | S5-TERRAIN-003 | covered | cargo test -p fparkan-terrain --offline missing_start_or_goal_returns_no_route |
| 301 | S5-TERRAIN-004 | covered | cargo test -p fparkan-terrain --offline synthetic_surface_height_and_raycast_work |
| 302 | S5-TMA-001 | covered | cargo test -p fparkan-mission-format --offline minimal_synthetic_exact_eof |
| 303 | S5-TMA-002 | covered | cargo test -p fparkan-mission-format --offline lp_string_does_not_consume_implicit_nul |
| 304 | S5-TMA-003 | covered | cargo test -p fparkan-mission-format --offline path_ids_retain_nonsequential_order_and_truncated_points_fail |
| 305 | S5-TMA-004 | covered | cargo test -p fparkan-mission-format --offline path_ids_retain_nonsequential_order_and_truncated_points_fail |
| 306 | S5-TMA-005 | covered | cargo test -p fparkan-mission-format --offline clan_modes_one_to_three_and_spatial_mode_zero_decode |
| 307 | S5-TMA-006 | covered | cargo test -p fparkan-mission-format --offline clan_modes_one_to_three_and_spatial_mode_zero_decode |
| 308 | S5-TMA-007 | covered | cargo test -p fparkan-mission-format --offline unknown_clan_mode_nonfinite_transform_and_trailing_bytes_are_rejected |
| 309 | S5-TMA-008 | covered | cargo test -p fparkan-mission-format --offline synthetic_standard_clan_and_object_preserve_ordered_properties |
| 310 | S5-TMA-009 | covered | cargo test -p fparkan-mission-format --offline synthetic_standard_clan_and_object_preserve_ordered_properties |
| 311 | S5-TMA-010 | covered | cargo test -p fparkan-mission-format --offline synthetic_standard_clan_and_object_preserve_ordered_properties |
| 312 | S5-TMA-011 | covered | cargo test -p fparkan-mission-format --offline unknown_clan_mode_nonfinite_transform_and_trailing_bytes_are_rejected |
| 313 | S5-TMA-012 | covered | cargo test -p fparkan-mission-format --offline description_and_extras_are_exact_raw_records |
| 314 | S5-TMA-013 | covered | cargo test -p fparkan-mission-format --offline description_and_extras_are_exact_raw_records |
| 315 | S5-TMA-014 | covered | cargo test -p fparkan-mission-format --offline description_and_extras_are_exact_raw_records |
| 316 | S5-TMA-015 | covered | cargo test -p fparkan-mission-format --offline unknown_clan_mode_nonfinite_transform_and_trailing_bytes_are_rejected |
| 317 | S5-TMA-016 | covered | cargo test -p fparkan-mission-format --offline signatures_inside_strings_do_not_create_records_and_truncations_are_bounded |
| 318 | S5-TMA-017 | covered | cargo test -p fparkan-mission-format --offline signatures_inside_strings_do_not_create_records_and_truncations_are_bounded |
| 319 | S5-TMA-PROP-001 | covered | cargo test -p fparkan-mission-format --offline generated_valid_documents_and_arbitrary_inputs_are_bounded |
| 320 | S5-TMA-FUZZ-001 | covered | cargo test -p fparkan-mission-format --offline generated_valid_documents_and_arbitrary_inputs_are_bounded |
| 321 | S5-LOAD-001 | covered | cargo test -p fparkan-runtime --offline load_trace_records_preparation_before_registration_and_raw_transforms |
| 322 | S5-LOAD-002 | covered | cargo test -p fparkan-runtime --offline missing_map_and_missing_reachable_resource_fail_before_registration |
| 323 | S5-LOAD-003 | covered | cargo test -p fparkan-runtime --offline missing_map_and_missing_reachable_resource_fail_before_registration |
| 324 | S5-LOAD-004 | covered | cargo test -p fparkan-material --offline resolve_material_falls_back_to_default |
| 325 | S5-LOAD-005 | covered | cargo test -p fparkan-runtime --offline load_trace_records_preparation_before_registration_and_raw_transforms |
| 326 | S5-LOAD-006 | covered | cargo test -p fparkan-runtime --offline load_mission_requires_vfs_and_keeps_world_unchanged_on_error |
| 327 | S5-LOAD-007 | covered | cargo test -p fparkan-runtime --offline registration_phase_failure_uses_normal_teardown_and_keeps_engine_world |
| 328 | S5-LOAD-008 | covered | cargo test -p fparkan-runtime --offline load_trace_records_preparation_before_registration_and_raw_transforms |
| 329 | S5-LOAD-009 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 330 | S5-LOAD-010 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 331 | S5-WORLD-001 | covered | cargo test -p fparkan-world --offline construct_register_and_hash_are_stable |
| 332 | S5-WORLD-002 | covered | cargo test -p fparkan-world --offline registration_sequence_stale_and_duplicate_original_contracts |
| 333 | S5-WORLD-003 | covered | cargo test -p fparkan-world --offline registration_sequence_stale_and_duplicate_original_contracts |
| 334 | S5-WORLD-004 | covered | cargo test -p fparkan-world --offline registration_sequence_stale_and_duplicate_original_contracts |
| 335 | S5-WORLD-005 | covered | cargo test -p fparkan-world --offline identity_metadata_keeps_original_mirror_and_owner_distinct |
| 336 | S5-WORLD-006 | covered | cargo test -p fparkan-world --offline command_fifo_and_deferred_delete_during_calculation |
| 337 | S5-WORLD-007 | covered | cargo test -p fparkan-world --offline registration_sequence_stale_and_duplicate_original_contracts |
| 338 | S5-WORLD-008 | covered | cargo test -p fparkan-world --offline command_fifo_and_deferred_delete_during_calculation |
| 339 | S5-WORLD-009 | covered | cargo test -p fparkan-world --offline command_fifo_and_deferred_delete_during_calculation |
| 340 | S5-WORLD-010 | covered | cargo test -p fparkan-world --offline command_fifo_and_deferred_delete_during_calculation |
| 341 | S5-WORLD-011 | covered | cargo test -p fparkan-world --offline command_fifo_and_deferred_delete_during_calculation |
| 342 | S5-WORLD-012 | covered | cargo test -p fparkan-world --offline fixed_step_pause_and_long_determinism_are_stable |
| 343 | S5-WORLD-013 | covered | cargo test -p fparkan-world --offline fixed_step_pause_and_long_determinism_are_stable |
| 344 | S5-WORLD-014 | covered | cargo test -p fparkan-world --offline snapshot_hash_determinism_and_immutability |
| 345 | S5-WORLD-015 | covered | cargo test -p fparkan-world --offline snapshot_hash_determinism_and_immutability |
| 346 | S5-WORLD-016 | covered | cargo test -p fparkan-world --offline fixed_step_pause_and_long_determinism_are_stable |
| 347 | S5-WORLD-017 | covered | cargo test -p fparkan-world --offline render_disabled_does_not_change_hash_end_callbacks_and_shutdown_order |
| 348 | S5-WORLD-018 | covered | cargo test -p fparkan-world --offline render_disabled_does_not_change_hash_end_callbacks_and_shutdown_order |
| 349 | S5-WORLD-019 | covered | cargo test -p fparkan-world --offline render_disabled_does_not_change_hash_end_callbacks_and_shutdown_order |
| 350 | S5-WORLD-PROP-001 | covered | cargo test -p fparkan-world --offline generated_command_delete_sequences_preserve_registry_invariants |
| 351 | L5-P1-LMESH-001 | covered | cargo test -p fparkan-terrain-format --offline licensed_corpus_land_msh_validate |
| 352 | L5-P2-LMESH-001 | covered | cargo test -p fparkan-terrain-format --offline licensed_corpus_land_msh_validate |
| 353 | L5-P1-LMAP-001 | covered | cargo test -p fparkan-terrain-format --offline licensed_corpus_land_map_validate |
| 354 | L5-P2-LMAP-001 | covered | cargo test -p fparkan-terrain-format --offline licensed_corpus_land_map_validate |
| 355 | L5-LMAP-POLY-001 | covered | cargo test -p fparkan-terrain-format --offline licensed_corpus_land_map_validate land_map_prefix_absent_links_polygon_blocks_grid_size_and_exact_eof |
| 356 | L5-P1-TMA-001 | covered | cargo test -p fparkan-mission-format --offline licensed_corpus_tma_validate |
| 357 | L5-P2-TMA-001 | covered | cargo test -p fparkan-mission-format --offline licensed_corpus_tma_validate |
| 358 | L5-P1-MISSION-001 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 359 | L5-P2-MISSION-001 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 360 | L5-P1-MISSION-002 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 361 | L5-P2-MISSION-002 | covered | cargo test -p fparkan-runtime --offline licensed_corpora_load_all_mission_foundations |
| 362 | L5-P1-HEADLESS-001 | covered | cargo test -p fparkan-runtime --offline selected_is_and_is2_missions_execute_10000_deterministic_ticks |
| 363 | L5-P2-HEADLESS-001 | covered | cargo test -p fparkan-runtime --offline selected_is_and_is2_missions_execute_10000_deterministic_ticks |
| 364 | L5-P1-RENDER-001 | covered | cargo test -p fparkan-game --offline selected_is_and_is2_missions_produce_approved_render_captures |
| 365 | L5-P2-RENDER-001 | covered | cargo test -p fparkan-game --offline selected_is_and_is2_missions_produce_approved_render_captures |
| 366 | L3-DEVICE-001 | omitted | outside the current macOS-focused goal scope; RG40XX-capable device/profile evidence remains documented for the portable target scope |
| 367 | L5-RG40-001 | omitted | outside the current macOS-focused goal scope; RG40XX 640x480 on-device mission smoke/performance/memory evidence remains documented for the portable target scope |