This prompt is for governance engineers, ML platform teams, and QA leads who need to create and maintain an audit trail for every example in a golden dataset. It generates a structured provenance record that captures the origin, modifications, approvals, and current status of a single golden example. Use this prompt when you are building a new golden dataset from scratch, onboarding examples from production logs, or retroactively documenting existing test cases. The output is designed to be stored alongside the example in a dataset registry or feature store, enabling downstream compliance checks, debugging when a test case behaves unexpectedly, and demonstrating chain of custody to auditors. This prompt assumes you already have the example content and the metadata about its origin. It does not generate the example itself.
Prompt
Dataset Provenance Tracking Prompt

When to Use This Prompt
Understand the job-to-be-done, the ideal user, and the operational boundaries for the Dataset Provenance Tracking Prompt.
The ideal workflow wires this prompt into a dataset ingestion pipeline. When a new example is proposed—whether from a human annotator, a production log, or a synthetic generator—the system calls this prompt with the raw example, source identifier, and any known modification history. The resulting provenance record is validated against a schema before being committed to the registry. This ensures that every example in the golden set has a machine-readable lineage that can be queried during audits or regression investigations. Do not use this prompt for real-time inference logging or for tracking model outputs in production; it is designed for the static, curated examples that define your evaluation baseline.
Avoid using this prompt when the example's origin is completely unknown and cannot be reasonably inferred. The prompt requires at least a source identifier and a creation timestamp to produce a useful record. If you feed it an example with no metadata, it will generate a low-confidence provenance stub that may fail downstream validation. Also, do not use this prompt as a substitute for a full data catalog or feature store; it produces a single record, not a searchable index. For teams operating under SOC 2, HIPAA, or FDA predicate rules, pair this prompt's output with a human approval step before the provenance record is finalized and the example is admitted to the golden set.
Use Case Fit
Where the Dataset Provenance Tracking Prompt works well and where it introduces risk. Use these cards to decide if this prompt fits your governance workflow before integrating it into a pipeline.
Good Fit: Regulated Audit Trails
Use when: You need to produce traceable lineage records for every golden example, including source, annotator, and approval chain. Guardrail: The prompt structures metadata for downstream compliance review, but always require human sign-off on final records before an audit.
Bad Fit: Real-Time Inference Logging
Avoid when: You need to capture provenance for live user queries or model outputs at inference time. Risk: This prompt is designed for static dataset curation, not high-throughput production logging. Use a structured logging pipeline with a database transaction instead.
Required Inputs
What you must provide: The raw example, source identifier, creation date, annotator ID, and any prior modification history. Guardrail: Missing fields will cause the prompt to hallucinate plausible metadata. Validate all required inputs are present before calling the model.
Operational Risk: Provenance Drift
What to watch: As golden datasets evolve, provenance records can become stale if modifications happen outside the tracking prompt. Guardrail: Pair this prompt with a database trigger or hook that flags any example modified without a corresponding provenance update within the same transaction.
Bad Fit: Unsupervised Auto-Approval
Avoid when: You want the model to autonomously approve or reject provenance records. Risk: The model cannot verify ground truth; it can only structure provided information. Auto-approval creates a false sense of compliance. Always route generated records to a human review queue.
Good Fit: Debugging Data Errors
Use when: A golden example causes a regression failure and you need to trace its origin, annotator, and modification history to understand root cause. Guardrail: Ensure the provenance record includes a changelog field so you can see what changed and when, not just the current state.
Copy-Ready Prompt Template
A copy-ready prompt template for generating structured provenance records for golden dataset examples, with placeholders for your specific data and taxonomy.
This prompt template generates a structured provenance record for a single golden dataset example. It captures the full lineage of an example—who created it, when, what modifications it has undergone, and its current approval status. Use this when onboarding new examples into your regression suite, when an example has been modified and needs an updated record, or when preparing audit evidence for compliance reviews. The output is designed to be machine-readable for ingestion into a metadata store while remaining human-auditable.
codeYou are a dataset provenance recorder for a golden example registry. Generate a structured provenance record for the example described below. The record must be complete, traceable, and suitable for audit review. ## INPUT Example ID: [EXAMPLE_ID] Example Content: Input: [EXAMPLE_INPUT] Expected Output: [EXAMPLE_EXPECTED_OUTPUT] Metadata: [EXAMPLE_METADATA] ## TAXONOMY Source Type: [SOURCE_TYPE] Modification History: [MODIFICATION_HISTORY] Current Approval Status: [APPROVAL_STATUS] Annotator Identity: [ANNOTATOR_ID] Reviewer Identity: [REVIEWER_ID] Dataset Version: [DATASET_VERSION] ## OUTPUT SCHEMA Produce a JSON object with these fields: - example_id: string (the provided example ID) - provenance_record: - source: - source_type: string (one of: human_annotated, synthetic, production_log, third_party, unknown) - origin_timestamp: ISO 8601 string (when the example was first created) - origin_annotator: string (who created it) - origin_method: string (how it was created, e.g., manual_labeling, template_generation, log_extraction) - modifications: array of objects, each with: - modification_id: string (unique identifier for this change) - timestamp: ISO 8601 string - modified_by: string (who made the change) - change_type: string (one of: content_update, schema_migration, deprecation, reactivation, correction, augmentation) - change_description: string (what changed and why) - previous_state_hash: string (hash of the record before this change, or null if first version) - approval: - current_status: string (one of: draft, in_review, approved, rejected, deprecated) - last_reviewed_by: string or null - last_reviewed_timestamp: ISO 8601 string or null - approval_notes: string or null - lineage: - parent_example_ids: array of strings (IDs of examples this was derived from, empty if original) - derived_example_ids: array of strings (IDs of examples derived from this one, empty if none) - dataset_version: string (the dataset version this example belongs to) - compliance: - contains_pii: boolean - pii_redaction_applied: boolean - sensitive_content_flags: array of strings (any sensitivity tags, empty if none) - retention_policy: string (e.g., permanent, review_quarterly, deprecate_on_schema_change) ## CONSTRAINTS - All timestamps must be valid ISO 8601. - If modification history is empty, the modifications array must still be present and empty. - If no reviewer exists, set reviewer fields to null, not empty strings. - Do not invent information. If a field's source data is not provided, mark it as null or use the unknown source_type. - The output must be valid JSON with no trailing commas.
Adaptation notes: Replace each bracketed placeholder with your actual data. The [MODIFICATION_HISTORY] placeholder should contain a structured list of prior changes if available, or be marked as empty. The [SOURCE_TYPE] must match one of the enumerated values in the output schema. If your organization uses a different approval workflow, adjust the approval.current_status enum values accordingly. For teams using a metadata database, map the output JSON fields directly to your provenance table columns. The previous_state_hash field enables cryptographic chain-of-custody verification—use SHA-256 of the serialized prior record if full integrity tracking is required.
What to do next: After generating the provenance record, validate the JSON against your expected schema before storing it. Run a consistency check: the origin_timestamp should be the earliest timestamp in the record, and no modification timestamp should predate it. If the example was derived from other examples, verify that the parent_example_ids reference valid, existing example IDs in your registry. For high-compliance environments, require a human reviewer to sign off on the provenance record before it is committed to the golden dataset. Avoid generating provenance records in bulk without spot-checking a sample for hallucinated modification histories or invented reviewer identities.
Prompt Variables
Required inputs for the Dataset Provenance Tracking Prompt. Each placeholder must be populated before the prompt is assembled and sent. Validation notes describe how to check that the input is well-formed before execution.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[EXAMPLE_ID] | Unique identifier for the golden example being tracked | golden-00421-finance-q3 | Must match pattern [a-z0-9-]+. Check against existing registry for uniqueness before use. |
[EXAMPLE_TYPE] | Category of the golden example: input-output pair, edge case, refusal case, or adversarial sample | input-output-pair | Must be one of enum: input-output-pair, edge-case, refusal-case, adversarial-sample. Reject unknown values. |
[SOURCE] | Origin of the example: production trace, synthetic generation, human annotation, or external dataset | production-trace | Must be one of enum: production-trace, synthetic-generation, human-annotation, external-dataset. If external-dataset, require [SOURCE_LICENSE]. |
[CREATION_DATE] | ISO 8601 timestamp when the example was first created | 2025-01-15T14:30:00Z | Must parse as valid ISO 8601. Must not be in the future. Compare against system clock. |
[ANNOTATOR] | Entity that created or labeled the example: human identifier, model name, or automated pipeline | ml-annotator-pipeline-v2 | Must be non-empty string. If human, validate against directory. If model, include version. If pipeline, include run ID. |
[MODIFICATION_HISTORY] | JSON array of prior modification events with timestamps, actors, and change descriptions | [{"date":"2025-02-01T10:00:00Z","actor":"qa-lead-jane","change":"corrected expected output field"}] | Must be valid JSON array. Each entry must have date, actor, and change fields. Empty array allowed for new examples. |
[APPROVAL_STATUS] | Current approval state: draft, pending-review, approved, rejected, or deprecated | approved | Must be one of enum: draft, pending-review, approved, rejected, deprecated. If approved, require [APPROVER] and [APPROVAL_DATE]. |
[APPROVER] | Identity of the human who approved the example for inclusion in the golden set | qa-lead-jane | Required when [APPROVAL_STATUS] is approved. Must match directory entry. Null allowed for non-approved states. |
Implementation Harness Notes
How to wire the Dataset Provenance Tracking Prompt into a governance or QA pipeline with validation, storage, and audit-readiness.
This prompt is designed to be called programmatically whenever a new golden example is created, modified, or approved. The harness should treat it as a metadata generation step that runs after the example content is finalized but before the record is committed to the golden dataset repository. The prompt expects structured inputs about the example's origin, and it returns a provenance record that can be stored alongside the example in a database, a JSON file, or a metadata sidecar. Do not use this prompt for real-time user-facing flows; it belongs in internal tooling, admin panels, or CI/CD pipelines where dataset maintainers and governance engineers operate.
Integration pattern: Wrap the prompt in a function that accepts a GoldenExample object and a ProvenanceInput object. The function should: (1) validate that required fields (source, creation_date, annotator) are present and well-formed before calling the model; (2) call the prompt with the serialized inputs; (3) parse the JSON output and validate it against a provenance schema (fields: record_id, source, creation_date, annotator, modifications, approval_status, lineage_chain); (4) on parse failure, retry once with a repair prompt that includes the raw output and the schema; (5) log the full prompt, response, and validation result to an audit log; (6) attach the validated provenance record to the golden example before storage. For high-governance environments, add a human review gate before the provenance record is finalized—especially when approval_status is pending or when the lineage_chain shows more than three prior modifications.
Model choice and tool use: This prompt works well with structured-output modes (e.g., GPT-4o with response_format, Claude with tool-use for schema enforcement). If your model provider supports it, supply the provenance schema as a tool definition rather than relying on free-text JSON instructions. This reduces parse failures. RAG is not required for this prompt because all necessary context is provided in the input; however, if your organization maintains a taxonomy of approved sources or annotator IDs, you can inject that as a lookup before calling the prompt to validate inputs. Storage: Write provenance records to an append-only table with a timestamp and a hash of the golden example content. This creates an immutable audit trail that survives dataset migrations. Retries: If the model returns a provenance record that fails schema validation, retry once with the error message injected into the prompt. If the second attempt also fails, escalate to a human reviewer and log the failure for prompt debugging. Avoid: Do not call this prompt on every read of a golden example—only on create, update, or approval events. Do not use the provenance record as the sole source of truth for example content; always store the example and its provenance as linked but separate records.
Expected Output Contract
Fields, format, and validation rules for the generated provenance record. Use this contract to validate outputs before they enter the golden dataset registry.
| Field or Element | Type or Format | Required | Validation Rule |
|---|---|---|---|
provenance_id | string (UUID v4) | Must be a valid UUID v4. Reject if parse fails or format mismatch. | |
source_origin | string enum: ['human_annotator', 'synthetic_generation', 'production_trace', 'external_import', 'augmentation'] | Must match one of the allowed enum values exactly. Reject unknown origins. | |
creation_timestamp | string (ISO 8601 UTC) | Must parse as valid ISO 8601 in UTC. Reject if future-dated beyond 1 hour tolerance. | |
creator_identity | string or null | Non-empty string if source_origin is 'human_annotator'; null allowed for synthetic or automated sources. Reject empty string for human origin. | |
modification_history | array of {timestamp: string, action: string, actor: string} | Must be a valid JSON array. Each entry must have timestamp (ISO 8601), action (non-empty string), and actor (non-empty string). Empty array acceptable for initial records. | |
approval_status | string enum: ['pending_review', 'approved', 'rejected', 'deprecated'] | Must match one of the allowed enum values. Reject if missing or invalid. | |
approval_authority | string or null | Required if approval_status is 'approved' or 'rejected'. Must be non-empty string when required. Null allowed for 'pending_review' and 'deprecated'. | |
dataset_version | string (semver) | Must match semver pattern (MAJOR.MINOR.PATCH). Reject if parse fails or version is pre-release without explicit flag. |
Common Failure Modes
Provenance tracking fails silently when metadata is incomplete, lineage chains break, or records become untrustworthy. These are the most common failure modes and how to guard against them before audit season.
Silent Metadata Gaps
What to watch: The prompt generates a provenance record but omits required fields like annotator_id, approval_status, or modification_date without warning. The record looks valid but is incomplete. Guardrail: Validate output against a strict JSON schema with required fields. Reject records that fail schema checks and log the gap for human review.
Broken Lineage Chains
What to watch: A modification record references a parent_record_id that doesn't exist or was archived, breaking the audit trail. Downstream consumers can't reconstruct the full history. Guardrail: Before writing, query the golden dataset to verify parent record existence. If missing, flag the record with lineage_status: broken and require manual resolution.
Approval Status Drift
What to watch: The prompt marks records as approved without evidence of actual review, or uses inconsistent status values like done, ok, or reviewed instead of the defined enum. Guardrail: Enforce a closed enum for approval_status (e.g., draft, pending_review, approved, rejected). Require reviewer_id and review_timestamp when status is approved.
Source Attribution Hallucination
What to watch: The model invents plausible-sounding source names, annotator identities, or creation dates that don't match any real system of record. Guardrail: Ground all entity references against known lists (annotator IDs, source systems, project codes). Use exact-match validation. If a reference doesn't resolve, set the field to null and add a grounding_warning flag.
Timestamp Inconsistency Across Records
What to watch: A modification record has a modification_date earlier than the creation_date of the record it modifies, or timestamps drift across timezones without tz_offset metadata. Guardrail: Validate chronological ordering: modification_date must be >= creation_date. Normalize all timestamps to UTC and require explicit tz_offset or timezone fields in the output schema.
Bulk Operation Provenance Loss
What to watch: When multiple golden examples are modified in a batch, the prompt generates a single vague provenance record instead of per-record lineage entries, destroying granular auditability. Guardrail: Require one provenance record per modified example. If the prompt receives a batch, iterate per record. Validate that the count of output provenance records matches the count of modified inputs.
Evaluation Rubric
Criteria for evaluating the quality and correctness of provenance records generated by the Dataset Provenance Tracking Prompt before they are committed to the audit log.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Schema Compliance | Output is valid JSON matching the [OUTPUT_SCHEMA] exactly; all required fields present. | JSON parse error, missing required field, or extra unexpected field. | Automated schema validation against the JSON Schema definition. |
Source Grounding | Every provenance record references a concrete source identifier present in the [INPUT_CONTEXT]. | Hallucinated source ID, missing source reference, or source described as 'unknown' without justification. | Cross-reference source IDs in output against the provided [INPUT_CONTEXT] source list. |
Annotator Identity | The [ANNOTATOR] field is populated with a non-empty string matching the provided identity or a documented 'system' default. | Empty string, null, or placeholder text like 'annotator_name' in the [ANNOTATOR] field. | Regex check for non-empty string; exact match against allowed annotator list if provided. |
Modification History Integrity | The [MODIFICATIONS] array is a valid list of change events, each with a timestamp, author, and description. | Missing timestamp, empty description, or a single event claiming 'no modifications' when the record was updated. | Schema check on array items; verify timestamp format (ISO 8601) and non-empty description fields. |
Approval Status Validity | The [APPROVAL_STATUS] field contains one of the allowed enum values: 'pending', 'approved', 'rejected', or 'needs_review'. | Unrecognized status string, null, or boolean true/false. | Enum membership check against the allowed set. |
Creation Date Format | The [CREATION_DATE] field is a valid ISO 8601 date-time string. | Unix timestamp integer, date-only string, or unparseable date format. | ISO 8601 regex validation and successful parsing by a date library. |
Traceability Chain | The record includes a [PREVIOUS_VERSION_ID] or explicit null if it is the first version, establishing a clear lineage. | Missing field entirely, or a version ID that does not match any existing record in the system. | Null check allowed; if non-null, verify ID format matches system convention and reference integrity. |
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Adapt This Prompt
How to adapt
Start with the base prompt and a flat JSON schema for provenance records. Accept manual entry for fields like annotator_id and source_type. Skip approval workflow logic and focus on generating a single well-formed provenance record per call.
codeGenerate a provenance record for this golden example: [EXAMPLE_INPUT] [EXAMPLE_OUTPUT] Return JSON with: source, creation_date, annotator, modifications (array), approval_status.
Watch for
- Missing
modificationsarray when none exist (should be empty array, not null) - Inconsistent date formats across records
- Annotator field defaulting to "unknown" without flagging the gap

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.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us