Inferensys

Prompt

Data Breach Notification Decision Prompt

A practical prompt playbook for using the Data Breach Notification Decision Prompt in production AI workflows to evaluate security incidents against regulatory notification thresholds.
Data scientist building training data pipeline on laptop, data preprocessing visible, technical workspace.
PROMPT PLAYBOOK

When to Use This Prompt

A triage gate for security operations teams to assess whether an incident meets the legal threshold for mandatory breach notification before human legal review.

This prompt is designed for security operations and compliance engineering teams who need a consistent, fast, and structured first-pass assessment of whether a security incident triggers mandatory breach notification obligations. The primary job-to-be-done is reducing the time between incident detection and a legally-informed decision while ensuring no notification deadline is missed. The ideal user is an incident responder or compliance analyst who has a structured incident summary and a curated set of jurisdictional regulations, and who needs a standardized output that a qualified attorney can review efficiently. This prompt is not a replacement for legal counsel; it is a force-multiplier that ensures the human reviewer receives a pre-analyzed package with risk-of-harm analysis, affected data categories, and jurisdiction-specific deadlines already extracted.

Use this prompt when you have a confirmed security incident involving personal data and you need to determine notification obligations across one or more jurisdictions. The prompt requires two structured inputs: a detailed incident summary including data categories, affected individuals, and known harm indicators, and a set of relevant regulatory texts with their notification thresholds and deadlines. Do not use this prompt for incidents still under active investigation with incomplete facts, for non-personal data breaches, or for jurisdictions where the applicable law has not been provided as input context. The prompt is also unsuitable for making final filing decisions—every output must be reviewed and signed off by a qualified human before any regulatory submission.

The output is a structured notification assessment that includes a per-jurisdiction determination, a risk-of-harm analysis, affected data categories mapped to regulatory definitions, and a deadline calendar. To wire this into an incident response pipeline, you should validate the output schema before presenting it to a reviewer, log every assessment with the input context and model version, and implement a hard block that prevents any automated filing. The most common failure mode is the model hallucinating a regulation or deadline that was not in the provided context; always cross-reference the output against the source regulatory text you supplied. The next step after using this prompt is to route the assessment to a designated human reviewer through a queue that tracks jurisdiction-specific deadlines and escalates approaching due dates.

PRACTICAL GUARDRAILS

Use Case Fit

Where the Data Breach Notification Decision Prompt works, where it fails, and the operational preconditions required before deployment.

01

Good Fit: Structured Incident Triage

Use when: security incidents arrive with known data categories, affected jurisdictions, and a clear timeline. The prompt excels at mapping these facts to regulatory thresholds (GDPR, CCPA, HIPAA) and producing a structured notification assessment. Guardrail: always provide the specific regulatory text or policy excerpt as grounding context; do not rely on the model's parametric knowledge of laws.

02

Bad Fit: Ambiguous or Incomplete Incident Reports

Avoid when: the incident lacks basic facts such as data types involved, number of affected individuals, or the root cause. The model will fill gaps with plausible but incorrect assumptions. Guardrail: implement a pre-check that blocks the prompt from running if required fields are missing, and route incomplete incidents to a human triage queue instead.

03

Required Inputs: Jurisdictional Context

Risk: without explicit jurisdiction and regulation text, the model may hallucinate notification deadlines or thresholds. Guardrail: the prompt must receive the applicable breach notification law text, the residency of affected data subjects, and the data categories involved. Never ask the model to recall legal requirements from training data alone.

04

Required Inputs: Risk-of-Harm Evidence

Risk: the model cannot independently assess real-world harm likelihood without evidence about the nature of the breach and the sensitivity of exposed data. Guardrail: provide a structured incident summary including data sensitivity classification, encryption status, and exposure vector. The prompt should flag 'insufficient evidence' rather than guessing at harm severity.

05

Operational Risk: False Negative on Notification Duty

Risk: the model may incorrectly conclude that notification is not required, exposing the organization to regulatory penalties and reputational damage. Guardrail: implement a mandatory human review step for any assessment that returns 'notification not required.' Log the decision with full reasoning for audit. Run eval tests with known notifiable incidents to measure false-negative rate.

06

Operational Risk: Deadline Miscalculation

