Skip to content

fix(csv): explicit --coverage 80 is treated as unset on --input-csv runs and buys 100% #2236

Closed

Description

@cristim

Summary

On an --input-csv run, an explicit --coverage 80 is treated as "not set": the run skips sizing and buys 100% of each CSV row's count. This was split from #1613 (finding M1) and re-verified on origin/main fd0af9f.

Cause

  • determineCSVCoverage (cmd/multi_service_csv.go:23-30) maps the flag's default value, 80.0, to 100.
  • It is called at cmd/multi_service.go:746. When it returns 100, sizing is skipped (cmd/multi_service.go:931).
  • Because the check compares against the default value, the code cannot tell an explicitly passed --coverage 80 from no flag at all.

Fix

Use cmd.Flags().Changed("coverage") to tell an explicit value from the default, as cmd/validators.go already does for other flags. Add a regression test showing that an explicit --coverage 80 scales a CSV row's count to 80% on a dry run.

Coordination

The fix touches cmd/multi_service_csv.go and cmd/multi_service.go, and the open #2203 touches both files. Land this after #2203, or rebase it onto #2203.

Activity

  1. IAmJSD commented on Oct 16, 2026

    @IAmJSD
    Collaborator

    Claiming: working on this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions