Escalate wedge alarm intensity after N consecutive cycles #16
Loading…
Reference in a new issue
No description provided.
Delete branch "fm/fm-wedge-alarm-escalation"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
After N consecutive undelivered max-defer cycles (default 3, configurable via
FM_WEDGE_ALARM_ESCALATE_AFTER_CYCLES), the wedge alarm bumps to the next louder level: each channel fires more times per cycle and the summary carries a distinct ALARM LEVEL prefix. Escalation caps at level 3 so an indefinite wedge plateaus instead of climbing forever. A successful delivery resets the cycle (the marker is deleted), so a wedge that clears and recurs starts back at level 1.What changed
bin/fm-afk-return.shreads withhead -1— so the captain-facing return path sees it. This is the critical fix from the model trial: impl-A appended the failure note after cycle= entries where the return path could not see it.WEDGE_ALARM_MAX_LEVEL(single source of truth), not hardcoded.What each test proves
test_wedge_alarm_level_thresholds_and_captest_inject_wedge_alarm_throttled_cycle_preserves_marker_recordtest_inject_wedge_alarm_throttled_cycle_recreates_vanished_markertest_inject_wedge_alarm_escalates_when_marker_never_persiststest_inject_wedge_alarm_marker_exists_before_alert_channel_firestest_inject_wedge_alarm_escalates_after_three_consecutive_cyclestest_inject_wedge_alarm_recovery_resets_escalation_cycletest_inject_wedge_alarm_total_delivery_failure_visible_to_consumerhead -1, proven against realfm-afk-return.shconsumertest_inject_wedge_alarm_omits_failure_note_when_channel_succeedsAcceptance criteria
head -1Base: impl-A (gpt-5.6-terra). Ported from impl-B (claude sonnet): failnote-on-first-line mechanism. Per Deepseek's test-or-drop: title/sound variation dropped (not testable through recorder seam). Applied Deepseek's doc timing and return-streak clear fixes.
Validation: no-mistakes pipeline passed (review, test, document, lint, push).
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.