Preserve periodic trigger-kind gate details
This commit is contained in:
parent
fbfd41e454
commit
43660cb93b
2 changed files with 74 additions and 0 deletions
|
|
@ -62,6 +62,43 @@ queue, the large function map note, and the broader subgraph artifacts.
|
|||
- but the missing trigger-kind lane is still the blocker above the already-grounded descriptor
|
||||
bridge
|
||||
|
||||
## Direct Trigger-Kind Gate
|
||||
|
||||
Fresh direct disassembly now keeps that control lane explicit rather than inferred:
|
||||
|
||||
- `0x00444d92`
|
||||
- calls `0x00432f40` with trigger kind `8`
|
||||
- then clears shell-profile latch `[0x006cec7c+0x97]`
|
||||
- `0x00432f40`
|
||||
- iterates the live runtime-effect collection
|
||||
- calls `0x004323a0` for each 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 compare does it continue into the compact dispatch body
|
||||
|
||||
So the active question is no longer whether the trigger kind is a direct row gate. It is where the
|
||||
ordinary loaded rows get a nonzero `[event+0x7ef]` that matches the later kind-`8` or follow-on
|
||||
kind-`0x0a` service.
|
||||
|
||||
## Reload-Side Boundary
|
||||
|
||||
The ordinary reload strip is bounded in the same negative way now:
|
||||
|
||||
- `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(kind)` service
|
||||
|
||||
So the remaining late-bringup/control-lane frontier stays between reload and service rather than
|
||||
inside the already-bounded restore loop itself.
|
||||
|
||||
## Post-Load Scenario Fixup
|
||||
|
||||
- `shell_apply_scenario_name_specific_post_load_world_and_object_fixups` `0x00442c30`
|
||||
|
|
|
|||
|
|
@ -115,3 +115,40 @@ So the next non-hook question stays above those already-known title or scenario-
|
|||
|
||||
- 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.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue