Inferensys

Prompt

Audit-Ready Evidence Package Prompt

A practical prompt playbook for using the Audit-Ready Evidence Package Prompt in production AI workflows to generate self-contained, submission-ready packages for external auditors.
Developer doing prompt engineering on laptop, prompt variations visible on screen, casual coding session.
PROMPT PLAYBOOK

When to Use This Prompt

Defines the precise job-to-be-done, the ideal user, and the operational boundaries for the Audit-Ready Evidence Package Prompt.

This prompt is for governance, risk, and compliance (GRC) teams who must prepare a self-contained evidence package for external audit submission. The job is to take a set of verified claims, their supporting evidence, and the verification methodology, and assemble them into a single, structured package that an external auditor can review without access to your internal systems. Use this prompt when the output must include a complete chain of custody, a clear methodology statement, and all evidence artifacts linked to their respective claims. The ideal user is a compliance engineer or audit lead who has already completed upstream fact-checking and now needs to produce a defensible, portable artifact.

Do not use this prompt for real-time fact-checking, initial claim extraction, or evidence retrieval. It assumes those upstream steps are complete and verified. The prompt is designed for high-stakes workflows where missing a single piece of evidence or failing to document provenance can cause an audit finding. It is not a replacement for a verification pipeline; it is the final assembly step that transforms verified structured data into a human-readable, auditor-ready document. If your inputs are still uncertain or your evidence is incomplete, resolve those gaps before invoking this prompt.

Before using this prompt, confirm that you have: (1) a complete list of verified claims with their final verdicts, (2) all supporting evidence artifacts with source identifiers and timestamps, (3) a documented verification methodology, and (4) a clear chain of custody showing who handled each piece of evidence and when. If any of these inputs are missing, the output package will be incomplete and may fail audit scrutiny. The prompt includes built-in validation for package completeness and export-format compliance, but it cannot fabricate missing evidence or guess at provenance. Always pair this prompt with a human review step before submission to an external auditor.

PRACTICAL GUARDRAILS

Use Case Fit

Where the Audit-Ready Evidence Package Prompt delivers value and where it introduces risk. Use these cards to decide if this prompt fits your workflow before integrating it into a production pipeline.

01

Good Fit: External Audit Submission

Use when: governance or compliance teams must submit a self-contained evidence package to an external auditor. The prompt structures claims, evidence, methodology, and chain-of-custody into a single export-ready artifact. Guardrail: validate package completeness against the auditor's required fields before submission.

02

Good Fit: Regulated Industry Documentation

Use when: financial services, healthcare, or other regulated sectors require traceable verification records. The prompt enforces methodology disclosure and evidence linkage that regulators expect. Guardrail: pair with a human review step for any claim marked as 'insufficient evidence' before the package is finalized.

03

Bad Fit: Real-Time Verification Dashboards

Avoid when: you need live, streaming verification results in a dashboard. This prompt is designed for batched, packaged output, not incremental updates. Guardrail: use the Structured Claim Verification Report Prompt for per-claim streaming; reserve this prompt for final audit packaging.

04

Bad Fit: Informal Internal Review

Avoid when: a team just wants a quick summary of verification results without formal audit requirements. The package overhead adds latency and token cost without benefit. Guardrail: use the Verification Outcome Summary Prompt for lightweight internal reviews; escalate to this prompt only when an audit trail is required.

05

Required Inputs: Complete Verification Artifacts

Risk: the prompt cannot fabricate evidence chains or methodology descriptions from thin air. Missing inputs produce incomplete packages that fail audit scrutiny. Guardrail: ensure claim-level verdicts, evidence citations, source authority records, and methodology notes exist before invoking this prompt. Validate input completeness programmatically.

06

Operational Risk: False Completeness

Risk: the model may produce a package that looks structurally complete but contains placeholder values, missing evidence links, or unverified claims presented as verified. Guardrail: run automated completeness validation on every output field. Flag any package where required fields are empty, evidence references are unresolvable, or methodology sections contain generic boilerplate.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A reusable prompt template for generating a self-contained, audit-ready evidence package with claims, evidence, methodology, and chain-of-custody documentation.

This prompt template is the core instruction set for generating an Audit-Ready Evidence Package. It is designed to be pasted into your orchestration layer, where each square-bracket placeholder is replaced with live data from your verification pipeline before the model call. The template forces the model to produce a structured, self-contained package that an external auditor can review without access to your internal systems. It requires explicit methodology disclosure, evidence-to-claim mapping, and a chain-of-custody summary, moving beyond a simple verdict list to a defensible artifact.

text
You are an audit documentation specialist preparing an evidence package for external regulatory review. Your output must be self-contained, traceable, and suitable for submission without additional context.

Generate an Audit-Ready Evidence Package using the following inputs and constraints.

## INPUT DATA

### Claims and Verification Results
[CLAIMS_AND_VERDICTS]

### Evidence Sources
[EVIDENCE_SOURCES]

### Verification Methodology
[METHODOLOGY_DESCRIPTION]

### Pipeline Execution Metadata
[PIPELINE_METADATA]

## OUTPUT SCHEMA

Produce a single, valid JSON object conforming to this structure:
{
  "package_metadata": {
    "package_id": "string",
    "generation_timestamp": "ISO 8601",
    "pipeline_version": "string",
    "prepared_by": "string",
    "submission_status": "draft | final"
  },
  "methodology_statement": {
    "summary": "string (plain-language description of the verification process)",
    "claim_extraction_method": "string",
    "evidence_retrieval_method": "string",
    "matching_logic": "string",
    "confidence_scoring_approach": "string",
    "limitations": ["string, ..."]
  },
  "evidence_chain_of_custody": {
    "source_ingestion_records": [
      {
        "source_id": "string",
        "ingestion_timestamp": "ISO 8601",
        "source_uri": "string",
        "integrity_hash": "string",
        "accessed_by": "string"
      }
    ],
    "processing_log": [
      {
        "step": "string",
        "timestamp": "ISO 8601",
        "action": "string",
        "actor": "system | human"
      }
    ]
  },
  "verification_records": [
    {
      "claim_id": "string",
      "claim_text": "string",
      "verdict": "supported | contradicted | unsupported | not_verifiable",
      "confidence_score": 0.0-1.0,
      "evidence_mapping": [
        {
          "source_id": "string",
          "relevance": "direct | indirect | contextual",
          "relationship": "supports | contradicts | neutral",
          "excerpt": "string (exact quote from source)"
        }
      ],
      "verdict_rationale": "string (explain why the evidence leads to this verdict)",
      "reviewer_notes": "string or null (for human-reviewed claims)"
    }
  ],
  "unsupported_claims_disclosure": [
    {
      "claim_id": "string",
      "claim_text": "string",
      "evidence_search_summary": "string",
      "gap_explanation": "string"
    }
  ],
  "completeness_self_assessment": {
    "total_claims": "integer",
    "verified_claims": "integer",
    "unsupported_claims": "integer",
    "missing_evidence_types": ["string, ..."],
    "compliance_gaps": ["string, ..."]
  }
}

## CONSTRAINTS

- Every claim in [CLAIMS_AND_VERDICTS] must appear in `verification_records` or `unsupported_claims_disclosure`.
- Every evidence source in [EVIDENCE_SOURCES] must appear in `evidence_chain_of_custody.source_ingestion_records`.
- All `source_id` references must match exactly between records.
- The `integrity_hash` field must be populated from [PIPELINE_METADATA]; do not invent hashes.
- If a claim has a verdict of "unsupported," it must also appear in `unsupported_claims_disclosure`.
- Do not include claims or evidence not present in the input data.
- Use the exact methodology text from [METHODOLOGY_DESCRIPTION] in the methodology statement; do not paraphrase or embellish.
- If any required field cannot be populated from the inputs, use `null` and note the gap in `completeness_self_assessment.compliance_gaps`.

## RISK LEVEL
[RISK_LEVEL]

If RISK_LEVEL is "high," add a `legal_review_required` boolean field to `package_metadata` set to `true` and include a `reviewer_signoff` object with `reviewer_name`, `review_timestamp`, and `signoff_status` fields set to `null`.

To adapt this template, start by mapping your pipeline's internal data structures to the [CLAIMS_AND_VERDICTS], [EVIDENCE_SOURCES], [METHODOLOGY_DESCRIPTION], and [PIPELINE_METADATA] placeholders. The [CLAIMS_AND_VERDICTS] input should be a pre-formatted JSON array of claim objects with their AI-generated verdicts and confidence scores. The [EVIDENCE_SOURCES] input must include the integrity hash generated at ingestion time—this is critical for the chain-of-custody section and cannot be fabricated by the model. The [RISK_LEVEL] placeholder accepts "low," "medium," or "high" and controls whether the output includes a legal review flag. Before deploying, validate that the assembled prompt does not exceed your model's context window, especially when processing large batches of claims. For production use, implement a post-generation validation step that checks JSON schema compliance, source_id consistency, and completeness of the unsupported claims disclosure against the input claim set.