Risk: the model may miscalculate regulatory notification deadlines (e.g., 72 hours under GDPR) due to timezone confusion or incorrect date parsing. Guardrail: require the prompt to output deadlines as explicit UTC timestamps with the calculation steps shown. Validate these timestamps programmatically against the incident discovery time before the assessment is finalized.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A production-ready prompt template for evaluating whether a security incident triggers regulatory breach notification obligations.

This prompt template is designed to be pasted directly into your AI orchestration layer, such as a LangChain node, a custom API handler, or a low-code automation tool. It accepts structured incident data and the full text of applicable regulatory clauses as input. The model's job is to produce a deterministic, evidence-grounded assessment of whether notification is legally required, for which jurisdictions, and within what timeframe. The template uses square-bracket placeholders that your application must resolve before sending the request to the model. Never send unresolved placeholders to the model; your harness should validate that all required fields are populated and reject the request if they are not.

text
You are a regulatory compliance analyst evaluating a security incident for breach notification obligations. Your analysis must be grounded solely in the provided incident data and regulatory text. Do not rely on external knowledge of laws, which may be outdated or incomplete.

## INCIDENT DATA
[INCIDENT_DETAILS]

## APPLICABLE REGULATORY TEXT
[REGULATORY_CLAUSES]

## OUTPUT SCHEMA
Respond with a single JSON object conforming to this structure:
{
  "notification_required": boolean,
  "confidence": "HIGH" | "MEDIUM" | "LOW",
  "jurisdictional_assessments": [
    {
      "jurisdiction": string,
      "regulation": string,
      "notification_required": boolean,
      "deadline": string | null,
      "rationale": string,
      "cited_clause": string
    }
  ],
  "risk_of_harm_analysis": {
    "data_categories_affected": string[],
    "risk_level": "HIGH" | "MEDIUM" | "LOW",
    "rationale": string
  },
  "recommended_actions": string[],
  "uncertainty_flags": string[]
}

## CONSTRAINTS
- If the incident data is insufficient to make a determination, set "notification_required" to false, "confidence" to "LOW", and list the missing information in "uncertainty_flags".
- Every "cited_clause" must be a direct quote or a precise section reference from the provided regulatory text. If no clause supports a claim, state "No applicable clause found."
- Do not invent deadlines. If the regulatory text does not specify a deadline, set "deadline" to null.
- If any data category suggests a high risk of harm (e.g., financial account credentials, government IDs, health records), the overall "risk_level" must be "HIGH" unless strong mitigating evidence is present in the incident data.
- Flag any ambiguity in the incident data or regulatory text in "uncertainty_flags".

To adapt this template, replace [INCIDENT_DETAILS] with a structured summary of the security event, including the type of breach, affected data categories, number of records, and any known exfiltration or access details. Replace [REGULATORY_CLAUSES] with the exact text of the relevant statutes or regulations, such as GDPR Articles 33-34, CCPA Section 1798.82, or your internal policy. The output schema is intentionally strict to allow your application to parse the response and route it to a human review queue when confidence is LOW or uncertainty_flags is non-empty. Before deploying, test this prompt against a golden dataset of known incidents with expected notification outcomes to calibrate your eval thresholds.

IMPLEMENTATION TABLE

Prompt Variables

Required inputs for the Data Breach Notification Decision Prompt. Each placeholder must be populated before the prompt is assembled and sent to the model. Missing or malformed inputs will cause unreliable assessments.

PlaceholderPurposeExampleValidation Notes

[INCIDENT_SUMMARY]

Narrative description of the security event, including what happened, when, and how it was discovered.

An unsecured S3 bucket containing customer order records was publicly accessible from 2024-11-03 to 2024-11-07. Discovered during routine cloud posture scan on 2024-11-07 at 14:30 UTC.

Must be non-empty string. Minimum 50 characters. Should include temporal markers and discovery method. Null or placeholder text triggers input validation failure.

[AFFECTED_DATA_CATEGORIES]

List of data types potentially exposed, using jurisdiction-recognized categories.

["personal_identifiers", "financial_account_numbers", "protected_health_information"]

Must be a valid JSON array of strings. Each value must match an enumerated category from the jurisdiction taxonomy. Empty array is allowed but will produce a no-notification recommendation with a caveat.

[AFFECTED_INDIVIDUAL_COUNT]

Estimated number of individuals whose data may have been compromised.

14203

Must be an integer or null. Null is allowed when count is genuinely unknown and triggers a worst-case analysis path. Negative values or non-numeric strings fail schema validation.

