---
title: "The Receipt Is Part of the Output"
description: "An agent result is incomplete without a receipt showing what it read, what it produced, what passed, what stopped, and what needs approval."
canonical: "https://scalewithsearch.com/articles/receipt-is-part-of-the-output"
date: "2026-08-17"
modified: "2026-09-19"
---
## Site navigation

- [Scale With Search](https://scalewithsearch.com/)
- Real estate
  - Real estate
    - [Real estate](https://scalewithsearch.com/for/real-estate)
- Work
  - Start here
    - [Send your brief](https://scalewithsearch.com/work#send-your-brief)
    - [Prepare your six-question brief](https://scalewithsearch.com/work#prepare-your-six-question-brief)
  - Build
    - [Site build, content library with SEO, signal desk](https://scalewithsearch.com/work)
- For your business
  - Trades and home services
    - [Auto body and collision shops](https://scalewithsearch.com/for/auto-body-and-collision-shops)
    - [Foundation and home repair contractors](https://scalewithsearch.com/for/foundation-and-home-repair)
    - [Garage door and fencing contractors](https://scalewithsearch.com/for/garage-door-and-fencing-contractors)
    - [HVAC contractors](https://scalewithsearch.com/for/hvac-contractors)
    - [Janitorial and commercial cleaning companies](https://scalewithsearch.com/for/janitorial-and-commercial-cleaning)
    - [Locksmiths](https://scalewithsearch.com/for/locksmiths)
    - [Moving companies](https://scalewithsearch.com/for/moving-companies)
    - [Pest control companies](https://scalewithsearch.com/for/pest-control-companies)
    - [Plumbing and electrical contractors](https://scalewithsearch.com/for/plumbing-and-electrical-contractors)
    - [Restoration and water or fire damage companies](https://scalewithsearch.com/for/restoration-and-water-fire-damage)
    - [Roofing companies](https://scalewithsearch.com/for/roofing-companies)
    - [Towing companies](https://scalewithsearch.com/for/towing-companies)
    - [Tree services and landscaping companies](https://scalewithsearch.com/for/tree-services-and-landscaping)
    - [Solar installers](https://scalewithsearch.com/for/solar-installation)
    - [General contractors](https://scalewithsearch.com/for/general-contractors-and-construction)
    - [Paving, concrete, and flooring contractors](https://scalewithsearch.com/for/paving)
  - Practices and professional services
    - [Bookkeeping and tax practices](https://scalewithsearch.com/for/bookkeeping-and-tax-practices)
    - [Dental practices](https://scalewithsearch.com/for/dental-practices)
    - [Family and criminal defense law firms](https://scalewithsearch.com/for/family-and-criminal-defense-law-firms)
    - [Med spas and aesthetics practices](https://scalewithsearch.com/for/med-spas-and-aesthetics)
    - [Personal injury law firms](https://scalewithsearch.com/for/personal-injury-law-firms)
    - [Veterinary clinics](https://scalewithsearch.com/for/veterinary-clinics)
    - [Gyms and fitness studios](https://scalewithsearch.com/for/fitness)
    - [Therapy and outpatient health practices](https://scalewithsearch.com/for/therapy-and-outpatient-health)
    - [Medical billing companies](https://scalewithsearch.com/for/medical-billing)
    - [Insurance agencies](https://scalewithsearch.com/for/insurance-agencies)
    - [Financial advisors](https://scalewithsearch.com/for/financial-advisors)
    - [Property management companies](https://scalewithsearch.com/for/property-management)
    - [Recruiting and staffing agencies](https://scalewithsearch.com/for/recruiting-and-staffing)
    - [Architects and interior designers](https://scalewithsearch.com/for/architects-and-interior-designers)
    - [Logistics and supply chain companies](https://scalewithsearch.com/for/logistics-and-supply-chain)
  - Agencies, MSPs, and manufacturing
    - [IT and managed service providers](https://scalewithsearch.com/for/it-and-managed-service-providers)
    - [Machine shops and precision manufacturers](https://scalewithsearch.com/for/machine-shops-and-precision-manufacturing)
    - [Marketing agencies and freelancers](https://scalewithsearch.com/for/marketing-agencies-and-freelancers)
    - [SEO agencies and consultants](https://scalewithsearch.com/for/seo-agencies-and-consultants)
    - [Small manufacturers and fabricators](https://scalewithsearch.com/for/small-manufacturers-and-fabricators)
  - Restaurants, shops, studios, and nonprofits
    - [Restaurants and hospitality businesses](https://scalewithsearch.com/for/restaurants-and-hospitality)
    - [Retail stores and ecommerce sellers](https://scalewithsearch.com/for/retail-and-ecommerce)
    - [Photographers, event planners, and travel agents](https://scalewithsearch.com/for/photographers)
    - [Churches and nonprofits](https://scalewithsearch.com/for/churches-and-nonprofits)
  - [All industries](https://scalewithsearch.com/for/)
- Learn
  - For your office
    - [Office job guides](https://scalewithsearch.com/guides/)
    - [Browser calculators](https://scalewithsearch.com/tools/)
  - Start here
    - [How it works](https://scalewithsearch.com/how-it-works)
    - [Free Starter Kit](https://scalewithsearch.com/kit/business-memory-starter-kit.zip)
    - [Synthetic specimen](https://scalewithsearch.com/specimen/working-session-specimen.zip)
  - Guides
    - [The Complete Guide to Business Memory for AI Agents](https://scalewithsearch.com/articles/business-memory-for-ai-agents-guide)
    - [The Complete Small-Business Guide to AI Agent Governance](https://scalewithsearch.com/articles/ai-agent-governance-guide-small-business)
    - [The Complete Guide to Leaving Vendor AI Memory](https://scalewithsearch.com/articles/leaving-vendor-ai-memory-guide)
  - Articles by cluster
    - [Business memory](https://scalewithsearch.com/articles/business-memory-for-ai-agents-guide)
    - [Agent governance](https://scalewithsearch.com/articles/ai-agent-governance-guide-small-business)
    - [Migration and ownership](https://scalewithsearch.com/articles/leaving-vendor-ai-memory-guide)
  - For machines
    - [llms.txt](https://scalewithsearch.com/llms.txt)
    - [llms-full.txt](https://scalewithsearch.com/llms-full.txt)
    - [Machine view](https://scalewithsearch.com/?view=machine)
- Company
  - Evidence
    - [Proof](https://scalewithsearch.com/proof)
  - Company
    - [About](https://scalewithsearch.com/about)

# The Receipt Is Part of the Output.

The [agent](/articles/what-is-an-ai-agent-in-a-small-business) says the report is finished. The file exists. The totals look plausible.

Then the reviewer asks three questions: Which source export did it use? Did the validation test pass? Was anything skipped?

Nobody knows.

The report is an artifact. It is not yet an inspectable result. The receipt is part of the output because it connects the artifact to the run that produced it.

## What a receipt proves

A useful receipt answers:

- What job ran?
- Which source records were inspected?
- Which model and workflow version were used?
- What file or decision was produced?
- Which deterministic tests ran?
- What passed, failed, or was skipped?
- Where did the workflow stop?
- Does a person still need to approve an external action?

NIST's AI RMF is a voluntary framework, and its Generative AI Profile describes retention policies that preserve test, evaluation, validation, and verification history as an outcome, along with system inventories carrying provenance, model versions, known issues, and human oversight roles. [NIST AI 600-1, Generative AI Profile](https://nvlpubs.nist.gov/nistpubs/ai/NIST.AI.600-1.pdf)

## A receipt is not a transcript

Dumping the entire model conversation into a log creates noise and may copy sensitive information. A receipt should contain the minimum evidence required to reproduce or review the result.

Use source paths, stable identifiers, versions, hashes, test names, timestamps, and result states. Keep credentials, secret values, unnecessary personal data, and raw confidential content out of it.

## Record no-work and failure states

A no-work receipt is useful only when it says what was inspected. "Nothing happened" remains ambiguous.

Record the queue, date range, eligibility rule, and item count. If zero items qualify, state that result. If the queue could not be read, write a failure instead. A scheduler heartbeat is not a substitute for a job receipt.

This distinction helps an owner separate a quiet week from a broken workflow without opening model logs.

Use `no_work` only after successful inspection finds zero eligible items. A missing required source is `blocked`; an unreadable queue is `failed`. Preserve safe diagnostics and never label partial inspection complete. The [empty-versus-broken receipt guide](/articles/ai-agent-no-work-receipt) supplies the fixtures.

## The file to inspect

Create `receipts/RUN-2026-0817-0091.json`:

```json
{
  "run_id": "RUN-2026-0817-0091",
  "job": "prepare_weekly_order_report",
  "workflow_version": "git:4f7c2ab",
  "model": "provider/model-version",
  "started_at": "2026-08-17T09:02:11-04:00",
  "finished_at": "2026-08-17T09:02:38-04:00",
  "sources": [
    {"path": "data/orders-accepted.csv", "sha256": "..."},
    {"path": "rules/reporting-definitions.md", "sha256": "..."}
  ],
  "output": {
    "path": "reports/weekly/2026-W34.md",
    "sha256": "..."
  },
  "tests": [
    {"name": "required_sections", "result": "pass"},
    {"name": "totals_match_source", "result": "pass"}
  ],
  "status": "completed",
  "stopped_before": ["email_send", "publish", "crm_write"],
  "approval_required_from": "operations_lead"
}
```

The hash shows whether a source or output changed after the receipt. It does not prove the content is true. Truth still depends on source authority, validation, and review.

## Give receipt fields stable meanings

Receipt fields should answer four different questions.

Identity fields name the run: run ID, job, workflow version, model route, and time. Input fields name the records and task input used. Result fields name the output, status, and tests. Boundary fields name skipped actions, stop reasons, unresolved questions, and required approval. For a reusable field structure and validation checks, read [AI Agent Run Receipt Template: Fields and Checks.](/articles/ai-agent-run-receipt-template)

Do not use one vague `notes` field for all four. Stable fields make receipts searchable and let deterministic checks detect missing evidence.

A small schema can define required and optional fields:

```text
required:: run_id, job, started_at, finished_at, sources, status
required_when_output_exists:: output_path, output_hash
required_when_stopped:: stop_reason, safe_next_action, decision_owner
required_when_action_proposed:: action_type, destination, approval_status
forbidden:: secret_value, full_private_transcript, hidden_reasoning
```

The schema should fit the consequence. A local formatting job does not need the same receipt as a proposed payment or deployment. Both need an observable finish.

## Read a receipt in the right order

A reviewer can inspect a receipt without replaying the whole run.

First, check identity. Is this the expected job and workflow version? Second, check sources. Did the run read the intended account and current records? Third, check result status. Was the output completed, blocked, failed, or no-work? Fourth, check deterministic tests. Fifth, check the boundary. Did the workflow stop before any unapproved effect?

Only then open the artifact. A polished artifact can distract from a stale source or failed check. The receipt puts operational evidence first.

If the job affects an external system, the receipt should link to read-back evidence. It should not duplicate an entire customer record or message body when a stable identifier and approved artifact hash are enough.

## Pair model work with deterministic checks

Use the model for work that needs interpretation or synthesis. Use code for fixed checks: required fields, schema validity, totals, duplicates, file existence, allowed paths, and exact recipient matching.

NIST's AI RMF describes documented test sets, metrics, tools, and performance under conditions similar to deployment as an outcome. [NIST AI RMF Core](https://airc.nist.gov/airmf-resources/airmf/5-sec-core/)

The receipt joins these layers. It can say the model drafted the explanation and the validator confirmed the arithmetic and file contract.

## Make the receipt easy to find

Use a stable convention. Place the receipt beside the output or link both through the same run ID. A dashboard can summarize receipts later, but the owned file remains the evidence. For the public examples and their evidence limits, inspect [Owned AI Systems: Inspect the Proof and Limits.](/proof)

The reviewer should not need vendor chat history to discover how the result was made.

## Decide how long receipts remain useful

Receipt retention should follow the business need, contract, sensitivity, and applicable policy. Do not keep every raw input forever because storage is cheap.

Keep the minimum evidence needed for troubleshooting, approval history, acceptance, billing support, or audit obligations. Remove secret values and unnecessary personal data before the receipt is written. When a source identifier is enough, do not copy the source content.

Add a retention block to the runbook:

```text
receipt_owner:: system owner
retention_class:: operational
review_after:: 90 days
delete_or_archive_rule:: follow current business retention policy
restricted_fields:: customer message body, credentials, payment data
```

This is a design field, not legal advice. A regulated workflow needs review against the buyer's obligations and vendor terms before records enter the system.

## Link corrections back to the run

When review finds an error, the correction record should reference the receipt and affected artifact. The next test receipt should reference the [accepted correction](/articles/ai-correction-log-template).

That chain can remain small:

```text
failed_run:: RUN-2026-0817-0091
correction:: COR-027
controlling_file_changed:: briefs/weekly-account-brief.md
retest_run:: RUN-2026-0817-0094
retest_status:: pass
```

The link prevents a corrected output from being mistaken for a corrected workflow. A reviewer can see whether the source, brief, adapter, or artifact changed and whether a fresh run tested it.

Do not overwrite the failed receipt. Failure is part of the operating history. Store the correction and retest as later records.

Use one run ID across the artifact, receipt, approval record, and read-back record. Test that every referenced path exists and every hash matches the file under review. If either check fails, mark the run incomplete. This small linkage test prevents a valid receipt from being paired with the wrong draft.

## Approval boundary and stopping point

The agent finishes when the artifact and receipt exist and required tests have a recorded result. It stops early when a required source, test, output path, or approval owner is missing.

The receipt does not authorize a send, publication, deployment, booking, purchase, payment, or CRM write. It records that the workflow stopped before those actions.

## Sources

- [NIST: Generative AI Profile](https://nvlpubs.nist.gov/nistpubs/ai/NIST.AI.600-1.pdf)
- [NIST: AI RMF Core](https://airc.nist.gov/airmf-resources/airmf/5-sec-core/)


## Questions about The Receipt Is Part of the Output

### What should an AI agent audit trail capture?

Capture the run identity, job, workflow and model versions, source records, output artifact, deterministic tests, status, stop reason, skipped actions, and approval state. Use stable identifiers, paths, versions, hashes, timestamps, and result states instead of a full transcript.

### How do people audit what an AI agent actually did?

Start with the receipt, then inspect its sources, result state, tests, boundary, and linked read-back evidence before opening the artifact. The receipt should connect the output to the run that produced it without copying secrets, unnecessary personal data, or raw confidential content.

### Should the model write its own audit log?

The receipt should be generated from stable run evidence rather than functioning as a transcript of the model's story. Record source paths, identifiers, versions, hashes, tests, timestamps, status, and approval state, while excluding hidden reasoning and secret values.

### How do you stop agents from reporting success after a tool only partially worked?

Pair model work with deterministic checks for schemas, required fields, file existence, totals, duplicates, allowed paths, and exact recipient matching. If the effect is external, link the receipt to read-back evidence and mark the run incomplete when the resulting state cannot be confirmed.

## Save the visual summary

Give receipt fields stable meanings | Read a receipt in the right order | Make the receipt easy to find | Decide how long receipts remain useful

[Download the PNG](/infographics/receipt-is-part-of-the-output-1200x1500.png)


## Related: Agent Governance

- [AI Agent Run Receipt Template](/articles/ai-agent-run-receipt-template)
- [No Work or Broken Run? Make the AI Agent Prove Which One](/articles/ai-agent-no-work-receipt)

----

```text
                  .|########||.                                       .|########||.                                       .|########||.
               |##||.      .||##|.                                 |##||.      .||##|.                                 |##||.      .||##|.
             |#|.              .|#|.                             |#|.              .|#|.                             |#|.              .|#|.
           |#|                    |#|                          |#|                    |#|                          |#|                    |#|
         .#|                        |#.                      .#|                        |#.                      .#|                        |#.
        .#.                          .#|                    .#.                          .#|                    .#.                          .#|
       |#.                            .#|                  |#.                            .#|                  |#.                            .#|
      |#             ......             #|                |#             ......             #|                |#             ......             #|
     .#           ||#########|           #|              .#           ||#########|           #|              .#           ||#########|           #|
    .#.         |######||######|.        .#.            .#.         |######||######|.        .#.            .#.         |######||######|.        .#.
    #.        .##|###|##|#|######|        .#            #.        .##|###|##|#|######|        .#            #.        .##|###|##|#|######|        .#
   ||        |##|#||||||||||||#||#|        ||          ||        |##|#||||||||||||#||#|        ||          ||        |##|#||||||||||||#||#|        ||
   #        |#||||||||||||||||||||#|        #.         #        |#||||||||||||||||||||#|        #.         #        |#||||||||||||||||||||#|        #.
  ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||
  #       .#||||||||||||||||||||||||#|       #        #       .#||||||||||||||||||||||||#|       #        #       .#||||||||||||||||||||||||#|       #
 ||   ....|||#||||||##|#|||#|#||##||||....|. ||      ||   ....|||#||||||##|#|||#|#||##||||....|. ||      ||   ....|||#||||||##|#|||#|#||##||||....|. ||
 #.  .  ....|#  ....#|||   ||| .#|||  ....#. .#      #.  .  ....|#  ....#|||   ||| .#|||  ....#. .#      #.  .  ....|#  ....#|||   ||| .#|||  ....#. .#
 #   .  ||||#| .#####||  . .#| .#|||  ||||#   #.     #   .  ||||#| .#####||  . .#| .#|||  ||||#   #.     #   .  ||||#| .#####||  . .#| .#|||  ||||#   #.
.|   |||||  #. |#|||||. ||  #. |#||. .|||||   ||    .|   |||||  #. |#|||||. ||  #. |#||. .|||||   ||    .|   |||||  #. |#|||||. ||  #. |#||. .|||||   ||
||   |....  #. ....|#.      |. ...|. ....||   ||    ||   |....  #. ....|#.      |. ...|. ....||   ||    ||   |....  #. ....|#.      |. ...|. ....||   ||
#.  .||||||##||||||##||####|||||||#||||||#|   .#    #.  .||||||##||||||##||####|||||||#||||||#|   .#    #.  .||||||##||||||##||####|||||||#||||||#|   .#
#    .||####|###########################|.     #    #    .||####|###########################|.     #    #    .||####|###########################|.     #
#      .#||||||.#.|| # |. ..# #| #|||||#|      #    #      .#||||||.#.|| # |. ..# #| #|||||#|      #    #      .#||||||.#.|| # |. ..# #| #|||||#|      #
#      .#|||||| ..  |# ## |#| ...#|#|||#|      #    #      .#|||||| ..  |# ## |#| ...#|#|||#|      #    #      .#|||||| ..  |# ## |#| ...#|#|||#|      #
#      .#|||#|# .# .#| #| ##|.#..#|||||#|      #    #      .#|||#|# .# .#| #| ##|.#..#|||||#|      #    #      .#|||#|# .# .#| #| ##|.#..#|||||#|      #
#      .#||||||############|######|||||#|      #    #      .#||||||############|######|||||#|      #    #      .#||||||############|######|||||#|      #
#   |...||#||||||#||||#|#||||||#|||||#||| |.|  #    #   |...||#||||||#||||#|#||||||#|||||#||| |.|  #    #   |...||#||||||#||||#|#||||||#|||||#||| |.|  #
#. .. ||||# .|||##|.  |#| .|| || .|||#. #|  # .#    #. .. ||||# .|||##|.  |#| .|| || .|||#. #|  # .#    #. .. ||||# .|||##|.  |#| .|| || .|||#. #|  # .#
|| |  ...||  ...##| |  #| .|. |. #####  .. .| ||    || |  ...||  ...##| |  #| .|. |. #####  .. .| ||    || |  ...||  ...##| |  #| .|. |. #####  .. .| ||
|| ||||| || ||||#|  .  |. |. |#. ||||| |#| || ||    || ||||| || ||||#|  .  |. |. |#. ||||| |#| || ||    || ||||| || ||||#|  .  |. |. |#. ||||| |#| || ||
.# |.....#|....|#.||||.|||##.|#|....||.#||.#. #.    .# |.....#|....|#.||||.|||##.|#|....||.#||.#. #.    .# |.....#|....|#.||||.|||##.|#|....||.#||.#. #.
 #.|||||||#############################| ||| .#      #.|||||||#############################| ||| .#      #.|||||||#############################| ||| .#
 ||       ##||#||#||||||#||#||#||#||##.      ||      ||       ##||#||#||||||#||#||#||#||##.      ||      ||       ##||#||#||||||#||#||#||#||##.      ||
  #       .#|||||||||#||#|||||||||||#|       #        #       .#|||||||||#||#|||||||||||#|       #        #       .#|||||||||#||#|||||||||||#|       #
  ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||
  .#        |#||||||||||||||||||||#|        #.        .#        |#||||||||||||||||||||#|        #.        .#        |#||||||||||||||||||||#|        #.
   ||        |#||||||||||||||||||#|        ||          ||        |#||||||||||||||||||#|        ||          ||        |#||||||||||||||||||#|        ||
    #.        .######|#|#########|        .#            #.        .######|#|#########|        .#            #.        .######|#|#########|        .#
    .#.         |#####||||#####|         .#.            .#.         |#####||||#####|         .#.            .#.         |#####||||#####|         .#.
     |#           ||########||           #.              |#           ||########||           #.              |#           ||########||           #.
      |#             ......             #|                |#             ......             #|                |#             ......             #|
       |#.                            .#|                  |#.                            .#|                  |#.                            .#|
        |#.                          .#.                    |#.                          .#.                    |#.                          .#.
         .#|                        |#.                      .#|                        |#.                      .#|                        |#.
           |#|                    |#|                          |#|                    |#|                          |#|                    |#|
            .|#|.              .|#|.                            .|#|.              .|#|.                            .|#|.              .|#|.
               |##||.      .||##|                                  |##||.      .||##|                                  |##||.      .||##|
                 .||########||.                                      .||########||.                                      .||########||.

Scale With Search  2026  [scalewithsearch.com](https://scalewithsearch.com)
```
