# Knowledge base — real esure content only

This directory holds only content that is genuinely sourced from esure's own documents, per
their own `_note` / `source` fields in the original `guidance-pack.json` this was ported from.
Synthetic/placeholder content from the original demo build (tied to the invented `KMS-4471`
article) was deliberately left out rather than carried forward mislabeled as real.

## Files

- `vulnerable-customer-process-source.txt` — the full verbatim "Vulnerable Customer Process"
  document, supplied by Cindy Jacobs (esure SME) via PDF comment, article id
  `VULNERABLE-CUSTOMER-PROCESS`.
- `esure-procedures.json` — two procedures, both explicitly rebuilt from esure's real source
  documents on 2026-08-31 (see each entry's own `_note`/`source` fields):
  - `CMP-DD-REJECT-001` — missed Direct Debit billing complaint, from "Billing SOP.docx" /
    "esure ai agent skills and rules.docx".
  - `PROC-VULNERABILITY-FLOW` — vulnerable customer handling, from "esure Vulnerability
    SOP.docx".
  Neither has been through esure SME sign-off yet (`review.signed_off_at` is null on both) —
  that's still an open item, not resolved by this rewrite.

## Known gap — do not silently patch

`CMP-DD-REJECT-001`'s own `branches` reference `RULE-DD-001`, `RULE-DD-003`,
`PROC-EXPLAIN-CANCELLATION`, `PROC-REPRESENT-DD`, and `PROC-MANUAL-PAYMENT` for two of its
three missed-DD-count branches (`missed_dd_count < 3`, and `missed_dd_count >= 3 AND
incorrect_info_given == false`). Those five items were the synthetic/placeholder content and
were deliberately excluded here, so those two branches have **no real source content behind
them** in this knowledge base.

The agent must not improvise content to fill that gap. When a scenario would route to one of
those missing branches, the correct behavior is the same as the procedure's own
`no_matching_branch: "ESCALATE_TL"` default — hold the customer and escalate, rather than
inventing a plausible-sounding rule. Only the one fully-real branch path (3+ missed Direct
Debits, confirmed incorrect prior advice, with or without a vulnerability disclosure) is
actually covered end-to-end.

## S7 — added for demo parity, not from an esure source document

`CMP-DD-REJECT-001`'s real source (v4, from Billing SOP.docx / esure ai agent skills and
rules.docx) ends at S6 (log the complaint, give the reference number). On 2026-10-17, an S7
step ("post the case note into customer account notes and close as resolved") was added at
the user's explicit request, so the live agent's turn-by-turn flow matches the separate
case-note-posting turn the original hardcoded demo script had. S7 is marked `_added_note` in
`esure-procedures.json` for exactly this reason — it is demo-authored content to match a
script, not esure SME-sourced guidance, and should not be mistaken for the latter in any real
pilot.

## Also still open from the original source material

The `CMP-DD-REJECT-001` procedure's own `_note` flags an unresolved conflict across esure's own
documents on the missed-DD threshold: the Billing SOP says "more than 2" (used here as `>= 3`),
the skills doc's worked example says 5, and the original POV mockup said 2. This procedure uses
the Billing SOP's number because it's the formal SOP, but esure needs to confirm this before any
real pilot — it is not assumed resolved by this rewrite.
