Skip to content

Convert greybeard to a leaf director; only Skywalker may spawn - #958

Merged
TheGreatAxios merged 2 commits into
mainfrom
cl-7670-greybeard-leaf-only-primary-spawns
Sep 13, 2026
Merged

TheGreatAxios merged 2 commits into
mainfrom
cl-7670-greybeard-leaf-only-primary-spawns

Conversation

@TheGreatAxios

@TheGreatAxios TheGreatAxios commented Sep 12, 2026

Copy link
Copy Markdown
Collaborator

CL-7670: only the primary orchestrator may spawn; greybeard becomes a leaf.

Converts the limited spawn CL-7662 kept with a recorded reason into a leaf:

  • Greybeard: tier leaf, maySpawn false, tools = review allowlist (no fleet verbs). Checklists, self-read, and provenance from CL-7662 untouched.
  • Registry test pins Skywalker as the only maySpawn:true closed director.
  • Stale nested-orchestrator references (types, tool-sets, docs, fleet/exec tests) updated; tier itself left unused for now.
  • Skywalker prompt unchanged: no numeric spawn caps introduced (verified by grep; the one 'at most one explorer' line predates this change on origin/main).

CL-7670 converts the limited spawn CL-7662 kept with a recorded reason
into a leaf: greybeard loses the fleet verbs and the nested-orchestrator
tier, keeping its checklists, self-read, and provenance exactly as-is.
The registry test now pins Skywalker as the only closed director with
spawn permission, and stale nested-orchestrator references follow suit.
@linear-code

linear-code Bot commented Sep 12, 2026

Copy link
Copy Markdown

CL-7670

@TheGreatAxios

Copy link
Copy Markdown
Collaborator Author

Audit (builder) — HOLD honored, comment-only, no code changes

No merge from this review — the do-not-merge hold stands. No code touched.

Quality: thorough. Checklists, the self-read deviation note, and the CL-7019/CL-7662 provenance carried over with intent intact; the follow-up commit (wording coherence) cleans the leaf language. The registry test now pins Skywalker as the only maySpawn: true closed director, and the agent-fleet/runner tests were updated to match the leaf shape rather than left asserting the old allowlist. Docs (ARCHITECTURE / IMPLEMENTATION / PRODUCT) updated in the same unit.

Capability tradeoff — the real cost of this leaf. Greybeard loses intern/explorer/critic evidence-gathering. A review blocked on a concrete unknown can no longer fetch it in one hop; it must name the unknown under Blockers or bounce back via ask_director, turning an evidence fetch into a parent round-trip. Fine for advisory reviews of familiar code, but expect thinner evidence on unfamiliar ground unless the parent re-fetches. The success_criteria fail-close critic path goes away with it — that language is correctly deleted, not orphaned.

Dead nested-orchestrator tier note. SubagentTier keeps the tier with zero closed directors on it (“no closed director uses this tier today”), and tool-sets.ts keeps the nested-orchestrator surface for the package filter. Either keep it explicitly as the extension point for future nested packages or remove it — a memberless tier invites the next author to re-invent greybeard's old shape. Suggest a one-line decision at merge time, not a third state.

Diff read: gh pr diff 958 (13 files); registry/greybeard/fleet test pins verified against the branch tip.

@TheGreatAxios

Copy link
Copy Markdown
Collaborator Author

Hold lifted per operator direction: removed the "Review only \u2014 do not merge (0.3.25 posture)." line from the PR body; all other body content unchanged.

No rebase needed \u2014 branch is MERGEABLE/CLEAN against main at 3bf85ec with all 9 CI checks green.

Local verification at tip 3bf85ec:

  • bun test src/agent/directors/greybeard/ src/agent/directors/registry.test.ts \u2014 39 pass, 0 fail
  • bun run typecheck (tsc --noEmit) \u2014 clean, exit 0

Not merging in this lane \u2014 leaving for the fresh review fleet.

@TheGreatAxios
TheGreatAxios merged commit ca81eb9 into main Sep 13, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant