56 lines
7.9 KiB
Markdown
56 lines
7.9 KiB
Markdown
# Rehost Queue
|
|
|
|
This file is the short active queue for the current runtime and reverse-engineering frontier.
|
|
|
|
## Working Rule
|
|
|
|
- Continue after each commit unless the queue is empty, a real blocker remains, or approval is needed.
|
|
- Keep detailed branch notes, long evidence dumps, and retired queue state in `docs/rehost-queue/`.
|
|
- Prefer linking to preserved notes instead of growing this file into another worklog.
|
|
|
|
## Current Active Items
|
|
|
|
- The active static parser head is now the `engine_types` semantics frontier.
|
|
The repo now has structural inspectors for `.car`, `.lco`, `.cgo`, and `.cct`, but the binary side is still only partially semantic: the checked 1.05 corpus grounds `.car` fixed strings at `0x0c / 0x48 / 0x84` plus a second fixed stem slot at `0xa2` and a side-view resource name at `0xc0`, while `.lco` carries a stable primary stem at `0x04` and only conditional companion/body slots at `0x0c` and `0x12` when the leading stem slot is padded.
|
|
The checked 1.05 corpus now also splits `.car` auxiliary stems into `126` direct matches, `14` role-neutral roots, and only `5` truly distinct cases, with those five exact internal-to-auxiliary pairs now preserved directly in the report surface.
|
|
That distinct cohort is narrower than it first looked: `3` of the `5` are just opposite-role tender-to-loco pairings (`ClassA1T -> ClassA1L`, `CramptonT -> CramptonL`, `WhaleT -> WhaleL`), and only the two `QJ` rows remain as reordered alias roots.
|
|
On the cargo side, `.cgo` now collapses into five stable scalar ladders instead of arbitrary floats.
|
|
The early `.lco` lane block is now partially partitioned too: only offsets `0x20`, `0x34`, `0x38`, `0x3c`, `0x44`, `0x48`, and `0x54` behave like low-cardinality buckets, while the other early lanes still look high-variance.
|
|
The side-view resource path is now grounded into `Data/2D/rt3_2IMB.PK4`, and the `.imb` parser now decodes shipped comment-suffixed numeric rows plus `_NE` profile fields such as `HorizontalScaleModifier` and `ImageWHScaled`.
|
|
The checked PK4 linkage split is now explicit too: the side-view slot at `0xc0` is a shipped multi-package seam, not just a single `rt3_2IMB.PK4` lookup.
|
|
In 1.05, `132 / 145` side-view resource names still resolve through `rt3_2IMB.PK4`, but the remaining `13` `CarSideView_3.imb` families resolve through `Data/2D/RT3_CoastToCoast.PK4`, and the same CoastToCoast package also contributes `4` extra `_NE.imb` hits for the unmatched display tail (`242 A1`, `Class 460`, `Class A1`, `Class P8`) while `Class QJ` remains the only unmatched display family without a packaged `_NE` profile.
|
|
The parser now preserves that `CarSideView_3` CoastToCoast cohort exactly, and it also preserves the tiny conditional `.lco` companion-profile seam directly: in 1.05 the padded `.lco` companion/body slots collapse to `Zephyr / (none) / CarSideView_3` for `242_a1_l`, `gp35l`, `u1l`, and `zephyrl`, and to `VL80T / Loco / CarSideView_{1,2}` for `be 5-7`, `f3 loco`, and `gp7`.
|
|
The classic install widens the same `0xc0` seam further: the side-view slot is not only `CarSideView_*` but also a larger `*_Profile.imb` family, and those profile references are now grounded into shipped `Data/PopTopExtraContent/*.pk4` packages instead of staying unresolved. Only `Eurostar_Profile.imb` and `ICE_Profile.imb` remain missing from the checked classic shipped PK4 set.
|
|
A whole-tree file census also rules out the old loose-file fallback: none of those `*_Profile.imb` names, and no `CarSideView_3.imb`, exists as a loose file anywhere in the checked `rt3/` or `rt3_105/` trees.
|
|
The packaged profile metadata is stable enough to summarize: `CarSideView_1` is `512x512` at `0.04` VRAM, `CarSideView_2` is `512x256` at `0.02`, and every packaged `_NE` profile is `512x128` with `HorizontalScaleModifier = 0.75` and `MaxPercentOfInterfaceVRAM = 0.09`.
|
|
The `_NE` split is now aligned with the locomotive display census too: all `43` packaged `_NE` hits live inside the grounded display prefix, and all `5` unmatched display-tail families are still missing packaged `_NE` profiles.
|
|
The cargo side is partially linked now as well: the `.cgo` ladder families and `.cct` sidecar identifiers share the same cargo-family keys for ten checked families, with `Troop` left as the only `.cct`-only outlier.
|
|
The next honest static work is to decide whether the two remaining reordered `QJ` auxiliary roots are just alternate content aliases or evidence of a narrower foreign-display/image root, explain the residual classic `Eurostar_Profile.imb` and `ICE_Profile.imb` misses, and decide how far the `.cgo` ladders plus the low-cardinality `.lco` lanes can be grounded without overclaiming semantics. The latest corpus check did narrow one point already: the low-cardinality `.lco` lanes do not split cleanly on `_NE` presence, so that branch now wants binary/code correlation rather than more aggregate-only counting.
|
|
Preserved checked parser detail now lives in [EngineTypes parser semantics](rehost-queue/engine-types-parser-semantics-2026-04-21.md).
|
|
Preserved checked format inventory detail now lives in [RT3 format inventory](rehost-queue/format-inventory-2026-04-21.md).
|
|
|
|
## Preserved External And Dynamic Blockers
|
|
|
|
- The locomotives-page tail remains preserved as an external-corpus blocker.
|
|
Static repo-local work on this head is now exhausted: the local `29`-save `.gms + .gmx` census proves the stable prefix through `58`, proves the same two scenario-dependent `59+` tail families, and still finds no `Class QJ` placement plus no descriptor carriers in `452` or `457..502`. The next honest non-hook step requires a broader save corpus; the next non-static step requires dynamic tracing.
|
|
Preserved checked blocker detail now lives in [Locomotive descriptor tails](rehost-queue/locomotive-descriptor-tails-2026-04-21.md).
|
|
- The periodic-company control-lane head remains preserved as a dynamic blocker around the ordinary loaded runtime-effect strip `0x00444d92 -> 0x00432f40(kind 8) -> 0x004323a0 -> 0x00431b20`.
|
|
Static progress on this head now appears genuinely blocked: the whole-binary `[...+0x7ef]` reference census still collapses to the grounded writer set plus the already-known compare and copy helpers, so the next honest step likely requires hook-side or runtime tracing between reload `0x00433130` and the world-entry kind-`8` sweep at `0x00444d92`.
|
|
Preserved checked control-lane detail now lives in [Periodic company control lane](rehost-queue/periodic-company-control-lane-2026-04-21.md).
|
|
- The Tier-2 building head remains preserved as a dynamic blocker around the seed/projection seam into `0x00412d70`.
|
|
The stock decode chain, the bare-name remap callback, the rebank-or-clone owner, and the earlier suspected mid-range replay strip are all now grounded, so the next honest step likely requires runtime tracing of which source rows actually enter the live bank-qualified seed set.
|
|
Preserved checked row-family detail now lives in [Tier2 candidate row families](rehost-queue/tier2-candidate-row-families-2026-04-21.md).
|
|
Preserved checked stock selector-byte detail now lives in [Tier2 selector-byte sources](rehost-queue/tier2-selector-byte-sources-2026-04-21.md).
|
|
Preserved checked rebuild sequencing detail now lives in [Tier2 rebuild sequencing](rehost-queue/tier2-rebuild-sequencing-2026-04-21.md).
|
|
|
|
## Preserved Detail
|
|
|
|
- [Archive snapshot](rehost-queue/archive-2026-04-19.md)
|
|
- [EngineTypes parser semantics](rehost-queue/engine-types-parser-semantics-2026-04-21.md)
|
|
- [RT3 format inventory](rehost-queue/format-inventory-2026-04-21.md)
|
|
- [Locomotive descriptor tails](rehost-queue/locomotive-descriptor-tails-2026-04-21.md)
|
|
- [Periodic company control lane](rehost-queue/periodic-company-control-lane-2026-04-21.md)
|
|
- [Tier2 candidate row families](rehost-queue/tier2-candidate-row-families-2026-04-21.md)
|
|
- [Tier2 rebuild sequencing](rehost-queue/tier2-rebuild-sequencing-2026-04-21.md)
|
|
- [Tier2 selector-byte sources](rehost-queue/tier2-selector-byte-sources-2026-04-21.md)
|
|
- [Progress history](history/progress-history.md)
|