ARKONE
← All case notes
Case note · silentThe Clock · the scheduler5 minute read

The briefing that fired before the company existed

A schedule fires on the hour it was given, whether or not the material it needs has arrived.

The Clock, seen from above on the Cabinet floor plan.
Exhibit 1. The Clock, at its place in the room.

Silent. On the third morning after a new company was added, a briefing landed on time. Two short sections, a confident opening line, nothing obviously wrong with any sentence in it. What it did not mention was that the company had a name, an address and nothing else: the documents were still being gathered, the roster of people was empty, and half the setup questions had never been answered. You read it, saw a quiet morning, and moved on.

What went wrong

The thing that decided to write that briefing was a clock, and a clock has no opinion about whether the material has arrived.

In the Cabinet, ArkOne’s reference design for an executive agent, the part that acts when nobody has asked is the Clock. It wakes every thirty seconds, looks for work whose hour has come, and takes each due job in a single indivisible step, so that claiming a job and marking it claimed cannot come apart. That claim is what makes a job fire once and only once, and the design runs a single Clock for the same reason: a second one would only race the first for work it could not win. Both settings sit on the Register, the page recording every setting of the design.

Notice what that guarantee covers and what it leaves alone. Firing once settles duplication and says nothing whatever about timing. Readiness is a property of the data, so if nothing in the system asserts that a company record is populated enough to reason about, the schedule asserts it by default, simply by arriving.

Two further parts of the design make that consequence visible. The Brief, the material handed to the agent before every turn, is assembled from two standing blocks: who the agent is, and where it is working. An empty second block is then a state you can read off the page instead of a silence. And the morning header synthesises what matters rather than re-listing the items beneath it, so a header with nothing to synthesise is itself the signal. The fifteenth paper sets out the Clock; the twenty-third sets out what lands on your desk.

The record

Suppose a print and packaging business of six hundred and twenty people, three days into setting up an agent, with the documents still being collected. The business, its people and the briefing below are invented for this exercise.

What the Clock saw What the Brief carried What the briefing said
A job due at seven, claimed once Who the agent is; a company name and nothing further A confident opening and two thin sections
The same job, due the next morning Who the agent is; the documents, the roster, the open matters A synthesis naming three things and what to do about each

Exhibit 1. Illustrative. One scheduled briefing, assembled before and after the company's own material arrived.

Both rows describe one job, one schedule and one agent behaving correctly. The claim held on both mornings, and neither briefing was sent twice. The difference is entirely in the second column, which was never something the schedule consulted.

The first row is the expensive one, because of how it reads. A briefing assembled from almost nothing does not arrive looking broken. It arrives looking like a quiet day, which is the one output nobody investigates. Fluency is no evidence of material: the same model that writes four useful paragraphs from a full record writes four smooth paragraphs from an empty one.

The cost carries further than one morning. Somebody decides in the first week whether this software is worth keeping, and a thin briefing on day three is read as the ceiling of the thing rather than as a setup step that had not finished.

What the two rows cannot show you is the version where the record fills only halfway and stays there, because a document was never uploaded and nobody chased it. There is no second row for that company. Every morning it receives the first row again, and every morning that reads as a quiet day.

What it means for you

“Fires exactly once” and “fires only when it should” are two different guarantees, and when a vendor sells you the first you probably assumed you were being given the second. Ask which one you bought. Moving the schedule later is the answer that will come back first, and it is a guess about how long setup takes rather than a fix.

What you want on the record of each company is a field: a written statement of what has arrived, the documents, the roster, the answered questions. Then ask what a scheduled job does when it reads that field and finds the record incomplete. A job that defers and says why is a job with readiness in it. A job that runs anyway has a schedule standing in for a fact.

The ask that settles it is a demonstration, not a description. Have somebody add a company with nothing in it but a name, bring the morning briefing forward, and read what lands. If it reads like a quiet day rather than like an empty account, the failure has just happened in front of you and nobody has to be believed about anything. If they say it would obviously be empty, that is the sentence to test, because the whole of this failure is that it does not look empty. The sibling failure at the same fixture is the message that arrived twice, which is what it costs to lack the first guarantee.

Next: The address the agent made up.

Asked plainly

Why would an AI agent produce a report about a company it knows nothing about?

Because the thing that decided to produce the report was a clock, and a clock has no view on whether the company's documents, people and settings have finished arriving. If the material is thin, the agent writes from thin material. A model asked to summarise almost nothing still returns fluent prose, so the output looks identical to a real briefing.

What does it mean for a scheduled AI job to fire exactly once?

It means two copies of a scheduler cannot both pick up the same due job and do the work twice, usually because taking the job and marking it taken happen in one indivisible step. That is a guarantee about duplication. It says nothing at all about whether the job should have run at that moment, which is a separate property somebody has to write down separately.

How do you stop an AI agent from acting before setup is complete?

By making readiness a recorded fact that the job checks before it does anything, rather than an assumption that setup finished first. In practice that means a field on the record saying what has arrived, a rule that a job with an incomplete record is deferred rather than run, and an output that says plainly when a section had no material in it.

Talk it through before you decide

A discovery call, no deck: your situation, the parts of the room it touches, and what you would need to decide first.