Three bugs were letting mechanism/terrain/radar contacts ping-pong between :complete and :queued on every backfill cron: 1. enqueue_for_contact/2 now filters out types that are already :complete on the contact before building jobs. Previously mark_status!/3 demoted every non-empty jobs_by_type entry back to :queued, overwriting the :complete that workers had just set. 2. reconcile_stale_queued/1 now also flips mechanism_status and radar_status back to :complete when the companion data (propagation_mechanism / contact_common_volume_radar) already exists. Drains the existing ~14k row backlog on the first post- deploy tick. 3. IemClient.parse_iemre_json/1 accepts "" and nil so a 200-with- empty-body IEMRE response doesn't FunctionClauseError the worker through four retry attempts. |
||
|---|---|---|
| .. | ||
| microwaveprop | ||
| microwaveprop_web | ||
| mix/tasks | ||
| microwaveprop.ex | ||
| microwaveprop_web.ex | ||