flower
/
All briefs
idea draft note

Auto-generate worker dispatch task-packets (stop hand-authoring _dispatch-*.md in orchestrator context)

Dispatch

canonical · plan

Spec

markdown

hand-off · dispatch

Dispatch

Auto-dispatch

when it reaches planned

Design-loop

design pass before build

Direct dispatch — no refine required. The packet tells the agent to ask questions only if the request is blocked by ambiguity.

kind

No dispatch requests yet — dispatch above to generate a copy-paste packet.

provenance · append-only

Trace

live
or paste a screenshot uploading…
  1. note added 3h ago

    ## Idea Today the orchestrator **hand-writes a `_dispatch-<brief>.md` task file per worker in its OWN context** before spawning (see the #275-design and #276 dispatches, 2026-07-05). At the epic-#263 fleet scale (M LXCs × N agents), that per-dispatch authoring is real, repeated orchestrator-context overhead — and most of it is boilerplate derivable from the brief + dispatch_request. ## Proposal Have flower **render the worker task-packet programmatically** and write it into the target worktree at dispatch time. The orchestrator's job then shrinks to: pick brief + worktree, spawn, send a one-line "read _dispatch-N.md" kickoff (+ optional short emphasis). Template inputs — all already in flower: - **Brief** spec/title (recall_brief) — the durable "what to build." - **dispatch_request** (id, leg design|build, branch, target project/worktree, `recommended` agent/todos/scratchpads — the #22 packet already assembles much of this). - **Per-leg template** (design vs build) carrying the standard conventions: branch naming, `actor_ref = flower-<brief>-<leg>`, isolated-worktree rules (no Horizon/Reverb, own DB), test/pint commands (`~/bin/php`, MEILISEARCH_KEY/ANTHROPIC_API_KEY), commit trailer `Brief: #<id>`, finish steps (`brief_append` + `brief_dispatch_complete`), dogfooding. - **Optional freeform emphasis** (e.g. the operator's "/roster UI is the heart of #275") — an optional param or a brief event, injected into the render. ## Why - **Context economy**: removes ~50–70 lines of orchestrator-authored boilerplate per dispatch — load-bearing at fleet scale (the whole point of #263 is many workers). - **Consistency**: uniform, complete worker framing; fewer omitted conventions. - **Right separation of concerns**: the durable spec stays in the BRIEF; the task file becomes a rendered *convenience*, not a source of truth. Merges reconstruct context from the brief + the worker's `brief_append` + the diff — NOT from the task file — so moving authoring out of orchestrator context does NOT hurt the merge/wrap step. ## Prior art in flower (completion, not new invention) - **#22** click-to-copy dispatch packet (DispatchService already assembles a packet). - **#248** leg model (design/build) + DispatchService legs. - `dispatch_request.recommended` block. ## MVP - A per-leg markdown/blade template + a renderer (e.g. `DispatchService::renderTaskPacket`). - On dispatch (auto_dispatch / design_dispatch / manual), write `<worktree>/_dispatch-<brief>[-<leg>].md` from the template. - Orchestrator flow becomes: reset worktree → spawn_agent → send_input "read _dispatch-N.md". Optional `emphasis` param still injectable. ## Non-goals - Removing the orchestrator's judgment on WHAT/WHERE to dispatch (stays). - Auto-spawning the agent (orchestrator still owns spawn + worktree choice). ## Origin Operator observation (Mike, 2026-07-05) while watching the orchestrator hand-author the #275/#276 dispatch packets during a live session — "could this be produced programmatically so it's not polluting your context?" Relates to epic [[263]] (fleet scale) + [[275]] (design leg).

    agent · flower-orchestrator
  2. participant joined 3h ago
    system · flower-orchestrator

epic · dependencies

Relationships

epic parent

depends on

No dependencies — dispatchable once planned.

agents · waves

Participants

  • flower-orchestrator participant · active

trace · graph

Links

No links yet — they accrue as agents work the brief.

scope

Projects

No project yet

Assign one so this brief appears in project-scoped queues, lists, and refine loops.

dogfood · read-only

Agent’s-eye view

The literal recall_brief payload an agent gets — same service path as the MCP tool.