Triage is the only place in this system where a model does anything, and its job is narrow: get a serious report in front of somebody in minutes rather than hours. It does not decide anything, and the design goes to some trouble to make sure it cannot.
Key takeaways
Severity is proposed to route the report, and confirmed by a person afterwards.
Routing speed is set by the proposal: minutes for high, the same hour for medium.
An injury or anything involving a vehicle skips triage and routes immediately.
The proposal errs upward. Over-routing costs somebody a minute; under-routing costs more.
The confirmed severity is what everything downstream counts, never the proposal.
Propose, then route, then confirm
Fig 1. How a report is triaged. The keyword check in front is deliberate belt-and-braces: the highest-consequence reports do not depend on a model call succeeding.
App integration
Machine learning
Management
Analytics
Front-end & mobile
People
Why keywords in front of the model
A report containing “cut his hand” or “the van hit” must route immediately, and it must route even if Bedrock is having a bad afternoon. So a small keyword list runs first — injury words, vehicle words, words like ambulance and hospital — and any hit routes at the highest urgency without waiting for anything.
It will over-trigger occasionally. “Nearly cut my hand” is a near miss and will be routed as though somebody were injured, which costs a manager thirty seconds. That is a good trade and it is the trade to make consistently: the cost of over-routing is a minute of somebody’s attention and the cost of under-routing is not.
What the proposal is for
Not to classify the incident — a person does that. Its only purpose is to decide how fast the report needs to reach somebody, which is a question that has to be answered before a person can look at it, or there is no point answering it at all.
Proposed
Routes
To whom
High
Immediately, phone and email
Site manager and the safety lead
Medium
Within the hour, email
Site manager
Low
In the daily digest
Site manager
Unclear
Within the hour, as medium
Site manager, flagged as unclear
Unclear routes as medium rather than low, which is the same erring-upward principle. A report the model could not place is more likely to be unusual than trivial, and unusual is worth an hour of somebody’s attention.
The confirmation
Whoever the report routed to sets the real severity, and it is one tap on the routing message. That confirmed value is what every count, report and trend in the system uses. The proposal is kept alongside it, and the difference between the two is quietly one of the more useful things the system records.
Fig 2. What the gap between proposal and confirmation tells you. The asymmetry is the point: over-routing is noise and under-routing is a miss.
App integration
Machine learning
Management
Analytics
Two under-routes in a period is a prompt to look at what they described and add that wording to the severity guide, which is a sheet rather than a prompt in code. The guide is written in your own terms — “anything involving working at height is at least medium” — and it grounds the proposal, so improving it is a five-minute edit by somebody who knows the business rather than a prompt-engineering exercise.
Next: the actions, which are where an incident log stops being paperwork.