feat(web-next): register realtime-ping inbound (env-gateable)

This commit is contained in:
2026-05-08 23:20:58 +02:00
parent 90ef577b9d
commit 2351ca6249
2 changed files with 8 additions and 1 deletions

View File

@@ -23,6 +23,7 @@ import {
import {
InMemoryRealtimeBroadcaster,
RealtimeHandlerRegistry,
realtimePingInboundDescriptor,
type IRealtimeBroadcaster,
type IRealtimeHandlerRegistry,
} from "@repo/core-realtime";
@@ -120,6 +121,9 @@ export async function bindAllProduction(deps: BindAllDeps): Promise<void> {
bindProductionMarketingPages(resolvedConfig, tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 20
bindProductionNavigation(resolvedConfig, tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 21
bindProductionMedia(resolvedConfig, tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 22
if (process.env.REALTIME_PING_DISABLED !== "true") {
realtimeRegistry.register(realtimePingInboundDescriptor(realtime));
}
bindRealtimeBridge(bus, realtime);
}
@@ -139,6 +143,9 @@ export async function bindAllDevSeed(deps: BindAllDeps): Promise<void> {
await bindDevSeedMarketingPages(tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 20
await bindDevSeedNavigation(tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 21
await bindDevSeedMedia(tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 22
if (process.env.REALTIME_PING_DISABLED !== "true") {
realtimeRegistry.register(realtimePingInboundDescriptor(realtime));
}
bindRealtimeBridge(bus, realtime);
}

View File

@@ -23,7 +23,7 @@ export const realtimePongChannel = defineRealtimeChannel(
export function realtimePingInboundDescriptor(
broadcaster: IRealtimeBroadcaster,
): IInboundDescriptor<typeof realtimePingChannel.name, typeof pingSchema> {
): IInboundDescriptor<"realtime.ping", z.ZodType<PingPayload>> {
return {
descriptor: realtimePingChannel,
handler: async (input: PingPayload, ctx: RealtimeContext): Promise<void> => {