Value over output
Working software is useful only when it changes an outcome we care about.
Generated code is inventory until it produces evidence of value.
We prefer:
a smaller validated change
over:
a larger impressive implementation.
When software production accelerates, the scarce work moves to judgment, understanding, review, and trust.
Scarcity didn’t disappear.
Software generation is becoming inexpensive.
Code, tests, documentation, migrations, refactors, and exploratory implementations can be produced in quantities that were previously impractical.
This does not remove scarcity. It moves scarcity.
The constrained resources increasingly become:
We therefore do not organize engineering around maximizing code production.
We organize engineering around maximizing useful learning and safe change.
Twelve constraints for accelerated work
Working software is useful only when it changes an outcome we care about.
Generated code is inventory until it produces evidence of value.
We prefer:
a smaller validated change
over:
a larger impressive implementation.
Keeping every engineer and every agent busy is not the goal.
A system with ten concurrent AI-generated changes and a review bottleneck is not productive. It is congested.
We prefer low work in progress, short queues, and fast feedback over local utilization.
AI should increase throughput inside the WIP limit, not justify increasing WIP.
AI reduces the cost of producing large changes.
That makes small changes more valuable, not less.
We prefer changes that can be:
independently.
Cheap generation is not permission for large batches.
Plausibility is one of AI's strengths and one of its risks.
A coherent implementation can still be based on a false assumption.
We therefore prefer executable or observable evidence:
over confident explanations.
An agent working for thirty minutes without feedback can move quickly in the wrong direction.
We prefer agents operating inside short feedback loops:
intent
-> assumption
-> small change
-> test
-> feedback
-> refactor
-> integration
Autonomy is useful when feedback remains frequent.
The cost of understanding a change must not be transferred downstream.
The author of a change remains responsible for making it reviewable, regardless of who or what generated it.
We reject the pattern:
cheap generation
-> expensive human review
-> hidden organizational cost
A useful constraint is:
No faster than understanding.
This does not require memorizing every line. It requires sufficient understanding to explain the problem, important decisions, trade-offs, failure modes, and evidence.
We do not want regions of the system that only one engineer and their agent can safely modify.
Knowledge should remain transferable through:
AI must reduce the cost of knowledge sharing, not create private synthetic expertise.
AI is very good at producing complete-looking abstractions.
Completeness is not the same as necessity.
We prefer the simplest design that satisfies current evidence and preserves cheap future change.
We refactor when pressure appears.
We do not pre-pay complexity because generation is cheap.
Integration is a feedback mechanism, not an administrative stage.
We prefer:
A branch that contains days of agent work is delayed feedback.
Important assumptions should be visible before they become architecture.
Examples:
Whenever practical, an important assumption should eventually become one or more of:
AI can generate, inspect, explain, and propose.
It cannot own organizational accountability.
The engineer accepting a change remains responsible for:
"AI generated it" is neither a quality exception nor an incident explanation.
Lean and XP are not ceremonies.
A practice exists because it improves a feedback loop or reduces a known form of waste.
When a practice no longer improves the system, we change or remove it.
We prefer evidence that the system is improving over evidence that the team followed the process.
The operating model we want to explore
problem
-> hypothesis
-> smallest useful change
-> evidence
-> production
-> learning
rather than:
ticket
-> implementation
-> pull request
-> approval
-> done
"Done" should mean that the relevant uncertainty was reduced, not merely that code was merged.
It is not:
It is a set of beliefs to be tested against real engineering work.
When code generation becomes cheap, engineering should optimize for flow, feedback, understanding, and evidence. Lean helps us control the system of work. XP helps us keep change safe and inexpensive. AI increases execution capacity, but accountability remains human.
The manifesto is public, versioned, and deliberately separate from the experiment used to test it.
Propose belief changes against the manifesto source. Put local mechanics in the experiment. Support factual claims with evidence, and never rewrite an old expectation to make a result look obvious.