A clone that "acts like you" is only as honest as the data underneath it. If that data is a vibe, the clone is a vibe. So this post does something the marketing version never would: it opens the drawer. Below is the raw decision ledger — every blocker the loop hit and the answer it was given — pulled straight from the local store. Eleven rows. Then we'll watch those eleven rows become a map of how one engineer decides under pressure.
Step 1 — the raw data
When an autonomous run can't verify a step or hits a hard rule, it records an escalation: the blocker, a deterministic risk score from 0 to 1, and the human's answer (approve, skip, or takeover). This is that table, verbatim — nothing illustrative:
Step 2 — the same data, made visible
Now plot every one of those eleven rows on a single axis — risk left to right, colored by the answer. Same data, no new numbers. Each row above becomes exactly one dot below:
Read it honestly, because the honesty is the point. The shape is not "high risk always stops." It's more specific and more human than that: the one genuinely dangerous thing — a force-push to main, risk 0.95 — was skipped outright. Several high-risk hard rules (touching secrets, sending something external) were approved, but only after they surfaced for review — the human looked and said yes. And a cluster of low-risk, twice-failed steps drew a spread of skip and takeover — "this isn't worth another autonomous attempt; I'll handle it." That spread is a real preference, and it's not one you could write down as a rule. It's only visible because it was recorded.
That is the entire thesis of the project in one chart: judgment is a distribution you can only see by capturing real decisions. No prompt produces this. No model knows it about you until it watches you.
Step 3 — how the resolver uses it
Those eleven rows aren't a dashboard. They're the resolver's working memory. When a new blocker arrives, the resolver does three concrete things with this exact data:
- Retrieve. It ranks past blockers by keyword overlap with the new one, boosting same-category matches, and pulls the closest few. A new "not verified after 2 attempts" step retrieves #3, #4, #9 — your real answers to that exact situation.
- Ground. It hands a local model your profile plus those retrieved rows and asks one question: given how this person answered these, what would they say now? The model returns a decision, a confidence, and which precedent drove it.
- Apply, carefully. It acts only if the decision is actionable, the confidence clears the bar for that category, and it isn't a hard rule. Otherwise it does the honest thing and wakes you.
Two deliberate engineering choices make this trustworthy rather than spooky. It runs entirely on a local model — Ollama on your own machine, no row of that ledger ever leaving it — because a model of your judgment is about the most personal data there is. And it is built to grow: every time you answer a fresh escalation, that answer is written back as a new precedent, so the map above gains a point and the next retrieval is a little sharper. The clone earns its picture of you one real decision at a time.
Why show the raw data at all
Because a judgment system that won't show its evidence is just a confident stranger. The reason to open the ledger is the same reason the loop exists: an autonomous agent should be auditable down to the individual decision it learned from. You should be able to point at any dot on that chart and read the exact row it came from. When the data and the visualization are the same eleven facts seen two ways, there's nowhere for a marketing number to hide.
That's the standard worth holding AI products to. Not "trust the model." Show the data, show what you drew from it, and let the two line up in plain sight.
The ledger and the chart are the same eleven rows from the project's local decision store — one is the table, one is the picture. It's an open, local-first system; the decisions never leave your machine. Earlier in this series: the four-stage control loop.