{
  "scope": "A real run of local draft rules against fictional notes, including the transcript of a synthetic voice fixture produced by local Whisper. The draft rules do not call a language model.",
  "command": "node --experimental-strip-types examples/brindlefen-demo/scripts/verify.mjs",
  "checks": [
    {
      "id": "safety",
      "label": "No safety result added",
      "note": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump. I did not record a safety result.",
      "original": {
        "pass": false,
        "output": {
          "work": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump. I did not record a safety result.",
          "parts": [],
          "safety": "Safety checks complete.",
          "followUp": "",
          "homeowner": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump. I did not record a safety result.",
          "needsClarification": false
        }
      },
      "improved": {
        "pass": true,
        "output": {
          "work": "Serviced the boiler. Cleaned the filter. No parts fitted.",
          "parts": [],
          "safety": "No safety result recorded.",
          "followUp": "Please arrange a return visit for the noisy pump.",
          "homeowner": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump.",
          "needsClarification": false
        }
      }
    },
    {
      "id": "negation",
      "label": "A negative stays negative",
      "note": "Replaced the radiator valve in the sitting room. Used a radiator valve from the parts list. I didn't pressure-test. Please arrange a pressure test on the return visit.",
      "original": {
        "pass": false,
        "output": {
          "work": "Replaced the radiator valve in the sitting room. Used a radiator valve from the parts list. I didn't pressure-test. Please arrange a pressure test on the return visit.",
          "parts": [
            "radiator valve"
          ],
          "safety": "Pressure tested.",
          "followUp": "",
          "homeowner": "Replaced the radiator valve in the sitting room. Used a radiator valve from the parts list. I didn't pressure-test. Please arrange a pressure test on the return visit.",
          "needsClarification": false
        }
      },
      "improved": {
        "pass": true,
        "output": {
          "work": "Replaced the radiator valve in the sitting room. Used a radiator valve from the parts list.",
          "parts": [
            "radiator valve"
          ],
          "safety": "Pressure test not carried out.",
          "followUp": "Please arrange a pressure test on the return visit.",
          "homeowner": "Replaced the radiator valve in the sitting room. Used a radiator valve from the parts list. Please arrange a pressure test on the return visit.",
          "needsClarification": false
        }
      }
    },
    {
      "id": "parts",
      "label": "Parts match the parts list",
      "note": "Replaced the radiator valve in the sitting room. Used a radiator valve from the parts list. I didn't pressure-test. Please arrange a pressure test on the return visit.",
      "original": {
        "pass": true,
        "output": {
          "work": "Replaced the radiator valve in the sitting room. Used a radiator valve from the parts list. I didn't pressure-test. Please arrange a pressure test on the return visit.",
          "parts": [
            "radiator valve"
          ],
          "safety": "Pressure tested.",
          "followUp": "",
          "homeowner": "Replaced the radiator valve in the sitting room. Used a radiator valve from the parts list. I didn't pressure-test. Please arrange a pressure test on the return visit.",
          "needsClarification": false
        }
      },
      "improved": {
        "pass": true,
        "output": {
          "work": "Replaced the radiator valve in the sitting room. Used a radiator valve from the parts list.",
          "parts": [
            "radiator valve"
          ],
          "safety": "Pressure test not carried out.",
          "followUp": "Please arrange a pressure test on the return visit.",
          "homeowner": "Replaced the radiator valve in the sitting room. Used a radiator valve from the parts list. Please arrange a pressure test on the return visit.",
          "needsClarification": false
        }
      }
    },
    {
      "id": "followup",
      "label": "The return visit stays in the report",
      "note": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump. I did not record a safety result.",
      "original": {
        "pass": false,
        "output": {
          "work": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump. I did not record a safety result.",
          "parts": [],
          "safety": "Safety checks complete.",
          "followUp": "",
          "homeowner": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump. I did not record a safety result.",
          "needsClarification": false
        }
      },
      "improved": {
        "pass": true,
        "output": {
          "work": "Serviced the boiler. Cleaned the filter. No parts fitted.",
          "parts": [],
          "safety": "No safety result recorded.",
          "followUp": "Please arrange a return visit for the noisy pump.",
          "homeowner": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump.",
          "needsClarification": false
        }
      }
    },
    {
      "id": "plain",
      "label": "The homeowner gets the recorded work",
      "note": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump. I did not record a safety result.",
      "original": {
        "pass": true,
        "output": {
          "work": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump. I did not record a safety result.",
          "parts": [],
          "safety": "Safety checks complete.",
          "followUp": "",
          "homeowner": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump. I did not record a safety result.",
          "needsClarification": false
        }
      },
      "improved": {
        "pass": true,
        "output": {
          "work": "Serviced the boiler. Cleaned the filter. No parts fitted.",
          "parts": [],
          "safety": "No safety result recorded.",
          "followUp": "Please arrange a return visit for the noisy pump.",
          "homeowner": "Serviced the boiler. Cleaned the filter. No parts fitted. Please arrange a return visit for the noisy pump.",
          "needsClarification": false
        }
      }
    },
    {
      "id": "unclear",
      "label": "Unclear text asks for clarification",
      "note": "Boiler cupboard recording: [unclear] changed the [unclear] and checked [unclear].",
      "original": {
        "pass": false,
        "output": {
          "work": "Boiler cupboard recording: [unclear] changed the [unclear] and checked [unclear].",
          "parts": [],
          "safety": "Safety checks complete.",
          "followUp": "",
          "homeowner": "Boiler cupboard recording: [unclear] changed the [unclear] and checked [unclear].",
          "needsClarification": false
        }
      },
      "improved": {
        "pass": true,
        "output": {
          "work": "",
          "parts": [],
          "safety": "No safety result recorded.",
          "followUp": "Please record a clearer note or edit the transcript.",
          "homeowner": "",
          "needsClarification": true
        }
      }
    },
    {
      "id": "negative-part",
      "label": "A part not fitted stays out",
      "note": "I never replaced the radiator valve. I had not fitted a valve washer.",
      "original": {
        "pass": false,
        "output": {
          "work": "I never replaced the radiator valve. I had not fitted a valve washer.",
          "parts": [
            "radiator valve"
          ],
          "safety": "Safety checks complete.",
          "followUp": "",
          "homeowner": "I never replaced the radiator valve. I had not fitted a valve washer.",
          "needsClarification": false
        }
      },
      "improved": {
        "pass": true,
        "output": {
          "work": "I never replaced the radiator valve. I had not fitted a valve washer.",
          "parts": [],
          "safety": "No safety result recorded.",
          "followUp": "",
          "homeowner": "I never replaced the radiator valve. I had not fitted a valve washer.",
          "needsClarification": false
        }
      }
    },
    {
      "id": "recorded-test",
      "label": "A stated test note is kept verbatim",
      "note": "Pressure tested.",
      "original": {
        "pass": false,
        "output": {
          "work": "Pressure tested.",
          "parts": [],
          "safety": "Pressure tested.",
          "followUp": "",
          "homeowner": "Pressure tested.",
          "needsClarification": false
        }
      },
      "improved": {
        "pass": true,
        "output": {
          "work": "Review the original note before completing this report.",
          "parts": [],
          "safety": "Recorded test note: Pressure tested. No additional safety result inferred.",
          "followUp": "",
          "homeowner": "",
          "needsClarification": false
        }
      }
    },
    {
      "id": "unsupported",
      "label": "An unsupported note asks for clarification",
      "note": "This is an unrelated request.",
      "original": {
        "pass": false,
        "output": {
          "work": "This is an unrelated request.",
          "parts": [],
          "safety": "Safety checks complete.",
          "followUp": "",
          "homeowner": "This is an unrelated request.",
          "needsClarification": false
        }
      },
      "improved": {
        "pass": true,
        "output": {
          "work": "",
          "parts": [],
          "safety": "No safety result recorded.",
          "followUp": "Please record a clearer note or edit the transcript.",
          "homeowner": "",
          "needsClarification": true
        }
      }
    },
    {
      "id": "voice",
      "label": "The recorded voice keeps its negative statement",
      "note": "Replace the radiator valve in the sitting room, used a radiator valve from the parts list. I did not pressure test. Please arrange a pressure test on the return visit.",
      "original": {
        "pass": false,
        "output": {
          "work": "Replace the radiator valve in the sitting room, used a radiator valve from the parts list. I did not pressure test. Please arrange a pressure test on the return visit.",
          "parts": [
            "radiator valve"
          ],
          "safety": "Pressure tested.",
          "followUp": "",
          "homeowner": "Replace the radiator valve in the sitting room, used a radiator valve from the parts list. I did not pressure test. Please arrange a pressure test on the return visit.",
          "needsClarification": false
        }
      },
      "improved": {
        "pass": true,
        "output": {
          "work": "Replace the radiator valve in the sitting room, used a radiator valve from the parts list.",
          "parts": [
            "radiator valve"
          ],
          "safety": "Pressure test not carried out.",
          "followUp": "Please arrange a pressure test on the return visit.",
          "homeowner": "Replace the radiator valve in the sitting room, used a radiator valve from the parts list. Please arrange a pressure test on the return visit.",
          "needsClarification": false
        }
      }
    }
  ],
  "next": {
    "label": "Recognise unclear audio",
    "state": "next",
    "detail": "The noisy cupboard recording has not been tested. The clear synthetic voice run also needs a tense correction during review."
  }
}
