Catalog/P family/P12
Proposed specificationSource-located exemplarH1

Coordinator-worker spawn flow

Delegate bounded subtasks.

JOIN POINTdelegated_task_spawnRECORD STATUSCandidate · v0.1.0
UML class view for Coordinator-worker spawn flow, showing participant roles, received calls, and analytical dependencies
FIG. P12 / UML CLASS VIEW
Object interaction diagram for Coordinator-worker spawn flow, showing role collaboration and a numbered message sequence
FIG. P12 / OBJECT INTERACTIONS
Context
A coordinator delegates a bounded task to another execution unit.
Trigger
A worker is spawned, called as a tool, or handed a task.
Structure
Task envelope with identity, instructions, authority, budget, and result target.
Effect
Worker output returns to the coordinator with explicit lifecycle and provenance.
Requires
Parent and child identities, task scope, and shared data policy are known.
Ensures
Each worker has one task record, bounded authority, and a correlated result.
Invariant
Delegation never silently expands permissions or budget.
Violation
Cancellation, worker failure, timeout, and duplicate spawn are typed outcomes.

Negative control

Sequential calls to independent agents without delegation do not count.

Permitted variation

Sub-agent, agent-as-tool, background agent, child session, and worker pool.

Test obligation

Test authority, timeout, cancellation, duplicate results, and context isolation.

Evolution question

Did delegation gain nested history, approvals, and background lifecycle?

PROMPT SKETCH
Spawn workers with one task record each, bounded authority, and a parent correlation id. The parent must receive a result or a failure for every worker it accepted.
CODE DESIGN / PYTHON
def spawn(parent, task, authority):
    worker = parent.runtime.spawn(
        task=task,
        parent_id=parent.id,
        authority=authority.intersect(parent.authority),
        budget=task.budget,
    )
    parent.register(worker.id, task.id)
    return worker

Illustrative design sketch. A child without a task record is an orphan; a parent without a result is incomplete. This example is a teaching aid, not implementation evidence or a conformance claim.

Join point
delegated_task_spawn
Source locator
Barbaste et al., §6.4, p. 16 (“Coordinator-Worker Pattern”); Table 11 “Recursive Composition”, p. 52; adapted label
Lexical cue
(?i)\b(?:spawn(?:ed|ing)?|sub[_-]?agent|worker[_-]?agent|delegate(?:d|s|ion)?)\bFrozen expression, v0.1.0. A match is a retrieval cue, not a confirmed implementation.
Aliases
None
Canonical exemplar
OpenHands/software-agent-sdkopenhands-sdk/openhands/sdk/subagent/schema.py:202Support: tests/sdk/subagent/test_subagent_registry.py:1
Negative control
Sequential calls to independent agents without delegation do not count.

Scope-anchored review. pohe-agent analyze <repo> --pattern P12 anchors the cue to its enclosing declaration and checks a separate operational signature for all four pointcut dimensions. Missing roles and negative-control risks remain visible; a structural match is not E2/E3. Calibration report ↗

Source-located exemplar

A concrete source anchor is available for this proposed record. It is one exemplar, not evidence that all repositories—or every contract field—conform.

Review boundary: this candidate and its specification come from an AI-assisted study. Independent human validation remains open.

ANY-EVIDENCE FAMILY COVERAGE36/36

100.0% of repository families in the frozen panel have at least one current cue, historical cue, or canonical source layer. This is not confirmed prevalence.

Current lexical-cue repositories: 40 / 41
Canonical source anchorOpenHands/software-agent-sdk 5c524ad65d81openhands-sdk/openhands/sdk/subagent/schema.py:202

Subagent task and permission envelope.

Exploratory retrieval cue Regex / v0.1.0
(?i)\b(?:spawn(?:ed|ing)?|sub[_-]?agent|worker[_-]?agent|delegate(?:d|s|ion)?)\b

This expression is a discovery instrument only. A match is a retrieval cue—not a confirmed implementation, pointcut match, or contract proof.