Vantage Transport Management · demo notes
What each screen does, and what each pane is for. Harare depot, Thursday 20 August 2026 · prepared for the TVSH demo, 26 August 2026.
How to run it
The console opens on the board. The left rail moves between the five screens; the black bar at the foot of the window is the demo running order — Next beat walks the thirteen spoken lines and jumps to the screen each one belongs to. Beats 4 to 10 are dimmed: those are the store-dispatch and driver screens, a separate mobile build.
Three moments are failures on purpose — a refused vehicle, a stale position with no ETA, and a branch that has not synced. They are the point, not defects. An operation this size does not believe a demo where everything works.
TM-1 · The board
Answers one question in three seconds: what is promised today, and how much of it is on a truck. Chaos on the left, order on the right.
Branch sync strip
One stamp per selling branch. Marondera reads last synced 14:32 — its deliveries are not on this board. A board that silently omits an offline branch is lying by omission, so the omission is stated.
Unplanned
Consignments promised today with no trip. Branch, suburb, zone, goods and measured service time. Clicking one takes you into the trip builder.
Building
Trips being planned. The trip you are editing is marked in red and its figures are live. Nothing here has departed.
Running
Trips on the road plus hired carriers. The carrier trip reads awaiting proof, not “stuck” — a third party legitimately reports nothing between depot and door.
Load line
Either a real percentage or a plain count of unmeasured lines. Both are normal states. Nine trips in ten cannot show a fill percentage, because TVSH has no dimension data for furniture. The honest form (5 lines with no dimensions, no bar) sits beside the working form (7.07 of 22.0 m³ — 32%). The honest one must not look like an error; today it is the normal case.
The service-time column is the other quiet point: 395 minutes across 11 stops against 233 across 9. Nearly the same stop count, almost three hours apart, because one trip is beds and the other is appliances.
TM-2 · Build a trip
Where a planner turns a pile of promises into a route on a truck. Everything on this screen recomputes from what is on the trip.
Unplanned pool
Add + puts a consignment on the trip; the × in the stops table takes it off and returns it to the pool. Adding holds the slot, removing releases it — both idempotent on the till’s transaction number, so a repeat never double-books.
Map
Real OpenStreetMap streets with the depot, the numbered stops in trip order and the route line. The caption says whose order is drawn — the planner’s, or the suggestion. A leg drawn dashed is a straight line, not a road route: it means the router has not answered yet, or cannot be reached.
Estimate bar
Distance, driving minutes, measured service minutes and the time the truck is back at the depot, from a 06:45 departure. Distance and driving time are road figures from OSRM with an 18% city allowance; until the answer lands the line says (routing…).
Suggested route
Preview suggested route proposes a stop order and states the saving in minutes. Accept order renumbers the trip and redraws the map; Reject keeps the planner’s order and records the rejection with a reason — the optimiser is advice, and a rejected suggestion stays queryable.
Stops table
The trip itself, in sequence, with each stop’s own service time.
Capacity check
Either a percentage or the count of unmeasured lines, plus truck-type eligibility and crew requirement. It refuses to invent a number.
Vehicle picker
The list a planner chooses from — and the point of the screen. The refusal is the label, not a tooltip. AFR5403 — TVS87 · UD Croner · 28.0 m³ · Certificate of Fitness expired 12 August reads its reason before anyone clicks. Two more are flagged in caution rather than alert: COF expiring 31 August, insurance expiring 26 August — available, but visibly close. Overriding a compliance block needs a separate grant. A truck dispatched without valid papers is a truck impounded with a customer’s goods on it.
TM-3 · Live and exceptions
Live trips
Vehicle, driver, stops completed, position and an honest ETA. Every timestamp names its source — departed 07:06 · by geofence, not “departed”. Trip 02’s fix is stale, so the position is absent and says so; no last-known dot pretends to be current, and no ETA is offered without a fix.
Map
Vehicles with live fixes and today’s unplanned demand as pins, so a planner can see where the work is against where the trucks are.
Exceptions
Everything that went wrong today, oldest first. Click a row for the detail and what happens next. The fault column is a billing field, so it is styled as a fact rather than an accusation: TVSH, customer, or blank. The third row — six deliveries signed with the photographs still queued for depot wifi — is not a failure. Proof arriving later is a visible state rather than a silent one; outcomes, signatures and cash go out immediately, images wait for wifi.
TM-4 · Search
The closing screen, and the only one showing something TVSH cannot do at all today. One field takes an invoice number, a serial, a vehicle registration or a customer name and returns everything that number touches, as one chronological story: invoice and fiscal identity, branch, customer, address with a driver-confirmed pin, goods with serials, the scan out, the trip and vehicle, driver and crew, geofenced departure and arrival, the outcome and functional test, who signed and their ID number, the three pieces of evidence as thumbnails, the charge, and what was posted.
Today the invoice, the Issue Distribution Order, the Confirmation Note and the Driver Allocation Book each carry their own number and share no key — a person in an office reconciles them by hand. Read this screen out loud; that is the whole argument.
TM-5 · Fleet cost
The director’s screen, from TVSH’s own April 2026 figures: 60 active vehicles, 117,169 km, $1.212 per km excluding third parties and $1.540 including them, fuel and maintenance broken out per km and in dollars, third-party spend for the month against year to date, fuel efficiency against standard, deliveries and revenue per delivery. Right-hand pane is per-vehicle fuel variance against target, which exists to find one row: AFR5403, 9.9% worse than target — the same truck the compliance block refused on TM-2.
Deliberate limits of this demo
Item · status
Evidence thumbnails
Labelled placeholders — real signature, ID and goods photographs come from the driver app’s proof capture, which is not built.
Route optimisation
Nearest-neighbour, scored against real road figures. It is a greedy walk, not an optimiser; real optimisation moves server-side at phase B11.
Routing
OSRM’s public demo server, with the scripted stop orders pre-cached so the demo never waits on it. Production self-hosts a router or buys one.
Positions
Illustrative fixes. In production the console reads Cartrack directly, server-side; positions never reach Business Central — only geofence crossings, as arrival and departure timestamps.
Store dispatch (SD) and driver (DR) screens
Not in this build. They are the mobile surfaces and carry the offline burden.
Data
Representative Harare consignments. Branches, zones, vehicle registrations, fleet numbers and makes are TVSH’s own; driver and customer names, vehicle cubic capacities and compliance dates are invented, because TVSH holds no capacity or expiry data and attaching a real employee to a fictional serial mismatch in front of directors is a bad idea. Fleet cost figures are April 2026 actuals as supplied.