-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.roadmap.loader_pe
More file actions
5 lines (5 loc) ยท 5.12 KB
/
Copy path.roadmap.loader_pe
File metadata and controls
5 lines (5 loc) ยท 5.12 KB
1
2
3
4
5
# .roadmap.loader_pe mk2 โ domain SSOT (peer perspective, airgenome-gamebox own surface), JSONL entry per line
# Header on next line; entries follow.
# Reflects own1 (Wine 0 / hexa-only PE loader) 21/21 PASS + own2 (log/error/emit/headless) 8/8 PASS at land-time.
# Status enum candidates: unmet | partial | met | retired_intentional (block-acknowledged = PASS-equivalent for D4 always-online class)
{"type":"header","kind":"domain","name":"loader_pe","mk":2,"perspective":"peer","goal":"airgenome-gamebox PE/COFF loader surface โ 340 .hexa flat (pe_*) Win32 binary load + IAT real-resolve + i386/x64 interpreter mainCRTStartup. own1 (Wine 0, hexa-only) + own2 (log/error/emit/headless) mandate ์ BG-AGB rank A ํ๋ณด 1/3. raw 270/271 triplet T1 large ํ์ ๋ณ๋ cycle (pe_i386 28 / pe_msvc 21 / pe_ntdll 17 / pe_ipc 16 / pe_d3d11 14 / pe_native 13 / pe_iat 7 / pe_tls 7 / pe_call 6 / pe_seh 5 / pe_perf 5 / pe_d2r 5 / pe_battle 4 9-12 sub-bucket ๋ถํ ).","required_conditions":[{"id":"loader_pe.cond.1","desc":"PE/COFF parse 100% real binary โ Battle.net-Setup.exe + D2R.exe + D4.exe 3 production binary ๋ชจ๋ header/section/import/export/reloc parse PASS (synthetic fixture ์ธ real binary)","verifier":{"type":"script","path":"tests/test_closure.hexa","exit_zero_means_met":true,"cross_link":["plugin.json.phase_status.phase_0a_pe_parser=done"],"status_emit":"__LOADER_PE_PARSE__ <PASS|FAIL> <binary>"},"status":"partial","evidence":["lib/loader/ 340 pe_*.hexa land","plugin.json phase_status phase_0a_pe_parser=done (mk1 narrative)","own1 21/21 PASS + own2 8/8 PASS reflect","tests/test_closure.hexa harness exists"],"blocker_reason":"3 production binary smoke ์ค์ธก ๋ฏธ์ํ (game install dependent: D2R/D4 Battle.net launcher ํต๊ณผ ํ์), D4 always-online class blocker.1 transitive"},{"id":"loader_pe.cond.2","desc":"IAT real-resolve 5 path coverage โ direct + forwarder + ordinal + delay-load + api-set 5 ์ข
๋ชจ๋ hexa-native resolve (Wine 0, fake stub ์ธ)","verifier":{"type":"script","path":"lib/loader/iat_runtime_bind.hexa","exit_zero_means_met":true,"coverage_paths":["direct","forwarder","ordinal","delay_load","api_set"],"status_emit":"__LOADER_PE_IAT__ <PASS|FAIL> <path>"},"status":"partial","evidence":["lib/loader/iat_runtime_bind.hexa exists","lib/loader/dll_resolve_master.hexa exists","pe_iat 7 sub-module land","own1 (a) hexa-native PE ๋ก๋ mandate ์ ํฉ"],"blocker_reason":"5 path ์ค ์ผ๋ถ coverage ๋ฏธ์์นํ (api-set + delay-load 2 path ๊ฐ์ฅ ๋ฏธ์ ), production binary ๋ณ path traverse ํต๊ณ ๋ฏธland"},{"id":"loader_pe.cond.3","desc":"i386 + x64 interpreter both reach mainCRTStartup โ ๋ architecture ๋ชจ๋ PE entry โ CRT init โ mainCRTStartup ๋๋ฌ (R3-1..R3-11 i386 line ์ง์ฒ + x64 stage1 sibling)","verifier":{"type":"script","path":"tests/test_apple_only.hexa","exit_zero_means_met":true,"crt_target":"mainCRTStartup","arch_coverage":["i386","x64"],"status_emit":"__LOADER_PE_CRT__ <PASS|FAIL> <arch>"},"status":"partial","evidence":["pe_i386 28 sub-module land","pe_msvc 21 sub-module land","i386_call_frame.hexa exists","tests/test_apple_only.hexa 21/21 PASS (own1 reflect)","R3 wave18-A step 7 cumulative (recent commits 313494โ304615 inst USER32=0)"],"blocker_reason":"x64 stage1 mainCRTStartup ๋๋ฌ ๋ฏธ์์นํ (i386 R3 line ์ฐ์ ์ง์ฒ), CRT init step ๋ณ reach-counter SSOT ๋ฏธland"}],"cross_link":{"sister_domains":["loader_win32","loader_dx","loader_native_helper","perf_manjeom","battlenet_bypass","closure_orchestrator"],"loader_win32_dependency":"win32 shim (kernel32 stage1-5 + user32 stage1-2 + ntdll bridge) IAT resolve target","loader_dx_dependency":"dx_d3d11/d3d12 stage1/2 + pe_d3d1?_* DirectX surface = loader_pe โ loader_dx handoff","native_helper_dependency":"native/{helper.mm 147KB + pe_to_macho_shim.cpp 403KB} bridge for macOS Apple binary boundary (own1 (c))","mk1_narrative_refs":["docs/PE_LOADER_REAL_MMAP_MANJEOM_REVIEW.md","docs/IAT_REAL_RESOLVE_MANJEOM_REVIEW.md","docs/MSVC_CRT_INIT_BYPASS.md","docs/IMPLEMENTATION_ROADMAP.md","docs/CLOSURE_ROADMAP.md"],"triplet_audit_tier":"T1_large","triplet_pending":"core/modules ๋ถํ spec (340 .hexa โ 9-12 sub-bucket) + README.ai.md (raw 270/271/272 promotion 2026-06-01 deadline, baseline grandfather candidate)","ai_native_handoff":"airgenome/doc/airgenome_gamebox_self_mk2_tuning_landed_2026_05_02.ai.md ยง2/ยง3.2/ยง5","plugin_contract":"plugin.json target_games=[d2r, d4] + phase_status.phase_0a_pe_parser entry"},"blockers":[{"id":"loader_pe.blk.1","desc":"D4 always-online class โ Battle.net launcher always-online check + DRM-friendly handshake spec only (no evasion, own1 ์ ํฉ). cond.1 D4.exe parse ์ธก transitive block. status `retired_intentional` ํ๋ณด (block-acknowledged honest documentation = PASS-equivalent, mk2 status enum ์ ๊ท ์ถ๊ฐ ๊ถ๊ณ โ ์ฌ์ฉ์ lock-in ์ ์ ์ ์ฑํ)","type":"upstream_drm","status":"open","eta":"","resolution_path":"(a) DRM honest spec freeze documentation land + status enum `retired_intentional` ์ฌ์ฉ์ lock-in / (b) D2R offline mode handshake ์ฐ์ PASS (D4 deferred), ๋ outcome ๋ชจ๋ own1 (Wine 0) + own2 (honest emit) ์ ํฉ","status_enum_candidate":"retired_intentional"}],"status":"active","since":"2026-05-03"}