Skip to main content
A translucent glass panel stands upright in darkness, partly obscuring a glowing wireframe sphere of intersecting lines refracted into wavy bands, with an amber glow on the reflective floor below.

Justin Bartak · Strategy · · 9 min read

Half the failures were the instruments, not the code

TL;DR

Thirty three of sixty six logged failures were the instruments themselves. Why we self publish the research, and why the newest paper's DOI took a person seven days to issue.

Half of them were not bugs.

Sixty six documented engineering failures, read on September 2, 2026, and thirty three were failures of the instrument rather than the thing it was watching. Tests that could not fail. Monitors that could not see. A metric measuring a proxy and printing the proxy's number under the real thing's name.

That is the opening claim of a paper on governing an agent leadership team. Fixed URL, my ORCID on it, the raw corpus published beside it.

For seven days the row in its status table that would carry a DOI said deposit pending.

Why did the second paper wait a week for its identifier?

Nothing in the paper was unresolved. The PDF was built on September 2, 2026. The page was live the same day.

What was missing was a person. No agent in this company holds the Zenodo login, and the checklist that turns that PDF into a record is a file in the repository with every field already filled in: the title, the publication date, the creator row with the ORCID, the license, and the related works rows pointing at the three data files the paper reads. What was left was a human logging in, uploading, publishing the record, then writing the identifier into two files by hand. That happened on September 9, 2026. The record is 10.5281/zenodo.22683647. The PDF was not rebuilt, because the identifier is not printed in it.

A DOI can be made to resolve to a withdrawal notice. It cannot be un-issued.

So it is never a placeholder, and no build script gets to mint one because the build happened to run. The URL did not change on deposit. A citation copied during that week still resolves. Only the identifier was added.

Why did the section need building at all?

Until August 27, 2026 there was no research section. There was one directory holding one child, a landing page for a preprint on agent native dataset design, at a stable URL, with a permanent identifier and an open reproduction repository.

It was in the sitemap. It was linked from nothing in the navigation.

The nav bar already carried a Research tab, and that tab landed somewhere else. The one page on this site carrying a permanent identifier was reachable from no menu item, and I had built the menu item that pointed away from it. It went up on April 25. I did not see the gap until August 27.

The fix was a registry. Every entry is now defined in one file that three consumers read: the card grid on the research hub, the sitemap, and the search submitter. A cluster with no registry acquires orphans. I know that because this one did.

What does self publishing actually cost?

These are self published preprints, not journal submissions, and the honest version of that trade is less flattering than the version where I say peer review is slow.

What I get is speed and control. I can publish on the day a measurement is taken, at a URL I own, with the data files attached under a permissive license.

What I give up is larger. Nobody outside this company has checked the work before you read it. There is no reviewer. On the governance paper one rater assigned every failure class, and that rater sits inside the organization being described. There is no control group and no comparison against another company's codebase.

All of that is printed on the page. The limitations block is a required field on the registry's data type, not a footnote, so an entry cannot be published without stating what its evidence does not establish.

What did the first paper actually find?

A negative result about our own data, which is a strange thing to attach a permanent identifier to.

The evaluation ran across five model vendors in ten configurations for 1,500 responses. The predicted advantage for our dataset over baseline sources was rejected in six of eight retrieval cells. In one cell it held, and ours beat two of the comparison sources. The paper names the two that beat it, Glassdoor on factual queries and BuiltIn on broader compensation queries, and attributes the gap to the link graph and click signal advantage those sources accumulated over long histories. That is the paper's explanation of the result, not a mechanism the evaluation isolated.

The dataset it documents is our own compensation data. 3,445 roles across 81 metropolitan areas, free and openly licensed.

A United States figure in it is a computed estimate. A baseline for the role, adjusted for local cost of living, with a deterministic variance for each role and city pair. No wage percentile is consulted when a page is served, and the methodology page says so. It also says that 513 bands serve all 3,445 roles, so most role titles share a band with another title. Two titles sitting on one band are not two separate observed measurements, and the page says that in those words.

Why does every number carry a date?

There is a stat block near the top of the hub. Counted on August 27, 2026, the repository held 105 automated guards, 173 org documents, 59 logged failures, and 90 audit dimensions.

The date is not decoration. A bare count goes stale in silence, which is worse than being wrong loudly.

My favorite thing in that block is a mistake that did not ship. I wrote the audit dimension figure as 94, from memory of the range. The roster runs from 1 to 95 with five numbers absent. Running the generator said 90. I was wrong by four, on the page whose whole value is being accurate, in the sentence arguing for counting over recalling.

