Files
mtgodot-poc/audit/reports/source-coverage.md
T
shenleiandClaude Opus 5 55f733fda6 audit: phase 0 tooling for file-by-file 40250 porting
- refroot.py: one reference-root resolver (MT_40250_SOURCE, then manifest)
  used by every audit script; missing tree or fingerprint input is an error
- port_map.py: per-function inventory of active 40250 units plus the
  40250 Python root, status/queue/init/show/check, 40250: tag scan
- manifest: fix 18 wrong reference paths (Python UI now points at the
  40250 Client/Eternexus/root, not the m2dev assets/root), drop 2 deleted
  implementation files, move 64 prose test entries to evidence.commands
- first port-map entry: PythonPlayerEventHandler.cpp
- roadmap replaced by a batch/unit queue

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-22 17:17:49 +09:00

68 lines
3.1 KiB
Markdown

# Active 40250 source coverage
This report is a coverage gate, not proof of parity. `manifest_exact` means the source is explicitly listed by a contract; `inferred_review_queue` means it is assigned by a broad area rule and still requires semantic review.
- Active Visual Studio source/include files: **524**
- Explicitly listed by manifest: **143**
- Static-reviewed groups (still PARTIAL for parity): **363**
- Inferred review queue: **0**
- Build support (`StdAfx`): **18**
- Unowned behavior candidates: **0**
## Review queue by contract
| Contract | Exact manifest files | Static-reviewed files | Inferred files |
|---|---:|---:|---:|
| `audio.bgm_ambience_3d` | 8 | 14 | 0 |
| `combat.affect_status` | 9 | 0 | 0 |
| `combat.attack_combo_damage` | 4 | 8 | 0 |
| `combat.death.exp_drop` | 10 | 0 | 0 |
| `combat.flying_projectile` | 9 | 19 | 0 |
| `combat.target_selection_rules` | 7 | 0 | 0 |
| `item.consumable_action` | 7 | 0 | 0 |
| `item.drop_pickup` | 10 | 0 | 0 |
| `item.inventory_equipment_state` | 8 | 0 | 0 |
| `item.refine_socket_costume` | 12 | 0 | 0 |
| `lifecycle.bootstrap_phase_host` | 11 | 34 | 0 |
| `lifecycle.platform_release` | 6 | 105 | 0 |
| `movement.click_collision` | 6 | 12 | 0 |
| `movement.keyboard.motion` | 10 | 6 | 0 |
| `movement.motion_resource_events` | 8 | 9 | 0 |
| `movement.remote_sync_state` | 6 | 0 | 0 |
| `network.character_select.create_delete` | 5 | 4 | 0 |
| `network.error_timeout_server_state` | 3 | 3 | 0 |
| `network.login.phase_flow` | 8 | 3 | 0 |
| `network.packet_dispatch_protocol` | 4 | 18 | 0 |
| `network.reconnect_warp` | 5 | 6 | 0 |
| `network.security_encoding` | 8 | 0 | 0 |
| `npc.dialog_shop` | 8 | 4 | 0 |
| `quest.quest_event_navigation` | 6 | 3 | 0 |
| `render.effect_particle_motion` | 7 | 31 | 0 |
| `render.model_attachment` | 15 | 96 | 0 |
| `resource.pack_locale_proto` | 13 | 62 | 0 |
| `skill.cast.effect_timing` | 7 | 10 | 0 |
| `skill.player_ui_cooldown` | 6 | 1 | 0 |
| `social.chat_text_tail` | 7 | 31 | 0 |
| `social.exchange_safebox` | 4 | 4 | 0 |
| `social.party_guild_messenger` | 9 | 13 | 0 |
| `ui.equipment.tooltip` | 5 | 0 | 0 |
| `ui.hud_target_minimap_status` | 12 | 30 | 0 |
| `ui.input_camera_mobile` | 5 | 7 | 0 |
| `world.dungeon_activity` | 9 | 2 | 0 |
| `world.entity_spawn_state_sync` | 4 | 6 | 0 |
| `world.environment_weather` | 8 | 11 | 0 |
| `world.fishing_mining` | 7 | 0 | 0 |
| `world.map_load_transition` | 6 | 34 | 0 |
| `world.mount_pet_polymorph` | 9 | 0 | 0 |
| `world.npc_drop_actor_spawn` | 10 | 10 | 0 |
| `world.reset_cleanup` | 9 | 0 | 0 |
| `world.terrain_water_collision` | 6 | 35 | 0 |
## Unowned behavior candidates
None
## Required interpretation
The inferred queue is not considered audited merely because a rule assigned it to a contract. Each queue must be reviewed through the contract's reference call chain and either added to exact evidence, explicitly classified as support/disabled/vendor code, or recorded as a remaining gap. Static-reviewed groups have had their active symbols and lifecycle call chain checked in the current round, but their contracts remain PARTIAL until implementation equivalence and tests close the documented gaps.