All posts
2026-08-01·8 min

Conflict Lens: making agent disagreement legible

When two agents disagree, most systems pick a winner silently. Conflict Lens surfaces the disagreement as a first-class object you can inspect and resolve.

agent-rails/conflict-lensmulti-agentconflict resolutionobservability

The problem

Concurrent agents produce contradictions: two plans that cannot both execute, two beliefs about the same resource, two writes to the same state. The usual resolution is last-write-wins, which is not a resolution — it is a coin flip you cannot audit.

Worse, the disagreement is often the most informative signal in the system. If two agents with the same tools reach opposite conclusions, something upstream is ambiguous, and discarding one side throws that evidence away.

The approach

Conflict Lens models a conflict explicitly: the parties, the claims, the evidence each relied on, and the resolution strategy applied. Nothing is dropped without a record.

Different strategies suit different conflicts. Hierarchical authority is right when one agent genuinely owns the resource. Argumentation is right when the claims are beliefs. Escalation to a human is right when the evidence is thin and the impact is high, which is precisely the case where silent resolution is most damaging.

Because conflicts are structured records, they are also a diagnostic surface: recurring conflicts point at missing coordination, bad tool boundaries, or an underspecified goal.

What I am still figuring out

Detection without global coordination. Recognising that two agents are in conflict usually requires seeing both, and requiring a central observer reintroduces the bottleneck that multi-agent architectures exist to avoid.

The open question: can conflict resolution be made incentive-compatible, so an agent gains nothing by acting first and asking later?