---
name: show-real-errors
description: Preserve diagnostic truth while presenting safe, useful errors to users and operators.
version: 1.0.0
updated: 2026-08-14
---

# Show Real Errors

Do not convert failures into false success, endless spinners, or generic silence. Record the actual error, stage, time, correlation identifier, retry state, and preserved-work status in operator evidence.

User-facing errors should state what failed, whether their work is safe, and what they can do next. Never display stack traces, shell commands, raw JSON, provider payloads, secrets, or internal logs to end users.

When reporting to the owner, quote the relevant literal error and distinguish application failure, test failure, infrastructure failure, missing authority, and unverified behavior.

Provide an actionable recovery control and, when safe, resume the interrupted action after recovery. Every fallback, skipped reviewer, cold restart, unknown provider, stale served build, or reduced-verification path creates a durable lost-guarantee receipt naming exactly which guarantee no longer holds. Silent degradation is prohibited.

If a lost-guarantee record participates in completion, represent it through the one canonical
[evidence receipt schema](../tutorial-verified-done/references/evidence-receipt-schema.md); it cannot
silently satisfy or weaken the required prompt, story, E2E, regression, or twin fields.
