Lee Faus (@leefaus) header
Lee Faus (@leefaus) profile picture

I told GitLab's CEO a new VCS was coming. He passed. So we built it. Founder & CEO @atomicdotdev. Teacher by education, builder by accident.

South Carolina, USA
Joined April 2009
Photo by Lee Faus (@leefaus)Photo by Lee Faus (@leefaus)Photo by Lee Faus (@leefaus)Photo by Lee Faus (@leefaus)Photo by Lee Faus (@leefaus)Photo by Lee Faus (@leefaus)Photo by Lee Faus (@leefaus)Photo by Lee Faus (@leefaus)
Have you ever wanted to reorder or shuffle agent generated changes around so you could enhance just one of the changes without impacting the rest of the change set? AI agents write code by dependency, not by order. Git assumes the opposite, and that mismatch is the whole problem. atomic.dev/blog/the-dynamic-…
🤖 Made with AI
112
i think i opened this issue when i worked at github for a customer back in 2015. finally resolved.
1
28
If you will be in SF next week for QCon, come by the booth. I have a special demo to show how agents love @atomicdotdev and our new Atomic Reactor. More to come for everyone else early December.
2
34
The new SCM (Source Control Mafia)
13
13
10
106
13,011
Building Atomic, we saw agents translate unfamiliar requirements back into Git concepts. Plausible code could quietly restore the assumptions we were trying to remove. Architectural judgment has to survive implementation.
1
20
Atomic makes folders, binaries, and closures first-class citizens, with explicit relationships for collaboration and verification. Before asking agents to code around a constraint, question the primitive behind it. atomic.dev/blog/dont-inherit…
12
Two lines can change authorization across an application. Small diffs do not guarantee small blast radii. Reviewing intent requires criteria, affected entities, dependencies, and evidence for the exact state being accepted.
1
20
Atomic connects those relationships in its semantic change graph and records patch dependencies in its causal change graph. More agent output makes a coherent representation of change more necessary. atomic.dev/blog/dont-inherit…
10
Sparse checkout reduces what CI retrieves. It does not establish everything CI must validate. A service may depend on a schema, shared library, binary, and other proposed changes. Folder selection cannot define that state.
1
16
Atomic makes closures first-class citizens: the records and dependencies required for a particular state. CI needs an explicit validation scope before faster retrieval can serve it. atomic.dev/blog/dont-inherit…
10
One intent can span five repositories and five reviews. Every PR can pass while the overall change remains incomplete. A monorepo brings files together, but the relationships still need to be represented.
1
13
Atomic’s semantic change graph connects intent, work, evidence, and review. The scope of an intent should determine the scope of review. Repository layout should not make that decision for us. atomic.dev/blog/dont-inherit…
11
Anthropic’s Scion is an engineering achievement. It also solves a particular workload. Before copying the answer, examine why that workload has that shape. A daily merge count cannot explain the architecture on its own.
1
1
35
At GitHub and GitLab, I saw customers handle 30,000 daily merges on existing infrastructure without additional changes. Different workloads matter. Don’t inherit someone else’s bottleneck. atomic.dev/blog/dont-inherit…
22
Agent-native does not mean unconstrained. Hard gates should bound what an agent can consume: tokens, cost, time, recursion, tools, permissions. Then another deterministic boundary controls what it can affect. Between those boundaries, reasoning can remain nondeterministic.
1
2
30
Execution expands the graph outward. Triage walks it back toward intent. Change → evidence → task → acceptance criteria → intent. That gives us a stronger definition of done: the agent is finished when the resulting state reconciles with the intent that caused the work.
1
79
Agent interoperability does not require standardized reasoning. Claude Code, Codex, OpenCode and whatever comes next can keep their own hooks, plugins and effect systems. What needs to be normalized is the meaning of their events in the lifecycle of software change.
21
Once agents teach the graph a domain concept, we should not pay a frontier model to rediscover it every time. Reasoning can discover the vocabulary. Classification can map new work against it. Then views become semantic projections over the causal graph, not just named branches.
18
Search taught us to index the words in a system. Agents give us the opportunity to learn the language of the system. The ontology provides the grammar. The causal history builds the dictionary as agents discover domain concepts through real work.
10
The interesting agent loop is recursive, not linear. Parent intent → child intent → work → evidence → reconciliation. A child agent finishing does not mean the parent is done. It means the child is claiming closure and returning evidence upward.
1
15
Agent-native flips the control model: Intent becomes the instruction. Workflow becomes the evidence. A predefined workflow tells us what we expected to happen. A causal history tells us what actually happened, why it happened, and whether the result satisfied the original intent.
9