Criteria state when to act, and an action states what to do.Every business already runs on controls, even if only a few of them are written down as SOPs and most live in a spreadsheet someone opens weekly or in a single operator’s head. Codifying them makes each one a first-class citizen of the World Model: declared in a version-controlled
.control.yml
file, attached to the measures it reads and the actions it takes, rendered on
the World Model graph, and measurable. A proposed change to how you operate
can be backtested against your own history
before anyone commits to it, and measured once it is in place.
The term draws on two traditions, and both of them apply. In control theory,
a control loop is a reference, a comparator, and an actuator regulating a
plant, and since you cannot design or test a controller without a model of
the plant, the World Model supplies that model. In audit practice, a control
is a codified practice with an objective, an owner, and periodic testing,
which is exactly what these files are.
Two parts
Every control consists of the same two declarations:Criteria are first-class computations
Criteria are not free-form conditions. Each one is a named computation with its own semantics, built on the physics layer in the same way that thermodynamics builds engines and refrigerators from the same underlying laws. Oxygen ships three of them:
The computation is where the rigor lives:
anomaly carries the seasonal
model and the forecast envelope, while opportunity carries the benchmark
construction, the significance gating, and the gap-times-volume sizing. A
control never reimplements any of this; it mounts one computation and
attaches an action to it, which also means new computations can join the
library over time without any change to the control format.
Three controls
The three examples below share the same format, and differ only in the criteria computation they mount and the action they take. Anomaly detection mounts theanomaly computation and informs:
opportunity computation and informs:
trigger and acts, placing an order when stock
runs out:
Control and automation are different concepts. A control states what the
business does and why (“never run out”), whereas an automation states how a
machine executes it (“run these steps”). A control without an automation is a
manual practice, and an automation without a control is just plumbing;
binding the two together is what lets Oxygen check that the automation still
does what the control says it should.
Controls on the World Model graph
Controls render on the World Model graph as a second kind of node alongside measures, with edges to what they read and to what they act on:Three engines, one rotation
Operating a company comes down to three standing jobs, and Oxygen builds an engine for each of them:- Run the business with the Control Engine,
which executes the acting controls the company operates by (replenishing,
staffing, pricing, escalating), each administered as a
.control.ymlfile. - Expand the business with the Opportunity Engine,
which runs controls built on the
opportunitycomputation to find where the business underperforms its own benchmark, size the gap in dollars, and drill down to the levers that close it. - Fix the business with the Anomaly Engine, which runs controls built on
the
anomalycomputation to detect when an outcome breaks from its forecast and to decompose that break to its root cause in the Insights Inbox.
As an example, the Anomaly Engine opening up
labor_cost_pct for a location
might read:
Next steps
Evaluation
Backtest a proposed version and measure an adopted one
World Model
The physics layer that controls are written over
Automations
The execution engine an acting control binds to
Metric Tree
The measures and relationships a control reads