Skip to content

bug: clustered/low-confidence plans get the wrong --explain next-command hint #111

Description

@aryamthecodebreaker

What happened?

The post-plan --explain hint is shown whenever ranking is “weak”, including clustered scores and low top confidence — not only when the list is empty (#104).

const weak =
  report.contextFiles.length === 0 ||
  leading?.confidence === "low" ||
  report.analysis?.ranking.clustered === true;

Message is always:

Expected a file that is not listed? Ask why it was left out:
  fixmap plan --issue "<same task>" --explain <path>

For a clustered ranking the problem is not a missing file — FixMap already listed a neighborhood and said it cannot pick a decisive edit point. Asking “why wasn’t X listed?” is the wrong next question; the user more often needs to tighten the task or inspect why scores are flat.

Related: #104 (empty list). This issue is the misleading copy on clustered/low-confidence non-empty reports.

How can we reproduce it?

Any plan that returns analysis.ranking.clustered: true with ≥1 context file (e.g. chalk issue #1 against FixMap, or many flat descriptive tasks). Check stderr for the “not listed” explain hint.

What did you expect instead?

Gate the “file not listed / --explain” hint on empty lists only (or on user-facing “missing file” situations). For clustered/low confidence, hint at refining the issue text, naming an identifier, or reading the Analysis section — not --explain for an absent path.

FixMap version or commit

v0.7.3 / main (packages/cli/src/cli-runner.ts nextCommandHint)

Where did this happen?

CLI

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggood first issueApproachable contribution with a clear scope

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions