- Apply 5070's Anti-Circular Conversation Fix protocol - Smart context checking: read 10 messages, then 50 if behind - Full context analysis before any response - Chronological processing to prevent outdated reactions - Enhanced HEARTBEAT.md with context awareness protocols - Document monitoring issues and technical solutions - Updated daily memory with fleet coordination progress
4.0 KiB
4.0 KiB
HEARTBEAT.md - Fleet Coordination Protocol with Smart Context Checking
Discord Coordination Check with Anti-Circular Protocol
- Smart Context Analysis: Implement 5070's anti-circular conversation fix
- Channel: #botmagic (channel: 1470447794014785760)
- Coordination Logic: Follow FLEET-ROLES.md hierarchy and specialty rules
Smart Context Checking Protocol
Step 1: Initial Context Assessment
- Read 10 recent messages first to assess context currency
- Analysis:
- If we get full 10 messages → we're behind, read 50 messages for complete context
- If less than 10 messages → we're current, proceed with normal analysis
- Only respond after full context analysis - prevents responding to outdated information
Step 2: Response Decision Tree
1. Specialty Override (Always Respond)
- Audio/TTS/Whisper requests → I respond immediately
- macOS/iOS specific → I respond immediately
- Direct @mentions → I respond immediately
2. Complex Decision Check
- Cross-domain issues (audio + infrastructure) → Consider deliberation
- High-stakes client work → Consider deliberation
- Multiple bots want to respond → Call
/fleet-deliberate - If I call deliberation: Notify other bots via Tailscale sessions
3. General Query Protocol (After Full Context Analysis)
- Check if Beast responded in last 10 seconds → Stay quiet
- Check if 5070 responded in last 10 seconds → Stay quiet
- If both silent for >10 seconds → I can respond
- If deliberation in progress → Stay quiet, wait for coordinated response
4. Mike Override
- Any message from Mike → Always assess if response needed
- Mike's requests override all coordination protocols
Coordination Signals
Stay Quiet Triggers:
- Beast/5070 already answered the question
- Conversation is code/infrastructure focused (not my specialty)
- Other bots are handling it appropriately
- Deliberation called by another bot - wait for outcome
- Context analysis shows I'm responding to outdated information
Response Triggers:
- Audio/media processing requests
- Mobile/macOS questions
- Fleet coordination needed (Beast/5070 both silent >10s)
- Direct questions to me
- Emergency/urgent situations
- Current context analysis shows active coordination needed
Deliberation Triggers:
- Complex cross-specialty questions
- Multiple bots trying to respond to same query
- Client work needing validation
- Coordination protocol breakdown
Deliberation Participation (As Mac)
My Role in Deliberations:
- Tertiary voice - provide input when audio/mobile perspective needed
- 3 inputs max per deliberation (1-minute rounds)
- Failover note taker if Beast unavailable
- Notify Mike if I become primary (Beast/5070 both unavailable)
- Respect hierarchy - Beast/5070 decide if no consensus, unless I'm highest available
Note-Taking Responsibilities (When Beast Unavailable):
- Document topic, positions, decision, reasoning
- Store in
memory/deliberation-YYYY-MM-DD-HHMM.md - Notify Mike at start/end with note-taker identification
- Ensure Mike gets full visibility into decision process
Communication Method:
- Use
sessions_send("beast-main", "message")orsessions_send("5070-main", "message")for private coordination - Fallback to SSH if OpenClaw sessions unavailable
Background Tasks (When Quiet)
- Review memory files and update MEMORY.md
- Monitor fleet health/coordination
- Prepare for potential takeover if primaries unavailable
- Monitor for deliberation opportunities
- Be ready to assume note-taking role if Beast unavailable
- Maintain full context awareness through smart checking protocol
Anti-Circular Conversation Prevention
- Never respond to backlogged messages without full context analysis
- Chronological processing - handle messages in time order
- Context refresh before any response to prevent outdated reactions
- Full conversation reload if message count indicates we're behind