[JURISDICTION_LIST]

Array of applicable regulatory jurisdictions to evaluate notification obligations against.

["GDPR", "CCPA", "HIPAA", "NYDFS"]

Must be a non-empty JSON array of strings. Each value must match a known jurisdiction code from the supported taxonomy. Unknown jurisdiction codes trigger a pre-processing warning and are excluded from analysis.

[BREACH_CONTAINMENT_STATUS]

Current state of containment: whether the breach is ongoing, contained, or unknown.

"contained"

Must be one of: "ongoing", "contained", "unknown". "ongoing" triggers an immediate escalation recommendation before notification analysis proceeds. Invalid enum values cause the prompt to abort with a schema error.

[EVIDENCE_LOG]

Structured log of investigation findings, timestamps, and source systems reviewed.

{"access_logs_reviewed": true, "forensic_report_available": false, "root_cause": "misconfigured_iam_policy", "exfiltration_detected": false}

Must be valid JSON object. Keys should match the evidence schema defined in the playbook. Missing keys are treated as null. Boolean fields must be true or false, not strings. Null evidence log triggers a low-confidence flag on the output.

[KNOWN_THREAT_ACTOR_ACTIVITY]

Whether there is evidence of unauthorized access, exfiltration, or malicious activity beyond the exposure itself.

"no_evidence_of_access"

Must be one of: "confirmed_access", "suspected_access", "no_evidence_of_access", "investigation_pending". "investigation_pending" triggers a provisional assessment with a mandatory re-evaluation deadline in the output.

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the Data Breach Notification Decision Prompt into an incident response application with validation, retries, and human review.

The Data Breach Notification Decision Prompt is a high-stakes compliance gate that should never execute in isolation. It must be embedded in an application harness that enforces evidence grounding, validates output structure, and routes borderline assessments to a human reviewer. The prompt itself is a reasoning engine; the harness is what makes it auditable, repeatable, and safe to deploy in a security operations workflow. Without the harness, you risk hallucinated regulatory deadlines, misclassified severity, or a false sense of compliance that creates legal exposure.

Wire the prompt into a structured pipeline with five stages. Stage 1: Context Assembly. Collect the incident report, affected data categories, known jurisdictions, and relevant regulatory excerpts (GDPR Articles 33-34, CCPA 1798.82, state breach laws, contractual notification clauses). Package these into the [INCIDENT_DETAILS], [DATA_CATEGORIES], [JURISDICTIONS], and [REGULATORY_EXCERPTS] placeholders. Do not rely on the model's parametric knowledge of notification deadlines—always supply the current regulatory text as grounding context. Stage 2: Prompt Execution. Call the model with temperature=0 and response_format set to the JSON schema defined in the prompt template. Use a model with strong instruction-following and low hallucination rates on structured legal reasoning tasks. Stage 3: Output Validation. Validate the response against the expected schema. Check that every cited deadline maps to a jurisdiction present in the input, that the notification_required boolean is consistent with the risk_of_harm_level, and that no hallucinated regulation names appear in the regulatory_basis field. Reject and retry any response that fails schema validation or contains citations not present in the provided excerpts. Stage 4: Risk-Based Routing. If risk_of_harm_level is high or notification_required is true, route the assessment to a human reviewer with the full incident context and model reasoning attached. If the model returns needs_human_review: true for any reason, escalate immediately. Only low-risk, no-notification-required assessments with high-confidence reasoning should proceed automatically. Stage 5: Audit Logging. Write the full prompt, response, validation results, routing decision, and reviewer action to an immutable audit log. This log is your evidence of a defensible decision process if a regulator or affected party later questions the notification timeline.

Common harness failures to avoid: (1) Skipping the regulatory excerpt injection and trusting the model to know deadlines—this produces plausible but wrong dates, especially for amended regulations. (2) Treating the model's output as the final decision without human review for high-risk cases—the prompt is a decision support tool, not a delegated authority. (3) Failing to validate that cited jurisdictions match the input—the model may invent multi-jurisdictional obligations where none exist. (4) Not logging the full decision trail—without audit evidence, you cannot demonstrate reasonable diligence. Build the harness to fail closed: if validation fails after two retries, if the model returns malformed JSON, or if the assessment contradicts known facts in the incident report, escalate to a human and log the escalation reason.

IMPLEMENTATION TABLE

Expected Output Contract

