Skip to content

S2 — server-core client + participant resolver #5

Description

@tada5hi

Part of the node-message-broker build-out (Track B, Hub Plan 013 Phase 4). See .agents/plans/001-message-broker.md (local working doc).

Goal: resolve analysis participants and their node public keys / client_ids via server-core.

Steps

  • Add dep @privateaim/core-http-kit; add a CoreClientModule mirroring the messenger-client wiring (new Client({ baseURL: config.coreURL }) + the same client-credentials auth hook).
  • Implement IParticipantResolver (adapters/core/participant-resolver.ts): resolve(analysisId) / resolveSelf(analysisId). Map nodeId ↔ client_id; surface each participant's node public key (GET /nodes?filter[client_id]=…, node.public_key). Cacheable; keep off the Hub hot path.

Depends on: none. Unblocks: S5, S6.

Acceptance: resolver returns AnalysisParticipant[] (with publicKey) from a fake core client; resolveSelf returns this node's entry; unknown analysis → empty/undefined.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions