King Hippopotamus

Case study

Research & discovery method

Seven stations from vision to falsification: the programme is written first, gates return an exit status, and the finished deliverable re-enters as a hypothesis.

Context

I do not start research by asking a question and hunting for an answer. I write the programme down first, and the shape has come out the same way six times across six unrelated programmes — a filing-forensics system, an earnings-call platform, a deterministic equity workbench, two corpus-discovery studies and a platform blueprint — written months apart, in different domains.

The reason is a specific failure mode. A research system that cannot tell “the company never disclosed it” from “we never went and got it” does not produce incomplete work. It produces confident work that is wrong, because every ingestion hole is rendered in the deliverable as a disclosure hole and the sentence reads the same either way.

So the programme is written as artifacts that can refuse: an objective matrix a deliverable is checked against rather than a prose brief, a source census whose most useful column is what I am not taking, an execution manifest that gives every unit a budget and one output path, and gates that exit non-zero. The last station takes a finished report back in as a hypothesis and runs the audit against it.

What I built

The method is seven stations, and the first six exist to make the seventh survivable. The final station treats a finished deliverable as a hypothesis; it has been exercised, and it has withdrawn work.

That station asks one question of every declared gap in a finished report: genuinely not disclosed, present at source but never ingested, or sitting in the platform and never retrieved? Run in August 2026 against a completed campaign, it returned 19 findings — 3 genuine non-disclosure, 5 present at source but absent from the platform, 11 present in the platform and never retrieved. The third class is the one the station exists for: there a stated limitation is a misdescription, because the report says *cannot be known* when it means *we did not look*.

That question also exposed a defect one layer down. One INNER JOIN against the question-and-answer table made 55.8% of the corpus text — 274,961,510 characters, as recorded at the time of the fix — unreadable to every stage: precisely the half where a company states its capacity, customers and constraints before any analyst speaks. 47% of a later study's citations came from that half.

The first six stations are the written programme — a dated vision document, a frozen objective matrix (66 rows across 33 themes), a source census with an explicit gap column, an execution manifest of 48 units with budgets and fixed output paths, 5 gate programmes exiting 0 pass / 1 block / 2 warn-and-acknowledge, and a deliverable that ships its own limits.

The programme lifecycle — seven stations, gates between them, and the return arrow

1234567VisionObjectivesSourcecensusProtocolGatesDeliverableFalsification4 laws66 rows / 33 themesgap column48 unitsexit 0 / 1 / 2own limits19 findingsa finished report re-enters as a hypothesis‖ = a gate that returns an exit status, not a checklist

Decisions

  • Chose gates that return an exit status over a prose quality checklist, because a checklist cannot refuse to pass work — 5 gate programmes sit at the seams of a run and exit 0 pass, 1 block, 2 warn-and-acknowledge, and the analysis units are required to read the second gate's result file and answer its warnings in their own reasoning.

  • Chose a consolidated facts layer with disk-only analysis units over letting every unit read the raw filing extract, because 780 KB of source facts per company does not fan out to thirteen readers — consolidation reduces it to a 30–50 KB indexed document and the analysis units are forbidden the extraction tooling entirely, which also frees them from the single processing lock that serialises the run.

  • Chose to withdraw the finished campaign over correcting and republishing it, because the audit could not separate genuine non-disclosure from never-retrieved for every declared gap it carried — the failure record was preserved on purpose so the replacement process is built on what went wrong rather than on memory of it.

Evidence

Research artifact · evidence ledger

ClaimHow it was checkedStatus
The objective matrix that deliverables are actually checked against carries 66 rows across 33 themes.grep -cE '^\| \*{0,2}[0-9]+\.[0-9]+' $MATRIX → 66 objective rows, spread across 33 themespublished
The execution protocol specifies 48 units — 18 extraction, 13 analysis, 14 investigation, 3 assembly — each with a track, a budget, a lock requirement, a sequencing rule and a fixed output path, over a T=0 to T=28 minute three-track timeline.sed -n '/Complete Agent Manifest/,/TOTAL/p' $PROTOCOL ; grep -c '^### ' $PROTOCOL → 33 role and rule sections ; wc -l $PROTOCOL → 1,764published
Quality is enforced by code, not prose: 5 executable gate programmes plus 4 editorial gates, running on 3,593 lines across 8 modules, of which 487 lines are a library of universal arithmetic checks.count of the executable gate programmes in $GATES → 5 ; grep -c '^### Gate ' $MATRIX → 4 ; wc -l over every module in $GATES → 3,593published
The governing document set counts 8,078 lines across 8 documents, and 3,562 across the 4 core ones.wc -l over the eight governing documents → 8,078 ; over the four core documents → 3,562published
The consolidation step reduces a 780 KB raw fact extract to a 30–50 KB indexed document, and the 13 analysis units are declared disk-only — they read that one file and are forbidden the extraction tooling.grep -n 'Consolidated Facts Layer' -A 8 $PROTOCOL ; wc -l on the consolidation module → 1,011 linespublished
The falsification pass classified 19 findings — 3 H1 genuine non-disclosure, 5 H2 present at source but absent from the platform, 11 H3 present in the platform and never retrieved. H3 is the class where a stated limitation is a misdescription.JSON tally over $GAPS, the campaign's gap-classification record, compound verdicts assigned to their governing familypublished
The workbench generates its judgment worklist rather than improvising it: 16 lines of inquiry crossed with a registry of 40 recognised methodologies, each carrying a DATA, COMPUTE or JUDGE class that the generated cell inherits.python3 -c "import json;d=json.load(open('$REGISTRY'));print(len(d['lines']),len(d['methodologies']))" → 16 40published
The same plan-first shape recurs across the estate: 10 plan-class documents — design, architecture, protocol, pipeline, objective-matrix, investigation-plan, methodology and graph-audit files — across the research roots.find over the two research roots at depth 3 for PLAN*/DESIGN*/ARCHITECTURE*/*PROTOCOL*/RESEARCH-DNA*/PIPELINE*/*INVESTIGATION-PLAN*/METHODOLOGY*/CASCADE-AUDIT* | wc -l → 10published
The pipeline is not autonomous. Its own automation ladder places current operation at Level 1, manual trigger, with semi-automated, event-driven and fully autonomous listed as near-term, future and aspirational.grep -n 'Level 1: Manual trigger' -A 12 $PIPELINEpublished

12 claims tested · 9 published · 3 withdrawn before publication. Full evidence record available on request — king.hippopotamus@yahoo.com.

Published claims and the verification policy →

Limitations

  • This counts specifications, code and stored artifacts. It does not audit execution history — nothing here establishes how many companies completed a full gated run, or any success rate. The method is shown as design and as one falsification pass, not as a throughput record.

  • The pipeline runs at Level 1, manual trigger. There is no autonomy claim, and the units inside it are tooling under a protocol I wrote, not an unattended system.

  • Three of the six programmes are unfinished: the earnings-call platform is specified and partially built; the corpus-emergence study has a method built and run but no written note or rendered page; the workbench's compute frameworks are blocked on remaining adapters and its render phase is pending.

  • The supply-chain graph is not validated. Its own audit returns it as structurally sound but not fit to ship as-is: it carries backwards edges, a duplicate edge and missing edges that break exactly the read-through the platform wants.

  • The corpus studies measure language, not orders — a company can talk shortage to justify price and can stay silent about a real one. Nothing here is a market, causal or investment claim.

Links

No demo — the programmes described here run inside a private operating environment, so there is nothing to open. The commands that produced every figure are published instead, on the record page.

Authorship

I am the architect and author of record; drafts were produced by agent tooling under my protocol and every sentence was approved by me before publication.

Author approval — 2026-08-23, hash 7d9ab7e0