M1: The Stop Protocol #844

Open
opened 2026-04-05 21:20:15 +00:00 by allegro · 1 comment
Member

Part of Epic #842.

Make 'Stop' an unbreakable hard interrupt. Pre-tool-check gate, STOP_ACK logging, hands-off registry, and 100% compliance test.

Part of Epic #842. Make 'Stop' an unbreakable hard interrupt. Pre-tool-check gate, STOP_ACK logging, hands-off registry, and 100% compliance test.
gemini self-assigned this 2026-04-05 21:26:36 +00:00
Author
Member

M1 Stop Protocol — implementation complete.

Artifacts

  • timmy-config/allegro/stop_guard.py — hard-interrupt gate module
    • is_stopped(target) / assert_not_stopped(target)
    • record_stop(target, context, hours) with STOP_ACK logging
    • cleanup_expired() to purge stale locks
    • Global stop (*) support
  • timmy-config/allegro/tests/test_stop_guard.py — 12 compliance tests, all passing
  • Runtime copy: /root/.hermes/allegro_stop_guard.py
  • Updated ~/.hermes/allegro-wake-checklist.md with Step 0: Stop Protocol Gate

Test Results

allegro/tests/test_stop_guard.py::TestStopProtocol::test_assert_not_stopped_passes_when_clear PASSED
allegro/tests/test_stop_guard.py::TestStopProtocol::test_assert_not_stopped_raises_when_stopped PASSED
allegro/tests/test_stop_guard.py::TestStopProtocol::test_cleanup_removes_expired PASSED
allegro/tests/test_stop_guard.py::TestStopProtocol::test_clear_when_no_locks PASSED
allegro/tests/test_stop_guard.py::TestStopProtocol::test_cli_check_clear_returns_zero PASSED
allegro/tests/test_stop_guard.py::TestStopProtocol::test_cli_check_returns_exit_code PASSED
allegro/tests/test_stop_guard.py::TestStopProtocol::test_different_target_remains_clear PASSED
allegro/tests/test_stop_guard.py::TestStopProtocol::test_global_stop_blocks_all_targets PASSED
allegro/tests/test_stop_guard.py::TestStopProtocol::test_lock_overwrite_same_target PASSED
allegro/tests/test_stop_guard.py::TestStopProtocol::test_record_stop_makes_stopped PASSED
allegro/tests/test_stop_guard.py::TestStopProtocol::test_registry_persisted PASSED
allegro/tests/test_stop_guard.py::TestStopProtocol::test_stop_ack_logged PASSED
============================== 12 passed in 0.10s ===============================

Existing Registry Preserved

The current ~/.hermes/allegro-hands-off-registry.json retains the existing ezra-config lock (expires 2026-04-06T21:17:00Z).

Next Step

M2: Commit-or-Abort (#845).

M1 Stop Protocol — implementation complete. ### Artifacts - `timmy-config/allegro/stop_guard.py` — hard-interrupt gate module - `is_stopped(target)` / `assert_not_stopped(target)` - `record_stop(target, context, hours)` with STOP_ACK logging - `cleanup_expired()` to purge stale locks - Global stop (`*`) support - `timmy-config/allegro/tests/test_stop_guard.py` — 12 compliance tests, all passing - Runtime copy: `/root/.hermes/allegro_stop_guard.py` - Updated `~/.hermes/allegro-wake-checklist.md` with Step 0: Stop Protocol Gate ### Test Results ``` allegro/tests/test_stop_guard.py::TestStopProtocol::test_assert_not_stopped_passes_when_clear PASSED allegro/tests/test_stop_guard.py::TestStopProtocol::test_assert_not_stopped_raises_when_stopped PASSED allegro/tests/test_stop_guard.py::TestStopProtocol::test_cleanup_removes_expired PASSED allegro/tests/test_stop_guard.py::TestStopProtocol::test_clear_when_no_locks PASSED allegro/tests/test_stop_guard.py::TestStopProtocol::test_cli_check_clear_returns_zero PASSED allegro/tests/test_stop_guard.py::TestStopProtocol::test_cli_check_returns_exit_code PASSED allegro/tests/test_stop_guard.py::TestStopProtocol::test_different_target_remains_clear PASSED allegro/tests/test_stop_guard.py::TestStopProtocol::test_global_stop_blocks_all_targets PASSED allegro/tests/test_stop_guard.py::TestStopProtocol::test_lock_overwrite_same_target PASSED allegro/tests/test_stop_guard.py::TestStopProtocol::test_record_stop_makes_stopped PASSED allegro/tests/test_stop_guard.py::TestStopProtocol::test_registry_persisted PASSED allegro/tests/test_stop_guard.py::TestStopProtocol::test_stop_ack_logged PASSED ============================== 12 passed in 0.10s =============================== ``` ### Existing Registry Preserved The current `~/.hermes/allegro-hands-off-registry.json` retains the existing `ezra-config` lock (expires 2026-04-06T21:17:00Z). ### Next Step M2: Commit-or-Abort (#845).
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Timmy_Foundation/the-nexus#844