IMPLEMENTATION TABLE

Prompt Variables

Inputs the prompt needs to assemble a self-contained audit-ready evidence package. Validate each before prompt assembly to prevent missing-evidence failures and chain-of-custody gaps.

PlaceholderPurposeExampleValidation Notes

[CLAIM_LIST]

Array of discrete claims to include in the evidence package

[{"id":"C-001","text":"Revenue grew 22% YoY","source_document":"Q4-Report.pdf"}]

Schema check: each object must have id, text, source_document. Empty array is invalid. Max 500 claims per package.

[EVIDENCE_RECORDS]

Evidence objects with source metadata, content, and retrieval timestamp

[{"evidence_id":"E-042","claim_id":"C-001","source_uri":"s3://docs/Q4-audited.pdf","content_hash":"sha256:abc123","retrieved_at":"2025-03-15T10:00:00Z"}]

Schema check: evidence_id, claim_id, source_uri, content_hash, retrieved_at required. Hash must match stored content. Null content_hash triggers re-retrieval.

[METHODOLOGY_DOC]

Description of verification methodology, tools, and confidence thresholds used

{"methodology_version":"2.1","tools":["claim-extractor-v3","evidence-matcher-v2"],"confidence_threshold":0.85,"human_review_policy":"all_contradictions"}

Schema check: methodology_version, tools, confidence_threshold required. Threshold must be numeric 0-1. Missing human_review_policy triggers warning.

[CHAIN_OF_CUSTODY]

Ordered log of who accessed or modified evidence and when

[{"step":1,"actor":"system","action":"retrieved","evidence_id":"E-042","timestamp":"2025-03-15T10:00:00Z"}]

Schema check: step, actor, action, evidence_id, timestamp required. Steps must be sequential integers. Gaps or duplicates fail validation.

[VERIFICATION_OUTCOMES]

Per-claim verdicts with confidence scores and rationale

[{"claim_id":"C-001","verdict":"supported","confidence":0.92,"rationale":"Audited financial statement confirms 22.1% YoY growth","evidence_ids":["E-042","E-043"]}]

Schema check: claim_id, verdict, confidence, rationale, evidence_ids required. Verdict must be one of supported, contradicted, insufficient_evidence, not_checked. Confidence must be 0-1.

[PACKAGE_METADATA]

Package-level metadata for indexing and audit reference

{"package_id":"PKG-2025-03-15-001","generated_at":"2025-03-15T14:30:00Z","generated_by":"audit-packager-v1.3","total_claims":42,"total_evidence_items":87}

Schema check: package_id, generated_at, generated_by, total_claims, total_evidence_items required. total_claims must match [CLAIM_LIST] length. Mismatch fails validation.

[EXPORT_FORMAT]

Target output format specification for the evidence package

{"format":"json","schema_version":"audit-package-schema-3.0","include_raw_evidence":true,"compression":"none"}

Schema check: format, schema_version required. format must be one of json, pdf_bundle, csv_zip. include_raw_evidence defaults to true if absent.

[SIGN_OFF_BLOCK]

Empty sign-off fields for human reviewer completion before submission

{"reviewer_name":null,"reviewer_role":null,"review_date":null,"approval_status":"pending","reviewer_notes":null}

Schema check: all fields must be present with null or pending values. Non-null values before human review indicate tampering. approval_status must be pending on generation.

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the Audit-Ready Evidence Package Prompt into a production verification pipeline with validation, retries, and human review gates.

The Audit-Ready Evidence Package Prompt is designed to be the final assembly step in a verification pipeline, not a standalone prompt. It expects structured inputs—pre-verified claims, matched evidence records, methodology metadata, and chain-of-custody logs—that upstream prompts or retrieval systems have already produced. Wiring this prompt into an application means building a harness that validates those inputs before the prompt runs, validates the output package after generation, and routes incomplete or low-confidence packages to human review before submission. The harness should treat the prompt as a package assembler, not a fact-checker: it formats, cross-references, and exports, but it does not re-verify claims or re-evaluate evidence.

