From 2354d790e3ee645a6f752c2ce3b57df6ef0817b5 Mon Sep 17 00:00:00 2001 From: Cal Corum Date: Fri, 13 Feb 2026 12:03:08 -0600 Subject: [PATCH] store: Wave-based agent delegation avoids file contention --- ...t-delegation-avoids-file-contention-23bb23.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 graph/decisions/wave-based-agent-delegation-avoids-file-contention-23bb23.md diff --git a/graph/decisions/wave-based-agent-delegation-avoids-file-contention-23bb23.md b/graph/decisions/wave-based-agent-delegation-avoids-file-contention-23bb23.md new file mode 100644 index 00000000000..8ee1bef0886 --- /dev/null +++ b/graph/decisions/wave-based-agent-delegation-avoids-file-contention-23bb23.md @@ -0,0 +1,16 @@ +--- +id: 23bb2301-21ee-4a02-8e4b-64e4eca3973b +type: decision +title: "Wave-based agent delegation avoids file contention" +tags: [cognitive-memory, agent-delegation, pattern, architecture] +importance: 0.8 +confidence: 0.8 +created: "2026-02-13T18:03:08.417460+00:00" +updated: "2026-02-13T18:03:08.417460+00:00" +--- + +When delegating multiple tasks to agents that all modify the same file, run them in waves instead of all at once. Wave 1 (3 agents): additive changes that touch different sections - worked cleanly. Wave 2 (2 agents): one finished first and the second hit file contention errors until the first was done. Solution: tell the blocked agent to wait and retry after the other finishes. + +Key pattern: group agents by whether their changes overlap. Additive-only changes (new methods, new constants, new CLI subcommands) can run in parallel. Changes that modify existing methods should be sequential. + +Also confirmed from Phase 1: always check that get() returns new fields added by agents. They consistently add fields to store/write but forget to update get() return dict.