Skip to content

Receipt accounting: parse gpu_sku/gpu_seconds/cost_usd into the run ledger; surface in run status #425

Description

@aarontrowbridge

Important

Problem — Warrants and the campaign fold can't see GPU spend: the run ledger debits nothing when a cloud run burns GPU-hours, because receipts are never parsed for gpu_sku/gpu_seconds/cost_usd. Spend that isn't recorded can't be gated (the GPU-plane invariant).

Acceptance Criteria

  • The run-ledger record gains optional GPU fields (gpu_sku, gpu_seconds, cost_usd), schema-versioned
  • Remote run completion parses them out of the receipt/run-dir into the ledger row
  • amico ledger query / run status surface them
  • FakeCloud fixture extended to emit the fields; tests pin the parse (buildable NOW against fixtures — field names per the runner contract, adjusted if the cloud names differ)

Design-of-record: vault spec spec-20260818-gpu-plane (ladder item 2). Soft-blocked on the cloud runner contract landing; the client half doesn't need to wait.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions