Changelog

OnsitePilot Changelog

Product updates and milestone progress focused on what was actually built and shipped.

Current status: development stage
Access model: private beta
Public release: not launched yet
v0.9.0

Architecture alignment and beta readiness

Frontend

Pushed the provider workspace deeper into the React + TypeScript app structure while keeping the customer booking frontend aligned with the same system.

System

Expanded route and use-case coverage across auth, config, booking, storefront, payments, calendar, and waitlist flows.

Ops

Strengthened audit logging, background jobs, and private-beta readiness while keeping the product in active development rather than public release.

v0.8.5

Workspace polish and manual operations

B-end

Rounded out the main workspace surfaces: Overview, Services, Releases, Bookings, and Storefront.

B-end

Added account settings, Google Calendar settings dialog, and manual booking dialog to support day-to-day provider operations.

C-end

Added customer profile editing for display name, phone, and notes during the order-management flow.

v0.8.0

Public storefront customization

B-end

Completed the standalone storefront editing page for store name, store description, cover image, brand icon, and phone number.

C-end

Integrated storefront information into the booking experience so completed storefront content appears on the public booking entry view.

v0.7.2

Email notifications and calendar invites

C-end

Added email notifications for verification, confirmation, reschedule, cancellation, and refund-related outcomes.

System

Added ICS attachments and deep links so customers can reopen order details directly from email.

v0.7.0

Google Calendar write-only sync

B-end

Integrated Google Calendar connection, calendar selection, and provider-side calendar status management.

System

Completed confirmed / rescheduled / cancelled Google Calendar sync, future booking backfill, and failed-sync compensation sweep.

v0.6.5

Payment state reconciliation

System

Completed Square webhook confirmation, payment-state reconciliation, and timeout cleanup for unpaid draft bookings.

System

Kept `payment_pending` bookings in draft state until payment is verified, instead of marking them as confirmed too early.

v0.6.0

Square payments integration

B-end

Integrated Square connection management so providers can connect and manage payment authorization from the workspace.

C-end

Added payment link creation and retry flow for deposit-backed bookings.

v0.5.5

Provider bookings management

B-end

Completed the provider bookings management page with list filters, detail view, booking summaries, and operational actions.

System

Improved booking occupancy rules so future selected or confirmed slots stay blocked correctly and failed payments stop counting as active holds.

v0.5.1

Customer self-service management

C-end

Added self-service reschedule and cancel flows with state-aware capability checks on the order page.

Frontend

Updated the booking UI so draft orders show continue / abandon / payment actions while confirmed orders show reschedule / cancel logic.

v0.4.8

Draft vs Confirmed state isolation

System

Split draft states from confirmed bookings so `verified`, `address_selected`, `slot_selected`, and `payment_pending` do not pollute the live schedule.

v0.4.5

Route-aware smart scheduling

System

Added TomTom routing checks so slot recommendations account for travel time instead of only free calendar blocks.

System

Completed gap-aware slot validation, fallback travel handling, daily occupancy filtering, and route recheck on final slot selection.

v0.4.0

Booking session recovery

C-end

Added booking session recovery so returning customers can continue an in-progress booking instead of starting over.

System

Locked every booking intent to the current published provider configuration version at creation time.

System

Added one-active-booking recovery logic so the same customer and provider pair does not create duplicate live booking sessions.

v0.3.5

Core booking flow

C-end

Added service selection, customer info capture, address input, slot selection, review, and result states.

C-end

Completed the email verification-code flow before booking intent creation.

v0.3.0

Customer booking frontend shell

C-end

Completed the main booking page and the order detail page for customer follow-up actions.

Frontend

Merged the customer booking app into `web-provider` and established the dedicated `src/customer-booking/*` frontend surface.

v0.2.5

Location services and public links

B-end

Integrated TomTom location search for store address and departure address setup.

B-end

Added the public booking link card so providers can copy and share their booking entry URL directly from the workspace.

v0.2.0

Configuration publishing system

System

Completed draft save, publish, version history, and rollback with `provider_config_versions` as the source of truth.

B-end

Added a dedicated Release Center with change summary, impact notices, publish confirmation, and rollback actions.

v0.1.5

Provider services configuration

B-end

Built the Services Config page for services, pricing, service mode, travel settings, booking rules, and weekly schedule.

Frontend

Added dialog-based editors, field-level guidance, and a simplified schedule sheet for provider setup.

v0.1.0

Account settings and Beta operations

B-end

Added profile management, avatar selection, security settings, password change, and forgot-password reset flow.

Ops

Added private beta waitlist submission, duplicate-email handling, confirmation email flow, and waitlist access inside the internal admin console.

v0.0.5

Provider authentication flow

B-end

Completed provider sign-up, login, email verification, logout, and session handling.

Frontend

Built the first auth drawer and workspace handoff flow for the provider side.

v0.0.1

Project foundation and data models

System

Established the initial provider, customer, session, verification-code, booking-intent, payment, and audit data models.

Frontend

Set up the first provider workspace shell and fixed the route boundaries for `/workspace/*` and `/book/:providerPublicBookingSlug`.