← felipemolino.comWhite paper · The Control Tower Method

White paper · October 2026 · 5 min read

The Control Tower Method

Roadmaps, gates and maturity: how I move a product's control areas from manual to autonomous, with multiple AI agents working under controls.

Felipe MolinoFounder, CorkAI · Senior Director of Engineering
Multiple agentsClaude Code agents (Opus 5.5, medium effort), each on bounded, controlled work
27control areas mapped on NFI's digital-twin platform
L0 → L5an evidence-based ladder from not done to autonomous
~1,150automated tests on every change at CorkAI
100%of CorkAI's API routes covered by contract tests
~370story points on a 10-week plan
6–9 motarget to reach L5 where it pays

01At a glance

Every product runs on controls: the checks, reviews and decisions that keep it working. Most are manual. AI agents can do that work, but an agent without controls is just a faster way to break things.

The framework

Split the product into control areas and score each from L0 (not done) to L5 (autonomous). An agent gets more authority in an area only when the evidence supports it.

What I built

At NFI: 27 control areas on an enterprise platform. At CorkAI: the whole system, from roadmap to tests, with multiple Claude Code agents doing the building.

Results so far

The gates are enforced and the tests already caught real defects before release. Most of the foundation is in review, not yet released.

The end game

Where failure is expensive, agents detect, fix and document known problems inside limits I approved in advance. People handle strategy and exceptions.

The model writes the code. The operating model decides whether the code is any good, and how much an agent is trusted to do on its own.

02The framework

A control area is anything the product depends on that can fail without anyone noticing: a feature like billing or sign-in, or part of the engineering system like testing or releases. Each area gets a current level, a target and the evidence behind both. Not every area needs L5.

ManualAutonomous
L0

Not done

Nobody checks it. Users find the problems.

NextGive it an owner

L1

Manual

A person checks it, sometimes, their own way.

NextWrite the standard

L2

Partly automated

Some checks run, but a failure stops nothing.

NextCI that can refuse a change

L3

Checked on every change

A failure blocks the release. The biggest jump.

NextProduction alerts

L4

Measured, with alerts

Drift reaches the right person, with a runbook.

NextTrack record + pre-approved fixes

L5

Autonomous, under control

An agent fixes known problems within approved limits and leaves evidence.

ThenAudit the evidence trail

Figure 1The L0–L5 ladder. A level measures whether a control has consequences, not whether it exists. Each step has a specific unlock, so the gap to target becomes roadmap items.
L1 · ManualL5 · Autonomous, under control
Who noticesA user, or someone who happens to lookA production check, within minutes
Who fixesWhoever is available, by handA controlled agent, using a pre-approved fix
Who decidesDecided on the spot, under pressureThe owner, in advance, for known patterns only
EvidenceMemory and chat threadsLogged automatically, reviewed in the digest
Figure 2What changes between a manual control and an autonomous one.
The operating loop, from strategy through agents, CI and approval back to strategy Strategythemes, targets Roadmapepics, points Work itemdone + tests defined Agents buildClaude Code Pull request+ review packet CI gatecan refuse Owner approvesjudgment Releasetagged deploy Control tower+ maturityupdate evidence feedsthe next decision
Human decisionAgent workAutomated check or measure
Figure 3The operating loop. I decide at the start and at approval. Agents build, CI verifies, and a change that fails never reaches me.

03What I built

NFI Industries

Enterprise digital-twin platform · 10 accounts

27 control areas, each scored L0–L5

  • A plan to move each area from manual controls toward autonomous execution (APEM)
  • A roadmap control tower showing the plan and the maturity trajectory side by side
  • ADRs to record the decisions that shape the platform

CorkAI

AI-native wine app · web, iOS, Android

12 control areas, built by multiple Claude Code agents

  • Plan: about 100 work items, each with "done looks like" and "tests required"
  • Gate: a review packet on every pull request, enforced by CI
  • Prove: about 1,150 tests on every change, from unit to browser journeys
Figure 4The same method at two scales. The grids show how many areas each product has, not their scores.

