docs: start milestone v1.1 smart-document-preparation

This commit is contained in:
Chandler Copeland
2026-03-21 11:15:06 -06:00
parent 5f2507a69e
commit 8c69deeb68
4 changed files with 91 additions and 22 deletions

26
.planning/MILESTONES.md Normal file
View File

@@ -0,0 +1,26 @@
# Milestones: Teressa Copeland Homes
## v1.0 — Core Document Signing Platform
**Completed:** 2026-03-21
**Phases:** 17 (28 plans)
**Summary:** Full end-to-end document signing platform. Marketing site, agent portal, PDF upload and field mapping, email-link signing flow (no client account), LEGAL-03 compliant presigned downloads, audit trail.
### What Shipped
| Phase | Name | Plans |
|-------|------|-------|
| 1 | Foundation (auth, DB, Next.js setup) | 3 |
| 2 | Marketing site (brand, contact form) | 3 |
| 3 | Agent portal shell (clients, dashboard) | 4 |
| 4 | PDF ingest (upload, preview, forms library) | 4 |
| 5 | PDF fill & field mapping (prepare, drag-drop fields) | 4 |
| 6 | Signing flow (email link, client signs, confirmation) | 6 |
| 7 | Audit trail & download (presigned URLs, LEGAL-03) | 4 |
### Requirements Satisfied
28 requirements across AUTH, MKTG, CLIENT, DASH, DOC, SIGN, LEGAL categories.
See REQUIREMENTS.md for full traceability.
---

View File

@@ -8,24 +8,37 @@ A professional real estate web presence and document management web app for brok
Teressa can prepare and send any real estate form to a client for signing in minutes, from her browser, without leaving her site. Teressa can prepare and send any real estate form to a client for signing in minutes, from her browser, without leaving her site.
## Current Milestone: v1.1 — Smart Document Preparation
**Goal:** Teressa can have AI auto-place and pre-fill all document fields with one click, sign as agent before sending, and preview the fully-prepared document before it reaches the client.
**Target features:**
- Expanded field types (text, checkbox, initials, date, agent signature)
- AI-assisted field placement and pre-fill using OpenAI (gpt-4o-mini)
- Agent saved signature — draw once, apply with one click
- Agent signs first, then sends to client
- Filled document preview before sending
## Requirements ## Requirements
### Validated ### Validated
(None yet — ship to validate) - ✓ Marketing site with brand and contact form — v1.0
- ✓ Agent portal with client management and document dashboard — v1.0
- ✓ PDF upload, preview, and forms library — v1.0
- ✓ Drag-drop signature field placement and document preparation — v1.0
- ✓ Email-link signing flow (no client account) — v1.0
- ✓ Presigned agent download, audit trail, LEGAL-03 compliance — v1.0
### Active ### Active (v1.1)
- [ ] Warm, professional marketing site with Teressa's photo and branding - [ ] Agent can add property address to client profile (for AI pre-fill)
- [ ] Active property listings displayed on the public site (pulled from WFRMLS/utahrealestate.com) - [ ] AI auto-places all field types on a PDF at the click of a button
- [ ] Agent login portal accessible from the main site - [ ] AI pre-fills text fields with known client/property data
- [ ] Agent can browse and import forms from the utahrealestate.com forms library - [ ] Agent can place text, checkbox, initials, and date field markers
- [ ] Agent can fill in property and client details on imported PDF documents - [ ] Agent can save a drawn signature and reuse it across documents
- [ ] System detects/identifies signature areas in PDFs; agent can add/adjust signature fields - [ ] Agent applies saved signature to agent signature fields before sending
- [ ] Agent can send completed document to client via email link (no client account required) - [ ] Agent sees a filled preview of the prepared document before sending
- [ ] Client opens link in browser and signs with a custom signature canvas
- [ ] Signed documents are stored and accessible to Teressa
- [ ] Agent can manage multiple clients and their associated documents
### Out of Scope ### Out of Scope
@@ -61,4 +74,4 @@ Teressa can prepare and send any real estate form to a client for signing in min
| utahrealestate.com integration via credentials | Client already has account; forms library is core source | — Pending | | utahrealestate.com integration via credentials | Client already has account; forms library is core source | — Pending |
--- ---
*Last updated: 2026-03-19 after initialization* *Last updated: 2026-03-21 after v1.1 milestone start*

View File

