fix(eam): read the instance name from SRM's ref
flowchart LR
SRM["SRM GET /internal/service-instances<br/>{service_instance_id, ref: podinfo_bcn_1610, ...}"]
-->|"before: reads name (absent) → None"| X["AppInstanceInfo.name = instance id"]
SRM -->|"now: reads ref"| Y["AppInstanceInfo.name = podinfo_bcn_1610"]GET /appinstances gave every instance its UUID as name. SRM's listing has no name field; it carries the requested name as ref, which is what oeg/app-instance-flow.md maps CAMARA name to (service_instance.ref, via the SRM proxy read). SRMServiceInstance read name, always got None, and the mapper fell back to the id.
No test caught it because the fakes build SRMServiceInstance(name=...) directly. The field now validates from ref and keeps name as an alias, so the fakes stay as they are. A new test_srm_client.py case parses SRM's actual response shape.
This fixes local instances by itself. For instances a partner hosts, FM also has to return the name as ref, which is FM MR fix/partner-instance-name.
| Result | |
|---|---|
| unit tests | 1265 passed, 1 skipped; mypy, ruff clean |
| new test without the fix | fails: assert None == 'podinfo_bcn_01' |
testbed, ns oop, OP-1 |
Barcelona (local) and Paris (on OP-2) instances listed by name, both ready |
The two rows still showing a UUID are partner instances deployed before the FM fix.
