@cortexkit/aft-bridge
Advanced tools
| /** | ||
| * Subconscious (subc) transport — the daemon-backed alternative to the standalone | ||
| * NDJSON {@link BinaryBridge}. Implements the SAME {@link AftProjectTransport} / | ||
| * {@link AftTransportPool} interfaces the plugins consume, so the entire tool / | ||
| * hoisting / permission / UI surface stays transport-agnostic: only the ONE | ||
| * construction site (BridgePool vs SubcTransportPool) differs. | ||
| * | ||
| * Standalone model: one `aft` child process per project root, session passed | ||
| * per call. Subc model: ONE {@link SubcClient} per process (one authenticated | ||
| * daemon connection), and a route opened+cached per `(project_root, harness, | ||
| * session)` triple — exactly subc's {@link BindIdentity}. So the "pool" here is a | ||
| * route cache over a single client, not N child processes. | ||
| * | ||
| * This module is S2 of B-FINAL: the tool-call route only. The bg_events idle-wake | ||
| * subscription (S3) and the config gate that selects this transport (S4) build on | ||
| * top of it. subc-client is a build-time path dependency bundled into the | ||
| * published plugin dist; it is never a published runtime dependency. | ||
| */ | ||
| import { type BindIdentity, type RequestOptions, type RouteTarget } from "@cortexkit/subc-client"; | ||
| import type { StatusSnapshot } from "./bridge.js"; | ||
| import { type StatusBarCounts } from "./status-bar.js"; | ||
| import type { AftProjectTransport, AftTransportOptions, AftTransportPool, ToolCallArguments, ToolCallOptions, ToolCallResult } from "./transport.js"; | ||
| /** A held-open event subscription — the slice of subc-client's Subscription we use. */ | ||
| export interface SubcSubscriptionLike { | ||
| /** Cancel the subscription (sends Cancel; idempotent); the provider unwinds with StreamEnd. */ | ||
| unsubscribe(): void; | ||
| /** Resolves on StreamEnd (intentional close); REJECTS on Error / route GOODBYE / socket drop. */ | ||
| readonly closed: Promise<void>; | ||
| } | ||
| /** | ||
| * The minimal slice of {@link SubcClient} this transport depends on. Declared | ||
| * structurally so a test can inject a fake client through the pool's `connect` | ||
| * seam without standing up a daemon; the real `SubcClient` satisfies it. | ||
| */ | ||
| export interface SubcClientLike { | ||
| routeOpen(target: RouteTarget, identity: BindIdentity): Promise<number>; | ||
| request(routeChannel: number, body: unknown, opts?: RequestOptions): Promise<unknown>; | ||
| subscribe(routeChannel: number, body: unknown, onEvent: (event: Uint8Array) => void): SubcSubscriptionLike; | ||
| closeRouteChannel(channel: number, opts?: { | ||
| drain?: boolean; | ||
| }): Promise<void>; | ||
| close(): void; | ||
| } | ||
| export interface SubcTransportPoolOptions { | ||
| /** Absolute path to the subc connection file (user-tier `subc.connection_file`). */ | ||
| connectionFile: string; | ||
| /** Harness identity carried in every BindIdentity ("opencode" | "pi" | …). */ | ||
| harness: string; | ||
| /** Handshake timeout forwarded to SubcClient.connect. */ | ||
| handshakeTimeoutMs?: number; | ||
| /** | ||
| * Connection factory seam. Defaults to the real `SubcClient.connect`. Tests | ||
| * inject a fake to exercise route caching / Rd reconnect without a daemon. | ||
| */ | ||
| connect?: (opts: { | ||
| connectionFile: string; | ||
| handshakeTimeoutMs?: number; | ||
| }) => Promise<SubcClientLike>; | ||
| /** | ||
| * Called when an idle bg-completion WAKE arrives for `(projectRoot, session)` | ||
| * (a `{op:"bg_events"}` StreamData nudge), AND immediately after each | ||
| * (re)subscribe (the durable-outbox replay trigger). The nudge carries NO | ||
| * payload — the handler MUST force a DRAIN (bash_drain_completions) to fetch | ||
| * the actual completions. When set, the transport opens a dedicated bg_events | ||
| * subscription per session and drives its reconnect independently of tool | ||
| * calls (so an idle agent whose socket drops is still resubscribed + drained). | ||
| * Absent ⇒ no bg subscriptions are opened. | ||
| */ | ||
| onBgEventsNudge?: (projectRoot: string, session: string) => void; | ||
| /** Test seam: backoff sleeper for the bg resubscribe loop (default real timer). */ | ||
| bgBackoffSleep?: (ms: number) => Promise<void>; | ||
| } | ||
| /** | ||
| * One project root's view onto the shared subc client. Holds per-root status | ||
| * caches (mirroring BinaryBridge) and routes every call through the pool's single | ||
| * client, opening+caching a route per `(root, harness, session)`. | ||
| */ | ||
| declare class SubcTransport implements AftProjectTransport { | ||
| private readonly pool; | ||
| private readonly projectRoot; | ||
| private lastStatusBar; | ||
| private cachedStatus; | ||
| constructor(pool: SubcTransportPool, projectRoot: string); | ||
| getCwd(): string; | ||
| getStatusBar(): StatusBarCounts | undefined; | ||
| getCachedStatus(): StatusSnapshot | null; | ||
| cacheStatusSnapshot(snapshot: StatusSnapshot): void; | ||
| private captureStatusBar; | ||
| private identityFor; | ||
| toolCall(sessionId: string | undefined, name: string, rawArgs?: ToolCallArguments, options?: ToolCallOptions): Promise<ToolCallResult>; | ||
| /** | ||
| * Lifecycle / native-command path. Over subc there is no separate "native | ||
| * command" channel — every command rides the tool_provider route as a | ||
| * `{name, arguments}` Request and the module's gate decides validity (the 21 | ||
| * core tools plus the `bash_drain_completions` / `bash_ack_completions` plumbing | ||
| * allowlist). The bind session is taken from `params.session_id` so a | ||
| * session-scoped command (drain/ack) reaches the matching route — the module | ||
| * re-injects the BIND session over any body session, so the route identity is | ||
| * what scopes it. `configure` is satisfied locally (binding is the configure). | ||
| */ | ||
| send(command: string, params?: Record<string, unknown>, options?: AftTransportOptions): Promise<Record<string, unknown>>; | ||
| private splitOptions; | ||
| } | ||
| /** | ||
| * Route cache over one authenticated subc client. Implements {@link AftTransportPool} | ||
| * so it drops into the plugin in place of {@link BridgePool} behind the shared | ||
| * interface. One client per process; routes keyed by `(root, harness, session)`. | ||
| */ | ||
| export declare class SubcTransportPool implements AftTransportPool { | ||
| readonly harness: string; | ||
| private readonly connectionFile; | ||
| private readonly handshakeTimeoutMs?; | ||
| private readonly connectFn; | ||
| private readonly onBgEventsNudge?; | ||
| private readonly bgBackoffSleep; | ||
| private client; | ||
| /** Single-flight guard so concurrent first calls share one connect. */ | ||
| private connecting; | ||
| /** Per-session lifecycle records keyed by a string built from root, harness, and session. */ | ||
| private readonly sessions; | ||
| /** | ||
| * Consecutive NON-transient transport throws on the current client with no | ||
| * success in between. Resets to 0 on any successful request. Trips a client drop | ||
| * at {@link MAX_CONSECUTIVE_TRANSPORT_FAILURES} to recover a half-open socket | ||
| * whose timeouts never classify transient (B-#4). | ||
| */ | ||
| private transportFailures; | ||
| /** Per-root transport facades returned by getBridge/getActiveBridgeForRoot. */ | ||
| private readonly transports; | ||
| private shuttingDown; | ||
| constructor(options: SubcTransportPoolOptions); | ||
| /** | ||
| * Fail-loud presence check (memory: present-but-unconnectable must never silently | ||
| * downgrade to standalone). Returns false only when the file is genuinely absent. | ||
| */ | ||
| static connectionAvailable(connectionFile: string): Promise<boolean>; | ||
| getBridge(projectRoot: string): SubcTransport; | ||
| getActiveBridgeForRoot(projectRoot: string): SubcTransport | null; | ||
| toolCall(projectRoot: string, runtime: { | ||
| sessionID?: string; | ||
| }, name: string, rawArgs?: ToolCallArguments, options?: ToolCallOptions): Promise<ToolCallResult>; | ||
| private getOrCreateSession; | ||
| private isCurrentSession; | ||
| private deleteSessionIfEmpty; | ||
| /** | ||
| * Open-or-reuse a route for `identity` and send `body` as a data-plane Request. | ||
| * Rd reconnect (mutation-safe by construction — NEVER auto-retries): on a | ||
| * transport-level {@link SubcCallError} the cached channel is discarded and the | ||
| * dead client cleared so the NEXT call re-establishes, but the failed call is | ||
| * surfaced to the agent unchanged (identical to a standalone bridge death). Only | ||
| * `SubcClient.request` transport failures throw here; a tool-level error comes | ||
| * back as a normal reply with `success:false` and is returned, not thrown. | ||
| */ | ||
| routeRequest(identity: BindIdentity, body: Record<string, unknown>, timeoutMs?: number, onProgress?: RequestOptions["onProgress"]): Promise<unknown>; | ||
| private ensureClient; | ||
| /** | ||
| * Resolve the route channel for `identity`, returning BOTH the channel and the | ||
| * `RouteEntry` token that owns it. The route-entry token is the route-cache | ||
| * ownership guard: stale request failures can clear only the route they used, | ||
| * never a successor route in the same still-open session. | ||
| */ | ||
| private routeChannel; | ||
| /** | ||
| * Open the dedicated bg_events subscription for `identity` once. Idempotent — | ||
| * a second call for the same identity is a no-op (one sub per session, the | ||
| * duplicate-sub guard from Oracle #2). No-op when no nudge handler is wired, | ||
| * during shutdown, or after the session has been closed. | ||
| */ | ||
| private ensureBgSubscription; | ||
| /** Drop a dead client so the next call reconnects; preserves session records. */ | ||
| private dropClient; | ||
| /** No-op over subc: config is read locally by AFT (wire tiers are ignored). */ | ||
| setConfigureOverride(_key: string, _value: unknown): void; | ||
| /** No-op over subc: the daemon supervises the binary, not the plugin. */ | ||
| replaceBinary(path: string): Promise<string>; | ||
| shutdown(): Promise<void>; | ||
| /** | ||
| * Tear down a single session's bg subscription (and tool route) — the | ||
| * per-session close hook (Oracle #5). Idempotent. Wired to OpenCode session-end | ||
| * / Pi equivalent in S4; until then, shutdown() covers teardown. | ||
| */ | ||
| closeSession(projectRoot: string, session: string): Promise<void>; | ||
| } | ||
| export {}; | ||
| //# sourceMappingURL=subc-transport.d.ts.map |
| {"version":3,"file":"subc-transport.d.ts","sourceRoot":"","sources":["../src/subc-transport.ts"],"names":[],"mappings":"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"} |
| /** | ||
| * Subconscious (subc) transport — the daemon-backed alternative to the standalone | ||
| * NDJSON {@link BinaryBridge}. Implements the SAME {@link AftProjectTransport} / | ||
| * {@link AftTransportPool} interfaces the plugins consume, so the entire tool / | ||
| * hoisting / permission / UI surface stays transport-agnostic: only the ONE | ||
| * construction site (BridgePool vs SubcTransportPool) differs. | ||
| * | ||
| * Standalone model: one `aft` child process per project root, session passed | ||
| * per call. Subc model: ONE {@link SubcClient} per process (one authenticated | ||
| * daemon connection), and a route opened+cached per `(project_root, harness, | ||
| * session)` triple — exactly subc's {@link BindIdentity}. So the "pool" here is a | ||
| * route cache over a single client, not N child processes. | ||
| * | ||
| * This module is S2 of B-FINAL: the tool-call route only. The bg_events idle-wake | ||
| * subscription (S3) and the config gate that selects this transport (S4) build on | ||
| * top of it. subc-client is a build-time path dependency bundled into the | ||
| * published plugin dist; it is never a published runtime dependency. | ||
| */ | ||
| import { connectionFileExists, isConsumerReconnectTransient, SubcCallError, SubcClient, } from "@cortexkit/subc-client"; | ||
| import { canonicalizeProjectRoot } from "./project-identity.js"; | ||
| import { parseStatusBarCounts } from "./status-bar.js"; | ||
| /** The subc module id AFT registers under (matches the daemon manifest). */ | ||
| const AFT_MODULE_ID = "aft"; | ||
| /** | ||
| * A run of consecutive NON-transient transport throws (timeout / route GOODBYE) | ||
| * on the SAME client is presumed a dead half-open connection (local writes | ||
| * succeed, no response ever arrives), so the client is dropped after this many. | ||
| * A single throw does not drop the client (a slow tool can legitimately time out | ||
| * once); the counter resets on any successful request. Tool-level errors never | ||
| * count — they return `success:false`, they do not throw. (Audit B-#4.) | ||
| */ | ||
| const MAX_CONSECUTIVE_TRANSPORT_FAILURES = 3; | ||
| /** | ||
| * A bg subscription that stayed up at least this long before dropping is treated | ||
| * as "stable", so its reconnect backoff resets to zero. A subscription that fails | ||
| * faster than this is escalating-broken and must keep backing off toward the cap | ||
| * (otherwise a permanently-failing route resubscribes in a 100ms hot loop). (B-#2.) | ||
| */ | ||
| const BG_STABLE_MS = 5_000; | ||
| /** | ||
| * Session fallback when a tool runtime carries no session id, mirroring the Rust | ||
| * `DEFAULT_SESSION_ID` (`protocol.rs`). Keeps undo/checkpoint/bash namespacing | ||
| * identical to the standalone path for session-less calls. | ||
| */ | ||
| const DEFAULT_SESSION_ID = "__default__"; | ||
| /** | ||
| * Commands the plugin issues via `send()` that have NO meaning over subc and must | ||
| * never hit the wire. `configure` is the prime case: under subc the RouteBind IS | ||
| * the configure (AFT reads local `.cortexkit` config and ignores wire tiers — see | ||
| * the unified-config model), so a `send("configure", …)` is satisfied locally | ||
| * with a synthetic success rather than a route call. | ||
| */ | ||
| const LOCALLY_SATISFIED_COMMANDS = new Set(["configure"]); | ||
| function identityKey(identity) { | ||
| return `${identity.project_root}\u0000${identity.harness}\u0000${identity.session}`; | ||
| } | ||
| /** | ||
| * One session's held-open bg_events subscription with its OWN reconnect driver. | ||
| * | ||
| * The idle-stranding fix (Oracle bg_fc2d4119 #3): the resubscribe loop is | ||
| * INDEPENDENT of tool calls. When the subscription's `closed` promise rejects (a | ||
| * socket drop / route GOODBYE / Error), the loop itself reconnects (via the pool's | ||
| * shared single-flight client) and resubscribes — it never waits for a future tool | ||
| * call. So an idle agent (no tool traffic) whose connection drops is still woken | ||
| * for a completion that landed while disconnected (the durable Rust registry holds | ||
| * it until acked; resubscribe + the immediate forced-drain replay it). | ||
| * | ||
| * The loop is a single sequential async task (only one attempt in flight at a | ||
| * time), so no numeric generation guard is needed — `stopped` plus one-instance- | ||
| * per-identity (the pool's bgSubs map) prevents duplicate or stale subscribes. | ||
| */ | ||
| class BgSubscription { | ||
| identity; | ||
| acquireClient; | ||
| dropClient; | ||
| onNudge; | ||
| sleep; | ||
| stopped = false; | ||
| /** The live subscription handle, read by stop() to wake the loop's `await closed`. */ | ||
| current = null; | ||
| loop; | ||
| constructor(identity, acquireClient, dropClient, onNudge, sleep) { | ||
| this.identity = identity; | ||
| this.acquireClient = acquireClient; | ||
| this.dropClient = dropClient; | ||
| this.onNudge = onNudge; | ||
| this.sleep = sleep; | ||
| this.loop = this.run(); | ||
| } | ||
| async stop() { | ||
| this.stopped = true; | ||
| // Wake a live `await sub.closed` so the loop unwinds via its StreamEnd path, | ||
| // where the `finally` is the SOLE owner of closeRouteChannel (so the channel | ||
| // is closed exactly once, never double-closed by stop() + the loop). If the | ||
| // loop is between routeOpen and subscribe, its post-subscribe `stopped` | ||
| // re-check (or the pre-subscribe check) closes/returns instead. | ||
| const sub = this.current; | ||
| if (sub) { | ||
| try { | ||
| sub.unsubscribe(); | ||
| } | ||
| catch { | ||
| // best-effort; the socket may already be gone | ||
| } | ||
| } | ||
| await this.loop.catch(() => undefined); | ||
| } | ||
| async run() { | ||
| let attempt = 0; | ||
| while (!this.stopped) { | ||
| let client; | ||
| try { | ||
| client = await this.acquireClient(); | ||
| } | ||
| catch { | ||
| await this.backoff(attempt++); | ||
| continue; | ||
| } | ||
| if (this.stopped) | ||
| return; | ||
| let channel; | ||
| try { | ||
| // A SECOND, dedicated routeOpen (NOT the tool route cache): the daemon | ||
| // mints a fresh channel per route.open, so the bg_events subscribe rides | ||
| // its own channel, isolated from the tool route's credit window. | ||
| channel = await client.routeOpen({ kind: "tool_provider", module_id: AFT_MODULE_ID }, this.identity); | ||
| } | ||
| catch (err) { | ||
| // routeOpen failed. If it signals a dead CONNECTION, drop the shared | ||
| // client so the next `acquireClient` reconnects fresh — the idle-stranding | ||
| // fix (B-#1): `acquireClient` returns the cached client, so without this an | ||
| // idle bg loop would resubscribe forever onto the same dead socket. | ||
| if (isConsumerReconnectTransient(err)) | ||
| this.dropClient(client); | ||
| await this.backoff(attempt++); | ||
| continue; | ||
| } | ||
| if (this.stopped) { | ||
| safeCloseRoute(client, channel); | ||
| return; | ||
| } | ||
| // Channel lifetime: the `finally` guarantees closeRouteChannel on EVERY exit | ||
| // path from here (StreamEnd return, drop+resubscribe, stopped) so the | ||
| // dedicated route never leaks (B-#2). | ||
| const subscribedAt = Date.now(); | ||
| try { | ||
| const sub = client.subscribe(channel, { op: "bg_events" }, () => { | ||
| if (!this.stopped) | ||
| this.onNudge(); | ||
| }); | ||
| this.current = sub; | ||
| // stop() may have fired between the pre-subscribe check and here; self- | ||
| // unsubscribe so the await below resolves immediately (avoids a stop() | ||
| // that hangs awaiting a subscription nobody woke). | ||
| if (this.stopped) | ||
| sub.unsubscribe(); | ||
| // Immediate forced-drain replay: a completion that landed while we were | ||
| // disconnected is recovered now (resubscribe == the outbox replay trigger). | ||
| if (!this.stopped) | ||
| this.onNudge(); | ||
| await sub.closed; | ||
| // StreamEnd = an intentional close (our unsubscribe or module teardown). | ||
| // Do NOT resubscribe. | ||
| return; | ||
| } | ||
| catch (err) { | ||
| // Dropped (socket death / route GOODBYE / Error). Resubscribe — this is | ||
| // the independent reconnect driver that fixes idle-stranding. | ||
| if (this.stopped) | ||
| return; | ||
| // A dead-connection drop must replace the client (B-#1); a route-only | ||
| // GOODBYE keeps the client and just re-opens a fresh route. | ||
| if (isConsumerReconnectTransient(err)) | ||
| this.dropClient(client); | ||
| // Reset backoff ONLY if the subscription was stable before dropping; | ||
| // otherwise a permanently-failing route would resubscribe in a 100ms hot | ||
| // loop and never reach the cap (B-#2). | ||
| if (Date.now() - subscribedAt >= BG_STABLE_MS) | ||
| attempt = 0; | ||
| } | ||
| finally { | ||
| this.current = null; | ||
| safeCloseRoute(client, channel); | ||
| } | ||
| await this.backoff(attempt++); | ||
| } | ||
| } | ||
| async backoff(attempt) { | ||
| const ms = Math.min(100 * 2 ** Math.min(attempt, 6), 2000); | ||
| await this.sleep(ms); | ||
| } | ||
| } | ||
| function isRecord(value) { | ||
| return typeof value === "object" && value !== null && !Array.isArray(value); | ||
| } | ||
| /** | ||
| * Fire-and-forget route close that can never throw — neither synchronously (a | ||
| * client that rejects/throws when closing a route on an already-dead socket) nor | ||
| * via an unhandled rejection. Used on every best-effort teardown path. | ||
| */ | ||
| function safeCloseRoute(client, channel) { | ||
| try { | ||
| void client.closeRouteChannel(channel).catch(() => undefined); | ||
| } | ||
| catch { | ||
| // synchronous throw (e.g. closing a route on an already-closed client) — ignore | ||
| } | ||
| } | ||
| /** | ||
| * A route open that resolved AFTER its session was torn down (closeSession / | ||
| * shutdown / client swap). The caller's request can't proceed, but this is an | ||
| * intentional teardown — NOT a transport fault — so it must not drop the client | ||
| * or count toward the half-open-socket failure budget (B-#3/B-#4). | ||
| */ | ||
| class RouteTornDownError extends Error { | ||
| } | ||
| /** | ||
| * Re-lift the route reply into the flat {@link ToolCallResult} shape the standalone | ||
| * `BinaryBridge.toolCall` returns. The Rust module wraps the full flat response | ||
| * (`{id, success, …data, text}`) under `structuredContent` (S1 envelope), alongside | ||
| * the MCP `{content, isError}` a generic host reads. The first-party plugin reads | ||
| * `structuredContent`, so re-lifting it makes everything downstream (status_bar, | ||
| * bg_completions, preview_diff, code, …) byte-identical to NDJSON. | ||
| * | ||
| * Every AFT tool reply over subc carries this envelope with a boolean `success` | ||
| * and string `text`. A reply missing the envelope, or whose lifted shape lacks a | ||
| * boolean `success`, is a PROTOCOL VIOLATION — never a tool result — and is thrown | ||
| * rather than coerced. Coercing it (the old `{success:false,text:""}` / | ||
| * raw-record fallback) could let a malformed reply with `success === undefined` | ||
| * read downstream as a successful tool result (audit B-#7). Surfacing it loudly is | ||
| * the honest contract: a broken wire shape is a failure, not a silent empty pass. | ||
| */ | ||
| function reliftReply(reply) { | ||
| if (!isRecord(reply) || !isRecord(reply.structuredContent)) { | ||
| throw new Error("subc tool reply is missing the structuredContent envelope (protocol violation)"); | ||
| } | ||
| const flat = reply.structuredContent; | ||
| if (typeof flat.success !== "boolean" || typeof flat.text !== "string") { | ||
| throw new Error("subc tool reply structuredContent lacks a boolean `success` / string `text` (protocol violation)"); | ||
| } | ||
| return flat; | ||
| } | ||
| /** | ||
| * One project root's view onto the shared subc client. Holds per-root status | ||
| * caches (mirroring BinaryBridge) and routes every call through the pool's single | ||
| * client, opening+caching a route per `(root, harness, session)`. | ||
| */ | ||
| class SubcTransport { | ||
| pool; | ||
| projectRoot; | ||
| lastStatusBar; | ||
| cachedStatus = null; | ||
| constructor(pool, projectRoot) { | ||
| this.pool = pool; | ||
| this.projectRoot = projectRoot; | ||
| } | ||
| getCwd() { | ||
| return this.projectRoot; | ||
| } | ||
| getStatusBar() { | ||
| return this.lastStatusBar; | ||
| } | ||
| getCachedStatus() { | ||
| return this.cachedStatus; | ||
| } | ||
| cacheStatusSnapshot(snapshot) { | ||
| this.cachedStatus = snapshot; | ||
| } | ||
| captureStatusBar(response) { | ||
| const parsed = parseStatusBarCounts(response.status_bar); | ||
| if (parsed) | ||
| this.lastStatusBar = parsed; | ||
| } | ||
| identityFor(session) { | ||
| return { | ||
| project_root: this.projectRoot, | ||
| harness: this.pool.harness, | ||
| session: session && session.length > 0 ? session : DEFAULT_SESSION_ID, | ||
| }; | ||
| } | ||
| async toolCall(sessionId, name, rawArgs = {}, options) { | ||
| const { preview, timeoutMs, onProgress } = this.splitOptions(options); | ||
| const body = { name, arguments: rawArgs }; | ||
| if (preview === true) | ||
| body.preview = true; | ||
| const reply = await this.pool.routeRequest(this.identityFor(sessionId), body, timeoutMs, onProgress); | ||
| const result = reliftReply(reply); | ||
| this.captureStatusBar(result); | ||
| return result; | ||
| } | ||
| /** | ||
| * Lifecycle / native-command path. Over subc there is no separate "native | ||
| * command" channel — every command rides the tool_provider route as a | ||
| * `{name, arguments}` Request and the module's gate decides validity (the 21 | ||
| * core tools plus the `bash_drain_completions` / `bash_ack_completions` plumbing | ||
| * allowlist). The bind session is taken from `params.session_id` so a | ||
| * session-scoped command (drain/ack) reaches the matching route — the module | ||
| * re-injects the BIND session over any body session, so the route identity is | ||
| * what scopes it. `configure` is satisfied locally (binding is the configure). | ||
| */ | ||
| async send(command, params = {}, options) { | ||
| if (LOCALLY_SATISFIED_COMMANDS.has(command)) { | ||
| return { success: true, command, subc_local: true }; | ||
| } | ||
| const { timeoutMs, onProgress } = this.splitOptions(options); | ||
| const session = typeof params.session_id === "string" ? params.session_id : undefined; | ||
| const reply = await this.pool.routeRequest(this.identityFor(session), { name: command, arguments: params }, timeoutMs, onProgress); | ||
| const response = reliftReply(reply); | ||
| this.captureStatusBar(response); | ||
| return response; | ||
| } | ||
| splitOptions(options) { | ||
| if (!options) | ||
| return {}; | ||
| const preview = options.preview; | ||
| const timeoutMs = options.timeoutMs; | ||
| const onProgress = options.onProgress; | ||
| return { preview, timeoutMs, onProgress }; | ||
| } | ||
| } | ||
| /** | ||
| * Route cache over one authenticated subc client. Implements {@link AftTransportPool} | ||
| * so it drops into the plugin in place of {@link BridgePool} behind the shared | ||
| * interface. One client per process; routes keyed by `(root, harness, session)`. | ||
| */ | ||
| export class SubcTransportPool { | ||
| harness; | ||
| connectionFile; | ||
| handshakeTimeoutMs; | ||
| connectFn; | ||
| onBgEventsNudge; | ||
| bgBackoffSleep; | ||
| client = null; | ||
| /** Single-flight guard so concurrent first calls share one connect. */ | ||
| connecting = null; | ||
| /** Per-session lifecycle records keyed by a string built from root, harness, and session. */ | ||
| sessions = new Map(); | ||
| /** | ||
| * Consecutive NON-transient transport throws on the current client with no | ||
| * success in between. Resets to 0 on any successful request. Trips a client drop | ||
| * at {@link MAX_CONSECUTIVE_TRANSPORT_FAILURES} to recover a half-open socket | ||
| * whose timeouts never classify transient (B-#4). | ||
| */ | ||
| transportFailures = 0; | ||
| /** Per-root transport facades returned by getBridge/getActiveBridgeForRoot. */ | ||
| transports = new Map(); | ||
| shuttingDown = false; | ||
| constructor(options) { | ||
| this.connectionFile = options.connectionFile; | ||
| this.harness = options.harness; | ||
| this.handshakeTimeoutMs = options.handshakeTimeoutMs; | ||
| this.connectFn = options.connect ?? ((opts) => SubcClient.connect(opts)); | ||
| this.onBgEventsNudge = options.onBgEventsNudge; | ||
| this.bgBackoffSleep = | ||
| options.bgBackoffSleep ?? ((ms) => new Promise((resolve) => setTimeout(resolve, ms))); | ||
| } | ||
| /** | ||
| * Fail-loud presence check (memory: present-but-unconnectable must never silently | ||
| * downgrade to standalone). Returns false only when the file is genuinely absent. | ||
| */ | ||
| static async connectionAvailable(connectionFile) { | ||
| return connectionFileExists(connectionFile); | ||
| } | ||
| getBridge(projectRoot) { | ||
| const key = canonicalizeProjectRoot(projectRoot); | ||
| let transport = this.transports.get(key); | ||
| if (!transport) { | ||
| transport = new SubcTransport(this, key); | ||
| this.transports.set(key, transport); | ||
| } | ||
| return transport; | ||
| } | ||
| getActiveBridgeForRoot(projectRoot) { | ||
| const key = canonicalizeProjectRoot(projectRoot); | ||
| if (!this.client) | ||
| return null; | ||
| return this.transports.get(key) ?? null; | ||
| } | ||
| async toolCall(projectRoot, runtime, name, rawArgs = {}, options) { | ||
| return this.getBridge(projectRoot).toolCall(runtime.sessionID, name, rawArgs, options); | ||
| } | ||
| getOrCreateSession(key) { | ||
| let record = this.sessions.get(key); | ||
| if (!record || record.closed) { | ||
| record = { routeEntry: null, bgSub: null, closed: false, inflight: 0 }; | ||
| this.sessions.set(key, record); | ||
| } | ||
| return record; | ||
| } | ||
| isCurrentSession(key, record) { | ||
| return this.sessions.get(key) === record && !record.closed; | ||
| } | ||
| deleteSessionIfEmpty(key, record) { | ||
| if (this.sessions.get(key) === record && | ||
| !record.closed && | ||
| record.inflight === 0 && | ||
| record.routeEntry === null && | ||
| record.bgSub === null) { | ||
| this.sessions.delete(key); | ||
| } | ||
| } | ||
| /** | ||
| * Open-or-reuse a route for `identity` and send `body` as a data-plane Request. | ||
| * Rd reconnect (mutation-safe by construction — NEVER auto-retries): on a | ||
| * transport-level {@link SubcCallError} the cached channel is discarded and the | ||
| * dead client cleared so the NEXT call re-establishes, but the failed call is | ||
| * surfaced to the agent unchanged (identical to a standalone bridge death). Only | ||
| * `SubcClient.request` transport failures throw here; a tool-level error comes | ||
| * back as a normal reply with `success:false` and is returned, not thrown. | ||
| */ | ||
| async routeRequest(identity, body, timeoutMs, onProgress) { | ||
| const key = identityKey(identity); | ||
| const record = this.getOrCreateSession(key); | ||
| record.inflight += 1; | ||
| try { | ||
| const client = await this.ensureClient(); | ||
| // closeSession/shutdown marks and deletes the record synchronously. A request | ||
| // that was waiting for connect must not open a route for a session that no | ||
| // longer exists. | ||
| if (!this.isCurrentSession(key, record)) { | ||
| throw new RouteTornDownError("subc session closed"); | ||
| } | ||
| let channel; | ||
| let entry; | ||
| try { | ||
| ({ channel, entry } = await this.routeChannel(client, identity, record)); | ||
| // routeOpen may have awaited. Do not send a request after a close, even | ||
| // if a stale route entry just resolved. | ||
| if (!this.isCurrentSession(key, record)) { | ||
| throw new RouteTornDownError("subc session closed"); | ||
| } | ||
| } | ||
| catch (err) { | ||
| // A teardown that raced the open is not a transport fault — surface it | ||
| // without dropping the client or charging the failure budget. | ||
| if (err instanceof RouteTornDownError) | ||
| throw err; | ||
| // routeOpen itself failed. Classify the error like other request failures | ||
| // for transient connection death, but only while this request's session | ||
| // and client are still current. A close-induced failure must not drop a | ||
| // healthy client shared by other sessions. | ||
| if (isConsumerReconnectTransient(err) && | ||
| this.isCurrentSession(key, record) && | ||
| this.client === client) { | ||
| this.dropClient(client); | ||
| } | ||
| throw err; | ||
| } | ||
| try { | ||
| // Forward the caller's progress callback to the subc client. Current | ||
| // foreground calls return one final reply, so production does not rely on | ||
| // live progress events here. | ||
| const reply = await client.request(channel, body, { timeoutMs, onProgress }); | ||
| // The half-open failure budget belongs to the current live session on the | ||
| // current client. A late success after close or client replacement must | ||
| // not mutate the current client's counter. | ||
| if (this.isCurrentSession(key, record) && this.client === client) { | ||
| this.transportFailures = 0; | ||
| } | ||
| // bg_events is a session resource, not a route-entry resource. A | ||
| // successful request on an older route should still ensure the subscription | ||
| // while the session remains open, and a late success after close must not | ||
| // resurrect one. | ||
| this.ensureBgSubscription(identity, record); | ||
| return reply; | ||
| } | ||
| catch (err) { | ||
| // The raw `request()` path does not turn failures into SubcCallError; it | ||
| // rejects with a base SubcError for route-level failures or a raw socket | ||
| // error for connection failures. Use `isConsumerReconnectTransient`, not | ||
| // `instanceof SubcCallError`, to distinguish a dead connection from a dead | ||
| // route. | ||
| // | ||
| // A failed request makes its own route suspect, so drop it and let the next | ||
| // call re-open. Check only the current entry; a stale failure must not | ||
| // delete a successor route in the same still-open session. | ||
| if (record.routeEntry === entry) { | ||
| entry.closed = true; | ||
| record.routeEntry = null; | ||
| } | ||
| // Only a failure from the current session on the current client can charge | ||
| // or drop that client. A failure caused by closeSession sees | ||
| // !isCurrentSession because close marked/deleted the record before awaiting | ||
| // transport cleanup. | ||
| if (this.isCurrentSession(key, record) && this.client === client) { | ||
| if (isConsumerReconnectTransient(err)) { | ||
| this.transportFailures = 0; | ||
| this.dropClient(client); | ||
| } | ||
| else if (++this.transportFailures >= MAX_CONSECUTIVE_TRANSPORT_FAILURES) { | ||
| // A run of non-transient throws (timeouts / route GOODBYEs) with no | ||
| // success between them is a half-open socket: local writes succeed but | ||
| // no response ever returns, so isConsumerReconnectTransient never fires | ||
| // and the client would otherwise be kept forever. Force reconnect. | ||
| this.transportFailures = 0; | ||
| this.dropClient(client); | ||
| } | ||
| } | ||
| throw err; | ||
| } | ||
| } | ||
| finally { | ||
| record.inflight -= 1; | ||
| this.deleteSessionIfEmpty(key, record); | ||
| } | ||
| } | ||
| async ensureClient() { | ||
| if (this.shuttingDown) { | ||
| throw new SubcCallError("terminal", "subc transport is shutting down"); | ||
| } | ||
| if (this.client) | ||
| return this.client; | ||
| if (this.connecting) | ||
| return this.connecting; | ||
| this.connecting = this.connectFn({ | ||
| connectionFile: this.connectionFile, | ||
| handshakeTimeoutMs: this.handshakeTimeoutMs, | ||
| }) | ||
| .then((client) => { | ||
| this.connecting = null; | ||
| // shutdown() may have fired while this connect was in flight. Don't | ||
| // install a live client after teardown — close it and fail the call | ||
| // (B-#5: otherwise a socket leaks open past shutdown()). | ||
| if (this.shuttingDown) { | ||
| try { | ||
| client.close(); | ||
| } | ||
| catch { | ||
| // best-effort | ||
| } | ||
| throw new SubcCallError("terminal", "subc transport is shutting down"); | ||
| } | ||
| this.client = client; | ||
| // Fresh client generation starts with a clean failure budget (R2-T2). | ||
| this.transportFailures = 0; | ||
| return client; | ||
| }) | ||
| .catch((err) => { | ||
| this.connecting = null; | ||
| throw err; | ||
| }); | ||
| return this.connecting; | ||
| } | ||
| /** | ||
| * Resolve the route channel for `identity`, returning BOTH the channel and the | ||
| * `RouteEntry` token that owns it. The route-entry token is the route-cache | ||
| * ownership guard: stale request failures can clear only the route they used, | ||
| * never a successor route in the same still-open session. | ||
| */ | ||
| async routeChannel(client, identity, record) { | ||
| const key = identityKey(identity); | ||
| const existing = record.routeEntry; | ||
| if (existing?.channel != null) | ||
| return { channel: existing.channel, entry: existing }; | ||
| if (existing?.opening) | ||
| return { channel: await existing.opening, entry: existing }; | ||
| // Singleflight: install the entry BEFORE awaiting so a concurrent caller for | ||
| // the same identity awaits this same open instead of minting a second channel. | ||
| const entry = { client, opening: null, channel: null, closed: false }; | ||
| const opening = client | ||
| .routeOpen({ kind: "tool_provider", module_id: AFT_MODULE_ID }, identity) | ||
| .then((channel) => { | ||
| // A close/shutdown may have raced this open, or this entry may have been | ||
| // replaced by a transient drop/reopen. In both cases, release the freshly | ||
| // minted channel and clear only this entry if it still owns the cache slot. | ||
| if (!this.isCurrentSession(key, record) || | ||
| record.routeEntry !== entry || | ||
| entry.closed || | ||
| this.client !== client) { | ||
| safeCloseRoute(client, channel); | ||
| if (record.routeEntry === entry) | ||
| record.routeEntry = null; | ||
| throw new RouteTornDownError("subc route opened after teardown"); | ||
| } | ||
| entry.channel = channel; | ||
| entry.opening = null; | ||
| return channel; | ||
| }) | ||
| .catch((err) => { | ||
| const current = this.isCurrentSession(key, record); | ||
| // Failed open: drop this entry so the next call retries cleanly, but never | ||
| // delete a successor entry that replaced it while this open was in flight. | ||
| if (record.routeEntry === entry) { | ||
| entry.closed = true; | ||
| record.routeEntry = null; | ||
| } | ||
| if (!current && !(err instanceof RouteTornDownError)) { | ||
| throw new RouteTornDownError("subc route opened after session closed"); | ||
| } | ||
| throw err; | ||
| }); | ||
| entry.opening = opening; | ||
| record.routeEntry = entry; | ||
| return { channel: await opening, entry }; | ||
| } | ||
| /** | ||
| * Open the dedicated bg_events subscription for `identity` once. Idempotent — | ||
| * a second call for the same identity is a no-op (one sub per session, the | ||
| * duplicate-sub guard from Oracle #2). No-op when no nudge handler is wired, | ||
| * during shutdown, or after the session has been closed. | ||
| */ | ||
| ensureBgSubscription(identity, record) { | ||
| if (this.shuttingDown || !this.onBgEventsNudge) | ||
| return; | ||
| const key = identityKey(identity); | ||
| if (!this.isCurrentSession(key, record)) | ||
| return; | ||
| if (record.bgSub) | ||
| return; | ||
| const onNudge = () => this.onBgEventsNudge?.(identity.project_root, identity.session); | ||
| const sub = new BgSubscription(identity, () => this.ensureClient(), (client) => this.dropClient(client), onNudge, this.bgBackoffSleep); | ||
| record.bgSub = sub; | ||
| } | ||
| /** Drop a dead client so the next call reconnects; preserves session records. */ | ||
| dropClient(client) { | ||
| if (this.client === client) { | ||
| this.client = null; | ||
| for (const [key, record] of this.sessions) { | ||
| const entry = record.routeEntry; | ||
| if (entry?.client === client) { | ||
| entry.closed = true; | ||
| record.routeEntry = null; | ||
| this.deleteSessionIfEmpty(key, record); | ||
| } | ||
| } | ||
| // The half-open failure counter is per-client-generation: a dropped client | ||
| // resets it so the NEXT client starts fresh (R2-T2). Without this, failures | ||
| // accrued on a client dropped via another path (e.g. a bg-subscription | ||
| // transient drop) would carry over and trip the backstop on a healthy new | ||
| // client after a single failure. | ||
| this.transportFailures = 0; | ||
| try { | ||
| client.close(); | ||
| } | ||
| catch { | ||
| // best-effort; the socket is already gone | ||
| } | ||
| } | ||
| } | ||
| /** No-op over subc: config is read locally by AFT (wire tiers are ignored). */ | ||
| setConfigureOverride(_key, _value) { } | ||
| /** No-op over subc: the daemon supervises the binary, not the plugin. */ | ||
| async replaceBinary(path) { | ||
| return path; | ||
| } | ||
| async shutdown() { | ||
| this.shuttingDown = true; | ||
| const subs = []; | ||
| const entries = []; | ||
| for (const record of this.sessions.values()) { | ||
| record.closed = true; | ||
| const sub = record.bgSub; | ||
| record.bgSub = null; | ||
| if (sub) | ||
| subs.push(sub); | ||
| const entry = record.routeEntry; | ||
| record.routeEntry = null; | ||
| if (entry) { | ||
| entry.closed = true; | ||
| entries.push(entry); | ||
| } | ||
| } | ||
| this.sessions.clear(); | ||
| const client = this.client; | ||
| this.client = null; | ||
| this.transports.clear(); | ||
| await Promise.allSettled(subs.map((sub) => sub.stop())); | ||
| await Promise.allSettled(entries.map(async (entry) => { | ||
| if (entry.channel == null) | ||
| return; | ||
| try { | ||
| await entry.client.closeRouteChannel(entry.channel); | ||
| } | ||
| catch { | ||
| // best-effort; a dropped connection releases the route on the other side | ||
| } | ||
| })); | ||
| if (client) { | ||
| try { | ||
| client.close(); | ||
| } | ||
| catch { | ||
| // best-effort | ||
| } | ||
| } | ||
| } | ||
| /** | ||
| * Tear down a single session's bg subscription (and tool route) — the | ||
| * per-session close hook (Oracle #5). Idempotent. Wired to OpenCode session-end | ||
| * / Pi equivalent in S4; until then, shutdown() covers teardown. | ||
| */ | ||
| async closeSession(projectRoot, session) { | ||
| const identity = { | ||
| project_root: canonicalizeProjectRoot(projectRoot), | ||
| harness: this.harness, | ||
| session: session && session.length > 0 ? session : DEFAULT_SESSION_ID, | ||
| }; | ||
| const key = identityKey(identity); | ||
| const record = this.sessions.get(key); | ||
| if (!record) | ||
| return; | ||
| // All lifecycle mutation happens before the first await. In-flight requests | ||
| // resumed after this point observe !isCurrentSession and skip route opens, | ||
| // bg-sub resurrection, and client failure-budget mutation. | ||
| record.closed = true; | ||
| this.sessions.delete(key); | ||
| const sub = record.bgSub; | ||
| record.bgSub = null; | ||
| const entry = record.routeEntry; | ||
| record.routeEntry = null; | ||
| if (entry) | ||
| entry.closed = true; | ||
| if (sub) | ||
| await sub.stop(); | ||
| if (entry?.channel != null) { | ||
| try { | ||
| await entry.client.closeRouteChannel(entry.channel); | ||
| } | ||
| catch { | ||
| // best-effort; a dropped connection releases the route on the other side | ||
| } | ||
| } | ||
| } | ||
| } | ||
| //# sourceMappingURL=subc-transport.js.map |
| {"version":3,"file":"subc-transport.js","sourceRoot":"","sources":["../src/subc-transport.ts"],"names":[],"mappings":"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"} |
| /** | ||
| * The SINGLE injection point that selects AFT's transport: standalone NDJSON | ||
| * (spawn the `aft` binary, today's default) or the Subconscious daemon (talk to | ||
| * AFT as a supervised module). Both plugins call this one factory so the choice | ||
| * lives in exactly one place and everything downstream (tool registration, | ||
| * hoisting, permission UI, sidebar) stays transport-agnostic behind the shared | ||
| * {@link AftTransportPool} interface. | ||
| * | ||
| * Selection is by the USER-tier `subc.connection_file` config key (a project | ||
| * config can never set it — enforced in each plugin's config loader). Present + | ||
| * the file exists ⇒ subc; absent/empty ⇒ standalone (the default). Present but | ||
| * the file is MISSING ⇒ FAIL LOUD (throw) — never a silent downgrade to | ||
| * standalone, which would split-brain a user who meant to run under the daemon. | ||
| */ | ||
| import { type PoolOptions } from "./pool.js"; | ||
| import type { AftTransportPool } from "./transport.js"; | ||
| export interface AftTransportFactoryOptions { | ||
| /** Harness identity ("opencode" | "pi"). Carried in every subc BindIdentity. */ | ||
| harness: string; | ||
| /** Standalone path: resolved `aft` binary. */ | ||
| binaryPath: string; | ||
| /** Standalone path: pool/bridge options (callbacks, timeouts, project loader). */ | ||
| poolOptions: PoolOptions; | ||
| /** Standalone path: global configure overrides baked into every bridge. */ | ||
| configOverrides: Record<string, unknown>; | ||
| /** | ||
| * USER-tier `subc.connection_file` (already stripped of any project override). | ||
| * Present + existing ⇒ subc transport; absent/empty ⇒ standalone. Tilde and | ||
| * relative paths are resolved against the user's home directory. | ||
| */ | ||
| subcConnectionFile?: string; | ||
| /** | ||
| * Subc path: idle bg-completion wake handler (a `{op:"bg_events"}` nudge). The | ||
| * handler MUST force a drain (the nudge is payload-less). Ignored standalone. | ||
| */ | ||
| onBgEventsNudge?: (projectRoot: string, session: string) => void; | ||
| } | ||
| /** | ||
| * Construct the transport pool for this plugin process. Async because the subc | ||
| * presence check stats the connection file. Returns a pool satisfying | ||
| * {@link AftTransportPool} either way; the caller's downstream code does not | ||
| * branch on which. | ||
| */ | ||
| export declare function createAftTransportPool(opts: AftTransportFactoryOptions): Promise<AftTransportPool>; | ||
| //# sourceMappingURL=transport-factory.d.ts.map |
| {"version":3,"file":"transport-factory.d.ts","sourceRoot":"","sources":["../src/transport-factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAEzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,MAAM,WAAW,0BAA0B;IACzC,gFAAgF;IAChF,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,kFAAkF;IAClF,WAAW,EAAE,WAAW,CAAC;IACzB,2EAA2E;IAC3E,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAClE;AAaD;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,0BAA0B,GAC/B,OAAO,CAAC,gBAAgB,CAAC,CAuB3B"} |
| /** | ||
| * The SINGLE injection point that selects AFT's transport: standalone NDJSON | ||
| * (spawn the `aft` binary, today's default) or the Subconscious daemon (talk to | ||
| * AFT as a supervised module). Both plugins call this one factory so the choice | ||
| * lives in exactly one place and everything downstream (tool registration, | ||
| * hoisting, permission UI, sidebar) stays transport-agnostic behind the shared | ||
| * {@link AftTransportPool} interface. | ||
| * | ||
| * Selection is by the USER-tier `subc.connection_file` config key (a project | ||
| * config can never set it — enforced in each plugin's config loader). Present + | ||
| * the file exists ⇒ subc; absent/empty ⇒ standalone (the default). Present but | ||
| * the file is MISSING ⇒ FAIL LOUD (throw) — never a silent downgrade to | ||
| * standalone, which would split-brain a user who meant to run under the daemon. | ||
| */ | ||
| import { homedir } from "node:os"; | ||
| import { isAbsolute, join } from "node:path"; | ||
| import { BridgePool } from "./pool.js"; | ||
| import { SubcTransportPool } from "./subc-transport.js"; | ||
| function resolveConnectionFilePath(raw) { | ||
| const trimmed = raw.trim(); | ||
| if (trimmed.startsWith("~")) { | ||
| return join(homedir(), trimmed.slice(1).replace(/^[/\\]/, "")); | ||
| } | ||
| if (isAbsolute(trimmed)) | ||
| return trimmed; | ||
| // A bare/relative path is resolved against home, not the project cwd — this is | ||
| // a per-machine daemon endpoint, never a project-relative artifact. | ||
| return join(homedir(), trimmed); | ||
| } | ||
| /** | ||
| * Construct the transport pool for this plugin process. Async because the subc | ||
| * presence check stats the connection file. Returns a pool satisfying | ||
| * {@link AftTransportPool} either way; the caller's downstream code does not | ||
| * branch on which. | ||
| */ | ||
| export async function createAftTransportPool(opts) { | ||
| const raw = opts.subcConnectionFile?.trim(); | ||
| if (raw && raw.length > 0) { | ||
| const connectionFile = resolveConnectionFilePath(raw); | ||
| const available = await SubcTransportPool.connectionAvailable(connectionFile); | ||
| if (!available) { | ||
| // FAIL LOUD: the user explicitly selected subc but the daemon's connection | ||
| // file is absent. Downgrading to standalone here would split-brain a user | ||
| // who expects the daemon to own indexes/caches — surface the error so they | ||
| // start the daemon or clear the config. | ||
| throw new Error(`subc.connection_file is set to "${raw}" (resolved: ${connectionFile}) but no subc ` + | ||
| `connection file exists there. Start the Subconscious daemon, correct the path, ` + | ||
| `or remove subc.connection_file from your user config to use the standalone bridge.`); | ||
| } | ||
| return new SubcTransportPool({ | ||
| connectionFile, | ||
| harness: opts.harness, | ||
| onBgEventsNudge: opts.onBgEventsNudge, | ||
| }); | ||
| } | ||
| return new BridgePool(opts.binaryPath, opts.poolOptions, opts.configOverrides); | ||
| } | ||
| //# sourceMappingURL=transport-factory.js.map |
| {"version":3,"file":"transport-factory.js","sourceRoot":"","sources":["../src/transport-factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAoB,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAyBxD,SAAS,yBAAyB,CAAC,GAAW;IAC5C,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IACxC,+EAA+E;IAC/E,oEAAoE;IACpE,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;AAClC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAgC;IAEhC,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC;IAC5C,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,cAAc,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;QAC9E,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,2EAA2E;YAC3E,0EAA0E;YAC1E,2EAA2E;YAC3E,wCAAwC;YACxC,MAAM,IAAI,KAAK,CACb,mCAAmC,GAAG,gBAAgB,cAAc,gBAAgB;gBAClF,iFAAiF;gBACjF,oFAAoF,CACvF,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,iBAAiB,CAAC;YAC3B,cAAc;YACd,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,eAAe,EAAE,IAAI,CAAC,eAAe;SACtC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;AACjF,CAAC"} |
| import type { BridgeRequestOptions, StatusSnapshot } from "./bridge.js"; | ||
| import type { BridgeToolCallRuntime } from "./pool.js"; | ||
| import type { StatusBarCounts } from "./status-bar.js"; | ||
| export type ToolCallArguments = Record<string, unknown>; | ||
| export interface ToolCallResult extends Record<string, unknown> { | ||
| /** Server-rendered agent-facing output added by the `tool_call` command. */ | ||
| text: string; | ||
| /** Direct bridge response success flag, carried through unchanged. */ | ||
| success: boolean; | ||
| code?: string; | ||
| message?: string; | ||
| status_bar?: unknown; | ||
| bg_completions?: unknown; | ||
| } | ||
| export interface AftTransportOptions extends BridgeRequestOptions { | ||
| /** Per-call command timeout passed through to BinaryBridge.send. */ | ||
| timeoutMs?: number; | ||
| /** Host client used for asynchronous configure-warning delivery. */ | ||
| configureWarningClient?: unknown; | ||
| /** Configure command lifecycle override used by BinaryBridge.send. */ | ||
| markConfiguredOnSuccess?: boolean; | ||
| } | ||
| export interface ToolCallOptions extends AftTransportOptions { | ||
| /** Server-owned dry-run flag placed at the top level of the tool_call request. */ | ||
| preview?: boolean; | ||
| } | ||
| export interface AftProjectTransport { | ||
| send(command: string, params?: Record<string, unknown>, options?: AftTransportOptions): Promise<Record<string, unknown>>; | ||
| toolCall(sessionId: string | undefined, name: string, rawArgs?: ToolCallArguments, options?: ToolCallOptions): Promise<ToolCallResult>; | ||
| getCwd(): string; | ||
| getStatusBar(): StatusBarCounts | undefined; | ||
| getCachedStatus(): StatusSnapshot | null; | ||
| cacheStatusSnapshot(snapshot: StatusSnapshot): void; | ||
| } | ||
| export interface AftTransportPool { | ||
| getBridge(projectRoot: string): AftProjectTransport; | ||
| getActiveBridgeForRoot(projectRoot: string): AftProjectTransport | null; | ||
| toolCall(projectRoot: string, runtime: BridgeToolCallRuntime, name: string, rawArgs?: ToolCallArguments, options?: ToolCallOptions): Promise<ToolCallResult>; | ||
| setConfigureOverride(key: string, value: unknown): void; | ||
| replaceBinary(path: string): Promise<string>; | ||
| shutdown(): Promise<void>; | ||
| /** | ||
| * Release any per-session transport state for `(projectRoot, session)` on | ||
| * session end. Standalone (BridgePool) is a no-op — its bridges are per-project | ||
| * and session state lives Rust-side. Subc tears down the session's tool + bg | ||
| * routes. Idempotent. | ||
| */ | ||
| closeSession(projectRoot: string, session: string): Promise<void>; | ||
| } | ||
| export interface AftTransport<ToolCallContext = string | undefined> { | ||
| /** Lifecycle and raw-command path; tool dispatch uses toolCall instead. */ | ||
| send(command: string, params?: Record<string, unknown>, opts?: AftTransportOptions): Promise<Record<string, unknown>>; | ||
| /** | ||
| * Dispatch a hoisted agent tool through the shared server-side `tool_call` | ||
| * command and return the full raw response, including sidecars. | ||
| */ | ||
| toolCall(context: ToolCallContext, name: string, rawArgs: ToolCallArguments, opts?: ToolCallOptions): Promise<ToolCallResult>; | ||
| } | ||
| //# sourceMappingURL=transport.d.ts.map |
| {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"} |
| export {}; | ||
| //# sourceMappingURL=transport.js.map |
| {"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":""} |
+10
-1
| import type { Logger } from "./logger.js"; | ||
| import type { BgCompletion, StatusCompression } from "./protocol.js"; | ||
| import { type StatusBarCounts } from "./status-bar.js"; | ||
| import type { AftProjectTransport, ToolCallArguments, ToolCallOptions, ToolCallResult } from "./transport.js"; | ||
| /** | ||
@@ -184,3 +185,3 @@ * Compare two semver version strings (major.minor.patch plus pre-release). | ||
| */ | ||
| export declare class BinaryBridge { | ||
| export declare class BinaryBridge implements AftProjectTransport { | ||
| private static readonly RESTART_RESET_MS; | ||
@@ -264,2 +265,10 @@ /** How many recent stderr lines to keep for crash diagnostics. */ | ||
| send(command: string, params?: Record<string, unknown>, options?: SendOptions): Promise<Record<string, unknown>>; | ||
| /** | ||
| * Dispatch an agent tool through the server-side `tool_call` command. | ||
| * | ||
| * The Rust command returns the direct leaf response plus one `text` field; | ||
| * status_bar/bg_completions and every other sidecar stay top-level so the | ||
| * existing plugin ingest/capture path sees the same raw response shape. | ||
| */ | ||
| toolCall(sessionId: string | undefined, name: string, rawArgs?: ToolCallArguments, options?: ToolCallOptions): Promise<ToolCallResult>; | ||
| private sendWithVersionMismatchRetry; | ||
@@ -266,0 +275,0 @@ private deliverConfigureWarnings; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"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"} |
+16
-0
@@ -357,2 +357,18 @@ import { spawn } from "node:child_process"; | ||
| } | ||
| /** | ||
| * Dispatch an agent tool through the server-side `tool_call` command. | ||
| * | ||
| * The Rust command returns the direct leaf response plus one `text` field; | ||
| * status_bar/bg_completions and every other sidecar stay top-level so the | ||
| * existing plugin ingest/capture path sees the same raw response shape. | ||
| */ | ||
| async toolCall(sessionId, name, rawArgs = {}, options) { | ||
| const params = { name, arguments: rawArgs }; | ||
| if (sessionId) | ||
| params.session_id = sessionId; | ||
| const { preview, ...sendOptions } = options ?? {}; | ||
| if (preview === true) | ||
| params.preview = true; | ||
| return (await this.send("tool_call", params, Object.keys(sendOptions).length > 0 ? sendOptions : undefined)); | ||
| } | ||
| async sendWithVersionMismatchRetry(command, params, options, canRetryAfterVersionSwap) { | ||
@@ -359,0 +375,0 @@ try { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"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"} |
+15
-0
@@ -22,2 +22,17 @@ /** | ||
| /** | ||
| * Coerce a string param that has a compatibility alias in another harness. | ||
| * | ||
| * Models cross-pollinate tool schemas between hosts (e.g. sending `filePath` to | ||
| * Pi's `read`, whose schema field is `path`). Use this at the tool boundary to | ||
| * accept the alias only when the declared field is absent. | ||
| * | ||
| * Conservative by design: | ||
| * - if the declared field is present, its value wins unchanged — even if it is | ||
| * malformed or empty. We never override an explicit schema field. | ||
| * - the alias is accepted only when it is a non-empty string after trimming. | ||
| * The original alias text is returned unchanged so paths containing spaces are | ||
| * preserved byte-for-byte. | ||
| */ | ||
| export declare function coerceAliasedStringParam(value: unknown, aliasValue: unknown): string | undefined; | ||
| /** | ||
| * Coerce a polymorphic `string | string[]` tool argument (e.g. aft_outline's | ||
@@ -24,0 +39,0 @@ * `target`, which is a single path/URL OR an array of paths). Hosts deliver an |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"coerce.d.ts","sourceRoot":"","sources":["../src/coerce.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAwB1D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,CAqBnE;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,UAAQ,GAAG,OAAO,CAkB3E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,OAAO,EACV,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,MAAM,GAAG,SAAS,CAepB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAMpD"} | ||
| {"version":3,"file":"coerce.d.ts","sourceRoot":"","sources":["../src/coerce.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAwB1D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAMhG;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,CAqBnE;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,UAAQ,GAAG,OAAO,CAkB3E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,OAAO,EACV,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,MAAM,GAAG,SAAS,CAepB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAMpD"} |
+22
-0
@@ -46,2 +46,24 @@ /** | ||
| /** | ||
| * Coerce a string param that has a compatibility alias in another harness. | ||
| * | ||
| * Models cross-pollinate tool schemas between hosts (e.g. sending `filePath` to | ||
| * Pi's `read`, whose schema field is `path`). Use this at the tool boundary to | ||
| * accept the alias only when the declared field is absent. | ||
| * | ||
| * Conservative by design: | ||
| * - if the declared field is present, its value wins unchanged — even if it is | ||
| * malformed or empty. We never override an explicit schema field. | ||
| * - the alias is accepted only when it is a non-empty string after trimming. | ||
| * The original alias text is returned unchanged so paths containing spaces are | ||
| * preserved byte-for-byte. | ||
| */ | ||
| export function coerceAliasedStringParam(value, aliasValue) { | ||
| if (value !== undefined) { | ||
| return typeof value === "string" ? value : undefined; | ||
| } | ||
| if (typeof aliasValue !== "string") | ||
| return undefined; | ||
| return aliasValue.trim().length > 0 ? aliasValue : undefined; | ||
| } | ||
| /** | ||
| * Coerce a polymorphic `string | string[]` tool argument (e.g. aft_outline's | ||
@@ -48,0 +70,0 @@ * `target`, which is a single path/URL OR an array of paths). Hosts deliver an |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"coerce.js","sourceRoot":"","sources":["../src/coerce.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"coerce.js","sourceRoot":"","sources":["../src/coerce.ts"],"names":[],"mappings":"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"} |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"command-timeouts.d.ts","sourceRoot":"","sources":["../src/command-timeouts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAUlE,CAAC;AAEF,wFAAwF;AACxF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAErE;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAuB,CAAC;AAEzE,mFAAmF;AACnF,eAAO,MAAM,0BAA0B,OAAQ,CAAC;AAEhD,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzD"} | ||
| {"version":3,"file":"command-timeouts.d.ts","sourceRoot":"","sources":["../src/command-timeouts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAYlE,CAAC;AAEF,wFAAwF;AACxF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAErE;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAuB,CAAC;AAEzE,mFAAmF;AACnF,eAAO,MAAM,0BAA0B,OAAQ,CAAC;AAEhD,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzD"} |
@@ -17,2 +17,3 @@ /** | ||
| callers: 60_000, | ||
| callgraph: 60_000, | ||
| trace_to: 60_000, | ||
@@ -25,2 +26,3 @@ trace_to_symbol: 60_000, | ||
| glob: 60_000, | ||
| search: 60_000, | ||
| semantic_search: 60_000, | ||
@@ -27,0 +29,0 @@ }; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"command-timeouts.js","sourceRoot":"","sources":["../src/command-timeouts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAA2B;IACrE,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,MAAM;IAChB,eAAe,EAAE,MAAM;IACvB,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,MAAM;IACf,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,eAAe,EAAE,MAAM;CACxB,CAAC;AAEF,wFAAwF;AACxF,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,OAAO,+BAA+B,CAAC,OAAO,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAwB,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;AAEzE,mFAAmF;AACnF,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAEhD,iFAAiF;AACjF,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,OAAO,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC"} | ||
| {"version":3,"file":"command-timeouts.js","sourceRoot":"","sources":["../src/command-timeouts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAA2B;IACrE,OAAO,EAAE,MAAM;IACf,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,MAAM;IAChB,eAAe,EAAE,MAAM;IACvB,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,MAAM;IACf,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,MAAM;IACd,eAAe,EAAE,MAAM;CACxB,CAAC;AAEF,wFAAwF;AACxF,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,OAAO,+BAA+B,CAAC,OAAO,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAwB,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;AAEzE,mFAAmF;AACnF,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAEhD,iFAAiF;AACjF,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,OAAO,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC"} |
+5
-2
@@ -17,3 +17,3 @@ /** | ||
| export { formatCallgraphSections, PLAIN_CALLGRAPH_THEME } from "./callgraph-format.js"; | ||
| export { coerceBoolean, coerceOptionalInt, coerceStringArray, coerceTargetParam, isEmptyParam, } from "./coerce.js"; | ||
| export { coerceAliasedStringParam, coerceBoolean, coerceOptionalInt, coerceStringArray, coerceTargetParam, isEmptyParam, } from "./coerce.js"; | ||
| export { LONG_RUNNING_COMMAND_TIMEOUT_MS, timeoutForCommand } from "./command-timeouts.js"; | ||
@@ -36,3 +36,3 @@ export type { ConfigTier } from "./config-tiers.js"; | ||
| export { PLATFORM_ARCH_MAP, PLATFORM_ASSET_MAP } from "./platform.js"; | ||
| export type { PoolOptions } from "./pool.js"; | ||
| export type { BridgeToolCallRuntime, PoolOptions } from "./pool.js"; | ||
| export { BridgePool, HomeProjectRootError, isHomeDirectoryRoot } from "./pool.js"; | ||
@@ -44,6 +44,9 @@ export { canonicalizeProjectRoot, projectRootKeyHash } from "./project-identity.js"; | ||
| export { createStatusBarEmitState, formatStatusBar, parseStatusBarCounts, STATUS_BAR_HEARTBEAT_CALLS, shouldEmitStatusBar, statusBarLine, } from "./status-bar.js"; | ||
| export { SubcTransportPool, type SubcTransportPoolOptions } from "./subc-transport.js"; | ||
| export type { ReadFooterOptions } from "./tool-format.js"; | ||
| export { formatBridgeErrorMessage, formatReadFooter } from "./tool-format.js"; | ||
| export type { AftProjectTransport, AftTransport, AftTransportOptions, AftTransportPool, ToolCallArguments, ToolCallOptions, ToolCallResult, } from "./transport.js"; | ||
| export { type AftTransportFactoryOptions, createAftTransportPool, } from "./transport-factory.js"; | ||
| export type { RustZoomBatchEntry, ZoomMultiTargetEntry, ZoomMultiTargetResult, ZoomMultiTargetSymbolResult, ZoomResponseLike, } from "./zoom-format.js"; | ||
| export { formatZoomMultiTargetResult, formatZoomText, isRustZoomBatchEnvelope, unwrapRustZoomBatchEnvelope, } from "./zoom-format.js"; | ||
| //# sourceMappingURL=index.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} |
+3
-1
@@ -18,3 +18,3 @@ /** | ||
| export { formatCallgraphSections, PLAIN_CALLGRAPH_THEME } from "./callgraph-format.js"; | ||
| export { coerceBoolean, coerceOptionalInt, coerceStringArray, coerceTargetParam, isEmptyParam, } from "./coerce.js"; | ||
| export { coerceAliasedStringParam, coerceBoolean, coerceOptionalInt, coerceStringArray, coerceTargetParam, isEmptyParam, } from "./coerce.js"; | ||
| export { LONG_RUNNING_COMMAND_TIMEOUT_MS, timeoutForCommand } from "./command-timeouts.js"; | ||
@@ -42,4 +42,6 @@ export { formatDroppedKeyWarnings, inlineUserConfigTier, readConfigTiers } from "./config-tiers.js"; | ||
| export { createStatusBarEmitState, formatStatusBar, parseStatusBarCounts, STATUS_BAR_HEARTBEAT_CALLS, shouldEmitStatusBar, statusBarLine, } from "./status-bar.js"; | ||
| export { SubcTransportPool } from "./subc-transport.js"; | ||
| export { formatBridgeErrorMessage, formatReadFooter } from "./tool-format.js"; | ||
| export { createAftTransportPool, } from "./transport-factory.js"; | ||
| export { formatZoomMultiTargetResult, formatZoomText, isRustZoomBatchEnvelope, unwrapRustZoomBatchEnvelope, } from "./zoom-format.js"; | ||
| //# sourceMappingURL=index.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,0BAA0B;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,0DAA0D;AAC1D,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,gBAAgB,EAChB,KAAK,GACN,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAW3D,oBAAoB;AACpB,OAAO,EACL,YAAY,EACZ,2BAA2B,EAC3B,aAAa,EACb,wBAAwB,EACxB,aAAa,GACd,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,+BAA+B,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG3F,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpG,4BAA4B;AAC5B,OAAO,EACL,cAAc,EACd,YAAY,EACZ,aAAa,EACb,WAAW,EACX,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,gCAAgC;AAChC,OAAO,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1E,wBAAwB;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAS/C,4BAA4B;AAC5B,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,cAAc,EACd,WAAW,EACX,eAAe,EACf,UAAU,GACX,MAAM,mBAAmB,CAAC;AAC3B,uBAAuB;AACvB,OAAO,EACL,QAAQ,IAAI,YAAY,EACxB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,2BAA2B,EAC3B,iCAAiC,EACjC,8BAA8B,EAC9B,yBAAyB,EACzB,6BAA6B,EAC7B,sBAAsB,GACvB,MAAM,YAAY,CAAC;AACpB,2BAA2B;AAC3B,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEtE,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAClF,gFAAgF;AAChF,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAiBpF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5F,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,oBAAoB,EACpB,0BAA0B,EAC1B,mBAAmB,EACnB,aAAa,GACd,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAS9E,OAAO,EACL,2BAA2B,EAC3B,cAAc,EACd,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,kBAAkB,CAAC"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,0BAA0B;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,0DAA0D;AAC1D,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,gBAAgB,EAChB,KAAK,GACN,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAW3D,oBAAoB;AACpB,OAAO,EACL,YAAY,EACZ,2BAA2B,EAC3B,aAAa,EACb,wBAAwB,EACxB,aAAa,GACd,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EACL,wBAAwB,EACxB,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,+BAA+B,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG3F,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpG,4BAA4B;AAC5B,OAAO,EACL,cAAc,EACd,YAAY,EACZ,aAAa,EACb,WAAW,EACX,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,gCAAgC;AAChC,OAAO,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1E,wBAAwB;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAS/C,4BAA4B;AAC5B,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,cAAc,EACd,WAAW,EACX,eAAe,EACf,UAAU,GACX,MAAM,mBAAmB,CAAC;AAC3B,uBAAuB;AACvB,OAAO,EACL,QAAQ,IAAI,YAAY,EACxB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,2BAA2B,EAC3B,iCAAiC,EACjC,8BAA8B,EAC9B,yBAAyB,EACzB,6BAA6B,EAC7B,sBAAsB,GACvB,MAAM,YAAY,CAAC;AACpB,2BAA2B;AAC3B,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEtE,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAClF,gFAAgF;AAChF,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAiBpF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5F,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,oBAAoB,EACpB,0BAA0B,EAC1B,mBAAmB,EACnB,aAAa,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,iBAAiB,EAAiC,MAAM,qBAAqB,CAAC;AAGvF,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAU9E,OAAO,EAEL,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAShC,OAAO,EACL,2BAA2B,EAC3B,cAAc,EACd,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,kBAAkB,CAAC"} |
+14
-1
| import { BinaryBridge, type BridgeOptions } from "./bridge.js"; | ||
| import type { Logger } from "./logger.js"; | ||
| import type { AftTransportPool, ToolCallArguments, ToolCallOptions, ToolCallResult } from "./transport.js"; | ||
| /** | ||
@@ -31,2 +32,5 @@ * Historical error class — kept for backwards-compatible imports. | ||
| export declare function isHomeDirectoryRoot(normalizedKey: string): boolean; | ||
| export interface BridgeToolCallRuntime { | ||
| sessionID?: string; | ||
| } | ||
| export interface PoolOptions extends BridgeOptions { | ||
@@ -78,3 +82,3 @@ maxPoolSize?: number; | ||
| */ | ||
| export declare class BridgePool { | ||
| export declare class BridgePool implements AftTransportPool { | ||
| /** Project-root → bridge. Key is a normalized canonical path. */ | ||
@@ -112,2 +116,3 @@ private readonly bridges; | ||
| getBridge(projectRoot: string): BinaryBridge; | ||
| toolCall(projectRoot: string, runtime: BridgeToolCallRuntime, name: string, rawArgs?: ToolCallArguments, options?: ToolCallOptions): Promise<ToolCallResult>; | ||
| /** Shut down idle bridges that haven't been used within the timeout. */ | ||
@@ -117,2 +122,10 @@ private cleanup; | ||
| private evictLRU; | ||
| /** | ||
| * No-op for the standalone transport: bridges are per-project (shared across a | ||
| * project's sessions), and per-session state (undo/checkpoint/bash) lives | ||
| * Rust-side keyed by session_id — there is nothing session-scoped to tear down | ||
| * on the plugin side. Present to satisfy {@link AftTransportPool} so the subc | ||
| * pool's per-session route teardown is callable transport-agnostically. | ||
| */ | ||
| closeSession(_projectRoot: string, _session: string): Promise<void>; | ||
| /** Shut down all bridges and stop the cleanup timer. */ | ||
@@ -119,0 +132,0 @@ shutdown(): Promise<void>; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAW,MAAM,aAAa,CAAC;AAOnD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;aACjB,WAAW,EAAE,MAAM;gBAAnB,WAAW,EAAE,MAAM;CAQhD;AAiBD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAIlE;AAOD,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,mBAAmB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxE;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,UAAU;IACrB,iEAAiE;IACjE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgC;IACxD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA2B;IACxD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA0B;IAC1D,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAEtB;IACd,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,YAAY,CAA+C;gBAGjE,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,WAAgB,EACzB,eAAe,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAgC/C;;;;;;;;;OASG;IACH,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAQhE;;;;;;;OAOG;IACH,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY;IA4C5C,wEAAwE;IACxE,OAAO,CAAC,OAAO;IAkBf,yDAAyD;IACzD,OAAO,CAAC,QAAQ;IAkBhB,wDAAwD;IAClD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAc/B;;;OAGG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBrD,OAAO,CAAC,GAAG;IAcX,OAAO,CAAC,KAAK;IAcb;;;;;;;;;OASG;IACH,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAQvD,4CAA4C;IAC5C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;;;;OAQG;IACH,uBAAuB,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAI5D;;;;;OAKG;IACH,qBAAqB,IAAI,QAAQ,CAAC,aAAa,CAAC;CAGjD"} | ||
| {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"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"} |
+11
-0
@@ -186,2 +186,5 @@ import { homedir } from "node:os"; | ||
| } | ||
| async toolCall(projectRoot, runtime, name, rawArgs = {}, options) { | ||
| return this.getBridge(projectRoot).toolCall(runtime.sessionID, name, rawArgs, options); | ||
| } | ||
| /** Shut down idle bridges that haven't been used within the timeout. */ | ||
@@ -223,2 +226,10 @@ cleanup() { | ||
| } | ||
| /** | ||
| * No-op for the standalone transport: bridges are per-project (shared across a | ||
| * project's sessions), and per-session state (undo/checkpoint/bash) lives | ||
| * Rust-side keyed by session_id — there is nothing session-scoped to tear down | ||
| * on the plugin side. Present to satisfy {@link AftTransportPool} so the subc | ||
| * pool's per-session route teardown is callable transport-agnostically. | ||
| */ | ||
| async closeSession(_projectRoot, _session) { } | ||
| /** Shut down all bridges and stop the cleanup timer. */ | ||
@@ -225,0 +236,0 @@ async shutdown() { |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"pool.js","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"pool.js","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"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"} |
+2
-1
| { | ||
| "name": "@cortexkit/aft-bridge", | ||
| "version": "0.42.0", | ||
| "version": "0.43.0", | ||
| "type": "module", | ||
@@ -36,2 +36,3 @@ "description": "Shared NDJSON bridge transport, binary resolution, and ONNX runtime helpers for AFT agent-host plugins (OpenCode, Pi)", | ||
| "devDependencies": { | ||
| "@cortexkit/subc-client": "^0.2.0", | ||
| "@types/node": "^22.0.0", | ||
@@ -38,0 +39,0 @@ "typescript": "^5.8.0" |
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
632477
15.56%122
10.91%8756
15.29%3
50%