Contents
  1. I — Purpose and foundations
    1. What another agent changes
    2. Coordination foundations
  2. II — Dividing and assigning work
    1. Decompose for recombination
    2. Roles and decision rights
    3. Coordination structures
  3. III — Information, state, and handoffs
    1. Send usable results
    2. Accept shared-state changes
    3. Transfer responsibility explicitly
  4. IV — Integration and scrutiny
    1. Check the combined result
    2. Preserve useful independence
  5. V — Shared resources and limits
    1. Control competing work
    2. Budget the complete team
  6. VI — Failure and diagnosis
    1. Contain failure and unfinished work
    2. Find the consequential exchange
  7. VII — Architectural evidence
    1. Compare complete designs
  8. Check understanding
  9. Open questions
  10. Selected talks
  11. References
  12. Talk library
← All topics

Multi-Agent Systems: Dividing Work Without Losing the Whole Task

A multi-agent system divides responsibility among agents that can investigate, act or check work separately. The benefit may come from parallel progress, specialized tools or separate working contexts. The challenge is combining their contributions into one useful result: assignments can overlap, assumptions can conflict and local success can leave the overall task unfinished. This chapter explains decomposition, communication, shared state, integration and the costs that determine whether a team improves on one agent.

I — Purpose and foundations

What another agent changes

An agent uses observations to choose its next action toward an assigned goal. In a prescribed workflow, application rules determine the stages and transitions, including branches, repetition, and parallel operations. The distinction is not whether execution responds to new information, but which choices the application leaves to the agent. Agent Engineering develops this distinction. A multi-agent system distributes those choices among several participants, whose decisions must still produce a compatible result.

Coordination manages dependencies among activities: one participant needs another's result, two participants need the same resource, or several contributions must satisfy one requirement. It is the mechanism that keeps locally reasonable decisions compatible with the overall task.

Locate the decision, rather than count calls.
ArrangementWho chooses the work and continuation?
One agent with parallel toolsOne decision-maker selects operations; tools execute them.
Prescribed workflowApplication rules determine stages and transitions, potentially including model calls.
Cooperating agentsSeveral participants select actions within assignments; coordination governs their interaction.

Agents need not use different models or processes. Conversely, separate processes may simply execute predetermined work. A role's instructions, model selection, tool access, and workspace are distinct configuration choices; a specialist name does not create any of them automatically.

Separate participants can investigate different directions or divide information too extensive for one working context—the input available to a model for its current decision. Anthropic's research-system account describes these benefits alongside greater model usage and difficulty with tightly interdependent work. Separation helps only if each participant returns a contribution the others can use; otherwise, it creates more investigation without a better combined result.

Coordination foundations

The central coordination problems predate language models. Systems needed ways to combine partial knowledge, allocate work, and keep participants informed when circumstances changed. The following developments addressed different parts of that problem; they are complementary ideas, not stages in an inevitable replacement sequence.

DevelopmentContribution
Hearsay-II, begun in 1973Carnegie-Mellon's project, described by Erman, Hayes-Roth, Lesser, and Reddy in 1980, combined specialized knowledge sources through shared speech hypotheses. Its configurable structure accommodated interactions that could not all be specified beforehand.
Contract Net, December 1980Reid G. Smith described allocating dynamically generated tasks through announcements, bids, and awards, instead of permanently assigning every task to a processor.
STEAM, September 1997Milind Tambe represented shared team goals and commitments explicitly, supporting role monitoring, reorganization, and decisions about when teammates needed an update.
AutoGen, August 2023Qingyun Wu and colleagues made multi-participant conversation programmable, separating how a participant replies from the control flow choosing who acts next. Participants could combine language models, tools, and human input.

Language models expanded what a participant could interpret and produce through a message interface. They did not make assignment, communication, or shared commitments unnecessary. Those responsibilities still determine whether a collection of capable participants behaves as a coherent system.

II — Dividing and assigning work

Decompose for recombination

Decomposition divides an overall requirement into contributions that can be combined to satisfy it. Start by asking what each assignment needs from the others. The more one assignment depends on or constrains another, the greater their coupling, and the more coordination they require. Assignment size, or granularity, creates a second tradeoff: smaller assignments clarify actions but add decisions and handoffs. The planning chapter explains subgoals; assigning them to separate agents also requires deciding how their results will fit together.

There are different reasons to separate work. Investigators can pursue different evidence, specialists can receive tools suited to their responsibilities, and workers can process large inputs without passing every detail to the coordinator. Medic, a system for diagnosing failing Apache Spark jobs, illustrates the last case: a subagent analyzed charts of job metrics and returned summarized findings to the parent agent. This kept the detailed analysis out of the parent's context. Such separation does not remove dependencies: the parent still needs the findings before using them in its diagnosis.

In this schematic of Medic’s reported metrics-analysis path, the specialist examines chart details and returns selected findings to the parent diagnosis. The parent depends on that contribution without receiving the specialist’s entire analysis; separate contexts are not a security boundary.

Choose boundaries by inspecting prerequisites, shared assumptions, readable inputs, permitted writes, and the final acceptance condition. For example, inspecting a producer and a consumer separately can expose useful parallel work, but their reports must still be checked against the same interface contract. Concurrently changing both sides without preserving that contract creates additional coordination instead.

The testing interface can determine whether useful independent work exists. In Nicholas Carlini's February 2026 compiler-building report, independent failures initially gave parallel agents separable debugging tasks. Linux compilation later concentrated them on the same bottleneck, causing duplicated effort and conflicting changes. The team used the existing GCC compiler for most files and its developing compiler for selected files, making failures easier to localize and divide among agents. This was an experimental project, not a controlled agent-count speedup study.

Roles and decision rights

A role specifies a reusable responsibility. An instance is a participant performing it, and an assignment is the particular work it currently owes. Its deliverable is the result another participant will inspect or consume. These distinctions prevent a broad label such as reviewer from substituting for a concrete promise.

An example read-only review assignment makes both the contribution and its limits explicit.
Contract elementExample
Objective and inputsInspect the named consumer revision against the supplied interface contract.
Dependencies and exclusionsUse the specified producer revision; do not redesign the interface.
Permitted effectsRead source and run checks in the assigned environment; do not publish changes.
DeliverableReturn findings, source locations, check results, and unresolved limitations at the agreed artifact location.
AcceptanceThe integrator checks coverage and compatibility; the worker's completion report does not approve the combined result.

Specialization should change actual instructions, information, capabilities, or assessment duties. In Medic, dedicated prompts and restricted tool subsets made diagnostic responsibilities easier to maintain and test separately. That is a maintenance benefit reported for this system, not proof that every specialized prompt creates expertise.

Keep the acting software, its accountable owner, and the requester it represents distinct. Permission to investigate is not permission to commit a change; delegated authority governs that boundary. Likewise, separate conversations or repository copies are not necessarily execution isolation. A locally useful objective must remain subject to global constraints, such as preserving the public interface.

Coordination structures

Once contributions have boundaries, choose how work is assigned and released. In supervisor–worker delegation, a supervisor requests bounded work and retains orchestration responsibility. A handoff instead transfers responsibility for subsequent work under the application's contract. Either arrangement can use the same underlying model.

Negotiated allocation is useful when the appropriate worker is not fixed beforehand. Contract Net's manager announces eligibility conditions, required bid information, and an expiration. Participants bid; the manager selects a contractor and supplies the information needed to begin. Manager and contractor are task-specific roles, so a contractor can subcontract. Selection still depends on application-defined capability and eligibility rules.

Shared state consists of records accessible to several participants. A blackboard uses shared intermediate results to coordinate further work. In Hearsay-II, changes to hypotheses activated eligible knowledge sources. A contemporary example, ActiveGraph, uses behaviors that react to graph state and emit events; completing research can release a dependent writing task.

Shared state releases dependent work

Example

A dependency can release work through a state change without a direct call from one agent to another.

A simplified ActiveGraph-style dependency: recorded research completion makes writing eligible; it does not guarantee immediate execution. Findings supply the writing input through a separate data path. When writing runs, the produced memo remains subject to result acceptance.
Read the diagram as text
  • Research findings. The result artifact, separate from its completion status.
  • Research completion recorded. Shared task state changes.
  • Dependency condition satisfied. The relation releases the dependent task.
  • Writing behavior runs. Consumes findings after becoming eligible.
  • Memo contribution. A new result, still subject to the application's acceptance rules.
  • Research completion recordedDependency condition satisfied: control: completion condition.
  • Dependency condition satisfiedWriting behavior runs: control: enable task.
  • Research findingsWriting behavior runs: data: findings.
  • Writing behavior runsMemo contribution: data: produced contribution.

Choreography coordinates through published events rather than a central caller: each participant subscribes to relevant events and publishes its own outcomes. This reduces direct coupling but distributes delivery and debugging obligations. A missing result might mean publication failed, consumption failed, or duplicate handling went wrong. Shared-state activation and event choreography can coexist, but neither makes write authority implicit.

Communication structure and authority structure are separate. A central supervisor can leave domain judgments to specialists while owning integration. Conversely, peer messaging still needs rules for resolving dependencies. AutoGen makes a related distinction between participant reply behavior and speaker-selection control. A graph or conversation interface alone does not specify who may accept a result.

III — Information, state, and handoffs

Send usable results

Inter-agent communication is an interface, not an unrestricted conversation. A request asks for work; an observation reports something encountered; a proposal recommends a change; progress describes unfinished work; an accepted decision records what the authorized owner has settled. Treating these as interchangeable text can turn a suggestion into an unintended instruction or a progress update into a completion claim.

Common ground, operationally, is the task-relevant information participants have established for their joint work; it need not mean identical beliefs. Communicate changes that affect another participant's choices. STEAM made this tradeoff explicit: leaving teammates uninformed can damage coordination, but communication itself costs resources. Its selective policy addressed this in symbolic-agent simulations, not language-model teams.

A usable result identifies its assignment, sender, inspected scope, assumptions, findings, supporting artifacts, and unresolved limitations. Provenance records origin and derivation: the inputs used, the activity producing a result, and the responsible participant. The W3C PROV model separates these entities and relationships; a report derived from another report is not another original observation.

Suppose a review message already records its assignment, sender, and the producer and consumer revisions. Its result still needs to say what was established.
Result bodyWhat the recipient can infer
“The consumer is compatible.”The conclusion supplies neither supporting checks nor a coverage limit.
“The consumer accepts the producer's documented success response. Source locations and test output are attached. Error responses were not checked.”The recipient can inspect the support, preserve the qualification, and assign the missing review.

Only information crossing the result boundary is available to the recipient. LangChain's subagent guidance identifies a concrete failure: a worker investigates successfully but omits its findings from the returned response. Forwarding everything is not the only remedy. Select relevant findings, preserve references to detail, and retain qualifications. Context selection and recoverable compaction develop this tradeoff. A schema can require fields without proving their contents true.

Accept shared-state changes

An agent's current context is a local view. A candidate artifact is a proposed contribution. A task record describes obligations and status. An accepted decision governs subsequent work. Keeping all four in one database does not make them equivalent, nor ensure that every participant has read the latest version.

Authoritative state is the application-controlled record used to decide what may happen next. Workers can produce separate contributions while an explicit acceptance boundary controls shared changes. LangGraph's orchestrator-worker example, for instance, gives workers their own state and collects outputs in a shared field. Collection itself is not verification or conflict resolution.

ActiveGraph's proposal path records a target version before application. If two proposals target the same version, applying one makes the other stale. The second needs reconsideration against current state. This applies to the explicit proposal path, not all mutations; freshness checks do not establish semantic correctness or permission.

The object advances; B’s target does not

The object advances; B’s target does notBefore: Object X is version1, proposals A and B each target1. Applying A advances the same object to2; B remains unchanged targeting1, so its mismatch requires reconsideration. B is not automatically wrong or rebased.Before applying AAfter applying AObject X · version 1Object X · version 2Proposal A · target version 1Submitted against Object XProposal A · appliedApplication advanced Object XProposal B · target version 1Retained proposal against Object XProposal B · target version 1Requires reconsiderationApply ARetain B unchangedMismatch: current 2 ≠ B target 1Explicit proposal path only · freshness does not establish permission or semantic correctness
In the explicit proposal path, A and B target Object X version 1. Applying A advances X to version 2; B remains recorded against version 1 and requires reconsideration. This neither automatically rejects B’s meaning nor rebases it.

Read and write ownership should follow these distinctions. A message sends selected information to named recipients. A shared task ledger exposes assignments and accepted status. A blackboard exposes intermediate material that can activate further work. Each needs explicit rules for refreshing readers and accepting writes. An ordered commit boundary can prevent lost updates without serializing every investigation; state acceptance explains the underlying protection.

When an input is superseded, record which contributions depended on it and notify their owners to revalidate. Provenance supplies the relationships, not automatic invalidation. Retained knowledge needs the same care: memory consolidation must not turn repeated copies of a finding into additional support.

Transfer responsibility explicitly

A successful handoff requires agreement about the work that continues, not merely delivery of a message. The recipient needs the current objective, relevant state, permitted actions, deliverable location, outstanding obligations, and a route for clarification or refusal. Use durable task identities and retained artifacts so these obligations survive a worker's lifetime.

Define these events separately in the application contract.
EventEstablished factRemaining obligation
DispatchA request was sent.Ensure receipt or resolve failed delivery.
ReceiptThe recipient received it.Clarify or accept the assignment.
Assignment acceptanceThe recipient undertook the specified work.Perform it or report inability to continue.
Completion reportThe worker reports an outcome.Inspect the result against acceptance criteria.
Result acceptanceThe accepting owner approves the identified contribution.Integrate it and satisfy remaining task requirements.

The FIPA Request protocol distinguishes agreement or refusal from reported success or failure, although explicit agreement is optional in specified circumstances. An operational counterpart is PagerDuty acknowledgment: it records a responder claiming an unresolved incident, while missing acknowledgment permits escalation. Neither precedent makes a completion report independent proof of the requested outcome.

A practical ownership policy keeps the sender responsible while acceptance is pending or refused, assigns execution responsibility after acceptance, and names who owns recovery if the recipient cannot continue. Bind these decisions to the assignment revision. Changed scope should supersede affected assignments rather than silently reinterpret their results. Integration should wait for required accepted contributions; optional work needs an explicit disposition, not an indefinite wait.

Transport does not supply the whole agreement. Direct calls can suffice inside one application. Model Context Protocol (MCP) exposes tools and context; Agent2Agent (A2A) defines remote task exchanges, status, and artifacts. An MCP tool can wrap an agent without thereby acquiring A2A semantics. A framework handoff can also change control state without establishing business acceptance. Choose the integration boundary separately from the responsibility contract; the A2A specification describes its task model.

IV — Integration and scrutiny

Check the combined result

A semantic conflict is an incompatibility in meaning, assumptions, or combined effects. It can exist even when contributions are well formed, current, and individually acceptable. An invariant is a condition the combined result must preserve. Software contracts define such obligations; integration must check them across contribution boundaries.

Sousa, Dillig, and Lahiri's November 2018 Verified Three-Way Program Merge illustrates this with two null-pointer protections. Each branch removes one protection while retaining the other. Combining their edits removes both. SafeMerge checks semantic conflict freedom rather than relying on textual compatibility.

Protection in the published example
VersionEarly null checkGuarded dereference
BasePresentPresent
Branch ARemovedPresent
Branch BPresentRemoved
CombinedRemovedRemoved

The same integration obligation applies to recommendations. Grounded Reasoning Systems for Cloud Architecture separates specialist candidate generation from central reconciliation, then elaborates surviving recommendations. The coordinator looks for conflicts and redundancies before investing in detailed proposals. This is a workflow example, not proof that a coordinating model always resolves them correctly.

Integration should therefore compare assumptions and effects against the shared requirement, not merely concatenate outputs or select the last writer. When requirements themselves disagree, preserve the alternatives and identify the authorized decision-maker. Conflicting code and organizational guidance should remain visible together; silently choosing one can conceal the very issue requiring review. Another fluent summary is not a substitute for that decision.

Preserve useful independence

Correlated mistakes occur together because participants share a misleading source, assumption, model behavior, or influence from another answer. Several agreeing reports can all descend from one mistaken premise. Different role names or models do not establish independent confirmation; the information and checking paths matter.

Independent initial work followed by comparison differs from discussion in which participants revise after seeing one another's answers. In Debate or Vote, majority voting explained much of the gain over one response across seven tested benchmarks and exceeded the tested debate variants on average. More rounds sometimes hurt accuracy. These were mainly answer-generation tasks with a shared underlying model, not shared-state tool workflows. Sampling and agreement explains aggregation separately.

Make the second participant's assessment duty concrete. Eugene Yan and Henna Dattani's May 27, 2026 security-review guide separates vulnerability discovery from adversarial verification. The verifier receives the finding and codebase in a fresh container, without the discoverer's conversation or filesystem, and searches for reasons the finding is wrong, including overlooked mitigations.

The verifier receives the finding and the same code revision, with a different question: what might make the finding wrong? Discovery conversation and working filesystem are excluded from the fresh container. This schematic limits narrative carryover, not shared assumptions or verifier error.

That boundary reduces exposure to the discoverer's narrative; it does not remove shared code, model assumptions, or verifier error. Failure to reproduce an exploit does not prove its absence. Preserve the claim's origin, the check performed, and the check's result. Agreement about what to do remains distinct from correctness of the supporting claims. Checks and their limits develops the latter distinction.

V — Shared resources and limits

Control competing work

Contention is competition for limited access. Two agents can interfere through a mutable file, database record, browser session, or service quota even when their assignments differ. A shared browser is especially concrete: one participant's navigation changes the state the other is observing. Partition resources where possible and coordinate access where sharing is necessary.

Duplicate work repeats an investigation or action. Independent replication can be deliberate scrutiny; accidental repetition wastes capacity. Unique task IDs distinguish records, not semantic scope: two differently named tasks can pursue the same bug. The compiler project used task claims and separate repository clones but still encountered overlapping work and integration conflicts.

Match the control to the boundary.
ProblemUseful controlWhat remains
Overlapping investigationsExplicit scope and task claimsDifferent descriptions can conceal the same work.
Lost shared-state updatesAn ordered commit path for that mutable boundaryParallel reads and investigations can continue.
An obsolete worker writes lateReceiver-enforced ownership generationThe receiver must actually reject obsolete requests.
Repeated external effectsThe receiving service's deduplication contract and outcome reconciliationA task claim or separate workspace does not protect the external operation.

A lease grants temporary permission; expiry does not prove that its holder stopped. Fencing checks an ownership generation where an update is accepted. Chubby uses sequencers to reject obsolete lock-holder requests that arrive late. Apply the same distinction when reassigning agent work: a replacement must not make an old result newly authoritative. Stale-result rejection covers the runtime mechanism.

Deadlock is circular blocked waiting—for example, each of two participants waits for a result the other will produce only afterward. Livelock is continued activity without progress, such as repeatedly revising assignments in response to one another without settling either. Neither is diagnosed merely by slowness or message volume. Identify the missing progress and actual dependency before adding workers or retries.

Budget the complete team

Fan-out launches separate work; fan-in combines the required results. Under fixed durations and represented constraints, the critical path is the longest dependency path determining earliest completion. A required slow contributor delays integration even if every other worker is finished. Shortening work off that path does not necessarily shorten the task.

Consider two independent inspections taking six and four seconds, followed by four seconds of integration and checking. Keep these work durations fixed while varying dispatch overhead and resource availability. Elapsed completion depends on the resulting schedule; summed leaf-operation durations measure something different and are neither token counts nor monetary charges.

Additional resource waits need their own intervals or constraints. If both inspections require one exclusive session, the assumed overlap is infeasible. Do not count prerequisite waiting again inside an operation's duration. Changing concurrency can also change queueing, so yesterday's observed waits are not constants for a new schedule.

Elapsed completion and total work differ

Inspection A takes 6 seconds, B takes 4, and integration takes 4. Only dispatch duration and access to inspection resources change. The serial baseline performs A, then B, then integration.

Elapsed completion: serial 14 s, delegated 12 s (2 s faster).
Summed leaf-operation durations: serial 14 s, delegated 16 s. Parent spans and idle waits add no work here.
Shared-axis schedule comparisonSerial A then B then integration. Delegation dispatches before inspections, which overlap only with independent resources. Integration waits for both results. Dark bars mark operations on the completion critical path; light bar B is noncritical only in the independent case.0481216SerialDelegatedA06 sB610 sIntegrate1014 sDispatch02 sA28 sB26 sIntegrate812 sSeconds · dark: critical path · light: noncritical inspectionIndependent inspections overlap; integration starts only after the slower A finishes.
OperationStart (s)End (s)Duration (s)Critical?
Dispatch022Yes
A286Yes
B264No
Integrate8124Yes

Default independent resources: serial completion 14 s versus delegated 12 s; leaf durations total 14 s versus 16 s. With the same 2 s dispatch and one exclusive session, delegated completion becomes 16 s. These durations are neither token counts nor monetary charges.

With independent resources and 2 s dispatch, delegation completes in 12 s versus 14 s serially, while summed leaf durations rise to 16 s. An exclusive session removes inspection overlap. The controls change scheduling assumptions, not measured agent performance.

Amdahl's law expresses the fixed-workload limit imposed by unchanged serial work: accelerating only one portion leaves the rest. For agents, delegation may also change investigation depth, communication, and quality, so the law is a useful constraint rather than a universal scaling forecast. Completion-path budgeting treats the timing analysis in more depth.

Allocate the aggregate budget across the delegation tree. Bound concurrency and delegation depth, and reserve capacity for synthesis, checking, and recovery. Giving every child the parent's entire allowance multiplies exposure rather than preserving the limit. Repeated summaries and unnecessary exchanges belong in the consumption ledger alongside useful investigation.

Pydantic AI documents passing a parent's usage object into delegated runs for aggregate accounting. Its Temporal-activity exception matters: a copied context does not propagate delegated usage back that way. Across different models, aggregate tokens also do not reconstruct price. Keep requests, tokens, priced usage, elapsed time, and human review effort separate.

VI — Failure and diagnosis

Contain failure and unfinished work

Failure containment limits which assignments, artifacts, resources, and decisions a failure can affect. A crash leaves execution unfinished; an incorrect contribution threatens dependent conclusions; a blocked dependency prevents useful continuation; a common failure can affect every participant. Separate proposal areas and validation before shared publication keep a worker's output from automatically becoming the team's accepted state.

Logical roles are not containment barriers. Enforce tool permissions and execution isolation at the actual resource boundary. Then use recorded dependencies to select repair scope: preserve unrelated accepted work, but revalidate conclusions that relied on an invalid contribution. Lineage identifies candidates for repair; the application must decide whether they remain valid.

Repair follows dependencies

Example

One invalid contribution can block integration without invalidating unrelated accepted work.

An invalid finding identifies its derived recommendation for reassessment; lineage does not by itself prove that recommendation false. The unrelated accepted contribution remains usable under unchanged assumptions. Final integration waits for the required unresolved contribution; the integrator owns repair and any permitted partial outcome.
Read the diagram as text
  • Finding A — invalid. Its owner must correct or withdraw the contribution.
  • Recommendation A — recheck. Depends on the invalid finding; its owner must reassess it.
  • Finding B — accepted. Does not depend on finding A.
  • Contribution B — retained. Remains usable under the unchanged assumptions.
  • Final integration — blocked. Integrator owns repair coordination and any decision to return permitted partial work.
  • Finding A — invalidRecommendation A — recheck: support dependency: invalidated.
  • Finding B — acceptedContribution B — retained: support dependency: unchanged.
  • Recommendation A — recheckFinal integration — blocked: required contribution: unresolved.
  • Contribution B — retainedFinal integration — blocked: required contribution: available.
Sibling-failure policy is a task decision.
PolicyAppropriate conditionCompletion obligation
Fail fastA failed prerequisite makes remaining work unusable.Request cancellation and account for every child.
Collect independent outcomesUnaffected contributions remain useful.Record successes and failures separately.
Return partial workThe task contract permits a useful incomplete result.Name missing coverage and remaining ownership.

Python 3.11's TaskGroup and gather illustrate different local policies: TaskGroup cancels siblings after a non-cancellation exception; gather normally lets them continue, and can collect exceptions alongside results. These semantics do not detect plausible wrong answers or provide durable distributed ownership.

Structured concurrency ties child lifetimes to an owning scope. Across worker or coordinator loss, retained assignments still need a named recovery owner. Deliberately detached work needs its own owner and control handle. Cancellation scope must be explicit: Pydantic AI distinguishes a delegate cancelling itself from a shared token cancelling a run tree.

A stop request is not proof that remote execution ended. Temporal documents cooperative cancellation and timed-out attempts that may continue while another attempt runs. Preserve uncertain external outcomes and reconcile them before repeating consequential actions; effect recovery owns that mechanism. A deadline can end the current attempt without making missing required work complete.

Find the consequential exchange

A trace correlates operations in an execution; a span records one operation. Observability explains those primitives and their propagation. Multi-agent diagnosis additionally needs to reconstruct what one participant made available, what another actually received, and which contribution the system accepted.

Record meaning-changing boundaries, not just separate transcripts.
Boundary recordDiagnostic use
Actor, assignment, revision, and ownerDetermine what was owed and who remains responsible.
Input and artifact versionsDistinguish stale evidence from a current but mistaken interpretation.
Sent, received, and consumed result referencesSeparate omitted transmission from unused available information.
Acceptance and shared-resource operationsIdentify where a proposal became consequential.
Terminal outcome and unfinished obligationsDistinguish completion from abandonment or unresolved waiting.

Lamport's ordering of distributed events gives a useful constraint: sending a message precedes its receipt, and these relationships compose with local event order. Nearby timestamps alone do not show that information crossed a boundary. Even a recorded receipt establishes possible influence, not that the model understood or used the message.

In the reported pharmaceutical analytics failure, attribution identified reduced insurance coverage and patient affordability as causes of declining prescriptions. The later recommendation emphasized sales-representative activity instead, then forecast improvement from that intervention. The observed problem was a broken connection between cause and action. The speakers attributed it to their decomposition; the example alone does not isolate architecture from model capability.

The repair depends on where the connection failed. Missing evidence calls for investigation; a finding omitted from transmission calls for a better result contract; received information ignored during synthesis calls for different synthesis constraints; an incoherent recommendation accepted afterward calls for a stronger final check. Why Do Multi-Agent LLM Systems Fail? documents lost context, ignored inputs, missing clarification, and inadequate verification as distinct observed failures. Such labels organize diagnosis; controlled changes test its explanation.

Locate the break before choosing the repair

Locate the break before choosing the repairFive distinct records: finding, sent result, received input, candidate and accepted outcome. Missing established findings concern investigation; omitted findings concern packaging; ignored received findings concern synthesis; accepted incoherence concerns final checking. Missing records leave events unknown.Finding artifactEstablished contentSent resultPackaged contentReceived inputAvailable contentCandidateRecommendationAccepted outcomeSelected by ownerInvestigatePackageDeliverSynthesizeAcceptMissing findingsInvestigate scopeFinding omittedRepair result contractReceived but ignoredConstrain synthesisIncoherence acceptedStrengthen final checkMissing records → unknown event, not proof of no communication. Receipt does not prove use.
This diagnostic framework is not a reconstruction of the pharmaceutical system’s unavailable trace. Arrows denote information packaging, transfer, synthesis or acceptance, not proof of understanding. Investigate the recorded boundary before attributing the failure.

VII — Architectural evidence

Compare complete designs

Compare a capable single agent, a prescribed workflow with useful parallel operations, and the proposed cooperating team. A paired comparison evaluates alternatives on the same tasks. Restore each starting environment, repeat trials to expose variability, and inspect the final artifact or environment outcome rather than accepting the system's own completion claim.

Declare the experiment before interpreting its outcome.
DimensionComparison requirement
Task familiesInclude separable investigations and tightly coupled changes; report them separately.
Available meansDeclare model access, inputs, tools, permissions, and human assistance.
ResourcesDistinguish equal allowances from equal realized tokens, cost, or time.
Useful outcomeCheck final quality, required coverage, and consequential failures.
Coordination burdenCount duplicated work, integration, review, waiting, and recovery.
Disrupted executionInclude late, conflicting, and incomplete contributions with explicit expected dispositions.

An equal-resource experiment asks which architecture uses a stated allowance better. A practical comparison asks which design meets a quality requirement and deadline at acceptable cost. These are different claims. Towards a Science of Scaling Agent Systems found task-dependent results: separable financial investigations benefited, while all tested multi-agent variants underperformed the single-agent baseline on sequential inventory-changing planning. Matching maximum total iterations did not equate realized tokens, prices, or latency.

An architectural ablation removes or changes one mechanism to test its contribution. Remove peer discussion while retaining independent work; replace dynamic assignments with prescribed ones where feasible; change context separation without silently increasing resources. The debate-versus-voting result makes communication removal an informative test, not a universal recommendation to suppress communication.

Keep a boundary when focused responsibility, separate information, or useful parallel progress improves the complete outcome enough to repay coordination. Simplify it when prescribed work delivers the same benefit with less uncertainty. Remove it when repeated explanation, conflicting contributions, or recovery dominates. Victor Dibia's eval-driven design guidance captures the practical discipline: establish a working baseline, then add agent complexity only when task-specific evaluation supports it.

Open questions

  1. Predicting useful decomposition remains difficult because task coupling can emerge during execution. Progress would mean recognizing when independent work has become a shared bottleneck and revising assignments without losing useful progress.

  2. Selective communication must preserve consequential changes without consuming the benefit of delegation. Useful progress would demonstrate task-specific policies that reduce exchanges while retaining coordination under unexpected conditions.

  3. Semantic integration is harder than version checking: current, individually valid proposals can still conflict. Progress would connect executable shared requirements to acceptance checks that detect incompatible combined effects without rejecting useful alternatives.

  4. Measuring the value of agent boundaries requires separating decomposition from extra computation and human repair. Stronger comparisons would include credible single-agent and prescribed-workflow baselines, matched operating conditions, and measured integration and recovery effort.

Follow the curated reading path through the speakers and demonstrations behind this entry.

Explore more talks

The rest of the library, beyond the curated path. Cited talks support this entry; reviewed transcripts were processed in full. Metadata candidates have not been reviewed as sources or verified as topic members.

28 matching talks

TalkSpeakerEventYear
Sarmad QadriAI Engineer World's Fair 20252025
Tom SmokerAI Engineer World's Fair 20252025
Eno ReyesAI Engineer World's Fair 20242024
Agents need more than a chat

Transcript reviewed

Jacob LauritzenAI Engineer Europe 20262026
Nick Nisi, Zack ProserAI Engineer World's Fair 20252025
Marah Abdin, Robert McHardyAI Engineer World's Fair 20262026
Maxime Rivest, Isaac MillerAI Engineer World's Fair 20262026
Charles PackerAI Engineer Summit 20252025
Yohei NakajimaAI Engineer World's Fair 20262026
Allie Howe, Dex Horthy, Geoffrey Huntley, Ian Livingstone, Greg PstruchaAI Engineer World's Fair 20262026
Ilan BigioAI Engineer Summit 20252025
Anoop Kotha, Toki SherbakovAI Engineer World's Fair 20252025
Vinoth GovindarajanAI Engineer World's Fair 20262026
Vision: Zero Bugs

Cited in this entry

Johann Schleier-SmithAI Engineer Code 20252025
Lance MartinAI Engineer World's Fair 20262026
Eugene YanAI Engineer World's Fair 20262026
Juan PeredoAI Engineer Summit 20252025
DottaAI Engineer World's Fair 20262026
Nishant GuptaAI Engineer World's Fair 20262026
Adam TerlsonAI Engineer Summit 20252025
Sarthak AggarwalAI Engineer World's Fair 20262026
Vincent KocAI Engineer Europe 20262026
Tom MoorAI Engineer World's Fair 20252025
Damien MurphyAI Engineer World's Fair 20252025
Daniel ChalefAI Engineer World's Fair 20262026
Alex GavrilescuAI Engineer Code 20252025
Brandon WaselnukAI Engineer Europe 20262026
Aparna Dhinkaran, Aparna DhinakaranAI Engineer Summit 20252025

References

Coverage and source review
Processed transcripts
33 processed in full · 5 in the curated path
Automated source review
Passed
Metadata candidates
0 unreviewed; not verified topic membership
Corpus version
1bd8e407b26a07b33815594e1b2db5f41827119a2b3cb6fbf240f9fc571fc767

Automated review checks source support; it is not publication approval.

A synthesis of selected conference talks and technical references. Citations link to the source material; they do not imply that every talk on this subject is included.

  1. Building Effective Agents

    The report distinguishes prescribed workflows from agents directing their own execution. Parallelization can partition different subtasks or repeat the same task for aggregation. An orchestrator-worker arrangement instead lets a central model determine subtasks from the particular input, delegate them, and synthesize results. Prompt chaining connects predetermined stages and can include programmatic intermediate checks. Similar execution diagrams can therefore differ in who chooses the work.

  2. The Interdisciplinary Study of Coordination

    Coordination means managing dependencies among activities. Dependencies include competing demands for limited resources, producer-consumer relationships, and relationships between tasks and subtasks. Different mechanisms can manage the same dependency: shared resources might be allocated through priority, budgets, or a designated decision maker. This supplies a foundation for explaining contention as participants competing for a limited resource and for choosing coordination mechanisms from task dependencies.

  3. Claude Code: Create Custom Subagents

    Subagent definitions separate descriptive instructions from configuration for tools, denied tools, model selection, permission handling, and maximum turns. Model selection can inherit the parent model. A subagent normally starts in the main conversation's working directory; a separate repository copy requires worktree isolation. These are distinct configuration dimensions, so a specialized role name does not itself create a separate workspace or different model.

  4. How we built our multi-agent research system

    Anthropic describes a lead agent assigning independent research directions to subagents with separate contexts, then synthesizing their findings. This fits valuable breadth-first work whose information exceeds one context. The report identifies higher token consumption, shared-context requirements, and inter-agent dependencies as limits, and observes fewer parallelizable subtasks in coding than research. Clear task boundaries, output expectations, and effort budgets reduce duplicate work. Changes to a lead agent can cascade into changed subagent behavior, so independently running workers are not automatically independent sources of failure.

  5. The Hearsay-II Speech-Understanding System: Integrating Knowledge to Resolve Uncertainty

    Erman, Hayes-Roth, Lesser and Reddy’s June 1980 retrospective dates Carnegie-Mellon’s Hearsay-II effort to 1973. Because useful knowledge sources and their interactions could not be specified in advance, the team needed a configurable framework for combining them.

  6. The Contract Net Protocol: High-Level Communication and Control in a Distributed Problem Solver

    Reid G. Smith’s December 1980 paper addresses allocating dynamically generated tasks among distributed processors without shared memory. A manager announces work, eligible participants submit bids, and the manager awards a contract. Announcements specify eligibility, required bid information and expiration; awards supply information needed to begin. Manager and contractor are task-specific roles: one node can hold both roles, and contractors can subcontract. Managers monitor execution and process results. The CNET distributed-sensing simulation illustrates matching tasks to participants using capabilities and location rather than a permanently fixed assignment.

  7. Towards Flexible Teamwork

    Milind Tambe’s STEAM paper, published in September 1997, addresses brittle domain-specific coordination when teammates have incomplete or inconsistent information and encounter unexpected failures. STEAM represents shared team goals and commitments explicitly, monitors role performance and supports reorganizing a team. Its communication policy weighs the consequences of leaving teammates uninformed against communication cost. In simulated helicopter-team experiments, communicating too cautiously imposed substantial overhead, while minimal communication failed under changed arrival conditions that the selective policy handled. The contribution is reusable teamwork reasoning, not merely assigning different task labels to participants.

  8. AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation

    Qingyun Wu and colleagues introduced AutoGen in an August 2023 preprint. Its conversation-programming approach separates what an agent does when replying from the control flow determining which participant acts next. Configurable participants combine language models, tools and human input through message interfaces. An assistant can propose executable code while another participant executes it and returns results for revision; a group-chat manager can select speakers and broadcast messages. The paper demonstrates these patterns across mathematical, coding and interactive applications, turning multi-agent interaction into a programmable application structure.

  9. Building Reliable Agentic Systems

    Finer subtasks make the action space easier to control, but excessive decomposition creates more decisions the model must get right.

  10. Medic for Apache Spark - First Aid for Failing Jobs - Drasko Profirovic, Pinterest

    Medic rendered metrics as annotated graph collages, analyzed them in a quarantine sub-agent, and returned summarized findings to the parent.

  11. Medic for Apache Spark - First Aid for Failing Jobs - Drasko Profirovic, Pinterest

    Medic decomposed its single prompt into specialized roles with dedicated prompts and restricted MCP tool subsets, using the library described as LangGraph's Deep Agent library.

  12. Verified Three-Way Program Merge

    Marcelo Sousa, Isil Dillig and Shuvendu K. Lahiri’s November 2018 paper shows why a successful textual merge need not preserve program behavior. Its opening example has two null-pointer protections. One branch removes the early null check while retaining the guarded dereference; another removes the dereference guard while retaining the early check. Combining those edits removes both protections and introduces a null dereference absent from either branch. SafeMerge instead checks a semantic conflict-freedom condition intended to preserve the variants’ changes relative to their common base. This supplies a concrete example of individually compatible-looking contributions becoming unsafe during integration.

  13. Building a C compiler with a team of parallel Claudes

    Nicholas Carlini’s February 5, 2026 report describes sixteen Claude agents working on a compiler through separate containers and repository clones, a shared upstream repository and task-claim files. Many independent failing tests initially supplied separable debugging work. Linux compilation then became a shared bottleneck: agents encountered the same bug, duplicated effort and overwrote one another’s changes. The team changed the harness to compile most files with GCC while testing selected files with the developing compiler, making failures easier to localize and divide. Failures involving combinations of files still required additional isolation. The case shows how the test and decomposition interface can determine whether additional workers have useful independent work.

  14. How we built our multi-agent research system

    Anthropic's lead researcher decomposes queries into worker tasks specifying objectives, output formats, tools and sources, and boundaries. Workers explore separate directions and return findings for synthesis; citation processing follows. Persistent artifacts with lightweight references can avoid repeatedly copying large outputs through the coordinator. Vague delegation caused duplicated searches and coverage gaps. Evaluation combines rubric-based judging of factual accuracy, citations, completeness, source quality, and tool efficiency with human testing. The report estimates multi-agent token use at roughly 15 times ordinary chats and reports a 90.2% improvement over single-agent Opus 4 on its internal research evaluation. These findings motivate measuring outcome quality alongside tokens, tool calls, latency, and coordination overhead.

  15. Backlog.md: Terminal Kanban Board for Managing Tasks with AI Agents — Alex Gavrilescu, Funstage

    Acceptance criteria should describe testable behavior, and completion should depend on satisfying the definition of done.

  16. IT Admin for the AI Workforce — Sarthak Aggarwal, Decawork

    Represent the agent actor, accountable owner, represented subject, and delegation context separately.

  17. LangChain: Subagents

    A supervisor invokes subagents through tools and retains orchestration responsibility. Delegation may block until a result returns or launch background work while the supervisor continues. Inputs can selectively include task metadata, prior results, or messages. The documentation identifies a communication failure in which a worker performs useful investigation but omits its findings from the final response seen by the supervisor. Returning selected state fields alongside text makes the output boundary explicit.

  18. LangChain: Handoffs

    The documented handoff mechanism updates persistent control state such as the active agent or current step. The runtime uses that state to select another agent or change a single agent's prompt and tools. Handoff tools that update conversation messages must preserve the tool-call/result pairing. Thus, a control transition differs from a worker returning a result, and the handoff label alone does not establish that multiple agents exist.

  19. The Hearsay-II Speech-Understanding System: Integrating Knowledge to Resolve Uncertainty

    Hearsay-II uses independent condition-action modules called knowledge sources. They communicate through a shared database, the blackboard, which stores intermediate hypotheses. Creating or changing a hypothesis can satisfy another module's activation conditions. Hypotheses retain information such as temporal location and credibility, with links recording supporting relationships. A dedicated stopping module selects output when an adequate interpretation exists or resources are exhausted.

  20. Active Graph Agent Runtime (BabyAGI 4)

    ActiveGraph uses behaviors that react to shared graph state and emit events, drawing on blackboard architecture and Kafka.

  21. From Chaos to Choreography: Multi-Agent Orchestration Patterns That Actually Work — Sandipan Bhaumik

    Choreography supports independently evolving agents, but requires event tracing and explicit delivery guarantees to remain debuggable.

  22. Grounded Reasoning Systems for Cloud Architecture

    Separate specialist recommendation generation from central conflict resolution and final proposal writing.

  23. FIPA Request Interaction Protocol Specification

    FIPA separates requesting an action, accepting or refusing it, and reporting its outcome. After agreement, the participant reports failure, successful completion, or completion with a result. An explicit agreement message is optional in specified circumstances. Messages carry a conversation identifier assigned by the initiator. Cancellation is also an interaction: the participant reports whether cancellation succeeded or failed.

  24. ActiveGraph: Patches

    ActiveGraph documents a proposal-before-application path for shared-state changes. A proposal records its author, target version, proposed change and provenance. Application checks the observed version against the current object version; after one of two same-version proposals changes the object, the other becomes stale and must be reconsidered against current state. A proposal reaches an applied or rejected terminal state, and repeated resolution raises a lifecycle error. Separate proposal and resolution events permit policy or operator intervention before a change becomes shared state.

  25. W3C PROV Model Primer

    PROV distinguishes entities, activities that use or generate entities, and agents associated with responsibility for activities. A document, a particular version, and the evolving document can be represented separately. Its worked example connects original data to an intermediate composition and then a chart through usage and generation relations. Responsibility can also be represented through acting on behalf of another agent.

  26. Grounded Reasoning Systems for Cloud Architecture

    Structured messages made longer agent workflows easier to control, with a possible trade-off against model reasoning flexibility.

  27. Citation Needed: Provenance for LLM-Built Knowledge Graphs

    A synthesized fact can hide both its original wording and the authority of its actual source, so retain verbatim inputs and explicit links to derived artifacts.

  28. Effective context engineering for AI agents

    Summarization produces a shorter representation; compaction uses such a representation to replace an approaching-full conversation context. Retrieval instead loads selected external information through references or searches. Durable notes persist outside the context window and can later be retrieved. Anthropic's Claude Code example preserves architectural decisions, unresolved bugs, and implementation details while removing redundant messages and tool output. Aggressive compaction can discard details whose importance appears later, so the report recommends prioritizing recall before reducing redundancy. Engineering inference: preserve decisions with rationale, unfinished obligations, dependencies, and evidence references in handoffs, then reconcile them against current files or service records before acting.

  29. LangGraph: Workflows and Agents

    LangGraph's orchestrator-worker example creates workers dynamically with task-specific inputs. Each worker has its own state, while outputs accumulate in a shared state field accessible to the orchestrator. The published report example uses an additive reducer to collect completed sections and then joins their text. It concretely separates worker inputs, shared contributions, and final assembly.

  30. From Chaos to Choreography: Multi-Agent Orchestration Patterns That Actually Work — Sandipan Bhaumik

    Pass immutable, versioned state snapshots and append new results instead of having agents overwrite the same records.

  31. Your Agent Didn’t Fail. Your Harness Did.

    Provide one ordered commit path per mutable state boundary while allowing independent work to run concurrently.

  32. Backlog.md: Terminal Kanban Board for Managing Tasks with AI Agents — Alex Gavrilescu, Funstage

    The speaker calls small, repository-stored Markdown tasks a form of context engineering.

  33. PagerDuty: Incidents

    PagerDuty separates triggering, acknowledging, and resolving an incident. Assignment and notification follow an escalation policy; acknowledgment records that a responder claims ownership and is working on the unresolved issue. Without acknowledgment, escalation continues. An acknowledgment timeout can return the incident to triggered status and resume escalation. Incident timelines record status changes, actions, and notifications. This supplies an operational example in which requesting attention, accepting responsibility, and resolving work are distinct events.

  34. Python 3.11: Coroutines and Tasks

    TaskGroup waits for its member tasks when leaving its scope. A member's non-cancellation exception cancels remaining members, prevents new additions, and is reported after the group finishes. In contrast, gather normally propagates the first exception while other tasks continue; with return_exceptions enabled, it collects failures alongside results. Cancellation requires coroutine cooperation, and swallowing cancellation can break structured-concurrency behavior.

  35. A2A & MCP: Automating Business Processes with LLMs

    The speaker positions MCP, the Model Context Protocol, as a standard interface to external tools and context, and A2A as a remote-agent interface; locally controlled functions and agents often do not need either protocol.

  36. A2A specification: task delegation and relationship to MCP

    A2A describes communication between independent agents, including discovery through Agent Cards and exchanges of messages, task status, and output artifacts. A task has a server-generated ID and lifecycle states such as working, input-required, completed, or failed; clients can retrieve status or use supported update mechanisms. Its MCP comparison separates delegated task coordination from access to tools, APIs, and data. An A2A server may use MCP internally to carry out a delegated task. Exposing an agent behind tools/call does not by itself create A2A task state, progress, artifact, or cancellation semantics.

  37. Stop babysitting your agents: building a context engine for mergeable code

    Surface conflicting sources and their authority context instead of silently choosing one.

  38. Vision: Zero Bugs

    Use separate prompts for implementation and testing, with different foundation models as an optional further separation.

  39. Debate or Vote: Which Yields Better Decisions in Multi-Agent Large Language Models?

    The study separates initial answer aggregation from subsequent inter-agent debate. Its primary experiments use agents sharing an underlying model and updating from others' previous-round responses. Across seven evaluated benchmarks, simple majority voting accounts for much of the improvement over a single response and has higher average accuracy than the tested debate variants. More debate rounds sometimes reduce accuracy. Extensions examine a larger model and persona-based teams, with some task-specific exceptions.

  40. Using LLMs to secure source code

    Eugene Yan and Henna Dattani describe separating vulnerability discovery from adversarial verification. Their recommended verifier receives the finding or proof of concept and the codebase, but runs in a fresh container without the discoverer’s filesystem or conversation history. It searches for reasons the finding is wrong, including mitigations the discoverer missed. This makes the role distinction concrete through different information and assessment duties, rather than merely asking another agent to agree. The workflow also deduplicates findings by root cause before downstream review and requires human ownership of patches.

  41. The Chubby Lock Service for Loosely-Coupled Distributed Systems

    A lock holder can issue a request that arrives after another participant has acquired the lock. Chubby addresses this with a sequencer containing the lock identity, mode, and generation. The receiving service checks its validity and rejects obsolete requests. Merely acquiring a new lock does not stop delayed operations from the previous holder. This supports fencing: checking ownership generation where a protected update is accepted.

  42. Temporal Activity Definition

    An activity can complete an external effect and then lose its worker before reporting completion. Temporal's history then lacks successful completion, so a retry may execute the activity again. Completed activities recorded in history are not re-executed by workflow replay; unrecorded completion is the important gap. Idempotency means repeated attempts leave no additional effect beyond the first. Temporal documents idempotency keys enforced by the called service, rather than automatically by the activity. Retrying a multi-step activity repeats earlier successful steps too.

  43. Oracle Java Tutorials: Deadlock

    Deadlock occurs when participants remain blocked waiting for each other. Oracle's example has two threads each holding one object's monitor while requesting the other object's monitor, so neither can proceed. An agent-level illustration can use the same dependency shape: each participant waits for a result that the other will produce only after receiving its own.

  44. Oracle Java Tutorials: Starvation and Livelock

    Livelock describes participants that remain active but make no progress because they continually respond to each other's actions. Starvation occurs when a participant cannot obtain regular access to shared resources. These distinctions separate unproductive interaction from blocked waiting and resource exclusion.

  45. Kelley and Walker: Critical-Path Planning and Scheduling

    The paper represents required activities as an acyclic network with finish-to-start dependencies. For stated durations, the earliest event time is the maximum of predecessor event time plus connecting activity duration. This recurrence yields the longest start-to-finish path and the earliest possible completion when activities can start as soon as their prerequisites finish. Delivery restrictions are represented as activities rather than omitted waiting. Derived implication: shortening an operation leaves completion unchanged if an unchanged longest path remains, provided other durations and dependencies stay fixed. With several equally long paths, accelerating only one need not shorten completion.

  46. Project Management for Construction: Fundamental Scheduling Procedures

    Basic critical-path scheduling assumes fixed activity durations and no resource constraints beyond represented precedence. Resource scarcity can make its minimum completion time unattainable. The text models resource serialization by adding a precedence relation between activities sharing equipment; required waiting between activities can instead be represented as a timed lag. Application to workflow timing: prerequisite waiting is already captured by taking the latest predecessor finish, while additional waiting needs an explicit constraint or interval. Avoid counting that same wait again inside an operation's duration. Shortening apparently noncritical work can matter when it releases a shared resource, so the precedence-only conclusion requires unchanged resource interactions.

  47. CUDA C++ Best Practices Guide

    Kernel launches return before GPU work completes; CPU timing must account for completion. CUDA events record device timestamps when reached in a stream, and the example waits for the stop event before reading elapsed time. Extra synchronization can alter execution. Bandwidth is data transferred per unit time. Occupancy is active warps per multiprocessor divided by its supported maximum; registers, shared memory, and block size constrain residency, and higher occupancy need not improve performance. Amdahl's law bounds fixed-workload improvement by the fraction accelerated: unchanged work remains even if the optimized portion becomes arbitrarily fast.

  48. Pydantic AI: Multi-agent Applications

    Pydantic AI documents passing the parent’s usage object into a delegated run so both contribute to aggregate usage. Usage limits can bound requests, tokens, tool calls and calculated cost. With different models, aggregate token counts alone cannot reconstruct monetary cost. Cancellation has an explicit scope: a delegate cancelling itself becomes a failed tool result rather than cancelling its parent, whereas a shared cancellation token cancels a tree of runs. The documentation identifies a distributed-execution exception: a tool inside a Temporal activity receives a copied run context, so passing that usage object does not propagate the delegate’s usage back to the parent.

  49. Lessons from building GenAI based applications — Juan Peredo

    Estimate cost across the full workflow and expected usage before setting product prices.

  50. Building the platform for agent coordination

    Agent integrations should produce concise, useful contributions rather than directly dumping lengthy model output into issues and comments.

  51. Production Evals For Agentic AI Systems

    Apply an SRE or production-engineering lens: assess delivered value, operational reliability, human burden, risk, user experience, scalability, and resilience.

  52. Why Do Multi-Agent LLM Systems Fail?

    MAST groups observed failures into system-design issues, inter-agent misalignment, and task verification. Examples include repeated steps, lost context, missing clarification, withheld information, ignored input, premature termination, and incorrect verification. One trace shows a phone agent failing to communicate an API's username requirements while its supervisor also fails to clarify them. Another example passes superficial code checks without validating game rules. Similar missing-information symptoms can originate at different interaction boundaries.

  53. Your Agent Didn’t Fail. Your Harness Did.

    Bound external waits, record terminal outcomes, and keep recovery commands outside the blocked work queue.

  54. Temporal Activity Execution

    An Activity Execution can comprise multiple task attempts. Temporal relies on timeouts to detect lost work, including worker crashes after invocation, and retries according to policy; limiting attempts to one prevents retry but does not prove an external effect failed. Cancellation is cooperative: activities receive service cancellation through heartbeats, can ignore it, and workflows may proceed without waiting for acceptance. A timed-out attempt may therefore continue while another attempt runs. Application consequence: treat an unconfirmed external mutation as uncertain, retain its operation identifier, reconcile against the receiving system, and use enforced idempotency or explicit recovery before repeating it. Timeout or cancellation is not evidence that a payment, message, or write was reversed.

  55. From Chaos to Choreography: Multi-Agent Orchestration Patterns That Actually Work — Sandipan Bhaumik

    The proposed Databricks architecture links each agent run to an append-only state version so debugging can connect execution telemetry with exact intermediate inputs and outputs.

  56. Ensure AI Agents Work: Evaluation Frameworks for Scaling Success

    Attach evaluations at multiple levels of an execution trace so a failed result can be localized to routing, arguments, or skill execution.

  57. Time, Clocks, and the Ordering of Events in a Distributed System

    Lamport's happened-before relation combines order within a process, a message's send-before-receive relationship, and transitivity. Events without either causal ordering are concurrent in this model. Physical timestamps alone do not establish that one participant received another's information. The paper also notes that defining receipt as arrival versus application handling changes the events being ordered.

  58. Why We Killed Our Multi-Agent Pipeline — Subbiah Sethuraman and Abhilash Asokan, ZS Associates

    A staged pipeline can identify the correct cause yet recommend an action that does not address it when no agent owns the causal chain end to end.

  59. Demystifying evals for AI agents

    An evaluation task specifies inputs and success criteria; a trial is one attempt. Repeat trials because model outputs vary, and use varied, balanced tasks drawn from real requirements and failures. Start each trial in a clean environment to prevent shared state from contaminating results. Check the final environment outcome, not merely the agent's claim of success. Inspect transcripts alongside grades to distinguish agent errors, valid solutions rejected by graders, and harness problems. For a fixed task with independent trials of success probability p, all-k success is p^k, whereas at-least-one success is 1−(1−p)^k.

  60. Towards a Science of Scaling Agent Systems

    The study compares a single agent with independent, centralized, decentralized, and hybrid multi-agent configurations across four benchmarks. It holds tool interfaces and task prompts consistent and matches maximum total iterations by reducing per-agent iterations in teams. Results vary with task structure: financial analysis benefits from separable investigations, whereas all tested multi-agent variants underperform the single-agent baseline on sequential inventory-changing planning. Reported measures include task success and token-normalized efficiency.

  61. UX Design Principles for (Semi) Autonomous Multi-Agent Systems

    Use eval-driven design: define the task and metrics, establish a non-agent baseline, and add agent complexity only when task-specific evaluation supports it.

  62. UX Design Principles for (Semi) Autonomous Multi-Agent Systems

    Consider autonomous multi-agent control when tasks benefit from planning, separate perspectives, distributing extensive context, or adaptation to changing application state; autonomy also expands the surface for error.

  63. Stop babysitting your agents: building a context engine for mergeable code

    A correct answer can become stale as the underlying system changes; the speaker recommends against answer caching for such changing context.

  64. UX Design Principles for (Semi) Autonomous Multi-Agent Systems

    Interruptibility should include pausing, checkpointing, rollback, and resumption so users can intervene before mistakes or unwanted resource use compound.

  65. Grounded Reasoning Systems for Cloud Architecture

    Fork a specialist's existing history into one clone per recommendation, then keep each clone's new history separate.