From 56a4285deff5731729f783664184dba0047a52e1 Mon Sep 17 00:00:00 2001 From: Luke Curley Date: Tue, 6 Oct 2026 09:41:39 -0700 Subject: [PATCH] quest: plan spawn skipping finished line children Co-Authored-By: Claude Opus 5.5 --- quest/m0/README.md | 1 + quest/m0/spawn-line-children.md | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 quest/m0/spawn-line-children.md diff --git a/quest/m0/README.md b/quest/m0/README.md index 8b6fecb..6618b9a 100644 --- a/quest/m0/README.md +++ b/quest/m0/README.md @@ -32,5 +32,6 @@ ownership-manifest design: - [Quest on Cloudflare](/quest/m0/cloudflare/README.md) - contributors lock quests and donate tokens to run them; maintainers review and merge in a web UI synced with GitHub - [Quest log theme](/quest/m0/theme/README.md) - an MMO-style identity, copy, board, landing page, and CLI output for the demo and launch +- [Spawn skips finished line children](/quest/m0/spawn-line-children.md) - `/quest-spawn` offers no quest already finished on its line branch, and spawned agents keep scratch files apart - [Release proof](/quest/m0/release-proof.md) - a fresh repository completes the whole lifecycle in CI, then v0.1.0 is tagged - [Launch material](/quest/m0/launch.md) - README, quickstart, demo, comparison, and launch-post drafts diff --git a/quest/m0/spawn-line-children.md b/quest/m0/spawn-line-children.md new file mode 100644 index 0000000..8475f97 --- /dev/null +++ b/quest/m0/spawn-line-children.md @@ -0,0 +1,24 @@ +# [S] Spawning skips finished line children and isolates agent scratch + +## Goal + +`/quest-spawn` never offers a quest that is already finished on its +questline's open branch, and the agents it spawns never share scratch files. + +## Plan + +Seen in moq-dev/moq on 2026-10-06, spawning 32 quests at once: + +- `quest ready` reads only the base branch. A questline that lands children + into its own open branch (moq-dev/moq#4519, #4653) deletes each finished + child there, but the child stays ready on the base until the line merges. + Four of the 32 offered quests were already done, and one agent was spawned + on one before it noticed. +- Spawned agents wrote logs and PR bodies to the parent session's scratchpad + under common names, so runs overwrote each other's `check.log` and two PRs + went up with each other's descriptions. + +Open for the implementer: whether `ready` itself consults remote line +branches (it is offline and git-only today) or the spawn skill checks them, +and how the spawn prompt keeps scratch files inside each agent's worktree. +Prefer the shape that keeps the core independent of a forge.