Define the exact JSON structure your application expects from the Data Breach Notification Decision Prompt. Use this contract to validate the model's response before it enters any downstream workflow or human review queue.

Field or ElementType or FormatRequiredValidation Rule

notification_decision

enum: ["NOTIFY", "DO_NOT_NOTIFY", "INVESTIGATE_FURTHER"]

Must be exactly one of the three enum values. Reject any other string.

risk_of_harm_analysis

object

Must contain 'severity' (enum: LOW, MEDIUM, HIGH, CRITICAL) and 'rationale' (non-empty string). Reject if rationale is fewer than 20 characters.

affected_data_categories

array of strings

Each string must match a category from the provided [DATA_TAXONOMY]. Reject if any category is not in the taxonomy.

jurisdictional_requirements

array of objects

Each object must have 'jurisdiction' (string), 'regulation' (string), 'deadline' (ISO 8601 date string), and 'threshold_met' (boolean). Reject if deadline is not a valid future date.

recommended_actions

array of strings

Array must contain at least one action. Each string must be a complete sentence ending with a period. Reject empty arrays.

evidence_summary

string

Must be a non-empty string summarizing the incident facts used for the assessment. Reject if it contains only the [INCIDENT_REPORT] verbatim.

escalation_required

boolean

Must be true if notification_decision is INVESTIGATE_FURTHER or risk_of_harm_analysis.severity is CRITICAL. Reject if this constraint is violated.

confidence_score

number

If present, must be a float between 0.0 and 1.0. If below [CONFIDENCE_THRESHOLD], the entire output must be routed to a human review queue regardless of decision.

PRACTICAL GUARDRAILS

Common Failure Modes

When a Data Breach Notification Decision Prompt fails, the cost is regulatory exposure, not just a bad output. These are the most common failure modes observed in production and how to guard against them before they reach a human reviewer.

01

Hallucinated Regulatory Thresholds

What to watch: The model invents notification deadlines, harm thresholds, or jurisdiction-specific rules that sound plausible but do not exist in the provided regulatory text. This is especially common with lesser-known state or international regulations. Guardrail: Require the model to cite the exact regulatory reference and quoted text for every threshold it applies. Run an eval that flags any assertion not grounded in the provided source documents.

02

Over-Notification Due to Risk Aversion

What to watch: The model defaults to recommending notification for every incident, even low-severity ones with no risk of harm. This creates alert fatigue for compliance teams and erodes trust in the system. Guardrail: Include explicit counterexamples in the prompt showing incidents that do NOT meet the notification threshold. Add a required field for 'risk-of-harm likelihood' and block automatic escalation when likelihood is rated negligible with evidence.

03

Under-Notification from Missing Data Categories

What to watch: The model fails to recognize that a data type (e.g., biometric data, precise geolocation, health inferences) triggers notification requirements under specific regulations. It treats the breach as generic PII when it is actually special-category data. Guardrail: Include a mandatory data classification step before the notification decision. Map every affected data field to regulatory categories (GDPR special category, CCPA sensitive PI, HIPAA PHI) and flag any uncategorized fields for human review.

04

Jurisdiction Misattribution

What to watch: The model applies the wrong jurisdiction's rules to affected data subjects—for example, applying GDPR to a California resident or missing that a data subject is covered by multiple overlapping regulations. Guardrail: Require the prompt to first determine the residency of each affected data subject from available evidence, then map each residency to its applicable regulations. Flag any subject with unknown residency for manual determination before the notification decision proceeds.

05

Deadline Miscalculation

What to watch: The model calculates notification deadlines from the wrong date—using discovery date instead of determination-of-breach date, or missing that different jurisdictions start the clock on different triggers. A 72-hour GDPR deadline calculated from the wrong timestamp creates real compliance exposure. Guardrail: Require the prompt to output the specific trigger event, the trigger date, the applicable deadline rule, and the calculated deadline date for each jurisdiction. Run eval checks that verify the arithmetic and trigger logic against known test cases.

06

False Confidence in Incomplete Incident Data

What to watch: The model produces a definitive notification recommendation even when critical facts are unknown—such as whether data was actually exfiltrated, how many records are affected, or whether encryption was applied. It fills gaps with assumptions rather than flagging uncertainty. Guardrail: Add a required 'evidence completeness' assessment before the notification decision. If any material fact is unknown, the output must escalate with a structured list of missing information rather than proceeding to a recommendation. Block any output that lacks this assessment.

