Skip to content

Improve exit code 1 messaging with summary and log location #13

@bdougie

Description

@bdougie

Problem

When sweeper finishes a run with unfixed issues remaining, it exits with code 1 and prints:

Results: 68 fixed, 99 failed (1 rounds).
Summary: 2114 issues found, 68 fixed, 99 tasks failed

This looks like an error, especially when running inside other tools (e.g., Claude Code reports it as "failed with exit code 1"). There's no indication of why tasks failed or where to look for details.

Suggestion

  1. Distinguish partial success from actual errors in the exit summary. Something like:
Sweep complete: 68/116 tasks fixed (59% success rate), 99 tasks had unfixable issues.
Round 1: 2114 issues found, 68 resolved.
  1. Print the telemetry log path so users know where to find per-file error details:
Details: .sweeper/telemetry/2026-03-19.jsonl

The JSONL log already captures per-task errors (malformed patches, failed hunks, etc.) but there's no pointer to it in the CLI output. This is especially important for users running with alternative providers/models (e.g., --provider ollama) where failure rates may be higher and understanding why tasks failed helps inform model selection.

  1. Consider exit code 0 for partial success (or a separate exit code like 2 for "completed with remaining issues" vs 1 for "sweeper itself errored"). This would make it easier to distinguish "sweeper ran fine but couldn't fix everything" from "sweeper crashed."

Context

Ran sweeper run --provider ollama --model minimax-m2.7:cloud -- npm run lint on a TypeScript/React project with 2114 ESLint issues. The 99 failures were mostly malformed patches from the smaller model, which is expected behavior — but the CLI output made it look like sweeper itself failed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions