event_type: created

actor: ComplianceOfficer

summary: Pack created for May 2026

owner: ComplianceOfficer


summary: Loaded 4 sample evidence file(s)


event_type: submitted

summary: Pack submitted for approval (May 2026)

from_status: Draft

to_status: In Review

submitted_by: ComplianceOfficer


summary: Completeness check: 4 OK · 0 partial · 0 missing

label: Breach Register

description: Monthly extract listing all breaches recorded in the reporting period.

severity: critical

status: OK

label: Complaints MI

description: Monthly complaints management information including status, outcomes, and redress.

label: Call Monitoring Summary

description: Monthly call monitoring summary from each client-facing team.

severity: important

label: Policy Attestation(s)

description: Sample of policy attestations confirming staff have read and understood key policies.


summary: KRIs computed: 40 breaches · 55 complaints · £6,679.47 redress


summary: AI narrative drafted (538 tokens, 8007ms)

executive_summary: In May 2026, we recorded a total of 40 breaches, with 29 remaining open, including 5 critical or high-severity items. Breach categories were led by Operational (10), Conduct (8), and Client Money (CASS) (7). Compliance had 5 open breaches, with an average time to report of 17.1 days. We received 55 complaints, with Trust being the top product affected. Total redress paid was £6,679.47, and the average time to close a complaint was 33.6 days. Two complaints breached service level agreements.

breach_highlights: During the reporting period, there were 40 total breaches, with 19 low, 14 medium, 6 high, and 1 critical severity. The status distribution was 19 open, 10 in review, 6 closed, and 5 remediated. Breaches were categorized as Operational (10), Conduct (8), Client Money (CASS) (7), Trading (6), Data Protection (5), and Cyber/Security (4). The business units with the highest breach counts were Risk (11) and IT (10). There were 29 open breaches, with 23 overdue. Two breaches required regulatory notification. There were 5 critical or high-severity open breaches.

complaints_trends: We received a total of 55 complaints, with 32 closed and 23 open. The top product for complaints was Trust (13), followed by ISA (9), Discretionary Portfolio (9), GIA (9), Advisory (8), and SIPP (7). The channel mix was Phone (16), Email (13), Letter (10), Web (9), and In-person (7). The outcome distribution was Pending (23), Partially upheld (11), Resolved informally (8), Not upheld (7), and Upheld (6). Total redress paid was £6,679.47, with 17 upheld or partially upheld complaints. The average days to close a complaint was 33.6, and there were 2 service level agreement breaches.

exception_flags: 29 open breaches, including 23 overdue and 5 critical or high-severity open items.

exception_flags: 2 service level agreement breaches for complaints.

provider: kimi

system_prompt:
You are an AI drafting assistant for a UK FCA-regulated wealth management firm's monthly Compliance MI Pack. You produce factual narrative paragraphs grounded EXCLUSIVELY in the structured metrics JSON provided by a deterministic rules layer.

RULES — non-negotiable:
1. Use ONLY the numbers, categories, and breakdowns in the metrics JSON. Do not invent figures, names, dates, trends, or examples.
2. Severity ratings are rule-based — describe them, never reassign or recategorise them.
3. No promissory language ("will improve", "guaranteed"), no advice language ("we recommend you should..."), no commitments to action by the firm.
4. Plain UK English. Reference quantities exactly (e.g. "14 medium-severity breaches", not "several breaches").
5. Where a category has zero or no data, state the absence factually.
6. End each narrative paragraph with a brief citation in parentheses, e.g. "(Source: Breach Register, 40 rows analysed; Complaints MI, 55 rows analysed.)"
7. Output VALID JSON only. No markdown code fences. No preamble or closing remarks.

JSON SCHEMA — exact keys, no extras:
{
  "executive_summary": "string — 80-130 words; high-level for the Compliance Committee; cover scale of breaches, complaints, redress, and any items requiring attention",
  "breach_highlights": "string — 100-180 words; describe the breach population by severity / status / category and call out any open-overdue or critical-or-high-open items",
  "complaints_trends": "string — 100-180 words; cover total complaints, top product, channel mix, outcome distribution, redress total, SLA performance",
  "exception_flags": ["string", ...]   // 0-5 short single-line items; only flag what the metrics support
}

user_prompt:
Reporting period: May 2026
Metrics computed at: 2026-05-05T20:19:06.368513+00:00

Metrics JSON (deterministic output of the rules layer):
{
  "reporting_month": "May 2026",
  "computed_at": "2026-05-05T20:19:06.368513+00:00",
  "breach": {
    "total": 40,
    "by_severity": {
      "Low": 19,
      "Medium": 14,
      "High": 6,
      "Critical": 1
    },
    "by_status": {
      "Open": 19,
      "In Review": 10,
      "Closed": 6,
      "Remediated": 5
    },
    "by_category": {
      "Operational": 10,
      "Conduct": 8,
      "Client Money (CASS)": 7,
      "Trading": 6,
      "Data Protection": 5,
      "Cyber/Security": 4
    },
    "by_business_unit": {
      "Risk": 11,
      "IT": 10,
      "Wealth Planning": 7,
      "Compliance": 5,
      "Operations": 4,
      "Client Services": 3
    },
    "open_count": 29,
    "open_overdue": 23,
    "avg_time_to_report_days": 17.1,
    "requires_regulatory_notification": 2,
    "critical_or_high_open": 5,
    "period_start": "2025-12-14",
    "period_end": "2026-04-14",
    "file_used": "Breach_Register.xlsx"
  },
  "complaint": {
    "total": 55,
    "by_status": {
      "Closed": 32,
      "Open": 23
    },
    "by_product": {
      "Trust": 13,
      "ISA": 9,
      "Discretionary Portfolio": 9,
      "GIA": 9,
      "Advisory": 8,
      "SIPP": 7
    },
    "by_channel": {
      "Phone": 16,
      "Email": 13,
      "Letter": 10,
      "Web": 9,
      "In-person": 7
    },
    "by_outcome": {
      "Pending": 23,
      "Partially upheld": 11,
      "Resolved informally": 8,
      "Not upheld": 7,
      "Upheld": 6
    },
    "total_redress_gbp": 6679.47,
    "upheld_or_partial": 17,
    "avg_days_to_close": 33.6,
    "sla_breaches": 2,
    "period_start": "2026-01-05",
    "period_end": "2026-04-18",
    "file_used": "Complaints_MI.xlsx"
  },
  "linkage": {
    "breaches_with_linked_complaint": 11,
    "complaints_with_linked_breach": 17
  },
  "warnings": []
}

Draft the narrative per the schema. Reply with valid JSON only.


summary: Draft pack generated: Compliance_Pack_May_2026_v1.0_20260505-201940.docx

sections:
Cover
Executive Summary
Breach Snapshot
Complaints Snapshot
Exception Flags

executive_summary: In May 2026, the firm recorded a total of 40 breaches, with 19 classified as low severity, 14 as medium, 6 as high, and 1 as critical. Breach status shows 29 open, of which 23 are overdue. There were 5 critical or high-severity open breaches. The average time to report breaches was 17.1 days, and 2 breaches required regulatory notification. The complaints MI recorded 55 complaints, with Trust being the top product with 13 complaints. The channel mix was dominated by phone and email, with 16 and 13 complaints respectively. The outcome distribution showed 23 pending, 11 partially upheld, and 6 fully upheld. Total redress paid was £6,679.47, with an average closure time of 33.6 days. There were 2 SLA breaches.

breach_highlights: The breach population in May 2026 consisted of 40 breaches, with 19 low-severity, 14 medium-severity, 6 high-severity, and 1 critical-severity breach. The status of breaches shows 19 open, 10 in review, 6 closed, and 5 remediated. The open count stands at 29, with 23 overdue. The critical or high-open breaches total 5. Breaches are categorized as Operational (10), Conduct (8), Client Money (CASS) (7), Trading (6), Data Protection (5), and Cyber/Security (4). Business units with the highest breach counts include Risk (11), IT (10), Wealth Planning (7), Compliance (5), Operations (4), and Client Services (3).

complaints_trends: In May 2026, the firm received a total of 55 complaints, with 32 closed and 23 open. The top product for complaints was Trust with 13, followed by ISA and Discretionary Portfolio with 9 each. The channel mix was dominated by phone (16) and email (13). The outcome distribution was 23 pending, 11 partially upheld, 8 resolved informally, 7 not upheld, and 6 fully upheld. Total redress paid was £6,679.47, with an average of 33.6 days to close complaints. There were 2 SLA breaches during the period.

exception_flags: 5 critical or high-severity breaches are open.

exception_flags: 2 SLA breaches occurred in complaints handling.

user_prompt:
Reporting period: May 2026
Metrics computed at: 2026-05-05T20:19:32.751339+00:00

Metrics JSON (deterministic output of the rules layer):
{
  "reporting_month": "May 2026",
  "computed_at": "2026-05-05T20:19:32.751339+00:00",
  "breach": {
    "total": 40,
    "by_severity": {
      "Low": 19,
      "Medium": 14,
      "High": 6,
      "Critical": 1
    },
    "by_status": {
      "Open": 19,
      "In Review": 10,
      "Closed": 6,
      "Remediated": 5
    },
    "by_category": {
      "Operational": 10,
      "Conduct": 8,
      "Client Money (CASS)": 7,
      "Trading": 6,
      "Data Protection": 5,
      "Cyber/Security": 4
    },
    "by_business_unit": {
      "Risk": 11,
      "IT": 10,
      "Wealth Planning": 7,
      "Compliance": 5,
      "Operations": 4,
      "Client Services": 3
    },
    "open_count": 29,
    "open_overdue": 23,
    "avg_time_to_report_days": 17.1,
    "requires_regulatory_notification": 2,
    "critical_or_high_open": 5,
    "period_start": "2025-12-14",
    "period_end": "2026-04-14",
    "file_used": "Breach_Register.xlsx"
  },
  "complaint": {
    "total": 55,
    "by_status": {
      "Closed": 32,
      "Open": 23
    },
    "by_product": {
      "Trust": 13,
      "ISA": 9,
      "Discretionary Portfolio": 9,
      "GIA": 9,
      "Advisory": 8,
      "SIPP": 7
    },
    "by_channel": {
      "Phone": 16,
      "Email": 13,
      "Letter": 10,
      "Web": 9,
      "In-person": 7
    },
    "by_outcome": {
      "Pending": 23,
      "Partially upheld": 11,
      "Resolved informally": 8,
      "Not upheld": 7,
      "Upheld": 6
    },
    "total_redress_gbp": 6679.47,
    "upheld_or_partial": 17,
    "avg_days_to_close": 33.6,
    "sla_breaches": 2,
    "period_start": "2026-01-05",
    "period_end": "2026-04-18",
    "file_used": "Complaints_MI.xlsx"
  },
  "linkage": {
    "breaches_with_linked_complaint": 11,
    "complaints_with_linked_breach": 17
  },
  "warnings": []
}

Draft the narrative per the schema. Reply with valid JSON only.


event_type: approved

actor: ComplianceManager

summary: Pack APPROVED — locked PDF snapshot v1.0 created

from_status: In Review

to_status: Approved

approver: ComplianceManager

approval_comment: Approved