The Sentinel
Scope
- •Crash Detection: Detects when Mesen2 pauses (Breakpoint/CPU JAM).
- •Softlock Detection: Detects "Stuck in Transition" or "Input Stagnation".
- •Action: Triggers
crash-investigatorto dump trace and state.
Core Capabilities
1. Active Monitoring
Run continuously alongside the game/agent.
- •
python3 scripts/ai/sentinel.py
2. Detection Logic
- •Crash: Emulator
pausedstate = True. - •State Trap: Game Mode (
$7E0010) is playable (OW/Dungeon), but Submode is not0x00(Control) for > 5 seconds. - •Stagnation: Link (
$7E0020/22) hasn't moved for > 10 seconds while in Control mode.
Workflow
- •Launch:
sentinel. - •Play/Test: Run an agent test or manual play session.
- •Detect: "Softlock Detected: Stuck in Transition".
- •Dump: Sentinel invokes
crash_dump.py->crash_reports/softlock_....md.
Dependencies
- •Tool:
~/src/hobby/yaze/scripts/ai/sentinel.py. - •Mesen2: Running with socket server.
- •Skill:
crash-investigator(for dumping logic).
Example Prompts
- •"Start the Sentinel to watch for softlocks."
- •"I'm running a long pathfinding test, ensure the Sentinel is active."
Troubleshooting
- •False Positives: If you are standing still on purpose, Sentinel might complain. Kill it or ignore the report.
- •Connection: Needs
mesen2-mcpsocket.