What are the two lanes for?

A paper carries a method, a measurement date, and usually an identifier. A field note is a reproducible practice, written so you can run it on your own project.

Both are datable. Both need a receipt. The lane sets the rigor expected of the artifact, never whether a claim needs its source.

Career advice is neither, so it stays in the career guides, which were built for it. That boundary is what keeps the word research meaning something here. A listicle beside a paper with a permanent identifier tells a reader the paper is also just a post.

What is in the field notes?

The guard census is the one I hand people first. Of 105 guard scripts, 24 block a commit outright and the rest report. There are 87 guard test suites, and all 87 assert that the detector stays quiet on a clean input rather than only firing on a bad one.

That rule exists because four detectors misfired on a single day in July 2026. Every one passed its own suite. Each suite had only ever proved the detector could be loud. A guard you have never watched stay silent is not tested.

The failure catalogue is bleaker. Of 59 distinct failures logged as of August 27, 2026, 34 raised no error at all. No exception, no red test, no failing exit code. They were found because somebody opened the artifact and looked.

The token field note is the one about being wrong in public. Across 151 agent sessions and 75,949 turns, measured August 27, 2026, the average turn re-read 385,641 tokens of context. Two accountings of that same run disagree about the agent's own writing. Both are correct. Counted raw, what the agent produces is one token in a few hundred, which reads as rounding error and suggests that shortening it is pointless. Weighted for price, with generated output at five times base input and cache reads at a tenth, it stops being rounding error. This company's always loaded engineering guidance had been quoting the raw framing back at itself for weeks. The tool now prints both, and the rule that survives either accounting is that spend tracks context size multiplied by turn count.

What will the section not do?

It will not tell you this generalizes. One organization, one codebase, mostly one date each. A census is not a time series, and none of these entries carries a second observation yet.

It will not hand you our configuration. The repository is private and holds the valve, the agent fence, and credential handling. The rule is to publish the pattern and the receipt, never a live config, a secret, or a working bypass. Where a result depends on something private, the measurement goes out and the setup stays in. That makes some of this harder to reproduce than I would like.

And it will not claim that a guard existing means a guard working. Counting 105 detectors does not establish that 105 problems were prevented. That sentence sits in the limitations block of the census, where a reader can hold me to it.

Where does the research point?

All of it measures one running system, and Orbyt Collective is that system. The card linking to it from the research hub carries the Collective's own hero animation, imported, not a screenshot and not a copy.

The narrative version, the arguments and the 2am rewrites, stays on the blog. Research is where a measurement goes once it can survive somebody checking it.

Related reading:

  • Orbyt Collective the running system every one of these papers measures.

  • The research hub the papers and field notes themselves, each carrying its own measurement date.

  • The Machine the agent seats and the kill switch, in narrative rather than in tables.

  • The dataset the compensation data the first paper ran through its retrieval evaluation.

  • The methodology page what a salary figure on this site is, and what it is not.


Originally published on orbytlabs.ai on Sep 23, 2026.

Frequently asked questions

Can I reproduce any of this?

Partly, and each page says which part. The governance paper serves its three raw files from this site under a permissive license: the failure corpus, the seat run ledger, and the public decision ledger. The dataset paper's evaluation code is private, available on request. The source repository stays private, so where a result depends on our configuration you get the measurement and not the setup.

How do I cite a paper whose DOI has not been issued yet?

Author and year with the page URL, which is the form the page prints while the deposit is pending. That URL is canonical and does not change when the Zenodo record lands, so a citation copied early keeps resolving afterwards. Both papers now carry a DOI and print both forms, including the BibTeX entry.

What separates a field note from a paper?

A paper carries a method, a measurement date, and usually a permanent identifier. A field note is a reproducible practice, written so you can run it against your own project this afternoon. Both are dated and both must name the command or file behind every number. The lane sets the rigor expected, never whether a claim needs its receipt.

Has anyone outside the company reviewed these?

No. That is the cost of self publishing and the pages state it rather than leaving a reader to work it out. There is no external reviewer, no control group, and on the governance corpus a single rater assigned every class. The limitations block on each entry names those gaps in the entry's own words.

Share this article

XLinkedIn
Justin Bartak, Chief AI Officer and AI-native product leader

Justin Bartak

4x founder and Chief AI Officer. $383M+ in enterprise value delivered across regulated fintech, tax, proptech, and CRM platforms. Recognized by Apple. Built Orbyt solo in 32 days with Claude Code. Founder of Purecraft.