How decisions get remembered

Agents start every session with no memory, and people move on. So every decision that's expensive to reverse gets an architecture decision record (ADR), at NFI and at CorkAI. Agents read the relevant ADRs before they work, so settled decisions aren't reopened, and whoever comes next inherits the why, not just the code.

1 · Trigger

A costly-to-reverse choice

Architecture, data model, vendor, AI model or security

2 · Draft

An agent writes it

Context, options, decision, consequences, how we'd know it's wrong

3 · Review

I approve it

In the same pull request as the code it affects

4 · Accepted

It becomes the rule

Agents read it before touching that area

5 · Superseded

Never deleted

A new ADR links back, so the reasoning trail stays whole

Figure 5The ADR lifecycle. Orange marks the human decision.
3PRs waiting for review
0open incidents
142 / 61points done / in review
98%CI pass rate, 7 days
Theme A54/60
Theme B39/50
Theme C22/40
Theme D21/60

Where this panel sits in the control tower

Roadmap & timelineWeekly boardOverview · this panelReview queue Quality & CIDelivery (DORA)Maturity matrixDecisions (ADRs)
Figure 6The overview panel, one of eight views in the control tower, all fed from GitHub so no status is updated by hand Illustrative data Roadmap content, numbers and theme names are placeholders.

04Results so far

The CorkAI foundation was built in one intensive working session, and most of it is in review, not yet released. What's already true:

✓The gates are real. Every pull request carries a review packet, and CI rejects any that don't.
✓The tests paid off on day one. They found authorization and data-integrity defects, fixed before release.
✓Every API route has a contract test, so an agent can't silently break the mobile apps.
✓The plan can't drift from the code. Roadmap, board and metrics read from one system of record.
✓Key decisions are written down, drafted by agents and approved by me.

05The end game

Not everything at L5: every area at the level its risk justifies, with evidence to prove it. For CorkAI that's L5 within six to nine months where a silent failure is expensive, and L3–L4 elsewhere.

AreaQ4 2026Q1 2027Q2 2027Target
TodayOctM2DecM4FebM6AprM8Jun
Product areas
RecommendationsL1L2L3L4L5L5
AI sommelier chatL1L2L3L4L4L4
BillingL2L3L4L4L5L5
Social & eventsL0L1L2L3L3L3
Engineering system
CI/CD & releaseL2L3L4L4L5L5
Monitoring & incidentsL1L3L4L4L5L5
Docs & decisionsL1L2L3L3L4L4
Figure 7The path from manual to autonomous, for a sample of areas Illustrative data The real matrix is scored from evidence and updated in the pull request that changes a level.

What L5 looks like

Detect

A production check sees recommendations stop personalizing for some users.

Triage

An agent gathers logs and the last change, and matches a known pattern.

Act

The fix is pre-approved, so the agent flips the kill switch to the previous model.

Verify

The same checks confirm recovery, and the evidence is logged.

Decide

I read the digest. My only decision is when to fix the root cause.

Figure 8An illustrative L5 incident. Anything outside a pre-approved pattern still pages me.

That's the end state for CorkAI, and it's the same direction for NFI's 27 control areas: controlled agents run the controls, and people own strategy, approvals and the exceptions.

06What this means for a product org

A maturity matrix per areaFixed L0–L5 definitions, a target per area, evidence that moves with the work.
Review packets for every changeWhy, what, effect, tests and rollback, whether a person or an agent made it.
ADRs as shared memoryAgents draft them, people approve them, and everyone reads them before working.
Autonomy earned per areaAgents get authority the way a new hire does: with a track record.

Build the factory first. Then let the agents build the product, and let the evidence decide what ships.

About the author

Felipe Molino builds and runs a transportation digital-twin decision platform at NFI Industries, where he built a technology organization from zero to more than twenty people across six countries. His team's work putting AI into live transportation operations won the 2026 FreightWaves AI Excellence in Supply Chain Award. He is completing an M.S. in Artificial Intelligence at the University of Colorado Boulder, is a Level Four Sommelier, and founded CorkAI.