Skip to content

Edit cargo runs and export their cargo values to CSV #46

Closed

Description

@Fazorath

Parent

#38

What to build

The second half of the cargo-run change. Logged cargo runs can be corrected, and the CSV export shows how each profit was worked out.

  • The Tracker can edit a cargo run's cargo before, cargo after and time left. Only that run's profit and minutes are recomputed. No other run changes.
  • The Abyss edit dialog shows Cargo before (M), Cargo after (M) and Time left (min) for a cargo run. Old wallet runs keep the current dialog until the wallet-run ticket changes it.
  • The CSV export adds cargo_before_millions and cargo_after_millions. It keeps isk_after_millions, which is empty for cargo runs, so old exports and spreadsheets still line up. Old wallet runs have the cargo columns empty.

Branch: keep working on the shared branch issue-38-cargo-runs from the previous ticket. When this ticket is done, open one PR with Closes for both tickets.

Acceptance criteria

  • Editing a cargo run changes its cargo before, cargo after and time left and recomputes its profit and minutes
  • Editing a cargo run leaves every other run in the session unchanged (check the runs before and after it)
  • Edits are validated the same way as logging (non-finite values and invalid time left are rejected)
  • The edit dialog shows the three cargo fields, prefilled, for a cargo run, and saving updates the history and stats
  • The CSV has the two new columns in a stable order: filled for cargo runs, empty for wallet runs; isk_after_millions is still present and empty for cargo runs
  • Restoring a backup made before the cargo columns, then exporting, works
  • Tests:
    • Tracker: editing cargo runs, the isolation from other runs, validation
    • CSV: export of a mixed session, restore-then-export from the old schema
    • GUI through gui.App: the edit dialog for a cargo run
  • Full test suite green
  • One PR opened from the shared branch, closing this ticket and the previous one

Blocked by

Metadata

Metadata

Assignees

Labels

esiEVE Online ESI integrationready-for-agentSpec'd and safe for the night shift to build

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions