Objective
- Add a notes field to the online (public) scheduler so the person booking can leave instructions for the office.
- When notes are submitted, they should appear in the activity feed as a pinned item and tag @office so scheduling teams see them immediately.
- The same text should be available as an email template variable for office notification emails when someone books online.
Background
- Implementation reviews described this as a cross-company need, not a one-off configuration.
- Internal scheduler already has sticky notes patterns (
src/components/scheduling/NewSchedulingForm.tsx, SchedulerNotesPanel)—online booking is a separate UX under src/app/scheduler/ (e.g. SlotsStep.tsx, ServiceConfirmation.tsx).
- Persisted booking likely creates or updates quotes/inspections via backend routes—activity pinning should follow existing patterns for inspection activity (
recordPendingContext, activity feed subscribers) where applicable.
- In the Monday kickoff, the team also called out a downstream requirement: users will likely want these scheduler notes to be available as a merge variable in office-facing emails or action flows, not only shown in the activity feed. The implementation may need to balance note/activity-feed storage with structured reuse in notifications.
Scope
Frontend (attik-frontend)
src/app/scheduler/ — add field to the appropriate step(s), validation, and pass-through to the booking API payload.
- Wire template variable documentation in email-builder settings if variables are registered centrally.
Backend (attik-backend)
- Booking/create-inspection handlers (quote or inspection creation from online scheduler)—accept notes, store on the right document, emit activity with pin + mention metadata.
- Email variable registry / merge pipeline for notifications.
References
attik-frontend/src/app/scheduler/slots/SlotsStep.tsx
attik-frontend/src/app/scheduler/services/ServiceConfirmation.tsx
attik-backend/src/util/functions/inspection/createInspection.ts (related creation paths as appropriate)