Azure collector at src/costdna/collectors/azure_live.py is implemented per Azure SDK v4 patterns (typed QueryDefinition, GenericResourceExpanded for created_time, etc) and has mocked-shape tests passing. It has NOT been validated against a live Azure subscription. The multi-cloud table in README and landing page currently shows Azure as '△ methodology-evaluated'; this issue flips it to '✓ live-validated' (assuming the run succeeds). Steps: (1) Create Azure free-tier subscription (~ credit covers a small test run); (2) Run 'costdna scan --cloud azure --region <sub_id>'; (3) Resolve any SDK errors that surface on real data; (4) Update README and landing page tables; (5) Add the result to docs/field-notes/ as the first self-report. Expected effort: 1 afternoon. The bigger upside isn't the technical result, it's removing 'untested live' from the cloud-support table in a single stroke.
Azure collector at src/costdna/collectors/azure_live.py is implemented per Azure SDK v4 patterns (typed QueryDefinition, GenericResourceExpanded for created_time, etc) and has mocked-shape tests passing. It has NOT been validated against a live Azure subscription. The multi-cloud table in README and landing page currently shows Azure as '△ methodology-evaluated'; this issue flips it to '✓ live-validated' (assuming the run succeeds). Steps: (1) Create Azure free-tier subscription (~ credit covers a small test run); (2) Run 'costdna scan --cloud azure --region <sub_id>'; (3) Resolve any SDK errors that surface on real data; (4) Update README and landing page tables; (5) Add the result to docs/field-notes/ as the first self-report. Expected effort: 1 afternoon. The bigger upside isn't the technical result, it's removing 'untested live' from the cloud-support table in a single stroke.