Repository navigation
Defer body mapping reports until matching SAA signals are processed - #2858
CMDR-Evolution wants to merge 1 commit into
Conversation
Keep core mapping state immediate and release the mapping notification after matching SAA signals or a one-second fallback. Cover separate journal reads, body identity, replay, rings, context changes, and timer races with focused tests.
|
Does the genera need to be available to a body mapping report? Why not use surface signals as a follow-on event as it is currently? |
Hey TKael. After the change earlier this year, I tried to work-around the issue over a few months, to force Body report to stem from Surface signals detected via Body mapped from either an event based route, or SAA (only when post FSS for confirmed biological signals),. However, there were edge cases which couldn't be covered such as pre-scanned systems, so I had to revert the work-around. |
|
Please do not merge Please force push to undo that commit. |
15c71ab to
8a04745
Compare
My apologies, Tkael. I resolved the conflicts through GitHub’s UI without realising that it would merge develop into my branch. I’m still learning the contribution workflow. I’ve now force-pushed the branch back to the original commit, undoing the merge as requested. I’ve also read the contribution guidelines and will leave the conflicts for you to handle. Thanks for pointing me in the right direction. |
Elite’s journal records SAAScanComplete and SAASignalsFound in that order, with the same timestamp. A detailed Scan follows. EDDI creates Body mapped from SAAScanComplete and Surface signals detected from SAASignalsFound.
In EDDI 5.0.5, Body mapped runs before Surface signals detected has supplied the biological genera. My personality therefore keeps its biological report separate from Body report. Previously, I was able to include that information in the mapping report.
A fresh journal example from 22 October is Piscium Sector PI-T b3-1 2 a (system address 2869440619937, body ID 4):
20:33:00 UTC — SAAScanComplete
20:33:00 UTC — SAASignalsFound, including Bacterium and Fonticulua
20:33:01 UTC — detailed Scan
This change updates the mapped-body state immediately, but waits to deliver the Body mapped notification until matching SAA signals have been processed. It matches by system address and body ID, including across separate journal reads. If matching signals do not arrive within one second, it releases the mapping notification as a fallback.
I would appreciate any suggestions if there is a better way to make the genera available to a body mapping report.
Validation: where the existing ordering regression fails on the unchanged pipeline., with this change: 15 focused tests pass in an isolated harness that compiles the production event pipeline.