Start by defining a strict input schema that the harness enforces before calling the model. Required fields include a list of verified claims (each with a unique ID, verdict, confidence score, and evidence references), a methodology record (extraction method, retrieval sources, matching logic, confidence thresholds), and a chain-of-custody log (timestamps, model versions, operator identities for each pipeline step). The harness should reject incomplete inputs with a clear error message rather than letting the model hallucinate missing sections. After the model generates the evidence package, run structural validation first: check that all required sections exist, that claim IDs in the package match the input claim IDs, and that every evidence reference resolves to an input source. Then run content validation: verify that no new claims were introduced, that verdicts were not altered, and that confidence scores match the input values. A checksum or hash of the input claim set stored before generation can detect tampering. For high-assurance audit submissions, implement a dual-generation pattern: run the prompt twice with different model temperatures or across two model providers, compare the structural outputs, and flag discrepancies for human review.

Log every generation attempt with the input hash, model version, output package hash, validation results, and any human review decisions. Store these logs alongside the final package so auditors can trace exactly how the package was produced. If the package fails validation, implement a retry with repair loop: feed the validation errors back into a repair prompt that fixes specific structural issues without regenerating the entire package. Cap retries at three attempts, then escalate to a human operator with the partial package and error log. For export, support both structured JSON (for downstream systems) and a rendered PDF or DOCX format (for human auditors). The prompt's [OUTPUT_SCHEMA] and [EXPORT_FORMAT] placeholders should be populated from configuration, not hardcoded, so the same harness can serve different audit standards. Finally, never run this prompt on unverified claims—the harness should refuse to assemble a package if any input claim has a verification_status of unverified or pending, preventing the illusion of audit-readiness from incomplete work.

IMPLEMENTATION TABLE

Expected Output Contract

Define the exact shape of the audit-ready evidence package. Use this contract to build a post-generation validator that rejects incomplete or malformed packages before submission.

Field or ElementType or FormatRequiredValidation Rule

package_id

string (UUID v4)

Must match UUID v4 regex. Reject if null or malformed.

generation_timestamp

string (ISO 8601 UTC)

Must parse as valid ISO 8601 datetime with Z suffix. Reject if in the future.

methodology_statement

string (plain text)

Must be non-empty and contain at least one of the required keywords: 'evidence retrieval', 'claim matching', 'confidence scoring'. Reject if missing.

claims

array of claim objects

Must be a non-empty array. Reject if empty or not an array.

claims[].claim_id

string

Must be unique within the package. Reject on duplicate.

claims[].claim_text

string

Must be non-empty. Reject if only whitespace.

claims[].verdict

enum: SUPPORTED | CONTRADICTED | UNSUPPORTED | DISPUTED

Must be one of the four allowed values. Reject on any other value.

claims[].evidence_chain

array of evidence objects

Must contain at least one evidence object if verdict is SUPPORTED or CONTRADICTED. May be empty for UNSUPPORTED. Reject if null.

claims[].evidence_chain[].source_id

string

Must correspond to a source_id present in the top-level sources array. Reject on orphan reference.

claims[].evidence_chain[].relevance

string

Must be non-empty. Reject if only whitespace.

claims[].confidence_score

number (0.0 to 1.0)

Must be a float between 0.0 and 1.0 inclusive. Reject if out of range or non-numeric.

claims[].reviewer_identity

string or null

If present, must be non-empty. Null allowed. Reject if empty string.

sources

array of source objects

Must be a non-empty array. Reject if empty or not an array.

sources[].source_id

string

Must be unique within the package. Reject on duplicate.

sources[].authority_assessment

string

Must be non-empty. Reject if only whitespace.

chain_of_custody_log

array of custody event objects

Must be a non-empty array. Reject if empty or not an array.

chain_of_custody_log[].timestamp

string (ISO 8601 UTC)

Must parse as valid ISO 8601 datetime with Z suffix. Must be sequential within the log. Reject if out of order.

chain_of_custody_log[].action

string

Must be non-empty. Reject if only whitespace.

export_format_version

string (semver)

Must match semver pattern (e.g., 1.0.0). Reject if malformed.

signoff_block

object

If present, must contain reviewer_name (non-empty string) and signoff_timestamp (ISO 8601 UTC). Reject if partially populated.

PRACTICAL GUARDRAILS

Common Failure Modes

What breaks first when generating audit-ready evidence packages and how to guard against it.

01

Silent Evidence Gaps

What to watch: The model produces a package that looks complete but omits required evidence sections, chain-of-custody records, or methodology statements without flagging the gaps. Guardrail: Implement a post-generation completeness validator that checks for all mandatory sections and fields before the package is considered ready for review.

02

