Scope
Who needs the workflow, what is visible, and what stays out.
Trust boundary · Schedule
Persisted date-only information. Start is included; end is excluded. No visit, dispatch, availability guarantee, recurrence expansion or provider synchronization is inferred.
Module proof path
See the workflow, proof, and operating limits in one scan before reviewing the detailed path.
Inspect proof Open demoWho needs the workflow, what is visible, and what stays out.
Screenshot, proof card, or demo path that makes the claim inspectable.
What requires human review or source evidence.
Why this page is short
Some areas are intentionally represented by a narrow public boundary instead of a full feature page. That keeps sensitive operations, access rules, and unfinished marketing claims out of the buyer-facing experience.
How we evidence thisEnforced boundary
Persisted date-only information. Start is included; end is excluded. No visit, dispatch, availability guarantee, recurrence expansion or provider synchronization is inferred.
BOUNDARY · apps/api/src/ironbound_api/modules/schedule/all_day_contract.py:34
9 further boundary constants in this module
Finite informational Calendar series only. Each original local date is a stable occurrence identity; an exception does not change that identity. Timed starts use explicit IANA wall time; nonexistent or ambiguous DST starts are refused. Timed duration is elapsed minutes. No one-off event, service visit, dispatch, availability or provider sync is inferred.
BOUNDARY · apps/api/src/ironbound_api/modules/schedule/recurrence_contract.py:38Scheduling records coordinate property visits and service cadence only. Owner views show owner-visible timing, status, and notes; they exclude internal notes, access instructions, security details, vendor cost, dispatch automation, and external calendar credentials.
SCHEDULE_BOUNDARY · apps/api/src/ironbound_api/modules/schedule/router.py:125Dispatch commits only a human-reviewed assignment and appointment window. Assessments use recorded schedule, membership, vendor, property-coordinate, operating-period, and weather data. Missing skills, ferry, provider free/busy, or route-duration data stays unavailable; no route optimization, live availability, arrival promise, or customer delivery is inferred.
DISPATCH_EXECUTION_BOUNDARY · apps/api/src/ironbound_api/modules/schedule/router.py:144Visit constraints report what a proposed window collides with: guest stays, owner and availability blocks, the property's operating state, declared access windows, and another visit already held by the same person. They are read-only. They do not optimize or sequence routes, choose or reassign a person, dispatch anyone, cancel or move existing work, or disclose guest identity, access codes, or alarm details.
CONSTRAINT_BOUNDARY · apps/api/src/ironbound_api/modules/schedule/constraints.py:74The dispatch board is a bounded operating view of authorized schedule records. Conflict labels come from persisted property, occupancy, access, and assignee windows. Assignee load is recorded work, not a guarantee of availability, travel time, arrival, or route capacity.
DISPATCH_BOARD_BOUNDARY · apps/api/src/ironbound_api/modules/schedule/router.py:136Only an actor-bound original operation journal entry proves commitment or a recorded rejection. An empty journal lookup remains unknown; it does not prove failure. This inspection never sends a command.
RESOLUTION_BOUNDARY · apps/api/src/ironbound_api/modules/schedule/all_day_contract.py:39Persisted timed service visits overlapping an inclusive-start, exclusive-end local date range. UTC source instants and display timezone are separate. Pages are live reads, not a snapshot or availability promise. No all-day, unscheduled or recurrence instances are inferred.
RANGE_BOUNDARY · apps/api/src/ironbound_api/modules/schedule/calendar_contract.py:33An explicit human-reviewed change moves only this existing visit's time window. Current visit revision, authority and recorded constraints are checked at confirmation. It does not change assignment, dispatch work, expand recurrence or synchronize providers.
CHANGE_BOUNDARY · apps/api/src/ironbound_api/modules/schedule/calendar_contract.py:39Only the actor-bound original operation journal proves a recurring command committed. An absent journal entry stays unknown and does not prove rejection. This lookup is read-only.
RESOLUTION_BOUNDARY · apps/api/src/ironbound_api/modules/schedule/recurrence_contract.py:44Copied verbatim from apps/api/src/ironbound_api/modules/schedule/router.py and regenerated from apps/api/src/ironbound_api/modules. The API returns these same strings in its boundary fields, and a drift check fails the build if this page and the source stop agreeing.
Pilot access
The best demo is not a feature checklist. It follows a request from owner intake to manager triage, vendor packet, field evidence, reviewed closeout, and owner-safe reporting.
We respond with the recommended demo route, who should attend, and what production access would require.