Versions in this module Expand all Collapse all v0 v0.99.1 Aug 17, 2026 v0.99.0 Aug 14, 2026 Changes in this version + func ArgsHash(toolName string, args map[string]any) string + func ResultHash(toolName string, result msg.ToolResultMessage) string + type Config struct + Enabled bool + GenericCritical int + GenericWarn int + GlobalCircuitBreaker int + NoProgressCritical int + PingPongCritical int + PingPongWarn int + PostCompactionIdentical int + PostCompactionWatch int + Window int + func DefaultConfig() Config + type Decision struct + ArgsHash string + Count int + Detector DetectorName + Level Level + Message string + Terminate bool + func (d Decision) Stuck() bool + type Detector struct + func NewDetector(cfg Config) *Detector + func (d *Detector) ArmPostCompaction() + func (d *Detector) Check(toolName string, args map[string]any) Decision + func (d *Detector) Config() Config + func (d *Detector) ObserveResult(toolName string, args map[string]any, result msg.ToolResultMessage) + func (d *Detector) Reset() + func (d *Detector) ResetFingerprint(argsHash string) + type DetectorName string + const DetectorGenericRepeat + const DetectorGlobalCircuitBreaker + const DetectorNoProgress + const DetectorPingPong + const DetectorPostCompaction + type Level string + const LevelCritical + const LevelNone + const LevelWarn