Fabricated Source References

What to watch: The model invents plausible-looking document titles, dates, or author names when source metadata is missing from the input context. Guardrail: Require every source reference to match an input record exactly. Use a strict schema that rejects free-text source fields and validates against a provided source manifest.

03

Confidence Inflation

What to watch: The model assigns high confidence to claims supported by weak, outdated, or single-source evidence, creating a misleading audit trail. Guardrail: Enforce a confidence rubric that requires explicit evidence sufficiency thresholds. Flag any claim with fewer than two corroborating sources or sources older than a defined recency window for human review.

04

Chain-of-Custody Breakage

What to watch: The evidence package loses traceability because intermediate processing steps, timestamps, or handler identities are missing from the audit trail. Guardrail: Generate a structured custody log entry for every transformation step. Validate that each entry has a timestamp, actor, action, and input-output hash before package export.

05

Export Format Drift

What to watch: The generated package deviates from the required export schema, producing invalid JSON, missing required fields, or incorrect data types that fail downstream audit tool ingestion. Guardrail: Run a schema validation check against the target export format immediately after generation. Reject and retry any package that fails validation, with a specific error message fed back to the repair prompt.

06

Methodology Omission

What to watch: The package includes claims and evidence but omits the methodology description explaining how verification was performed, making the package unreviewable by external auditors. Guardrail: Treat the methodology section as a mandatory, non-negotiable component. Use a separate prompt step to generate the methodology from the verification log before assembling the final package.

IMPLEMENTATION TABLE

Evaluation Rubric

Run these checks on a golden dataset of 10-20 known audit packages to validate output quality before shipping. Each criterion targets a specific failure mode observed in evidence package generation.

CriterionPass StandardFailure SignalTest Method

Package Completeness

All required sections present: claims, evidence, methodology, chain-of-custody, export metadata

Missing section header or empty section body in generated package

Schema validation against required section list; flag any null or empty required field

Claim-Evidence Linkage

Every claim in the package references at least one evidence item with a valid source identifier

Orphaned claim with no evidence reference or broken source ID that doesn't resolve to a listed source

Parse all claim-to-evidence references; cross-check each reference against the evidence index; count orphan count

Chain-of-Custody Integrity

Each evidence item includes origin timestamp, retrieval method, and hash or fingerprint field

Missing custody fields, placeholder timestamps, or evidence items with identical fingerprints suggesting duplication

Validate custody field presence per evidence item; check timestamp format; detect duplicate fingerprint values

Methodology Disclosure

Methodology section describes claim extraction, evidence retrieval, matching logic, and confidence scoring approach

Generic boilerplate with no specific parameters, missing confidence scoring explanation, or copied from unrelated domain

Keyword presence check for required methodology components; semantic similarity check against known generic templates

Export Format Validity

Package exports as valid JSON matching the specified output schema with no parse errors

JSON parse failure, schema mismatch, or field type violations in exported package

Automated JSON parse test; schema validation against [OUTPUT_SCHEMA]; type-check all required fields

Uncertainty Communication

Confidence scores are present, calibrated, and accompanied by uncertainty explanation for each claim

Binary true/false without confidence, missing uncertainty notes, or confidence of 1.0 on ambiguous claims

Check confidence field presence and range; flag scores of exactly 0.0 or 1.0 for human review; verify uncertainty text is non-empty

Source Authority Documentation

Each source includes credibility indicators, domain relevance, and recency assessment

Sources listed without authority metadata, stale recency dates, or missing domain relevance justification

Validate authority field completeness per source; check recency date against package generation timestamp; flag sources older than configurable threshold

Human Review Readiness

Package includes sign-off fields, reviewer identity placeholder, and escalation flags for low-confidence claims

Missing sign-off section, no reviewer field, or low-confidence claims not flagged for review

Check sign-off section presence; verify reviewer identity field exists; cross-check low-confidence claims against escalation flag list

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Start with the base prompt but relax strict schema enforcement. Use a simpler output structure (plain JSON without nested chain-of-custody fields). Focus on getting the claim-evidence-methodology triad right before adding export formats and completeness checks.

Replace [OUTPUT_SCHEMA] with a flat JSON object containing claims, evidence_summary, and methodology_notes. Skip chain_of_custody and export_format fields initially.

Watch for

  • Missing methodology documentation when the model skips the 'how we checked' section
  • Evidence entries without source identifiers or retrieval timestamps
  • Overly verbose prose that buries the structured fields reviewers need
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.