Skip to content

Risk Assessments ​

Safety checks engineers complete before starting work at a property. Risk assessments are mandatory on-site safety assessments aligned with HSE (Health & Safety Executive) guidelines.

Assessment Questions ​

Engineers answer questions across 18 hazard categories. Each question follows a flow:

  1. Is the hazard present? - Yes/No
  2. Is it controlled? - If present
  3. Is it safe to continue? - If not controlled
  4. Can the task be made safe? - If not safe to continue

Hazard Categories ​

CategoryDescription
Manual HandlingHeavy lifting or physical handling hazards
Hazardous SubstancesIncluding asbestos and other dangerous materials
Slips, Trips, FallsFloor hazards, obstacles, wet surfaces
Hot WorksFlames, high temperatures, welding
Hand/Sharp ToolsTools and equipment risks
Working at HeightElevated work, ladders, scaffolding
Electrical Safe IsolationElectrical safety process verification
GasGas system risks and leaks
WasteDebris management and disposal
Other ContractorsOther workers present on site
Confined SpacesEnclosed or restricted work areas
VibrationVibrating equipment hazards
Vulnerable PersonsElderly, children, or vulnerable individuals present
AnimalsPets or animals at the property
Access RestrictionsSite access control and limitations
Sufficient Phone SignalMobile signal availability for emergencies
Safe Emergency AccessEmergency service access to property
Earth TestVisual earth/service inspection

Special Questions ​

Some questions have specific completion requirements:

  • Electrical Safe Isolation: Requires confirming the safe isolation process was followed
  • Safe Emergency Access: Must be confirmed as safe (triggers callback if blocked)
  • Earth Test: Must pass (triggers callback if failed)

When Required ​

Risk assessments are required:

  • Before starting any work on an installation job
  • Each day of a multi-day job - a new assessment must be completed daily
  • Before accessing the job checklist - the risk assessment action card must be completed first

The system tracks completion status per day using the riskAssessmentUploaded object:

day1: boolean
day2: boolean
day3: boolean
day4: boolean
day5: boolean

Completing an Assessment ​

Day 1 Flow ​

  1. Navigate to job details and tap the "Risk Assessment" action card
  2. Full-screen carousel displays questions sequentially
  3. Answer each hazard question with Yes/No responses
  4. Follow-up sub-questions appear based on answers
  5. Final confirmation screen requires engineer signature
  6. Assessment is submitted to the backend

Day 2+ Flow (Multi-Day Jobs) ​

Multi-day jobs have a streamlined process for subsequent days:

  1. "Are you on-site?" - First question asks if engineer is on-site

    • If "No": Assessment completes (work finished early)
    • If "Yes": Continues to next question
  2. "Has anything about the work environment changed since yesterday?"

    • If "No": Previous day's answers are auto-populated, skips directly to confirmation
    • If "Yes": Engineer must re-answer all 18 hazard questions

This optimization saves time when conditions haven't changed while ensuring safety when they have.

Environment Changed Logic ​

The "environment changed" question appears on Day 2+ if the previous assessment:

  • Was answered as "not on-site", OR
  • Had any hazards present, OR
  • Had any incomplete questions

Saving Process ​

Risk assessments use an upsert pattern - a single function handles both creating new assessments and updating existing ones. The system tracks whether an assessment already exists via assessmentId state:

  • No assessment ID: Creates a new assessment (POST)
  • Has assessment ID: Updates the existing assessment (PUT)

Draft Save ​

Saves progress without marking the assessment complete (completed: false). Triggered in two scenarios:

  1. Navigating away - When the engineer leaves the risk assessment screen, progress is automatically saved
  2. Before Intercom callback - When requesting support, progress is saved before opening the chat

Draft saves are skipped if:

  • No answers have been provided yet
  • A save is already in progress
  • The completion flow is active

Complete ​

Marks the assessment as finished (completed: true). Triggered when the engineer confirms on the final screen.

The completion flow:

  1. Sets a completion flag to block any concurrent draft saves
  2. Submits the assessment with completed: true
  3. Navigates back to job details on success
  4. Clears the completion flag on error so the engineer can retry

Session Stability ​

On mount, the context captures:

  • Day number: Calculated from how many assessments have been submitted
  • Date: The job date for that day

These values are frozen for the session. This prevents race conditions where RTK Query optimistic updates could change the day number mid-submission.

Triggering Intercom (Callback Required) ​

Certain answers trigger a callback modal requiring engineer support contact. This ensures dangerous situations are escalated before work proceeds.

Callback Triggers ​

The callback modal appears when an engineer answers:

ConditionMeaning
isTheTaskMadeSafe === falseCannot make the task safe after identifying a hazard
safeEmergencyAccess === falseEmergency services cannot access the property
earthTest === falseEarth test failed
processFollowed === falseElectrical safe isolation process was not followed

Callback Flow ​

  1. Engineer answers with a callback-triggering response
  2. Modal displays: "Do not proceed - Chat with engineer support"
  3. Engineer taps "Start live chat"
  4. Intercom opens with pre-populated context:
    • Job type and reference ID
    • Job date
    • Hazard category title
    • Specific responses (controlled status, safe to continue, comments)
  5. Engineer discusses with support before proceeding

Intercom Contact Intentions ​

IntentionWhen Used
RISK_ASSESSMENT_EMERGENCY_ACCESSEmergency services cannot access the property
RISK_ASSESSMENT_GENERALAll other hazard-related callbacks