Background
Follow-up to the zone endpoint tickets #43 (zones/list), #44 (zones/lookup), #45 (zones/modify), #48 (zones/changes) — all CLOSED. A gap review found every zone response models a zone as just { zoneID }, and there's no way to express zone-creation options.
Current state
ZonesListResponse, ZonesLookupResponse, ZonesModifyResponse, ZoneChangesResponse (openapi.yaml:1296-1340) each model a zone as { zoneID } only.
ZoneOperation (openapi.yaml:1215-1225) has no zone create options.
zones/modify request has no atomic flag.
What needs to be done
- Add zone metadata to the response zone objects:
syncToken, atomic, isEager.
- Add zone create options to
ZoneOperation (e.g. atomic).
- Add an
atomic flag to the zones/modify request.
⚠️ Needs live verification
webservices.md is abbreviated on zone payloads, so the exact field names/shape above should be confirmed against a live zones/list / zones/modify response before encoding them. Flagged for confirmation, not asserted as confirmed.
Implementation notes
- Edit
openapi.yaml only, then regenerate via ./Scripts/generate-openapi.sh. Never hand-edit Sources/MistKitOpenAPI/.
- Map new fields onto the domain
ZoneInfo / zone result types in Sources/MistKit/Models/Zones/.
Background
Follow-up to the zone endpoint tickets #43 (zones/list), #44 (zones/lookup), #45 (zones/modify), #48 (zones/changes) — all CLOSED. A gap review found every zone response models a zone as just
{ zoneID }, and there's no way to express zone-creation options.Current state
ZonesListResponse,ZonesLookupResponse,ZonesModifyResponse,ZoneChangesResponse(openapi.yaml:1296-1340) each model a zone as{ zoneID }only.ZoneOperation(openapi.yaml:1215-1225) has no zone create options.zones/modifyrequest has noatomicflag.What needs to be done
syncToken,atomic,isEager.ZoneOperation(e.g.atomic).atomicflag to thezones/modifyrequest.webservices.mdis abbreviated on zone payloads, so the exact field names/shape above should be confirmed against a livezones/list/zones/modifyresponse before encoding them. Flagged for confirmation, not asserted as confirmed.Implementation notes
openapi.yamlonly, then regenerate via./Scripts/generate-openapi.sh. Never hand-editSources/MistKitOpenAPI/.ZoneInfo/ zone result types inSources/MistKit/Models/Zones/.