Skip to content

Shore up squad init --sdk: unified SDK init quality gate #347

Closed

Description

@bradygaster

SDK Init Shore-Up — Umbrella Issue

Consolidates: #337, #338, #339, #340, #341, #342

Problem

squad init --sdk produces incomplete squad state. Three critical gaps:

  1. Config ↔ team.md sync broken (SDK init: Adding team members doesn't update squad.config.ts #337) — Adding/removing members updates team.md but never touches squad.config.ts
  2. Built-in members missing (SDK init: Ralph (Work Monitor) missing from generated squad.config.ts #338, SDK init: @copilot routing configured without team.md roster entry #339) — Ralph and @copilot work in CLI squads but are invisible to SDK consumers
  3. CastingEngine bypassed (CLI casting bypasses CastingEngine template system #342) — CLI init uses raw LLM prompts, ignoring curated universe templates

Solution: 3-Phase Plan

Phase 1 — Fix the Gaps (P1, Small)

Phase 2 — Wire CastingEngine (P1, Medium)

Phase 3 — Exercise Test Matrix (P2, Large)

PRD & Analysis

  • Full PRD: .squad/identity/prd-sdk-init-shoreup.md
  • Technical Analysis: .squad/identity/sdk-init-technical-analysis.md
  • Implementation Roadmap: .squad/identity/sdk-init-implementation-roadmap.md

Open Design Questions

  1. AST vs regex for squad.config.ts mutations
  2. CastingEngine: augment LLM proposals (recommended) or replace entirely?
  3. Ralph charter: create one, or document as "built-in, no charter"?

Success Criteria

  • squad init --sdk generates config with all team members including Ralph and @copilot
  • Adding/removing members updates squad.config.ts automatically
  • CastingEngine templates used during init (not bypassed)
  • Test matrix at 90%+ verified features

Activity

  1. added
    squadSquad triage inbox — Lead will assign to a member
    on Mar 11, 2026
  2. github-actions commented on Mar 11, 2026

    @github-actions
    Contributor

    🏗️ Squad Triage — Flight (Lead)

    Issue: #347 — Shore up squad init --sdk: unified SDK init quality gate
    Assigned to: FIDO (Quality Owner)
    Reason: Issue relates to testing/quality work

    @copilot evaluation: 🔴 Not suitable — issue involves work outside the coding agent's capability profile.

    Team roster:

    • Flight (Lead) → label: squad:flight
    • Procedures (Prompt Engineer) → label: squad:procedures
    • EECOM (Core Dev) → label: squad:eecom
    • FIDO (Quality Owner) → label: squad:fido
    • PAO (DevRel) → label: squad:pao
    • CAPCOM (SDK Expert) → label: squad:capcom
    • CONTROL (TypeScript Engineer) → label: squad:control
    • Surgeon (Release Manager) → label: squad:surgeon
    • Booster (CI/CD Engineer) → label: squad:booster
    • GNC (Node.js Runtime) → label: squad:gnc
    • Network (Distribution) → label: squad:network
    • RETRO (Security) → label: squad:retro
    • INCO (CLI UX & Visual Design) → label: squad:inco
    • GUIDO (VS Code Extension) → label: squad:guido
    • Telemetry (Aspire & Observability) → label: squad:telemetry
    • VOX (REPL & Interactive Shell) → label: squad:vox
    • DSKY (TUI Engineer) → label: squad:dsky
    • Sims (E2E Test Engineer) → label: squad:sims
    • Handbook (SDK Usability) → label: squad:handbook
    • Ralph (Work Monitor) → label: squad:ralph
    • @copilot (Coding Agent) → label: squad:copilot

    To reassign, remove the current squad:* label and add the correct one.

  3. self-assigned this
    on Mar 13, 2026
  4. github-actions commented on Mar 13, 2026

    @github-actions
    Contributor

    📋 Assigned to FIDO (Quality Owner)

    Issue: #347 — Shore up squad init --sdk: unified SDK init quality gate

    FIDO will pick this up in the next Copilot session.

    For Copilot coding agent: If enabled, this issue will be worked automatically.
    Otherwise, start a Copilot session and say:
    FIDO, work on issue #347

  5. williamhallatt commented on Mar 16, 2026

    @williamhallatt
    Contributor

    Issue #347 Status — SDK Init Shore-Up

    ✅ Phases 1 & 2 — Complete

    🟡 Phase 3 — Test Matrix (in progress)

    Goal: 90%+ verified features per success criteria in PRD

    ⚠️ Needs Setup coverage (automated tests):

    Batch PR Tests Features covered
    1 #422 (merged) 22 #40, #42, #45, #46
    2 #425 (open) 64 #27, #28, #36, #49, #50
    3 #428 (open) 46 #31, #47, #45 (deepened), #46 (deepened)
    Total 132 11 of 13 ⚠️ features

    ❌ Still Outstanding

    1. Research: Should Squad use /fleet instead of task/delegate for agent spawning? #24 (Issue→PR lifecycle) — needs gh CLI mocking infrastructure to test
    2. VS Code: Test and document runSubagent as Squad spawn mechanism #32 (Watch mode) — needs CLI process mocking to test
    3. PRD: SDK-First Feature Parity — Full Test Results (32/50 verified, 6 gaps, 12 need setup) #341 remains open — the authoritative parity matrix. 32/50 verified + our 11 ⚠️ features now have automated tests. Remaining gap to 90%+ depends on re-evaluating ⚠️ features as ✅ after these PRs merge.
    4. CLI casting bypasses CastingEngine template system #342 remains open — may need maintainer review to confirm PR Wire CastingEngine into CLI init flow #417 resolves it
    5. 3 open design questions from the PRD (AST vs regex, CastingEngine mode, Ralph charter) — not addressed by test PRs
  6. 8 remaining items

  7. github-actions commented on Sep 10, 2026

    @github-actions
    Contributor

    🔄 Ralph — Auto-Triage

    Assigned to: Flight
    Reason: No module, routing, or role keyword match — routed to Lead/Architect
    Source: lead-fallback

    Ralph auto-triaged this issue using routing rules.
    To reassign, swap the squad:* label.

  8. github-actions commented on Sep 10, 2026

    @github-actions
    Contributor

    🔄 Ralph — Auto-Triage

    Assigned to: Flight
    Reason: No module, routing, or role keyword match — routed to Lead/Architect
    Source: lead-fallback

    Ralph auto-triaged this issue using routing rules.
    To reassign, swap the squad:* label.

  9. github-actions commented on Sep 11, 2026

    @github-actions
    Contributor

    🔄 Ralph — Auto-Triage

    Assigned to: Flight
    Reason: No module, routing, or role keyword match — routed to Lead/Architect
    Source: lead-fallback

    Ralph auto-triaged this issue using routing rules.
    To reassign, swap the squad:* label.

  10. github-actions commented on Sep 11, 2026

    @github-actions
    Contributor

    🔄 Ralph — Auto-Triage

    Assigned to: Flight
    Reason: No module, routing, or role keyword match — routed to Lead/Architect
    Source: lead-fallback

    Ralph auto-triaged this issue using routing rules.
    To reassign, swap the squad:* label.

  11. github-actions commented on Sep 11, 2026

    @github-actions
    Contributor

    🔄 Ralph — Auto-Triage

    Assigned to: Flight
    Reason: No module, routing, or role keyword match — routed to Lead/Architect
    Source: lead-fallback

    Ralph auto-triaged this issue using routing rules.
    To reassign, swap the squad:* label.

  12. github-actions commented on Sep 11, 2026

    @github-actions
    Contributor

    🔄 Ralph — Auto-Triage

    Assigned to: Flight
    Reason: No module, routing, or role keyword match — routed to Lead/Architect
    Source: lead-fallback

    Ralph auto-triaged this issue using routing rules.
    To reassign, swap the squad:* label.

  13. github-actions commented on Sep 13, 2026

    @github-actions
    Contributor

    🔄 Ralph — Auto-Triage

    Assigned to: architect
    Reason: No module, routing, or role keyword match — routed to Lead/Architect
    Source: lead-fallback

    Ralph auto-triaged this issue using routing rules.
    To reassign, swap the squad:* label.

  14. bradygaster commented on Sep 23, 2026

    @bradygaster
    CollaboratorAuthor

    Closing per direct request — this was the umbrella tracking issue for the SDK init shore-up (#337, #338, #339, #340, #341, #342), all of which are already closed. Nothing remains under this umbrella to track.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

go:needs-researchNeeds investigationpriority:p1This sprintsquadSquad triage inbox — Lead will assign to a membersquad:architectAssigned to architect (Lead Architect)squad:flightstalled-initiativeWork area that was started but never completed — cut, close, finish, or reprioritizestatus:contributor-invitedA specific contributor has been invited to work on thistriagedIssue has been triagedwave:1-nextWave 1 — immediate next sprint

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions