diff --git a/internal/pattern/detector.go b/internal/pattern/detector.go index 2d2888e..a0cf22c 100644 --- a/internal/pattern/detector.go +++ b/internal/pattern/detector.go @@ -3,6 +3,7 @@ package pattern import ( "context" + "fmt" "sort" "strings" "sync" @@ -370,12 +371,16 @@ func (d *Detector) CandidateCount() int { return len(d.candidates) } +// GetPatternInsight returns a formatted insight string for a pattern. // GetPatternInsight returns a formatted insight string for a pattern. func (d *Detector) GetPatternInsight(ctx context.Context, patternID int64) (string, error) { pattern, err := d.patternStore.GetPatternByID(ctx, patternID) if err != nil { return "", err } + if pattern == nil { + return "", fmt.Errorf("pattern not found: %d", patternID) + } return formatPatternInsight(pattern), nil }