CodeLabProsCodeLabPros — homeMenu

Research infrastructure

Infrastructure for research that keeps itself honest

Software plus a set of rules for investigating something without fooling yourself.

Our role
Designed and built it
Built with
Python · SQLAlchemy · Content-addressed store · mypy --strict
Where it got to
Research system, ran a real engagement
cpos — research substrate
Terminal output from CPOS showing the preserved artifact store and the eight published research deliverables
Infrastructure for research that cannot fool itself
01

The idea

Investigate a market, a hypothesis or a claim properly, and be able to show afterwards exactly how each conclusion was reached.

02

What it actually needed

Everyone intends to check their own conclusions. Almost nobody does it in the week the conclusion is convenient, and by then the sources have moved and the reasoning has been compressed into a sentence nobody can unpack. So the honesty could not be a habit. It had to be something the software does whether or not the researcher is in the mood.

03

What got built

An evidence store that cannot drift
Every source kept whole and addressed by a hash of its contents, so the stored copy is provably the thing that was fetched and not a version edited later to agree with the conclusion.
Claims linked to what supports them
A conclusion is connected to the specific evidence behind it instead of to a summary of that evidence, so the chain can be walked in either direction.
Memory where nothing is deleted
When something is superseded, that is recorded instead of applied silently, so the history of what was believed, and when it stopped being believed, survives.
A stopping condition, agreed first
What would end the investigation is written down before it starts, so research concludes on evidence, not on fatigue or on finding something agreeable.
Published results, including the failures
Findings come out as written deliverables, with the refutations at the same weight as the survivors.
04

The decisions that shaped it

Attack every hypothesis, not just the doubtful ones

The doubtful ones were never the danger. A claim is at its most dangerous at the moment it starts looking correct, because that is exactly when nobody feels the need to check it. That is why the discipline had to be mechanical instead of a matter of judgement.

Publish the result that went against us

One engagement produced a verdict that contradicted the commercial outcome we wanted, and one experiment returned a flat zero. Both were written up and delivered as they were. A research system whose inconvenient results quietly do not get published is not a research system.

05

In production

Ran a real engagement end to end. Every theory opened was attacked, the majority were shown to be wrong, and the refutations were published as written deliverables alongside the survivors.

06

What this is worth

Research that records what it got wrong at the same weight as what it got right. The expensive kind of wrong is the kind nobody wrote down.

In more detailfor whoever wants it

Most research goes wrong in the same quiet way. You learn something, and a week later you remember the conclusion perfectly but have completely forgotten whether you checked it or inferred it. Both feel like knowledge. Neither arrives with a label.

CPOS is the software and the rules that stop that happening. An evidence store that keeps every source by a hash of its contents. A graph linking claims to the artifacts supporting them. Versioned memory, where nothing is deleted and supersession is recorded, not applied silently.

The rule that does the work

Findings that can be traced to a preserved source go in one section. Claims that merely sound traceable go in another, marked as such. Reasoning from the second as though it were the first is not permitted.

It reads like bureaucracy until you watch what happens without it.

What it found, including against us

Its first real engagement opened eleven theories about where a market opportunity was, and deliberately went looking for evidence against every one of them, not only the doubtful ones.

Four survived. Seven were refuted, several after they had already looked correct. The final verdict went against the commercial outcome we were hoping for, and that is what got written up and delivered.

What came out with the most valueNot an answer. Three filters, each of which now eliminates a whole class of bad candidate early and cheaply. One of them accounts for three of the seven refutations by itself. A method that fails faster is worth more than a conclusion you cannot check.

Five experiments from that period are written up and published in full, including the one whose result was a flat zero. A negative result you can trust is worth more than a positive one you cannot.