IMPLEMENTATION TABLE

Evaluation Rubric

Criteria for testing the Data Breach Notification Decision Prompt before production deployment. Each row defines a pass standard, a failure signal, and a concrete test method.

CriterionPass StandardFailure SignalTest Method

Jurisdictional Accuracy

All cited notification deadlines and thresholds match the provided [REGULATORY_TEXT] for each jurisdiction in [AFFECTED_REGIONS].

Hallucinated deadline (e.g., 72 hours for a jurisdiction that requires 24 hours) or fabricated regulation name.

Golden dataset test: Provide 5 known regulation snippets with verified deadlines. Assert exact match on deadline hours and regulation citation.

Risk-of-Harm Classification

Risk classification (Low/Medium/High/Critical) is consistent with the provided [DATA_CATEGORIES] and [BREACH_DETAILS] without overstating or understating severity.

Classifying a breach of encrypted, non-PII data as High or classifying exposed plaintext SSNs as Low.

Pairwise comparison test: Run prompt on 10 pre-classified breach scenarios. Measure exact match accuracy against human expert labels.

Notification Requirement Determination

Returns true only when the breach meets all threshold conditions defined in [REGULATORY_TEXT]; returns false with specific unmet conditions otherwise.

Returning true when a threshold condition is clearly unmet (e.g., no PII exposed) or false when all conditions are met.

Boolean assertion test: 20 scenarios with known notification outcomes. Require 100% recall on notifiable breaches and 100% precision on non-notifiable breaches.

Affected Data Category Enumeration

Lists only data categories explicitly mentioned in [BREACH_DETAILS] and maps them to the correct regulatory categories from [REGULATORY_TEXT].

Inventing data categories not present in the input (e.g., claiming health data was exposed when only email addresses were breached).

Schema validation: Parse output [AFFECTED_DATA_CATEGORIES] array. Assert every element is a substring match or exact match to [BREACH_DETAILS] source text.

Deadline Calculation

Calculated [NOTIFICATION_DEADLINE] is the earliest applicable deadline across all [AFFECTED_REGIONS], expressed as a UTC timestamp.

Selecting a later deadline when multiple jurisdictions apply, or producing a date that does not match the regulation's stated hours-from-discovery rule.

Unit test: Provide fixed [DISCOVERY_TIMESTAMP] and known regulation deadlines. Assert calculated deadline equals the minimum of all applicable deadlines.

Confidence Calibration

[CONFIDENCE_SCORE] is below 0.85 when [BREACH_DETAILS] contains ambiguous or incomplete information about data exposure.

Returning confidence above 0.9 when key facts are marked as unknown or when [BREACH_DETAILS] explicitly states investigation is ongoing.

Threshold test: 5 scenarios with explicit uncertainty markers. Assert confidence score is below 0.85 for all. Flag any score above 0.9 as a failure.

Escalation Triggering

Sets [REQUIRES_HUMAN_REVIEW] to true when any of the following are true: confidence below 0.85, multiple conflicting regulations apply, or [BREACH_DETAILS] involves sensitive categories (health, financial, minor data).

Setting [REQUIRES_HUMAN_REVIEW] to false when sensitive data categories are present or when confidence is below threshold.

Rule-based assertion: For each test case, compute expected review flag from input conditions. Assert exact match. Zero tolerance for false negatives on sensitive data.

Output Schema Compliance

Output is valid JSON matching the [OUTPUT_SCHEMA] with all required fields present and no extra fields.

Missing required field [NOTIFICATION_DEADLINE], null value in a required field, or presence of undefined fields.

Automated schema validation: Parse output with a JSON Schema validator. Assert no validation errors. Run on 50 varied inputs to catch intermittent format drift.

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Use the base prompt with a frontier model (GPT-4o, Claude 3.5 Sonnet) and manual review of every output. Strip the structured output schema initially—ask for a narrative assessment first, then add JSON schema enforcement once the reasoning quality is stable. Start with a single jurisdiction's notification rules before adding multi-jurisdiction logic.

Watch for

  • Hallucinated regulatory deadlines: always cross-check notification timelines against the actual statute text
  • Over-flagging low-severity incidents: the model may default to "notify" when uncertain
  • Missing data categories: the prompt may skip affected data types if the incident description is vague
  • Inconsistent risk-of-harm scoring between runs on the same incident
Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.