I3666 — Spend against a funding source is observed from a named vendor seam or recorded absent, and no balance is derived from a price
Give each held source a spend figure that is observed only when a vendor seam named in share/models.yaml with dated evidence reports it; otherwise record it absent with the reason (for an individual account: the vendor's cost report is not available to it), and refuse in economics check any remaining-credit or spent-credit figure computed from tokens and a price.
CANCELLED wave 2 · p3 · implementation profile · parallel safe
Objective
Give each held source a spend figure that is observed only when a vendor seam named in share/models.yaml with dated evidence reports it; otherwise record it absent with the reason (for an individual account: the vendor's cost report is not available to it), and refuse in economics check any remaining-credit or spent-credit figure computed from tokens and a price.
Why
The owner will ask how much of the monthly grant is left. Majordomus holds no price list (share/models.yaml), and I3292's dated vendor claims say the cost report is unavailable to individual accounts, so the honest answer today is absent with that reason; a derived balance would be an estimate shown as a fact, which docs/ECONOMICS.md and ADR 0213 forbid.
Current state
No spend per source exists; economics check refuses typed quantities in prose.
Desired state
Spend per source reads observed with its seam, or absent with its reason; a derived balance is refused.
Scope
- apps/majordomus-cli/src/economics
- share/models.yaml
- docs/ECONOMICS.md
Dependencies
- I3660READY A vendor declares its funding sources in the model catalogue, each with dated, quoted vendor evidence
- I3292BLOCKED Reported tokens, a price-list estimate and a billed amount are three fields, and the billing mode says which account paid
What waits on this
Acceptance criteria
- With no seam declared, every held source's spend reads absent with the reason, never zero
- A surface showing a remaining-credit figure derived from tokens is refused by economics check (test)
- A seam, once declared with evidence, yields observed spend from a recorded fixture
Validation
- cargo test --manifest-path apps/majordomus-cli/Cargo.toml --test economics
- majordomus economics check
Evidence required
- test_funding_spend_without_a_seam_is_absent
Evidence
None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.
Completion report
Cancelled 2026-10-21 on feature/intent-funding-sources by the plan's critique (finding spend-seam-is-speculative-and-misplaced): no vendor seam reports spend to an individual account (I3292's dated vendor claims), so the seam scaffolding would have no real counterpart, ADR 0213 declares seams in share/providers.yaml rather than the model catalogue, and refusing a derived balance on generated and UI surfaces is I3297's work. Reopen when a seam is evidenced.
Timeline
- started
- —
- verified
- —
- completed
- —
Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.
Canonical record: .ai/repo/project/issues/I3666.yaml. Read it back with majordomus plan show I3666.