Skip to content

Defer body mapping reports until matching SAA signals are processed - #2858

Open
CMDR-Evolution wants to merge 1 commit into
EDCD:developfrom
CMDR-Evolution:hotfix/saa-mapping-order
Open

CMDR-Evolution wants to merge 1 commit into
EDCD:developfrom
CMDR-Evolution:hotfix/saa-mapping-order

Conversation

@CMDR-Evolution

@CMDR-Evolution CMDR-Evolution commented Oct 22, 2026 •

Copy link
Copy Markdown

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.

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.
@Tkael

Tkael commented Nov 9, 2026

Copy link
Copy Markdown
Member

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?

@CMDR-Evolution

CMDR-Evolution commented Nov 9, 2026 •

Copy link
Copy Markdown
Author

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.
It's better having the biological details when mapping as it's related information for the body. It cuts down TTS length as the planetary identification doesn't need to be mentioned twice (and that's how it was before).

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.

@Tkael

Tkael commented Nov 9, 2026

Copy link
Copy Markdown
Member

Please do not merge develop into your branch! https://github.com/EDCD/EDDI/blob/develop/docs/Contributing.md#work-in-progress-conventions

Please force push to undo that commit.

@CMDR-Evolution
CMDR-Evolution force-pushed the hotfix/saa-mapping-order branch from 15c71ab to 8a04745 Compare November 9, 2026 23:28
@CMDR-Evolution

Copy link
Copy Markdown
Author

Please do not merge develop into your branch! https://github.com/EDCD/EDDI/blob/develop/docs/Contributing.md#work-in-progress-conventions

Please force push to undo that commit.

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants