You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(scorer): BreakEvenMonths is never computed, so --max-break-even-months is inert #367
Live audit (CLI main 68f6b774): EC2 partial-upfront with --max-break-even-months 1 lets all 23 of 23 recs through, and the table Break-even column is always '-'.
Root cause: pkg/scorer/scorer.go:85 reads rec.BreakEvenMonths, but no AWS parser assigns it (only pkg/common/types.go declares it). 0 therefore always passes.
Plan: compute break-even in pkg (upfront / gross monthly savings, where gross = net monthly savings + upfront amortised over the term), with defined behaviour for no-upfront (0, nothing to recover) and for uncomputable (distinct from 0; filtered by the scorer rather than silently passed). Populate the field on passed recs so the table shows it.
Releasing my claim: this is already fixed. #376 (merged 2026-10-13 as 9551cce, Refs #367) computes break-even in common.BreakEven and the scorer now enforces --max-break-even-months; its tests pass on main. The CLI already picks it up (its go.mod pins pkg at 9b35837, which contains 9551cce) and docs/cli/filtering.md describes the new behaviour. I think this can be closed.
Checked against main 740dfbd: #376 (9551cce) added common.BreakEven (pkg/common/breakeven.go:22) and the scorer now enforces MaxBreakEvenMonths (pkg/scorer/scorer.go:92). It used Refs, so this stayed open. Marking needs-info for a close decision. The unknown-upfront case is tracked separately in #392.
Closing as completed per owner decision (2026-10-17): fixed by #376 (9551cce, common.BreakEven; the scorer enforces MaxBreakEvenMonths). The unknown-upfront case is tracked in #392.
Activity
fix(scorer): use US spelling to satisfy misspell lint (#367)
fix(scorer): compute break-even so --max-break-even-months filters (#376
IAmJSD commentedon Oct 15, 2026
Released: this turned out to be already fixed on main (details in the comment below), so I'm not working on it.
IAmJSD commentedon Oct 15, 2026
Releasing my claim: this is already fixed. #376 (merged 2026-10-13 as 9551cce,
Refs #367) computes break-even incommon.BreakEvenand the scorer now enforces--max-break-even-months; its tests pass on main. The CLI already picks it up (its go.mod pins pkg at 9b35837, which contains 9551cce) anddocs/cli/filtering.mddescribes the new behaviour. I think this can be closed.IAmJSD commentedon Oct 15, 2026
@cristim could you close this one? It was fixed by #376 (which used
Refsrather thanCloses, so it stayed open).cristim commentedon Oct 16, 2026
Checked against main
740dfbd: #376 (9551cce) addedcommon.BreakEven(pkg/common/breakeven.go:22) and the scorer now enforcesMaxBreakEvenMonths(pkg/scorer/scorer.go:92). It usedRefs, so this stayed open. Marking needs-info for a close decision. The unknown-upfront case is tracked separately in #392.cristim commentedon Oct 17, 2026
Closing as completed per owner decision (2026-10-17): fixed by #376 (9551cce, common.BreakEven; the scorer enforces MaxBreakEvenMonths). The unknown-upfront case is tracked in #392.