UNPKG

@essentialai/cogent-bridge

Version:

Cogent Bridge — cross-agent comms for Claude Code, OpenAI Codex and Slack. Codex users: install with `curl -fsSL https://cogent.tools/install.sh | sh`, then start with `cogent-codex` for real-time peer wake.

26 lines • 1.62 kB
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { BridgeError } from "../errors.js"; /** * Why this resolution cannot produce a wakeable session id, or null when it can. * * 🔴 ASK THE CONDITION, NOT A PROXY. The old guard tested `candidateCount === 0`. An AMBIGUOUS * resolution has candidates but no chosen id (`decideResolution` returns `sessionId: null` when * two transcripts are within the margin), so it slipped straight through the zero-check and the * caller's value was pinned unchecked — during the 2026-09-02 ring exercise that value was a * CHANNEL UUID, which `--resume` can never open, and every subsequent wake failed in ~2s with no * warning ever emitted. The question that decides correctness is "did we end up with an id * `--resume` can open?", not "were there zero candidates?". */ export declare function unresolvedSessionReason(r: { sessionId: string | null; candidateCount: number; }): "no-candidates" | "ambiguous" | null; /** * Retry a PEER_NOT_YOURS registration with the SAME peerId, waiting for the relay's * `retryAfterMs` with capped backoff, bounded by {@link peerReclaimWaitMs}. A hold that outlasts * the budget (or an old relay that sends no hint) surfaces the original refusal immediately. * Any other error ends the wait and is thrown as-is. */ export declare function retrySamePeerId<T>(first: BridgeError, attempt: () => Promise<T>, budgetMs?: number, sleep?: (ms: number) => Promise<void>): Promise<T>; export declare function registerRegisterPeerTool(server: McpServer): void; //# sourceMappingURL=register-peer.d.ts.map