When Three Platforms Converge
Fleet + Publish + Foundation combine to create something new: AI-driven field operations where human operators become intelligent edge points in a fully connected system.
Truck drivers with iPads get AI-directed pickup routes. The system knows where every vehicle is. Operators can update routes via voice or text—and the AI refactors all affected routes instantly.
The Problem: Static Routes in a Dynamic World
Traditional field operations are planned the night before:
- Route planning — Dispatchers create routes manually, or use overnight batch optimization
- Last-minute changes — Sick driver? Blocked street? Phone calls, re-planning, chaos
- No real-time visibility — “Where’s truck 47?” requires a radio call
- Paper-based processes — Work orders printed, completion status re-keyed manually
- Information silos — Driver knows something, dispatcher doesn’t, customer has no idea
When reality diverges from the plan, the whole system struggles to adapt.
The Solution: AI-Directed Field Operations
┌─────────────────────────────────────────────────────────────────────┐
│ UBUNTU SOFTWARE UNIFIED STACK │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────────────┐ │
│ │ PUBLISH │ │ FLEET │ │ FOUNDATION │ │
│ │ │ │ │ │ │ │
│ │ Work orders │ │ Vehicles │ │ Offline-first sync │ │
│ │ Forms/PDFs │◄──►│ Telemetry │◄──►│ Automerge CRDT │ │
│ │ Kiosks │ │ Commands │ │ NATS JetStream │ │
│ │ Translation │ │ Digital │ │ SQLite everywhere │ │
│ │ │ │ Twins │ │ WellKnown Gateway │ │
│ └─────────────┘ └─────────────┘ └─────────────────────────┘ │
│ │ │ │ │
│ └──────────────────┼───────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ FIELD OPERATOR (Human Edge) │ │
│ │ │ │
│ │ iPad/Phone with: │ │
│ │ • Real-time route display (2D/3D) │ │
│ │ • AI-directed pickup notifications │ │
│ │ • SST/voice input for route changes │ │
│ │ • Offline capability (queues sync when connected) │ │
│ │ • Position tracking (device GPS) │ │
│ │ • Work order completion/forms │ │
│ └─────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ VEHICLE (Truck) │ │
│ │ │ │
│ │ • CAN bus telemetry (engine, fuel, diagnostics) │ │
│ │ • GPS position (location tracking) │ │
│ │ • Gateway syncs to NATS JetStream │ │
│ └─────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────┘
The key insight: Human operators are edge computing nodes. Their devices provide positioning, receive AI directions, and enable on-the-fly system updates—just like any other sensor in the network.
Example: Waste Collection Reimagined
A concrete example of how this architecture works:
Morning: AI Plans the Day
- System knows all pickup locations, priorities, container fill levels (IoT sensors)
- AI calculates optimal routes for each truck—minimizing distance, respecting time windows
- Routes push to driver tablets automatically before shift starts
- Each driver sees their personalized route in 2D/3D with turn-by-turn
During Operations: Real-Time Adaptation
Driver 1 reports: “123 Main St blocked by construction”
Driver speaks into tablet
└─▶ SST converts to text
└─▶ System marks location as blocked
└─▶ AI refactors all affected routes
└─▶ Updated routes push to affected drivers
└─▶ Total time: seconds
No phone calls. No dispatcher intervention. The system handles it.
Meanwhile:
- Dispatch dashboard shows all trucks in real-time
- Customer portal shows ETA for their pickup
- Every completion is logged automatically
- Every change is audited with full provenance
The Human-in-Loop
Operators can override AI at any time:
| Input Method | Example | System Response |
|---|---|---|
| Voice (SST) | “Skip 456 Oak Ave, customer not home” | Marks skip, adjusts route |
| Touch | Tap location on map, select “Blocked” | Removes from all routes |
| Form | Complete service form with notes | Records completion, triggers billing |
| Override | Drag route to change sequence | Accepts change, re-optimizes downstream |
The AI augments human judgment—it doesn’t replace it.
Human-in-Loop: Operators as Edge Intelligence
The breakthrough isn’t just AI—it’s AI + Human judgment working together. Field operators aren’t passive recipients of instructions. They’re intelligent nodes in the system.
The Fully-Tapped Device
Every driver’s iPad/phone becomes a sensor AND an actuator:
┌─────────────────────────────────────────────────────────────────┐
│ DRIVER DEVICE (iPad/Phone) │
├─────────────────────────────────────────────────────────────────┤
│ │
│ INPUTS (Sensing) OUTPUTS (Acting) │
│ ───────────────── ──────────────── │
│ • GPS position • Route display (2D/3D) │
│ • Voice commands (SST) • Turn-by-turn directions │
│ • Touch interactions • Pickup notifications │
│ • Form submissions • Alert sounds/haptics │
│ • Camera (proof of service) • Customer ETA updates │
│ • Accelerometer (driving) • Route change confirmations │
│ │
│ LOCAL INTELLIGENCE │
│ ────────────────── │
│ • SQLite database (offline state) │
│ • Automerge CRDT (conflict-free sync) │
│ • Background location tracking │
│ • Push notification handling │
│ │
└─────────────────────────────────────────────────────────────────┘
The system knows where every driver is, what they’re doing, and can reach them instantly. But crucially—drivers can talk back.
Voice-Driven Route Refactoring
Speech-to-Text (SST) enables hands-free system updates:
| Driver Says | System Does |
|---|---|
| “123 Main blocked by construction” | Marks location blocked, refactors all affected routes |
| “Skip next pickup, nobody home” | Removes from route, notifies customer, adjusts ETA |
| “Container overflowing at Oak Street” | Flags priority, may reassign to larger truck |
| “Taking 15 minute break” | Adjusts all downstream ETAs, notifies affected customers |
| “Route complete” | Closes route, updates dashboard, triggers billing |
No phone calls to dispatch. No radio chatter. The driver speaks, the AI listens, the system adapts.
Authority Hierarchy
Human judgment overrides AI recommendations:
┌─────────────────────────────────────────────────────────────────┐
│ DECISION AUTHORITY │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 1. DRIVER ON-SITE ───────────────────────▶ HIGHEST │
│ Sees reality, can override anything │
│ │
│ 2. DISPATCHER ───────────────────────▶ HIGH │
│ Fleet-wide view, can reassign routes │
│ │
│ 3. AI OPTIMIZER ───────────────────────▶ MEDIUM │
│ Suggests routes, adapts to changes │
│ │
│ 4. SCHEDULED PLAN ───────────────────────▶ LOWEST │
│ Starting point, always subject to reality │
│ │
└─────────────────────────────────────────────────────────────────┘
The AI is powerful—but the human with eyes on the ground has final say.
Publishing: Single Source, Every Channel
The Publish Platform generates all outputs from a single source of truth.
Logistics Outputs
| Source Definition | Outputs Generated |
|---|---|
| Pickup record | Tablet screen, PDF manifest, customer SMS, kiosk display |
| Route plan | Driver turn-by-turn, dispatch dashboard, customer ETA |
| Service form | Digital form, printable PDF, OCR-scanned paper |
| Daily summary | Email report, dashboard widget, compliance export |
One definition. Multiple outputs. Change the source, all channels update automatically.
Multi-Language Field Teams
Field workers speak different languages? Publish handles translation:
- Driver 1’s tablet: English
- Driver 2’s tablet: Spanish
- Customer portal: Customer’s preference
- PDF manifest: Corporate standard
Same data, localized presentation. No duplicate content management.
Forms That Feed Back
Service completion forms flow back into the system:
Driver completes pickup form
└─▶ Photo attached (proof of service)
└─▶ Notes recorded ("Container damaged")
└─▶ Time stamped automatically
└─▶ GPS coordinates captured
└─▶ Data syncs via Foundation
└─▶ Billing system updated
└─▶ Customer notified
└─▶ Maintenance ticket created (if needed)
Forms aren’t just data capture—they’re triggers for downstream automation.
Data Sovereignty
Where does your data go? The WellKnown Gateway ensures you own your data even when publishing TO external platforms like Salesforce, fleet tracking systems, or billing providers.
Key principle: You publish TO platforms. They don’t own your data—you do.
Fleet Integration: Vehicles as Data Sources
The Fleet Architecture provides the vehicle layer—trucks become data-rich digital twins.
What the Truck Knows
Every vehicle streams telemetry via CAN bus gateway:
| Data Point | Source | Use |
|---|---|---|
| GPS Position | Telematics module | Real-time tracking, ETA calculation |
| Engine Status | ECU | Health monitoring, maintenance alerts |
| Fuel Level | Fuel sensor | Range estimation, refueling scheduling |
| Speed | Wheel sensors | Safety monitoring, route timing |
| Diagnostics | OBD-II / J1939 | Predictive maintenance |
| Door Status | Body controller | Service verification |
| Weight | Load cells | Capacity management |
The truck isn’t just transport—it’s a mobile sensor platform.
Digital Twin Sync
Every truck has a digital twin in the system:
Physical Truck Digital Twin
───────────── ────────────
Position: 34.05°, -118.24° → state.position
Fuel: 67% → state.fuel
Engine: Running → state.engine
Speed: 25 mph → state.speed
Door: Closed → state.door
Weight: 3,400 lbs → state.weight
Dispatchers see reality. AI optimizes on reality. Customers get accurate ETAs.
Fleet Architecture → | Ground Vehicles → | Vehicle Gateway →
Foundation: Offline-First Everything
The Foundation Platform ensures the system works even when connectivity doesn’t.
Why Offline Matters
Field operations happen where networks fail:
- Underground parking garages
- Rural areas with spotty coverage
- Tunnels and underpasses
- Congested areas during events
- International borders (roaming gaps)
If your app freezes when offline, your operations freeze. Unacceptable.
Automerge CRDT: Conflict-Free Sync
Changes made offline merge cleanly when connectivity returns:
Driver A (online): Marks pickup complete at 9:15am
Driver B (offline): Marks same pickup skipped at 9:14am (tunnel)
Driver B reconnects:
└─▶ Automerge detects conflict
└─▶ Applies "last write wins" or custom merge rule
└─▶ Both changes preserved in history
└─▶ Alert triggers for dispatcher review
└─▶ No data loss, no app crash
Traditional databases would corrupt or lose data. CRDT handles it gracefully.
SQLite Everywhere
Every device has a complete local database:
- Driver tablet: Routes, customers, forms, history
- Dispatch dashboard: Fleet state, alerts, analytics
- Customer portal: Their service records, upcoming pickups
No network? No problem. The app has everything it needs locally.
Full Awareness: 2D/3D Visualization
Operators and dispatchers see the same reality:
Driver View (Tablet)
- Current route with turn-by-turn
- Next pickup details and customer notes
- All other trucks in their area (awareness)
- Traffic and road conditions overlay
Dispatch View (Dashboard)
- All vehicles positioned on map
- Current route progress for each driver
- Alerts and exceptions highlighted
- Historical tracks and audit trail
Customer View (Portal)
- ETA for their service
- Driver approaching notification
- Service completion confirmation
All views derive from the same real-time data stream. All stay in sync automatically.
Technical Foundation
Offline Resilience
The system keeps working when connectivity drops:
Connectivity lost
└─▶ App continues with local SQLite
└─▶ Changes queue in Automerge CRDT
└─▶ Position caches locally
Connectivity returns
└─▶ Automerge merges all changes
└─▶ No conflicts, no data loss
└─▶ System catches up automatically
Field operations can’t stop for network issues. This architecture ensures they don’t.
Real-Time Sync
When connected, changes propagate instantly:
Driver completes pickup
└─▶ Form data saves to local SQLite
└─▶ Automerge syncs to NATS
└─▶ JetStream persists event
└─▶ Dashboard updates
└─▶ Customer notified
└─▶ Total latency: <1 second
Notification Architecture
Every device subscribes to relevant NATS subjects:
| Subject Pattern | Who Receives |
|---|---|
fleet.prod.veh.{id}.route.* | That driver’s device |
fleet.prod.veh.*.state.pos | Dispatch dashboard |
fleet.prod.customer.{id}.* | Customer portal |
Changes publish once, deliver to all interested parties automatically.
Beyond Waste Collection
The same pattern applies across field operations:
| Industry | Application |
|---|---|
| Waste Management | Route-optimized collection, fill-level sensors |
| Delivery & Logistics | Last-mile optimization, proof of delivery |
| Field Service | Technician dispatch, parts inventory |
| Agriculture | Farm equipment coordination, harvest routing |
| Construction | Equipment/material delivery, site logistics |
| Utilities | Meter reading routes, service calls |
| Healthcare | Home care visits, specimen collection |
Same architecture. Same patterns. Different domain data.
Security & Data Sovereignty
Your operations data stays yours:
| Principle | Implementation |
|---|---|
| Self-Sovereign | Data stored on your infrastructure or ours—your choice |
| WellKnown Gateway | Publish TO platforms without lock-in |
| End-to-End Encryption | Data encrypted in transit and at rest |
| Zero Trust | Every device authenticated, every request authorized |
| Audit Trail | Every change logged with full provenance |
| Offline First | Data lives on devices, not just in the cloud |
WellKnown Gateway → | Authorization & Grants →
Get Started
AI-driven field operations transform how work gets done. Your operators become intelligent edge points in a system that adapts in real-time.
Ready to see how Fleet + Publish + Foundation can transform your field operations?