Skip to content

feat(finops): mirror daily typed cost evidence - #18

Merged
routeplane-ops merged 1 commit into
mainfrom
feat/finops-cost-evidence-contract
Oct 2, 2026
Merged

routeplane-ops merged 1 commit into
mainfrom
feat/finops-cost-evidence-contract

Conversation

@routeplane-ops

Copy link
Copy Markdown
Collaborator

Summary

Mirror daily typed-cost evidence in Python models and exports at totals, day, model and key levels without changing resource methods. Implementation evidence: routeplane-core/routeplane#1135; initiative: routeplane-core/docs#625.

The additive outer field is optional for older gateways using Python-3.9-compatible TypedDict inheritance, without new dependencies. Nested evidence preserves required nullable fields, estimate-only states, provenance/coverage and bounded diagnostics. Missing evidence stays absent; legacy cost_micro_usd never supplies a typed amount. No new endpoint, billed/reconciled authority, deployment or PyPI release.

Validation

  • Full local Python suite: 316 passed.
  • Ruff source/test lint and format checks passed; mypy passed for all 21 source files.
  • Thirteen standalone strict consumer probes passed, including eight invalid-shape rejection probes and tagged-union narrowing. These additional probes were local, not added as a new hosted workflow.
  • Independent source correctness/security reviews passed on final diff SHA256 bf40a5e7613868962aad85bea2bea20c243e2c782007ecb5217a683c1582205c, including the final diagnostic-fixture refinement.
  • Protected hosted CI across Python 3.9–3.13 remains required. TypedDicts are descriptive, not a runtime authenticity or numeric-bound validator.

Only models/exports and existing resource tests changed; no dependency, version, workflow or resource-method edits.

Closes #17

@routeplane-ops
routeplane-ops merged commit aaf836b into main Oct 2, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(finops): mirror daily typed cost evidence contract

2 participants