Fieldforce Management
Overview
Fieldforce Management is a multi-tenant SaaS module built on the existing organization infrastructure. It enables organizations to dispatch tasks to field teams, track execution, log completion proof (notes, photos, signatures), and verify quality — with AI powering the workflow.The module serves three primary use cases: Service (repair/installation),
Sales (territory visits), and Logistics/Delivery (routing and proof of
delivery).
System Architecture
The architecture relies on a shared Go backend and two frontend surfaces:- Panel (Desktop): Built with SolidStart for full table views, bulk actions, and side-by-side management. Uses offset pagination and assumes always-online connectivity.
- Mobile Web: Built with Astro + Qwik for touch-friendly interfaces, quick status updates, and offline capabilities. Uses cursor-based infinite scroll.
Data Model
The core entities revolve around Tasks and Activities. All data is scoped byorg_id to enforce multi-tenancy.
| Entity | Description |
|---|---|
ff_tasks | Core task data (title, due_date, status, location). Uses a junction table ff_task_assignments for assignees. |
ff_activities | Logs of actions performed by field teams (notes, photos, signatures). |
ff_attachments | S3 presigned URLs linked to activities, with AI scoring flags. |
ff_task_embeddings | pgvector embeddings for semantic search capabilities. |
ff_audit_logs | Write-only audit trail sharing the global audit_log table. |
Key Architectural Decisions (ADRs)
Roles & Access Control
Fieldforce inherits the existing org permissions system. No new roles were created; instead, existing roles receive fieldforce-specific scopes:- Admin/Owner: Full visibility and management.
- Manager: View all org tasks, assign, and approve.
- Supervisor: View and manage tasks for their own team members.
- Field Team: View own tasks, update status, and log activities.