Skip to content

[A2A] Discovery Mechanism (Local + Network) #333

Closed as not planned
Closed as not planned

Description

@tamirdresher

Overview

Build discovery system for squads to find each other locally (file-based) and optionally on network (mDNS).

Reference

  • PRD: See tamresearch1 repo, branch squad/296-cross-repo-a2a, file .squad/research/cross-repo-a2a-prd.md
  • Related Issue: tamirdresher_microsoft/tamresearch1#296
  • Depends on: [A2A] Core A2A/ACP Protocol Implementation #332 (Core A2A protocol)

Phase 1: Local Discovery (MVP)

Registry: File-based at ~/.squad/registry/active-squads.json

Operations:

  • Register on squad serve
  • Heartbeat every 30s
  • Auto-cleanup stale entries (lastSeen >2 min OR PID dead)
  • Query registry for discovery

Phase 2: Network Discovery (Optional)

  • mDNS/Bonjour for LAN discovery
  • DNS-SD for enterprise
  • Service type: _squad._tcp.local.
  • Opt-in via squad serve --network

Deliverables

  • Registry manager (src/discovery/registry.ts)
  • File-based storage with atomic writes
  • Heartbeat mechanism
  • Stale entry cleanup (cron job)
  • mDNS integration (bonjour-service library)
  • CLI: squad discover command
  • Unit + integration tests
  • Documentation

Technical Requirements

  • File Locking: Prevent concurrent write corruption
  • Performance: Scan registry <50ms for 100 squads
  • Reliability: Handle crashed squads (PID check)
  • Security: Per-user registry (~/.squad/), file permissions

Success Criteria

  • Two squads auto-register on startup
  • Stale squads removed within 2 minutes
  • squad discover returns all active squads <1s
  • Network discovery finds LAN squads <5s

Timeline

Phase 1: 2 weeks
Phase 2: 2 weeks

Activity

  1. added a commit that references this issue on Mar 11, 2026
    00d2713
  2. github-actions commented on Mar 13, 2026

    @github-actions
    Contributor

    🏗️ Squad Triage — Flight (Lead)

    Issue: #333 — [A2A] Discovery Mechanism (Local + Network)
    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. github-actions commented on Mar 13, 2026

    @github-actions
    Contributor

    📋 Assigned to Flight (Lead)

    Issue: #333 — [A2A] Discovery Mechanism (Local + Network)

    Flight 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:
    Flight, work on issue #333

  4. github-actions commented on Mar 13, 2026

    @github-actions
    Contributor

    📋 Assigned to EECOM (Core Dev)

    Issue: #333 — [A2A] Discovery Mechanism (Local + Network)

    EECOM 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:
    EECOM, work on issue #333

  5. deleted a comment from github-actions on Mar 18, 2026
  6. deleted a comment from github-actions on Mar 18, 2026
  7. diberry commented on Mar 31, 2026

    @diberry
    Contributor

    🔄 Ralph status: A2A — discovery mechanism. Part of #332-#336 suite. No PR. Long-term backlog.

  8. bradygaster commented on Apr 12, 2026

    @bradygaster
    Collaborator

    Part of the shelved A2A initiative. We want to be really deliberate about agent-to-agent discovery patterns when the time comes. Not pursuing short-term — may revisit in a future phase. Thanks @tamirdresher!

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    go:needs-researchNeeds investigationpriority:p2Next sprintshelvedParked — revisit when conditions changesquadSquad triage inbox — Lead will assign to a membertype:spikeResearch/investigation — produces a plan, not code

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions