Skip to content

fix(sim): make radio comparisons reproducible#75

Draft
Komzpa wants to merge 19 commits into
meshtastic:masterfrom
Komzpa:codex/split-sim-determinism-cleanup
Draft

fix(sim): make radio comparisons reproducible#75
Komzpa wants to merge 19 commits into
meshtastic:masterfrom
Komzpa:codex/split-sim-determinism-cleanup

Conversation

@Komzpa
Copy link
Copy Markdown
Contributor

@Komzpa Komzpa commented May 2, 2026

Summary

  • seed rebroadcast jitter from the simulation seed and node id so static/DCR/DTP comparisons do not drift with system entropy
  • route interactive receiver calculations through the shared link-budget helper so terrain, clutter, antenna gains, and fitted calibration stay consistent
  • switch the interactive node-config load to yaml.safe_load and remove small import/string cleanups
  • print PHY-loss and capture-collision reason counters in direct loraMesh.py runs when those models are enabled
  • add regression tests for deterministic rebroadcast jitter and near-field path-loss floor behavior

Stack

Validation

  • .venv/bin/python -u loraMesh.py 2 --no-gui --simtime-seconds 2 --period-seconds 1 --phy-loss-model --capture-collision-model
  • .venv/bin/python -m unittest tests.test_lora_mesh_cli tests.test_node tests.test_phy tests.test_radio_policy_compare
  • /home/kom/.local/bin/ruff check batchSim.py lib/interactive.py lib/node.py loraMesh.py tests/test_node.py tests/test_phy.py
  • .venv/bin/python -m compileall -q .
  • .venv/bin/python tools/radio_policy_compare.py --simtime-seconds 5 --period-seconds 2 --policies static,dcr,dcr_dtp -- --no-clutter
  • .venv/bin/python -m unittest (134 tests)
  • git diff --check
  • private-marker scan for deployment/source terms

@Komzpa Komzpa force-pushed the codex/split-sim-determinism-cleanup branch 6 times, most recently from 0983516 to 9cba694 Compare May 5, 2026 20:17
@Komzpa Komzpa force-pushed the codex/split-sim-determinism-cleanup branch from 9cba694 to 06ad4ea Compare May 6, 2026 07:06
@Komzpa Komzpa force-pushed the codex/split-sim-determinism-cleanup branch from 06ad4ea to 172b004 Compare May 14, 2026 12:16
@Komzpa Komzpa force-pushed the codex/split-sim-determinism-cleanup branch from 172b004 to cf99213 Compare May 15, 2026 20:50
@Komzpa Komzpa force-pushed the codex/split-sim-determinism-cleanup branch from cf99213 to f72b56b Compare May 15, 2026 21:01
@Komzpa Komzpa marked this pull request as ready for review May 17, 2026 17:24
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f72b56b3dc

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread lib/map_input.py
@Komzpa Komzpa marked this pull request as draft May 17, 2026 17:41
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.

1 participant