Skip to content

piano diff <tag> lacks NDJSON-aware output #97

@rocketman-code

Description

@rocketman-code

Problem

resolve_run_arg (used by cmd_diff) resolves tags via load_tagged_run, which only loads the consolidated JSON Run struct — it never checks for NDJSON data. This means piano diff <tag_a> <tag_b> produces output from diff_runs using JSON-only data.

Currently this is not a visible problem because diff_runs only uses Run-level aggregates (calls, total, self). But if diff_runs ever gains NDJSON-aware columns (percentiles, allocation deltas), the diff output for tagged runs would silently show degraded data.

Location

Suggested approach

Apply the same pattern used in cmd_report: resolve the tag to a run_id, check for NDJSON, and load frame data when available. This would future-proof cmd_diff for NDJSON-aware diff formatting.

Context

Discovered during code review of PR #91.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions