afterhours-shift-manager/tests
seahaven-openswe[bot] d84c14d031 Harden schedule bump against Slack retries
The message listener runs synchronously before the 200 ack, so a slow
delete+repost can blow Slack's 3s window and be retried with no guard.
Ignore retried deliveries (X-Slack-Retry-Num), stamp last_bump_ts before
the delete/repost so a mid-bump retry is debounced, and skip thread
replies that don't move the main timeline.

Refs: #135
2026-06-26 20:10:11 +00:00
..
holiday_router Fix holiday router 3CX IVR calls (Receptionists entity, not IVRs) (#124) 2026-06-17 12:04:10 -04:00
release_notifier Add changelog-driven releases and App Home tab (#112) 2026-06-11 19:41:31 -04:00
ring_scheduler Add pytest suite and wire it into CI (#85) (#86) 2026-06-01 19:07:08 -04:00
roster_sync Add pytest suite and wire it into CI (#85) (#86) 2026-06-01 19:07:08 -04:00
scripts Add changelog-driven releases and App Home tab (#112) 2026-06-11 19:41:31 -04:00
shared [#134] Clarify dropping a shift and differentiate night rows (#138) 2026-06-26 15:19:22 -04:00
slack_bot Harden schedule bump against Slack retries 2026-06-26 20:10:11 +00:00
weekly_post Stick schedule post to bottom of channel 2026-06-26 20:01:28 +00:00
conftest.py Add holiday shifts with 3CX routing and late-pickup approval (#121) 2026-06-17 11:14:29 -04:00
requirements.txt Add pytest suite and wire it into CI (#85) (#86) 2026-06-01 19:07:08 -04:00