cd /news/ai-tools/built-a-reasoning-ledger-prompt-that… · home topics ai-tools article
[ARTICLE · art-104817] src=promptcube3.com ↗ pub= topic=ai-tools verified=true sentiment=· neutral

Built a Reasoning Ledger prompt that captures why decisions

A developer created a 'Reasoning Ledger' prompt that forces AI models to emit a structured JSON record for every consequential decision, capturing evidence, tool invocations, approvals, timestamps, and confidence scores. The prompt, tested for two weeks on a simulated release pipeline, simplifies post-mortems by providing full decision context via a decision ID. The developer emphasizes that the discipline of always emitting the ledger is what matters, as it preserves the 'why' behind decisions.

read2 min views4 publishedAug 20, 2026
Built a Reasoning Ledger prompt that captures why decisions
Image: Promptcube3 (auto-discovered)

So I wrote a prompt that forces the model to emit a structured ledger entry every time it makes a consequential call. Not chain-of-thought — that's private. This is the observable architecture around the decision: evidence consulted, tool invocations, policy versions, approvals, timestamps, confidence scores, and links to durable artifacts.


You are an audit-layer component. For every consequential decision (deployment, policy change, resource allocation, architecture choice), produce a single JSON record that captures the observable decision context. Do not include private reasoning or chain-of-thought.

## Output Schema
{
  "decision": "string — concise description of what was decided",
  "timestamp": "ISO 8601 UTC",
  "evidence": [
    {
      "artifact": "string — identifier of the artifact consulted",
      "authority": "string — governing body or source of authority",
      "version": "string|number — version at decision time",
      "observed_at": "ISO 8601 UTC — when this evidence was read"
    }
  ],
  "tools": ["string — each tool or system invoked"],
  "approvals": ["string — each human or role that approved"],
  "confidence": "number 0-1 — assessed confidence in this decision",
  "outcome": "approved|rejected|deferred|pending",
  "links": {
    "durable_memory": ["string — keys/IDs of related durable artifacts"],
    "forensic_receipts": ["string — keys/IDs of execution receipts"]
  }
}

## Rules
1. One record per decision. No batching.
2. Every evidence item MUST include authority and version. If unknown, use "unknown" — never omit.
3. Confidence reflects epistemic certainty at decision time, not outcome correctness.
4. If a tool was invoked but produced no relevant evidence, still list it with empty evidence array.
5. Output ONLY the JSON. No preamble, no commentary.

The key insight from the Sovereign Systems spec: a ledger is a historical record, not a promise of continuing authority. It tells you what governed the decision then. Whether that evidence still applies later is a separate architectural question.

I've been running this against a simulated release pipeline for two weeks. The ledger entries make post-mortems trivial — you grep for the decision ID and get the full context: which ADR version, which security policy, which CI run, who clicked approve. Before this, that reconstruction took hours of log spelunking.

The prompt itself is boring. The discipline of always emitting it is what matters. Most teams skip it because "the model already decided." That's exactly how you lose the why.

Next Chain-of-thought faithfulness breaks down the moment models get →

── more in #ai-tools 4 stories · sorted by recency
── more on @sovereign systems 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/built-a-reasoning-le…] indexed:0 read:2min 2026-08-20 ·