rrt/docs/rehost-queue/periodic-company-control-lane-2026-04-21.md

9 KiB

Periodic Company Control Lane (2026-04-21)

This note preserves the checked evidence behind the current periodic-company queue head, so the short queue can stay focused on the remaining owner question.

Checked Export

  • artifacts/exports/rt3-1.06/compact-event-dispatch-cluster-counts.json

Current checked corpus totals:

  • maps_scanned = 41
  • maps_with_dispatch_strip_rows = 38
  • dispatch_strip_record_count = 318
  • dispatch_strip_records_with_trigger_kind = 0
  • add_building_dispatch_record_count = 10

The add-building subset is still only 7 descriptor keys:

  • Barracks
  • Bauxite Mine
  • FarmGrain
  • Furniture Factory
  • Logging Camp
  • Port01
  • Warehouse05

Concrete Carrier Maps

The checked export already keeps the strongest carrier maps visible:

  • Texas Tea.gmp for 548 Add Building Port01
  • Louisiana.gmp for 563 Add Building Warehouse05
  • Alternate USA.gmp for the repeated FarmGrain / Logging Camp ge34 family
  • Chicago to New York.gmp and Pacific Coastal.gmp for the mixed [-1:4] cluster

The widened full-corpus cluster surface now keeps the strongest non-add-building families visible too:

  • dispatch_signature_condition_cluster_occurrence_counts
    • 36 for nondirect-ge1e-h0001-0360-0004-0100-0200-p0000-0000-0000-ffff :: [864:4]
    • 27 for nondirect-ge1e-h0001-ffff-0004-0000-0200-p0000-0000-0000-ffff :: [-1:4]
  • dispatch_signature_condition_cluster_descriptor_keys
    • the 36-occurrence cluster is the broader variable/status family over Economic Status plus Game/Company Variable 1..4
    • the 27-occurrence [-1:4] cluster still mixes those variable families with the two checked add-building descriptors Barracks and Bauxite Mine
  • dispatch_signature_condition_cluster_map_paths
    • the 36-occurrence cluster spans 18 maps including Britain.gmp, Chicago to New York.gmp, Crossing the Alps.gmp, and Eastern China.gmp
    • the 27-occurrence [-1:4] cluster spans 14 maps including Alternate USA.gmp, Chicago to New York.gmp, Coast to Coast.gmp, and Go West!.gmp
  • the checked periodic-company trace now mirrors the strongest four of those full-corpus families directly through near_city_acquisition_nontransport_top_dispatch_signature_condition_clusters, so the active queue head is no longer backed only by the export file

Top Cluster Carrier Sets

The checked export now keeps the two strongest ordinary nondirect families concrete enough to cite without reopening the full JSON:

  • nondirect-ge1e-h0001-0360-0004-0100-0200-p0000-0000-0000-ffff :: [864:4]
    • descriptor family is only Economic Status plus Game/Company Variable 1..4
    • carrier maps are: Britain.gmp, Central Pacific.gmp, Chicago to New York.gmp, Crossing the Alps.gmp, Eastern Canada.gmp, Eastern China.gmp, Go West!.gmp, Italy.gmp, Japan Trembles.gmp, Louisiana.gmp, Mexico.gmp, Mississippi Valley.gmp, New Beginnings.gmp, Orient Express.gmp, South East USA.gmp, Southern Pacific.gmp, Spanish Mainline.gmp, and Tex-Mex.gmp
  • nondirect-ge1e-h0001-ffff-0004-0000-0200-p0000-0000-0000-ffff :: [-1:4]
    • descriptor family still mixes the variable lanes with 506 Add Building Barracks and 507 Add Building Bauxite Mine
    • carrier maps are: Alternate USA.gmp, Central Pacific.gmp, Chicago to New York.gmp, Coast to Coast.gmp, Go West!.gmp, Greenland Growing.gmp, Japan Trembles.gmp, New Beginnings.gmp, Pacific Coastal.gmp, Pacific NW.gmp, Rhodes Unfinished.gmp, Southern Pacific.gmp, State of Germany.gmp, and War Effort.gmp

So the active control-lane frontier is no longer “there are one or two sample maps with late ordinary nondirect rows.” The checked corpus now preserves the full map families on both of the strongest recurring nondirect clusters.

Grounded Boundary

The active strip is still:

  • 0x00444d92 -> 0x00432f40(kind 8) -> 0x004323a0 -> 0x00431b20

The checked boundary around that strip is now narrow:

  • ordinary loaded nondirect rows already reach the 0x00431b20 mutation strip at scale
  • the export still shows no recovered trigger kind for any of those checked rows
  • the remaining question is therefore not whether ordinary loaded rows can reach the compact dispatch strip, but where they acquire or bypass the missing trigger-kind control lane before placed-structure mutation opcodes run

