Skip to content

abctl cost --by currency is silently empty on a ring-served window #1181

Description

@huang195

Deferred from the round-1 strict review of #1153 (classified ADJACENT there).

core/cost/usage/snapshot.go bucket.series has cases for model/method, endpoint, session, agent, status, plugin and host, then default: return nil — no GroupCurrency. A window served from the in-memory ring therefore answers --by currency with an empty series, which abctl renders as

  (no currency breakdown for this window)

indistinguishable from "no traffic".

Consistent with the documented design — the ring never sets Snapshot.Currencies, so the cross-unit refusal never fires there and nothing points a reader at this axis. The gap is only reachable by asking for the axis directly, which is why it was deferred rather than blocking.

Tracked red by the review harness as check C6, deliberately.

Note the coupling: closing this makes the isReportedUnit path in the sibling issue live. Fix both together.

Assisted-By: Claude (Anthropic AI) noreply@anthropic.com

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions