Search the documentation

Find a page by title or section.

Tasks and proof

Exceptions

Cooriroo flags trips that go wrong on their own. What raises an exception, and what to do when one lands.

Updated

An exception is the system noticing that a trip is not going to plan, without anyone having to watch it. A late departure, a driver stationary for an hour, a stop worked out of order, a phone that has stopped reporting its position — each is detected, classified by how bad it is, and put on a list for someone to deal with. Exceptions are attached to trips, so the tasks on those trips carry the consequences rather than raising exceptions of their own.

Who can do this

Role
Administrators
Permission
trip-exceptions:readtrip-exceptions:write

The tenant-wide exception list, acknowledging and resolving are admin-only. A driver can see the exceptions on a trip they are driving, but cannot close them.

What raises one

Detection runs in three places: when a trip or stop changes state, when a location update arrives, and on a sweep across active trips roughly once a minute. Nothing is raised on a finished trip.

ExceptionWhat raises itWhen it is checked
Late startThe trip leaves later than scheduled, past the thresholdWhen the trip starts
ETA varianceArrival differs from the estimate, past the thresholdOn arrival at a stop
Early or late arrivalArrival falls outside the stop’s time windowOn arrival at a stop
Arrival outside geofenceArrival is recorded away from the stop’s geofenceOn arrival at a stop
Sequence violationStops are worked out of their planned orderOn a stop changing state
Dwell exceededTime spent at the stop overruns its planned service timeOn departure from a stop
Stop skippedA stop is marked as skippedOn skipping a stop
Route deviationPosition sits off the planned route for several points runningOn location updates
SpeedingSpeed exceeds the configured limit for several points runningOn location updates
Unplanned stopStationary away from any stop for longer than the thresholdOn location updates
Signal lossNo position reported for longer than the thresholdOn location updates
Trip overdueThe trip is past when it should have finishedOn the periodic sweep
Stuck at stopNo movement at a stop well past the expected timeOn the periodic sweep
No progressThe trip is active but nothing is advancingOn the periodic sweep
SLA at riskThe buffer to a promised time has nearly run outOn the periodic sweep
The conditions that raise an exception, and when each is evaluated.

Severity

Every exception is classified minor, major or critical at the moment it is raised, from how far past the threshold the condition is rather than from which type it is. The same exception type therefore appears at all three severities across a week.

  • Time-based exceptions escalate at half an hour and again at an hour of delay.
  • Duration overruns escalate at twice and three times the expected time.
  • Speeding escalates at twenty per cent over the limit, and again past fifty.
  • An SLA risk goes critical as the remaining buffer approaches zero.

Severity is set once and does not drift upward as a situation worsens, so a minor exception raised an hour ago may well describe something that is now serious. Read the detection time alongside the badge.

Working the list

Exceptions have two operator actions: acknowledge, which says someone has seen it, and resolve, which closes it with an explanation.

  1. 1

    Open the exception list

    Trips → Exceptions

    The same exceptions also appear on the trip they belong to, and on the destination involved, so you can start from whichever object you were already looking at.

  2. 2

    Filter to Open

    Open covers active and acknowledged — everything still needing attention. Critical and Today are the other two quick views. The severity strip above the table doubles as a one-click filter.

  3. 3

    Expand a row before you judge it

    Most exceptions carry detail: how many minutes late, how far off route, the scheduled time against the actual one. That detail is what separates a genuine problem from a threshold that needs adjusting.

  4. 4

    Acknowledge what you are taking on

    Acknowledging is available on active exceptions and does not close them. Use it when you have picked something up but the situation is still running, so a colleague does not call the same driver.

  5. 5

    Resolve with a real sentence

    Resolving demands a resolution note. "Customer rescheduled, driver moved to the next stop" is worth writing; "ok" is not, because in three weeks this note is the only record of what actually happened.

Judgement calls

Situations that come up weekly

The same trip has raised six exceptions and they all describe one problem
Cause

One underlying delay trips several detectors in sequence.

This is expected — a late start becomes an ETA variance, then a late arrival, then an SLA risk. Resolve them together with the same note naming the root cause. Repeated identical exceptions are suppressed within the deduplication window, so six distinct rows usually mean six distinct detections rather than one repeated one.

A signal loss exception on a driver who is clearly fine
Cause

The phone stopped reporting: no data, backgrounded app, or a dead battery.

Confirm on the live map, then resolve. If it happens on the same handset repeatedly the fix is on the device — background location and battery optimisation — not in the threshold.

Arrival outside geofence keeps firing at one address
Cause

The destination’s geofence is drawn too tightly, or centred on the wrong point.

Widen or recentre the geofence on the destination itself. Loading bays and service entrances are often a hundred metres from the pin the address geocoded to.

We are drowning in minor exceptions
Cause

Thresholds are tuned tighter than the operation actually runs.

Look at what dominates the list, then move that one threshold to just past normal for your fleet. An exception list is only useful if an empty one is achievable on a good day.

Can an exception be deleted rather than resolved?
Cause

Closing an exception is a resolution, not a removal.

There is no delete in the interface, deliberately: the history of what went wrong is worth keeping even when the answer is "threshold was wrong". Resolve it and say so in the note.

Terminology

Your organisation can rename these. If your screens say something else, this is what they mean here.

Trip
One journey with an ordered list of stops. Exceptions belong to a trip, and close with it.Rename it in Customization → Terminology
Stop
One ordered visit within a trip. Many exception types name the stop they were raised at.Rename it in Customization → Terminology
Destination
A place goods are delivered to. Its geofence is what arrival-outside-geofence is measured against.Rename it in Customization → Terminology