Closest Already-Grounded Retags

The checked periodic-company service trace now also exposes these grounded control-lane neighbors directly through:

  • near_city_acquisition_nontransport_late_bringup_candidate_branches
  • near_city_acquisition_nontransport_explicit_trigger_kind_retags

The current artifact notes and trace now agree on the same two explicit late retag writers away from ordinary reload:

  • SP - GOLD branch at 0x00443526
    • rewrites [event+0x7ef] from 1 -> 5
  • Labor branch at 0x00443601
    • rewrites [event+0x7ef] from 0 -> 2

So the next non-hook question stays above those already-known title or scenario-specific retags:

  • which late bringup branch between ordinary reload 0x00433130 and final kind-8 service 0x00432f40 materializes the live mutation-capable ordinary rows

Direct Trigger-Kind Gate

Fresh objdump over the control-lane strip now keeps the missing trigger-kind boundary concrete:

  • 0x00444d92
    • calls 0x00432f40 with trigger kind 8
    • then clears shell-profile latch [0x006cec7c+0x97]
  • 0x00432f40
    • iterates the live runtime-effect collection
    • calls 0x004323a0 once per row with the requested trigger kind
    • records whether any row fired
    • if collection flag [this+0x88] is raised, reruns the same service loop with trigger kind 0x0a
  • 0x004323a0
    • returns immediately unless [event+0x81f] == 0
    • returns immediately unless [event+0x7ef] == trigger_kind
    • only after that exact trigger-kind compare does it continue toward the compact dispatch body

So the current blocker is no longer “is trigger kind really a direct gate?” It is: where ordinary loaded rows get a nonzero [event+0x7ef] that matches the later 0x00432f40(kind 8) or follow-on kind 0x0a service.

Reload-Side Boundary

The ordinary reload path is narrower in the same negative way now too:

  • 0x00433130
    • restores tagged record families 0x4e99, 0x4e9a, and 0x4e9b
    • reads one fixed 4-byte scalar block through 0x00531150
    • loops live rows through per-record restore helper 0x0042db20
    • clears collection flag [this+0x88] = 0 before returning
  • that reload path does not pass any trigger-kind argument analogous to the later 0x00432f40 service call

So the remaining periodic-company question stays between reload and service: the checked restore path repopulates the rows, but the later trigger-kind gate lives only in the service strip.

Current Writer Census

The direct writer set for [event+0x7ef] is narrower now too:

  • 0x0042d5a0
    • zero-initializes the live runtime-effect record control band
    • clears [event+0x7ee], [event+0x7ef], [event+0x7f4], [event+0x81f], [event+0x823], and [event+0x82b]
  • 0x0042e11a
    • straight copy helper over the same control band
    • copies [event+0x7ee/+0x7ef/+0x7f0/+0x7f4...] from one live row into another
  • 0x00430b50
    • the already-grounded follow-on runtime-effect builder
    • reaches the fresh live row through 0x00432ea0 -> 0x0042d5a0
    • then seeds [event+0x7ef] to 2 or 3 from the current [world+0x11] threshold
    • also sets [event+0x7f5] = 1
  • 0x00443526 and 0x00443601
    • the already-grounded late retags to 5 and 2

So the remaining control-lane question is narrower again:

  • ordinary reload 0x00433130 -> 0x0042db20 does not itself pass a trigger kind
  • the late service strip gates strictly on [event+0x7ef]
  • and the currently grounded nonzero seed outside the scenario-name retags is the follow-on builder reached from the service/dispatch family rather than from the reload loop itself

Ruled-Out Shell Seed Table

The largest remaining direct writer family is no longer ambiguous either:

  • 0x004d8ea0
    • is the shell-side EventConditions.win commit helper already grounded in function-map.csv
    • resolves the currently selected live event from the editor window singleton, not from post-load bringup
    • writes [event+0x7ef] = 0..10 from the fixed control family 0x4e98..0x4ea2
    • also commits neighboring editor-strip fields such as [event+0x7f9], [event+0x7fa], [event+0x7f5], and [event+0x7f0]
  • 0x004db120
    • is the paired shell refresh helper
    • republishes that same 0x4e98..0x4ea2 family one-to-one from stored [event+0x7ef]

So the active shellless queue head narrows again:

  • the broad 0..10 trigger-kind selector table is real
  • but it belongs to the shell editor strip rather than ordinary post-load simulation bringup
  • the remaining runtime question stays above ordinary reload 0x00433130 and below final service 0x00432f40(kind 8), not inside the explicit shell editor commit path