Bring rooms, readings, notes, and estimate line items in from an Encircle or Xactimate CSV export. Imports into the currently open job.
ESX package (sketch + line items for your estimator) and XactAnalysis carrier push. Both need the ESX serializer / Verisk agreement — next build milestone.
Live card processing needs a Stripe (or similar) account wired to the sync backend — this ledger tracks everything in the meantime.
By executing, the client agrees to the proposal's terms, notes, and exclusions. The signature, name, and timestamp are embedded in the document.
OAuth connections can't live safely inside the app itself — they need the small KRS sync backend (same one the live AI scope uses) to hold the tokens. Turning this on saves your preference so the connection lights up the moment the backend is deployed.
Every scope line scales proportionally so the document still adds up; the contract value, proposal, and dashboard all update together.
Live sync keeps phone and desktop on the same jobs — newest change wins. It needs the free sync worker from the repo's sync-worker/ folder (5-minute Cloudflare deploy), and works from the installed / GitHub Pages copy of the app. This hosted preview blocks outside connections, so use backups here instead.