{"client":"velora","flows":[{"id":"velora.consultation_to_plan","name":"Consultation to plan within 72 hours","status":"active","fulfills":["VELORA-REQ-001#AC-1","VELORA-REQ-001#AC-2","VELORA-REQ-001#AC-3","VELORA-REQ-001#AC-4","VELORA-REQ-004#AC-1"],"surfaces":["public.homepage","public.consultation_booking","mobile.home","admin.plan_sla_queue"],"controllers":["velora.consultation_controller"],"graphql":["veloraHome","requestVeloraConsultation"],"requires":["velora_tenant_resolved","active_consultation_services","practitioner_roster_seeded"],"provides":["consultation_requested","consultation_closed","plan_sla_projection_visible","plan_delivered"]},{"id":"velora.treatment_booking","name":"Treatment booking with practitioner and room fit","status":"active","fulfills":["VELORA-REQ-002#AC-1","VELORA-REQ-002#AC-2","VELORA-REQ-002#AC-3","VELORA-REQ-003#AC-1","VELORA-REQ-003#AC-2"],"surfaces":["mobile.home","member.treatment_booking","admin.daily_schedule"],"controllers":["velora.appointment_controller"],"graphql":["veloraHome","veloraTreatments","veloraAvailableSlots","requestVeloraTreatmentBooking"],"requires":["authenticated_member","active_treatment_plan","practitioner_roster_seeded","treatment_catalog_seeded"],"provides":["eligible_practitioners_visible","available_slots_visible","treatment_booking_confirmed"]},{"id":"velora.consultation_plan_treatment","name":"Consultation plan converts into treatment booking","status":"active","fulfills":["VELORA-REQ-001#AC-1","VELORA-REQ-001#AC-2","VELORA-REQ-001#AC-3","VELORA-REQ-004#AC-1","VELORA-REQ-002#AC-1","VELORA-REQ-002#AC-2","VELORA-REQ-002#AC-3","VELORA-REQ-003#AC-1","VELORA-REQ-003#AC-2","VELORA-REQ-012#AC-1","VELORA-REQ-012#AC-2","VELORA-REQ-012#AC-3","VELORA-REQ-012#AC-4","VELORA-REQ-012#AC-5"],"surfaces":["public.consultation_booking","mobile.home","member.treatment_booking","admin.plan_sla_queue"],"controllers":["velora.consultation_controller","velora.appointment_controller"],"graphql":["veloraHome","requestVeloraConsultation","veloraTreatments","veloraAvailableSlots","requestVeloraTreatmentBooking"],"requires":["velora_tenant_resolved","active_treatment_plan","treatment_catalog_seeded","practitioner_roster_seeded"],"provides":["consultation_requested","plan_sla_visible","membership_context_visible","treatment_booking_confirmed"]},{"id":"velora.photographic_consent","name":"Photographic capture with consent and revocation","status":"active","fulfills":["VELORA-REQ-005#AC-1","VELORA-REQ-005#AC-2","VELORA-REQ-005#AC-3","VELORA-REQ-005#AC-4"],"surfaces":["clinician.photo_capture","member.photographic_archive","admin.audit_trail"],"controllers":["velora.consent_controller"],"graphql":["veloraPhotoArchive","revokeVeloraPhotoConsent"],"requires":["authenticated_member","explicit_consent_policy_loaded","audit_retention_tags_configured"],"provides":["photo_consent_granted","photo_visible_by_scope","photo_consent_revoked","display_cessation_recorded"]},{"id":"velora.client_contract","name":"Client overlay, mobile pack, design, and localization contract","status":"active","fulfills":["VELORA-REQ-006#AC-1","VELORA-REQ-006#AC-2","VELORA-REQ-006#AC-3","VELORA-REQ-003#AC-2","VELORA-REQ-007#AC-1"],"surfaces":["public.homepage","mobile.shell","deployment.overlay"],"graphql":["veloraHome"],"requires":["client_yaml_valid","design_overlay_valid","locale_files_present","mobile_pack_synced"],"provides":["velora_brand_available","velora_mobile_pack_available","localized_public_content_available"]}],"e2e":[{"id":"velora.mobile.packaged","status":"implemented","runner":"playwright","flows":["velora.client_contract"],"file":"mobile/tests/velora-shell.e2e.ts"},{"id":"velora.mobile.home_renders_client_fixture","status":"implemented","runner":"playwright","flows":["velora.client_contract","velora.consultation_to_plan"],"file":"mobile/tests/velora-shell.e2e.ts"},{"id":"velora.mobile.appointment_preview","status":"implemented","runner":"playwright","flows":["velora.treatment_booking"],"file":"mobile/tests/velora-shell.e2e.ts"},{"id":"velora.controller.consultation_request","status":"implemented","runner":"go-test","flows":["velora.consultation_to_plan","velora.consultation_plan_treatment"],"file":"extensions/backend/velora/handler_test.go"},{"id":"velora.graphql.treatment_projection","status":"implemented","runner":"go-test","flows":["velora.treatment_booking","velora.consultation_plan_treatment"],"file":"extensions/backend/velora/handler_test.go"},{"id":"velora.controller.treatment_booking","status":"implemented","runner":"go-test","flows":["velora.treatment_booking","velora.consultation_plan_treatment"],"file":"extensions/backend/velora/handler_test.go"},{"id":"velora.controller.photo_consent_revocation","status":"implemented","runner":"go-test","flows":["velora.photographic_consent"],"file":"extensions/backend/velora/handler_test.go"},{"id":"velora.public.consultation_request","status":"implemented","runner":"platformkit-flow","flows":["velora.consultation_to_plan","velora.consultation_plan_treatment"],"specFile":"tests/e2e/flows/public-consultation.flow.yaml"},{"id":"velora.ops.plan_sla_queue","status":"implemented","runner":"platformkit-flow","flows":["velora.consultation_to_plan"],"specFile":"tests/e2e/flows/plan-sla-queue.flow.yaml"},{"id":"velora.member.treatment_booking","status":"implemented","runner":"platformkit-flow","flows":["velora.treatment_booking","velora.consultation_plan_treatment"],"specFile":"tests/e2e/flows/member-treatment-booking.flow.yaml"},{"id":"velora.customer.consultation_plan_treatment","status":"implemented","runner":"platformkit-flow","flows":["velora.consultation_to_plan","velora.treatment_booking","velora.consultation_plan_treatment"],"specFile":"tests/e2e/flows/consultation-plan-treatment.flow.yaml"},{"id":"velora.member.photo_consent_revocation","status":"implemented","runner":"platformkit-flow","flows":["velora.photographic_consent"],"specFile":"tests/e2e/flows/photo-consent-revocation.flow.yaml"},{"id":"velora.ops.audit_consent_event","status":"implemented","runner":"platformkit-flow","flows":["velora.photographic_consent"],"specFile":"tests/e2e/flows/audit-consent-event.flow.yaml"},{"id":"velora.public.locale_switch","status":"implemented","runner":"platformkit-flow","flows":["velora.client_contract"],"specFile":"tests/e2e/flows/public-locale-switch.flow.yaml"}]}
