- InlineField component + useInlineEdit composable for Odoo-style dblclick editing - Client search by name, account ID, and legacy_customer_id (or_filters) - SMS/Email notification panel on ContactCard via n8n webhooks - Ticket reply thread via Communication docs - All migration scripts (51 files) now tracked - Client portal and field tech app added to monorepo - README rewritten with full feature list, migration summary, architecture - CHANGELOG updated with all recent work - ROADMAP updated with current completion status - Removed hardcoded tokens from docs (use $ERP_SERVICE_TOKEN) - .gitignore updated (docker/, .claude/, exports/, .quasar/) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2.6 KiB
2.6 KiB
Gigafibre FSM — Roadmap
Phase 1 — Foundation (Done)
- ERPNext v16 setup with PostgreSQL
- Custom FSM doctypes (Service Location, Equipment, Subscription)
- Dispatch doctypes (Job, Technician, Tag with skill levels)
- Dispatch PWA with timeline, drag-drop, Mapbox map
- GPS tracking (Traccar hybrid REST + WebSocket)
- Authentik SSO (forwardAuth) for all apps
- ERPNext API proxy (same-origin via nginx)
- Legacy data migration (6,667 customers, 21K subscriptions, 115K invoices, 242K tickets)
- Gitea repo at git.targo.ca
Phase 2 — Ops App (Done)
- Unified ops PWA at erp.gigafibre.ca/ops/
- Client list with search (name, account ID, legacy ID)
- Client detail page (contact, billing KPIs, locations, subscriptions, equipment, tickets, invoices, payments, notes)
- Inline editing on all fields (Odoo-style dblclick, InlineField component)
- Dispatch module integrated into ops app
- Ticket management with inline status/priority editing
- Equipment tracking with detail modal
- SMS/Email notifications via n8n webhooks (Twilio + Mailjet)
- Ticket reply thread (Communication docs)
- Invoice OCR (Ollama Vision)
- Field tech mobile app (barcode, diagnostics, offline)
- Authentik federation (auth.targo.ca staff -> id.gigafibre.ca)
Phase 3 — Workflows & Automation (In Progress)
- Tag technicians with skills (assign Fibre/TV/Telephonie tags + levels to 46 techs)
- Wire auto-dispatch logic (cost-optimization matching in useAutoDispatch.js)
- Issue -> Dispatch Job creation (button in ticket detail)
- Job completion -> equipment status update
- Job completion -> close helpdesk ticket
- Equipment swap -> inventory move log
- n8n workflows for escalation rules
- Activate n8n SMS/email workflows via UI
- Twilio upgrade to production (10DLC or Toll-Free)
- SLA tracking on subscriptions
Phase 4 — Customer Portal
- Customer-facing web app (service status, invoices)
- Stripe payment integration
- Online appointment booking
- Real-time tech tracking ("On my way" SMS)
- Equipment list per location
- Service request submission
- Legacy password migration (MD5 -> PBKDF2 via auth bridge)
Phase 5 — Advanced Features
- Van stock inventory per technician
- Part usage -> auto-reorder
- Multi-day project tracking (fiber builds)
- Tech performance dashboards
- Revenue analytics (MRR, churn, ARPU)
- Preventive maintenance scheduling
- Customer/location picker in job creation modal
- Photo capture with annotations
- Customer signature pad
- Time tracking (start/pause/stop on job)