# Phase Handover — Experience 11.6 Forms, Surveys & Appointments

## Metadata

| Field | Value |
| --- | --- |
| Phase ID | `experience-11.6` |
| Title | Forms, Surveys & Appointments |
| Status | Complete |
| Service(s) | `experience` (`experience_db`) |
| Version | `0.11.6.0` |
| Date | 2026-07-26 |
| ADR(s) | [ADR-016](../architecture/adr/ADR-016.md) |

## Discovery Summary

Phase 11.5 delivered locale bindings and Storage-only media refs. Tenants still lacked form/survey definition shells and appointment page booking-ref surfaces. This phase adds those shells while keeping CRM contact and vertical scheduling ownership outside Experience.

## Reusable Components

| Component | Location | Reuse notes |
| --- | --- | --- |
| Forms + submissions | `app/models/forms.py`, `app/services/forms.py` | Active-only intake; payload refs not CRM IDs |
| Surveys + responses | same | Mirrors form intake pattern |
| Appointment pages + booking refs | same | `external_booking_ref` unique per page; no calendar engine |
| Policies / validators | `app/policies/forms.py`, `app/validators/forms.py` | Status transitions; forbid ownership keys in JSON shells |

## Public APIs

| Path | Permission |
| --- | --- |
| `/api/v1/forms`, `/api/v1/form-submissions` | `experience.forms.*` |
| `/api/v1/surveys`, `/api/v1/survey-responses` | `experience.surveys.*` |
| `/api/v1/appointment-pages`, `/api/v1/appointment-booking-refs` | `experience.appointments.*` |

## Events

`experience.form.*` · `experience.form_submission.*` · `experience.survey.*` · `experience.survey_response.*` · `experience.appointment_page.*` · `experience.appointment_booking_ref.*`

## Known Limitations

- No SEO/PWA publishing (11.7)
- No native scheduler / CRM write-back
- Submission processing is status-shell only (no background workers in this phase)

## Migration Notes

| Item | Detail |
| --- | --- |
| Alembic | `0007_phase_116_forms_surveys_appointments` (head) |
| Upgrade | `alembic upgrade head` |
| Breaking | None (additive) |

## Next Phase Entry

| Field | Value |
| --- | --- |
| Next phase | `experience-11.7` — Publishing, Domains, SEO & PWA |
| Entry docs | This handover + [experience-phase-11-6.md](../experience-phase-11-6.md) |
