mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
fix: harden Docker image and async job responses
Harden Docker runtime packaging, preserve async job response semantics, fix Redis subscriber startup connections, clear lint warnings, and harden enterprise S3 object body handling.
This commit is contained in:
@@ -13,7 +13,7 @@
|
||||
import { eq } from "drizzle-orm";
|
||||
import type { FastifyInstance, FastifyReply, FastifyRequest } from "fastify";
|
||||
import { db, schema } from "../db/index.js";
|
||||
import { createRedisConnection, sharedRedis } from "../jobs/connection.js";
|
||||
import { createRedisSubscriberConnection, sharedRedis } from "../jobs/connection.js";
|
||||
import { bullPrefix } from "../jobs/types.js";
|
||||
import { getSecurityHeaders } from "../lib/csp.js";
|
||||
|
||||
@@ -228,11 +228,11 @@ export function publishEphemeral(
|
||||
|
||||
type FrameCallback = (json: string) => void;
|
||||
const sseListeners = new Map<string, Set<FrameCallback>>();
|
||||
let sseSubscriber: ReturnType<typeof createRedisConnection> | null = null;
|
||||
let sseSubscriber: ReturnType<typeof createRedisSubscriberConnection> | null = null;
|
||||
|
||||
function ensureSubscriber(): void {
|
||||
if (sseSubscriber) return;
|
||||
sseSubscriber = createRedisConnection();
|
||||
sseSubscriber = createRedisSubscriberConnection();
|
||||
// ioredis auto-resubscribes after reconnects; the handler keeps connection
|
||||
// errors observable without crashing (ioredis silentEmits, but be explicit).
|
||||
sseSubscriber.on("error", (err) => {
|
||||
|
||||
Reference in New Issue
Block a user