One evening, one non-coder, a self-correcting PR reviewer
The Change Advisor's own VISION.md warns that "a 1-line dependency addition can bring in 68 files, 9 tools, 3 hooks, and 200MB of dependencies." The clean PR is the disguise.
And this wasn't hypothetical — it happened on a real PR.
VISION.md names the case: "Tested on a real PR (engram-lite memory system integration)." The module is kenotron-ms/engram-lite — "Lightweight persistent vector memory for AI agents" — created 2026-03-04, its main tree holding 67 files.
Both are good engineering. Together, they are incoherent.
VISION.md line 47: "A memory system designed for invisible capture arrives at a project built on visible evidence chains — both are good engineering, together they're incoherent." Junk test sessions would be silently ingested as real knowledge.
A mechanical scan misses this entirely — so who catches it?
Chris Park (cpark4x) — described in the source repo's own deck as "a non-technical PM who wrote no code" — was sole author of all 12 commits to cpark4x/amplifier-change-advisor. His product knowledge, not a code review, is what made the poisoning obvious.
But product context alone wasn't enough either — it took a pairing.
The recipe analyzes through two lenses: "the CTO asks HOW, the CPO asks WHY and FOR WHOM." VISION.md line 254 records that the discussion "surfaced critical insights the automated analysis alone would not have caught."
This became a repeatable method — so he wrote its principle down.
Technical Excellence and Risk — asks HOW
User Value and Product Strategy — asks WHY and FOR WHOM
Commit f38af38d added docs/01-vision/VISION.md with +306. Line 202: "The tool never recommends APPROVE or REJECT as a final answer. It recommends DISCUSS." Line 16: "The tool doesn't decide — it makes you a better decision-maker."
Then he pointed that principle at his own recipe.
The recipe was emitting APPROVE/REJECT — contradicting the vision's "never decides." Commit 772050f7 fixed it: "verdict output always DISCUSS, never APPROVE/REJECT," touching only recipes/pr-review.yaml (+2/-2) to align with Principle 4, "The Decision-Maker Decides."
The tool that refuses to decide proved its principle on itself.
Six commits on 2026-03-05, from 21:45 to 23:56 UTC, by one author: the recipe, a 306-line vision, the verdict fix, executive lenses, a backlog, and a session deck. The AI didn't replace judgment — it gave judgment somewhere to land.
Shipped and public: installable via amplifier run --bundle git+github.com/cpark4x/amplifier-change-advisor@main.
Data as of: 2026-03-05 session; repo verified through latest commit 2026-03-15.
Feature status: Shipped / public and evolving (v2.0.0 documented 2026-03-11).
Primary source: the public repos cpark4x/amplifier-change-advisor and kenotron-ms/engram-lite, re-derived from live gh API output by an independent checker.
Commands run:
gh repo view cpark4x/amplifier-change-advisor — description & READMEgh api repos/cpark4x/amplifier-change-advisor/commits/f38af38d --jq '.files[]' — VISION.md +306gh api .../commits/772050f7 --jq '.commit.message, (.files[])' — verdict fix (+2/-2)gh api repos/cpark4x/amplifier-change-advisor/commits?per_page=100 — commit order & authorsgh repo view kenotron-ms/engram-lite --json name,description,createdAt,pushedAtgh api repos/kenotron-ms/engram-lite/git/trees/main?recursive=1 --jq '[.tree[]|select(.type=="blob")]|length' — 67 blobsgrep -niE '68 file|9 tool|3 hook|200 ?MB|invisible|evidence chain|APPROVE|REJECT|DISCUSS' VISION.md pr-review.yamlGaps: "68 files / 9 tools / 3 hooks / 200MB" are session-time blast-radius figures documented in VISION.md (current main tree has 67 blobs); the "non-technical PM" label is Chris Park's own self-characterization in the source deck; "4 executive lenses" was accurate at session date but COO/CFO were removed in v2.0.0, leaving CTO/CPO in the current recipe.
Primary contributor: Chris Park (cpark4x) — sole author of all 12 repo commits.