v1.3.132
v1.3.132
Agent Intelligence Improvements
-
Progressive error-streak guidance — When the agent hits consecutive tool errors, guidance now escalates across 3 levels (4, 7, 10 errors) instead of firing once. Level 1 suggests reconsidering strategy, level 2 focuses on technical debugging, level 3 recommends escalation. (SICA-inspired)
-
Reactive ratchet rule matching — When a tool result contains an error matching an existing ratchet rule's pattern, the FixHint is now injected immediately. Previously, ratchet rules only matched tool arguments (preventive), not tool result content (reactive).
-
Smart verify hint reset — The post-edit verify hint counter now resets when the agent proactively runs a build/test command, avoiding redundant "run go build" reminders. Hint messages are also context-aware: if the last build failed, the hint adds urgency.
-
Justfile and Taskfile support — The verify hint build detection now recognizes
JustfileandTaskfile.ymlprojects, suggestingjust verify-ciortask buildinstead of falling through to language-specific defaults.
Bug Fixes
-
Fix: nil slice panic in LAN chat autocomplete — Typing
@queryin chat mode when no LAN chat participants are online would panic with "slice bounds out of range". The filtering loop now guards against nil slices. -
Fix: concurrent WebSocket readers in WebUI — The legacy chat WebSocket handler could spawn a second concurrent reader on the same connection, violating gorilla/websocket's contract and risking panics or corrupted reads. The readPump goroutine is now properly drained before the outer loop resumes.
-
Fix: nil dereference on late IM ask_user reply — When an IM reply for an ask_user questionnaire arrived after the questionnaire was already completed, the nil pointer dereference would crash.
-
Fix: lock-before-close in mattermost, wecom, and nostr adapters — Three IM adapters called
ws.Close()while holding a write lock, causing potential deadlock. The lock is now released before closing.