@@ -57,6 +57,36 @@
- [x] **LEGAL-03**: Signed PDFs are stored in private storage — never accessible via public or guessable URLs; agent downloads via authenticated presigned URLs only - [x] **LEGAL-03**: Signed PDFs are stored in private storage — never accessible via public or guessable URLs; agent downloads via authenticated presigned URLs only
- [x] **LEGAL-04**: DNS (SPF/DKIM/DMARC) configured for teressacopelandhomes.com before first signing link is sent to a real client - [x] **LEGAL-04**: DNS (SPF/DKIM/DMARC) configured for teressacopelandhomes.com before first signing link is sent to a real client
## v1.1 Requirements
### Client Profile Enhancement
- [ ] **CLIENT-04**: Agent can add a property address to a client profile
- [ ] **CLIENT-05**: Client property address is available as a pre-fill data source alongside client name
### Field Types
- [ ] **FIELD-01**: Agent can place text field markers on a PDF (for typed content like names, addresses, prices)
- [ ] **FIELD-02**: Agent can place checkbox field markers on a PDF
- [ ] **FIELD-03**: Agent can place initials field markers on a PDF
- [ ] **FIELD-04**: Agent can place date field markers that auto-fill with the signing date
### AI Assistance
- [ ] **AI-01**: Agent can click one button to have AI auto-place all field types (text, checkbox, initials, date, agent signature, client signature) on a PDF in the correct positions
- [ ] **AI-02**: AI pre-fills text fields with known values from the client profile (name, property address, date)
### Agent Signature
- [ ] **AGENT-01**: Agent can draw and save a signature to their account profile (drawn once, reused)
- [ ] **AGENT-02**: Agent can update their saved signature at any time
- [ ] **AGENT-03**: Agent can place agent signature field markers on a PDF
- [ ] **AGENT-04**: Agent applies their saved signature to agent signature fields during document preparation (before sending to client)
### Document Preview
- [ ] **PREV-01**: Agent sees a live filled preview of the fully-prepared document (text filled, signatures embedded) before sending to client
## v2 Requirements ## v2 Requirements
### MLS Integration ### MLS Integration
@@ -70,11 +100,11 @@
- **SIGN-V2-01**: Client receives a reminder email if document is unsigned after 1, 3, and 7 days - **SIGN-V2-01**: Client receives a reminder email if document is unsigned after 1, 3, and 7 days
- **SIGN-V2-02**: Client confirmation email with a copy of the signed document - **SIGN-V2-02**: Client confirmation email with a copy of the signed document
- **SIGN-V2-03**: Multiple field types: initials field, auto-populated date field, checkbox - ~~**SIGN-V2-03**: Multiple field types~~ — promoted to v1.1 as FIELD-01 through FIELD-04
### Forms Library ### Forms Library
- **FORMS-V2-01**: Heuristic auto-detection of existing AcroForm signature fields on Utah standard forms (reduces manual placement effort) - ~~**FORMS-V2-01**: Heuristic auto-detection of AcroForm signature fields~~ — superseded by v1.1 AI-01 (AI-based field placement)
- **FORMS-V2-02**: Agent can save a prepared document as a reusable template (pre-filled fields, pre-placed signature zones) - **FORMS-V2-02**: Agent can save a prepared document as a reusable template (pre-filled fields, pre-placed signature zones)
### Analytics ### Analytics

View File

@@ -1,7 +1,7 @@
--- ---
gsd_state_version: 1.0 gsd_state_version: 1.0
milestone: v1.0 milestone: v1.1
milestone_name: milestone milestone_name: smart-document-preparation
status: unknown status: unknown
last_updated: "2026-03-21T17:02:31.470Z" last_updated: "2026-03-21T17:02:31.470Z"
progress: progress:
@@ -22,12 +22,12 @@ See: .planning/PROJECT.md (updated 2026-03-19)
## Current Position ## Current Position
Phase: 7 of 7 (Audit Trail and Download) — COMPLETE (all 4 plans done) Phase: Not started (defining requirements)
Plan: 07-04 (4 of 4 plans) — LEGAL-03 gap closure — /file route restricted to original PDF, PdfViewer Download anchor hidden for Signed Plan:
Status: All plans complete. LEGAL-03 fully satisfied: /file route serves original PDF only, presigned /download?adt=[token] is sole signed PDF download path. Status: Defining requirements for v1.1 — Smart Document Preparation
Last activity: 2026-03-21 — Phase 7 Plan 04: LEGAL-03 gap closure complete, all 28 plans done Last activity: 2026-03-21 — Milestone v1.1 started (13 requirements defined, roadmap pending)
Progress: [███████████] 100% (Phase 7 plan 4 of 4 complete — all phases done) Progress: [░░░░░░░░░░] 0% (v1.1 not started)
## Performance Metrics ## Performance Metrics