diff --git a/Dockerfile b/Dockerfile index 90654a917..160069bc3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -17,7 +17,7 @@ # future change to one of the stages cannot pair them wrongly. # ── Stage 1: Dependencies ────────────────────────────────── -FROM node:22-trixie-slim@sha256:2117f713a417f3aff682ac8f5bc2ebbdf1beed51f36e67ab1e0fd3866b6d2d8f AS deps +FROM node:22-trixie-slim@sha256:be1e2a3dc2c4fd68cdfadad2a696a280e0d2749098bee509230174d72fb768c6 AS deps RUN corepack enable && corepack prepare pnpm@11.15.1 --activate WORKDIR /app @@ -29,7 +29,7 @@ COPY scripts/prepare.mjs scripts/prepare.mjs RUN pnpm install --frozen-lockfile --prod=false # ── Stage 2: Build ───────────────────────────────────────── -FROM node:22-trixie-slim@sha256:2117f713a417f3aff682ac8f5bc2ebbdf1beed51f36e67ab1e0fd3866b6d2d8f AS builder +FROM node:22-trixie-slim@sha256:be1e2a3dc2c4fd68cdfadad2a696a280e0d2749098bee509230174d72fb768c6 AS builder RUN corepack enable && corepack prepare pnpm@11.15.1 --activate WORKDIR /app @@ -127,7 +127,7 @@ RUN node scripts/verify-message-catalogs.mjs --dir messages \ # npm install never reads. Rebuilding this install both ways confirms it: # without the two fields below npm resolves 1.19.11 and 1.2.0, with them it # resolves 1.19.17 and 1.4.2, and `prisma --version` still reports 7.8.0. -FROM node:22-trixie-slim@sha256:2117f713a417f3aff682ac8f5bc2ebbdf1beed51f36e67ab1e0fd3866b6d2d8f AS prisma-cli +FROM node:22-trixie-slim@sha256:be1e2a3dc2c4fd68cdfadad2a696a280e0d2749098bee509230174d72fb768c6 AS prisma-cli RUN mkdir -p /opt/prisma-cli && \ cd /opt/prisma-cli && \ npm init -y && \ @@ -159,7 +159,7 @@ RUN set -eu; \ cp -L "$LIBPQ" /out/lib/libpq.so.5 # ── Stage 5: Production runner ───────────────────────────── -FROM node:22-trixie-slim@sha256:2117f713a417f3aff682ac8f5bc2ebbdf1beed51f36e67ab1e0fd3866b6d2d8f AS runner +FROM node:22-trixie-slim@sha256:be1e2a3dc2c4fd68cdfadad2a696a280e0d2749098bee509230174d72fb768c6 AS runner # The package managers the base ships (npm, npx, corepack, yarn) go first. # Nothing at runtime installs a package, and the bundled npm carried the only # HIGH findings with a fix the image scan reported. Removed in a later layer, diff --git a/package.json b/package.json index 3db7690d1..fad8a207e 100644 --- a/package.json +++ b/package.json @@ -54,8 +54,8 @@ "mcp:stdio": "npx tsx src/cli/mcp-stdio.ts" }, "dependencies": { - "@aws-sdk/client-s3": "^3.1161.0", - "@aws-sdk/lib-storage": "3.1161.0", + "@aws-sdk/client-s3": "^3.1162.0", + "@aws-sdk/lib-storage": "3.1162.0", "@dnd-kit/core": "^6.3.1", "@dnd-kit/sortable": "^10.0.0", "@dnd-kit/utilities": "^3.2.2", @@ -67,7 +67,7 @@ "@prisma/client": "^7.10.1", "@simplewebauthn/browser": "^14.0.0", "@simplewebauthn/server": "^14.0.3", - "@tanstack/react-query": "5.105.3", + "@tanstack/react-query": "5.106.1", "@tanstack/react-virtual": "^3.14.26", "@types/sax": "^1.2.7", "class-variance-authority": "^0.7.1", @@ -78,14 +78,14 @@ "jose": "^6.2.15", "jspdf": "^4.2.1", "jspdf-autotable": "^5.0.9", - "lucide-react": "^1.67.0", + "lucide-react": "^1.69.0", "mmdb-lib": "^3.0.4", "next": "16.4.5", "nodemailer": "10.3.1", "otpauth": "^9.6.0", "p-limit": "^7.3.3", "pg": "^8.23.1", - "pg-boss": "^12.38.0", + "pg-boss": "^12.38.1", "prisma": "^7.10.1", "qrcode": "^1.5.4", "radix-ui": "^1.8.1", @@ -98,7 +98,7 @@ "sonner": "^2.0.8", "tailwind-merge": "^3.7.0", "tesseract.js": "^7.0.0", - "undici": "^8.12.2", + "undici": "^8.12.4", "web-push": "^3.6.7", "yaml": "^2.9.1", "zod": "^4.6.7", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 69b812680..52e9fed64 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -47,11 +47,11 @@ importers: .: dependencies: '@aws-sdk/client-s3': - specifier: ^3.1161.0 - version: 3.1161.0 + specifier: ^3.1162.0 + version: 3.1162.0 '@aws-sdk/lib-storage': - specifier: 3.1161.0 - version: 3.1161.0(@aws-sdk/client-s3@3.1161.0) + specifier: 3.1162.0 + version: 3.1162.0(@aws-sdk/client-s3@3.1162.0) '@dnd-kit/core': specifier: ^6.3.1 version: 6.3.1(react-dom@19.3.1(react@19.3.1))(react@19.3.1) @@ -86,8 +86,8 @@ importers: specifier: ^14.0.3 version: 14.0.3 '@tanstack/react-query': - specifier: 5.105.3 - version: 5.105.3(@types/react@19.3.0)(react@19.3.1) + specifier: 5.106.1 + version: 5.106.1(@types/react@19.3.0)(react@19.3.1) '@tanstack/react-virtual': specifier: ^3.14.26 version: 3.14.26(react-dom@19.3.1(react@19.3.1))(react@19.3.1) @@ -119,8 +119,8 @@ importers: specifier: ^5.0.9 version: 5.0.9(jspdf@4.2.1) lucide-react: - specifier: ^1.67.0 - version: 1.67.0(@types/react@19.3.0)(react@19.3.1) + specifier: ^1.69.0 + version: 1.69.0(@types/react@19.3.0)(react@19.3.1) mmdb-lib: specifier: ^3.0.4 version: 3.0.4 @@ -140,8 +140,8 @@ importers: specifier: ^8.23.1 version: 8.23.1 pg-boss: - specifier: ^12.38.0 - version: 12.38.0(@opentelemetry/api@1.9.1) + specifier: ^12.38.1 + version: 12.38.1(@opentelemetry/api@1.9.1) prisma: specifier: ^7.10.1 version: 7.10.1(@types/node@26.6.6)(@types/react-dom@19.3.0(@types/react@19.3.0))(@types/react@19.3.0)(magicast@0.5.5)(react-dom@19.3.1(react@19.3.1))(react@19.3.1)(typescript@6.0.3) @@ -179,8 +179,8 @@ importers: specifier: ^7.0.0 version: 7.0.0 undici: - specifier: ^8.12.2 - version: 8.12.3 + specifier: ^8.12.4 + version: 8.12.4 web-push: specifier: ^3.6.7 version: 3.6.7(supports-color@7.2.0) @@ -303,70 +303,70 @@ packages: resolution: {integrity: sha512-U4+70Pc5ZS9osnCBCE5Jha/ciHM+Yp+CNMNC/7HvYbNRk1Ldd+f7qO65W5qfhu/TCv+/ozljlXXe9Nj8419DMA==} engines: {node: '>=10'} - '@aws-sdk/checksums@3.1002.1': - resolution: {integrity: sha512-CXNESwkQC9jdrUG6cKXBfudVt1frGcYQykcCYbNclVrsewuGMbo3PlFjRteMe4OftNAqhyc3xC2jTz7SUqLasQ==} + '@aws-sdk/checksums@3.1002.2': + resolution: {integrity: sha512-u57THWR5YOCqjIzg5og8r5dDc54n7hENs2eVy+aw1+Fd+QERa2x72qNlsiMNJI9svSpQp3WevkSKljzIG6x1YA==} engines: {node: '>=20.0.0'} - '@aws-sdk/client-s3@3.1161.0': - resolution: {integrity: sha512-iRZGMsJnYRrI98O+U6o5fHeLPQTP+Dc/w0mWLcBLQcEQ10DA06+XQj0WmdRiCM7vIso7QEtN1fsj9Vzo5/R3LQ==} + '@aws-sdk/client-s3@3.1162.0': + resolution: {integrity: sha512-WIPNPTQJnZBpWeeejEp7TPb2Jajy2kHqOkq5GzbI/vCU9Hu8Ks8kdHBFUuu7IC+bZuC/OuvPKL3ciet0RQkiAA==} engines: {node: '>=20.0.0'} - '@aws-sdk/core@3.979.1': - resolution: {integrity: sha512-ayOlV1VhLNMiq8PW9ZkVobG4gkldnUoHjG69yy2b8j+VYFlhz/uAL7ZdYQAoQ+eShtGUdNDnnG5rxDg6yUJrOg==} + '@aws-sdk/core@3.980.0': + resolution: {integrity: sha512-2RVSP/SsPS8HSPPzIPWNYFnSmlOdxx8VDlt5gDOuMaq9UiIi35pUyo6ZEuJcysjVCu0L8Lv5dJevLLpEkyF0/Q==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-env@3.972.80': - resolution: {integrity: sha512-uO5TiSvb6j1w9RTe5z28OaOmsrOxVQUPaC5+wZl50RfOXcrYD/KgnS8I9lfyGXc7sGbkCopK6VnhNIAoLqfewQ==} + '@aws-sdk/credential-provider-env@3.972.81': + resolution: {integrity: sha512-VD+EVZ9UHNZhSm4KtakXZAPzgfOw4mRx66dAXNUtHcdJUisbsE7kpi1PRZFMquvuqVfx52fCDBgJgYyOFT/4hQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-http@3.972.82': - resolution: {integrity: sha512-vQzlDHlC24Yz42p+rT4NBoP/5VdetkBoujbOLq9h6QYWC8THuZSPYnXIR9OP3XcOrdMgPBBipOrdssfxnIiWUg==} + '@aws-sdk/credential-provider-http@3.972.83': + resolution: {integrity: sha512-NsLT02HXcWAQAgpuDJznoJDPIDH/Hh2LiQVlYc+1bVGsksEUZuYCMKa1E1L5qvzc5LLTphp7BP9LYVIhf+MbQA==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-ini@3.973.25': - resolution: {integrity: sha512-b5xl71uCRdWsu7P1VeGpiGuCf6zfYETsSNOv8AmYVTrsgbvTJRXdmmOPVfxkvGGVNsiKkGctClQW3jAn0SZLug==} + '@aws-sdk/credential-provider-ini@3.973.26': + resolution: {integrity: sha512-vRydnN8wPqh5APe5R+/y4/UOts7QQQQP1UTczJq3fLcLzkQblbkYpLn+Srr8w9S/gzXU1pbiPKTv479unRawAA==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-login@3.972.87': - resolution: {integrity: sha512-C4ZFmcwM+Zj14Z8huVUk54Gv4uzT1ZdzG9cY3Gdh8FePakq7Bss1OFsgZjAhWFOkFOGpBvFBeu0OWjWf8HNKRQ==} + '@aws-sdk/credential-provider-login@3.972.88': + resolution: {integrity: sha512-J8IcBpuFj3j3RImHq/dVO5HtnUbFgvzg7JQvzLt5A42VmzLLgPLM+CUWN68jpIMdIPayu1bb1T+mJjDv9Sq1aA==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-node@3.972.92': - resolution: {integrity: sha512-jC3zmOo7Qxlk+oBivvSsS1Ph7sFGm0QfuhqDGbqgRXi4cxUYMG+dWtBwS2XYYXgc8TIVXJiwgQ65sbNpbYupTA==} + '@aws-sdk/credential-provider-node@3.972.93': + resolution: {integrity: sha512-f5Grg1sgckk11ojxZ7NUYG1ZCOvcNhuuPngKWVxOKGuZokj8eOmo/75+GyR6qAQx4wAGytglZ53r4a3UPleAPQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-process@3.972.80': - resolution: {integrity: sha512-xqfixO5aclje7tbQJDias+iNND5wp/3QZixCdZcVQpgWPTZ0V5DfTW9A804A5Z7ezu7sH3WRO+vzUjtiJBA8yg==} + '@aws-sdk/credential-provider-process@3.972.81': + resolution: {integrity: sha512-6NBoFaNJbHB0YjcKW4WfrYIDmaMjtwbxlRreAf3MnXkD9WJX8XYu62pa78M0AQGgEt2TJmcNxqL3btAAjV67bA==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-sso@3.973.24': - resolution: {integrity: sha512-nlg3BKG03Cgzvv/dMnhxvDJPhAhQSpaN0RUdwgU7ziwkasoev7iI8el8Xy4Rd5sqzgaDUbV269fOXck5SargqA==} + '@aws-sdk/credential-provider-sso@3.973.25': + resolution: {integrity: sha512-p1fNaa3as6S2L0wrWqe1cEz1r4iGQa7GbW23KJE3rJy+ZZxhPr6pr9cyCAJ7fAnzoMELvQGZZAuv/rG1ogRuOQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-web-identity@3.972.86': - resolution: {integrity: sha512-zKTyLJBEyfQBVlYqT6Jt+mYV4r8kGbWM7dn6v4Y4MRARizhYafjDXP/iMu76UMRhToSPNmIKX1XAb24gtpBFIA==} + '@aws-sdk/credential-provider-web-identity@3.972.87': + resolution: {integrity: sha512-O2P6CUfMP2qi8vgYB6UHYj/NYTEAAdTr2geEVdVchr3JBofK4Q6W917FiVr2sleA72R59YAXMEhrpzPwkX/xdA==} engines: {node: '>=20.0.0'} - '@aws-sdk/lib-storage@3.1161.0': - resolution: {integrity: sha512-ROSytGylVRtkUsp64mpzryv1Puvgo6jAm4RWTW2m3kC4SSsjrvhqZa5uPKfz116a0U1kk/hBz9S1eBItkyd++w==} + '@aws-sdk/lib-storage@3.1162.0': + resolution: {integrity: sha512-lHesG1fq+CC4iuAdu+dLXSDiiorYQWOkYZEmJVToIfs0vR2UYGKV7hfM0URkt/v1cSBSBfcLl6CZ9MkqeSoRfA==} engines: {node: '>=20.0.0'} peerDependencies: - '@aws-sdk/client-s3': ^3.1161.0 + '@aws-sdk/client-s3': ^3.1162.0 - '@aws-sdk/middleware-sdk-s3@3.972.85': - resolution: {integrity: sha512-Kyl2G6zhIS9qFoeLdlxvXFrWyc6g9D9ZCIRJnGkkfX6JZhxCZB5ebXBc7GKEeetrnhXcail6ALZT0lKbojcaNA==} + '@aws-sdk/middleware-sdk-s3@3.972.86': + resolution: {integrity: sha512-S3RunQUwvUJcuJ5VrVgvhN5OsVpK4GHRcuXaSawCbutO4piyHTmpObUKm19HdqqLBqjf6kHSeAOk/7OyAJ+hmA==} engines: {node: '>=20.0.0'} - '@aws-sdk/nested-clients@3.997.54': - resolution: {integrity: sha512-/OczlavsS7U5sOodRO10Ug4R/AKFVZiXTstKipWe68EfjPkmdDFNXNl9FCJyXWkg1DG6RBm3qAuVB8FNW9O8KQ==} + '@aws-sdk/nested-clients@3.998.0': + resolution: {integrity: sha512-aOD1oQVWG6UjOOEdp0MsrWE93vG8pPbvtymmeNtglGxAARplh1wzhHs4npqtY5JN5GBSrTaLbn1hQQ3W2Lk8ow==} engines: {node: '>=20.0.0'} '@aws-sdk/signature-v4-multi-region@3.996.51': resolution: {integrity: sha512-+aHvUugVBuMPXxgkPfWnTMyGdE/yWS8GHi5+qQ37HowS0YqzrbuaDLznj+Dtmtu5jgCdqz36gXmujOToUhNNWw==} engines: {node: '>=20.0.0'} - '@aws-sdk/token-providers@3.1161.0': - resolution: {integrity: sha512-ypbXSofNcSHwf/KA40bFCXJb0MLaAKrfT7sot4dFaA+2lsuXNah4zLRJIAU7Qmvs9PFJ6rnY0bZFEC+mE7attA==} + '@aws-sdk/token-providers@3.1162.0': + resolution: {integrity: sha512-vOD6Ac0M43LtXaPu+/+wUMQCd27zIpKt/Le/a645qhx7T1MZeEK71PDhtIHGHgnQjGyNSfC6Z5RNud/hQb3veg==} engines: {node: '>=20.0.0'} '@aws-sdk/types@3.975.0': @@ -2802,8 +2802,8 @@ packages: resolution: {integrity: sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==} engines: {node: '>=18'} - '@smithy/core@3.38.1': - resolution: {integrity: sha512-U/mB2XiwTLaf+NSgLSWwJfptsMT/H8aBi0aTAA/E5e2/TagFeGCqAyhKGG0w0A9IWTkm4qYEmLoD/HB6aYfnRA==} + '@smithy/core@3.39.0': + resolution: {integrity: sha512-JJ/46AWQ4ipS1N2eZmUj7yzIhH8NhQIfAE+dce7NSB6dmFh+7hvD4pbofcoT4I0Xzfy/LNhZx3V2QhwYyAiqdg==} engines: {node: '>=18.0.0'} '@smithy/credential-provider-imds@4.5.2': @@ -2814,16 +2814,16 @@ packages: resolution: {integrity: sha512-ycSJu3tFAQ4v04CBB0agqFMVsSQ1iG3yw+SpgxRqKfaURpQD4CZ8Wn0zPMmSnOuTpTh65Vz+EA0rMrw089wvkA==} engines: {node: '>=18.0.0'} - '@smithy/node-http-handler@4.14.0': - resolution: {integrity: sha512-j24RS5V9J52u0z81RpgF7H55p4bS6UCEIxF4ZYzTYh6M9hzXvjAIAYwgLobqf7vJq3xib5VXc7nX3YesV8Rx4A==} + '@smithy/node-http-handler@4.14.2': + resolution: {integrity: sha512-i1uORV1v3qBqP43ayRKzIdm1q5x14tf8N4Dd06/QUX1Szm6VxHMrTsu20X5E63UFsaNZCRjI4SXG0jDmqYa+3w==} engines: {node: '>=18.0.0'} '@smithy/signature-v4@5.7.5': resolution: {integrity: sha512-WPjdr5oWOk1LArpI4pavu+fSo+/evi0Re1olxGvqwuZopd4gYR1UGCi+Soyn/IjmafqbWs+ZC+3AKxJS3ZpwUg==} engines: {node: '>=18.0.0'} - '@smithy/types@4.19.0': - resolution: {integrity: sha512-r7jh49VJxGerfAcTQA6gXcKc+98zOp/tqRwzYjgOE+iSQsP6cEU1hq2QzbuipmP68QtYdY9wKEhiCQZIzHgZ4Q==} + '@smithy/types@4.20.0': + resolution: {integrity: sha512-lCA6QG22dPk9ecHbv91jDQZsmtPUjdS1aE2Il6NNPqe7DrYc0dZQi6DhcESk2KYXH2sp5xbAcGdYMZDFnuzA2A==} engines: {node: '>=18.0.0'} '@standard-schema/spec@1.1.0': @@ -2956,11 +2956,11 @@ packages: '@tailwindcss/postcss@4.3.4': resolution: {integrity: sha512-6O0QLY+1CseO8ivlYK2Y7IxNPaQ8D5ypxrV+ws34mbxknWH824J+gEWtJ0gyFiYAudmdEeXdF8kqwgXIaZRyHw==} - '@tanstack/query-core@5.105.3': - resolution: {integrity: sha512-v1rbNy7MB/4Akth7CQH+CerV13K7Ok9hAusEsfz4sCjDdu3/kOSJPoWfoB+YjdEX1eBFBWKNAGE5nqZCgdlHDw==} + '@tanstack/query-core@5.106.1': + resolution: {integrity: sha512-erYv/UACddcdgjOL2ixmFdK6tO/AVBeUcTCOtX2N51yZpDQ2U7KJ+xgB/bCNfsF3uoCDTqGHEEbDiFsIO9YUmQ==} - '@tanstack/react-query@5.105.3': - resolution: {integrity: sha512-dj5hGWZmwoc9NG4enoXuYbiYwb5FxgJYPVv06eUgicMTfEMTRXn08Xv9D/r1V8TfjAv+BpxdvZFzJ1h3hSWZcQ==} + '@tanstack/react-query@5.106.1': + resolution: {integrity: sha512-ORDvJG/DSfmlFL9lQ8GDkE0VjtQbLeRDY7BL8xjKkQFGLfjFGfNWNuteWgPqA2gPJgLLuWfQ7IX0FlsHCJriyg==} peerDependencies: '@types/react': ^18 || ^19 react: ^18 || ^19 @@ -3917,8 +3917,8 @@ packages: resolution: {integrity: sha512-piICUB6ei4IlTv1+653yq5+KoqfBYmj9bw6LqXoOneTMDXk5nM1qt12mFW1caG3LlJXEKW1Bp0WggEmIfQB34g==} engines: {node: '>= 14'} - cron-parser@5.10.2: - resolution: {integrity: sha512-JfAYMY0LZaWQTuict8PhtF/ksSnq8xefSDmQUnnoqvkPYkU/y3UP0DTWzJKFBz0P1IXsDG8q0vY3zHkoFZOhvw==} + cron-parser@5.10.3: + resolution: {integrity: sha512-Fwlmlgiyoj5e7XDCy5T3ueFd3imgt714k7xjAzhkOBUrUgQxWtsjS7kWSEN3efDX34bebxBJAmPoCSisHvjlpw==} engines: {node: '>=18'} cross-spawn@7.0.6: @@ -5362,8 +5362,8 @@ packages: resolution: {integrity: sha512-5J9ysMYUpYIg9RF2vJpy9SinEmSviFSe0GyPpCQ4L5QSkLAgeLXlTAOu2ZwWUU5m+0SBl6gUU1R1ZQB3aKypfA==} engines: {bun: '>=1.0.0', deno: '>=1.30.0', node: '>=8.0.0'} - lucide-react@1.67.0: - resolution: {integrity: sha512-z7kd21YNm/Gw3E7mTnq5dTuvV+yc+OEwA//oDENSG1SbZ/NVgKdjxALJFNdGoC0Ji7HaJR2Dha9ev7VUPxy9CQ==} + lucide-react@1.69.0: + resolution: {integrity: sha512-UTFECm4yEgkgMN0kfLuxWcmlk+4u02Jrqehgk3ZXRx/Ud68OpP7hjkp67bvkBHmIpMaZCIveF1QDYeupO7XmYQ==} peerDependencies: '@types/react': '*' react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -5780,8 +5780,8 @@ packages: performance-now@2.1.0: resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==} - pg-boss@12.38.0: - resolution: {integrity: sha512-felA3fyPSJwWk5cb/VwAgnudCAzWEdgBjjf+eukXm8pExlwkhjdBbOMukMyG5s8uZHO6fZZZcaIaTa3oKpfSCg==} + pg-boss@12.38.1: + resolution: {integrity: sha512-g7zSszWPsakw+Ng5Uqa/DiW8mz8CVnuO17VQ7CXaPsfgFj5Z+wSmP8CBGIgwGB82DNFpdP+wCbt89pal3fwxRQ==} engines: {node: '>=22.12.0'} hasBin: true peerDependencies: @@ -6330,8 +6330,8 @@ packages: resolution: {integrity: sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==} engines: {node: '>= 18'} - serialize-error@13.0.2: - resolution: {integrity: sha512-G+YKwp9I6IvWMe5RlwqxdmTPIcq/G8HK/sU51gdV1XAJznYkRSTB0ph+zB9AfSxG0fx6xrqYA6i9HeIcHFTXow==} + serialize-error@13.1.0: + resolution: {integrity: sha512-FT1EL2Pz7lAWA48I6Qb1qHEvGT9ZGz2pb1sYZ9Dhu2t+RmHN6O12WMu7HzFcqFRQaUWEl3Q+++EYBTrZpCoykQ==} engines: {node: '>=20'} serve-static@2.2.1: @@ -6819,8 +6819,8 @@ packages: resolution: {integrity: sha512-03KrMbjIFDWQR5RNPrSw3bd1r12JpyFQl9/yxjUbJtqkjmllqC5lFjZh6ujeuJCKr8EOQvRW872Oy/az+nLYxg==} engines: {node: '>=20.18.1'} - undici@8.12.3: - resolution: {integrity: sha512-+fdndUTwBP86cVjihTp21hZHo7d6oj1c/47XPA3lL8mM0XHs+C4EkcjmgRsFnFk2f/UONGDy9ItBItmXsLOQHw==} + undici@8.12.4: + resolution: {integrity: sha512-8Mx+uNKKER2bA4AdtedkqRbwUCIJFr2nJckXRe5yrDqzePqwLP7VNcctN8/XdmDSbF7mS+jJKIszlL+vbam1VA==} engines: {node: '>=22.19.0'} unicorn-magic@0.3.0: @@ -7201,177 +7201,177 @@ snapshots: '@alloc/quick-lru@5.3.0': {} - '@aws-sdk/checksums@3.1002.1': + '@aws-sdk/checksums@3.1002.2': dependencies: - '@aws-sdk/core': 3.979.1 + '@aws-sdk/core': 3.980.0 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/client-s3@3.1161.0': + '@aws-sdk/client-s3@3.1162.0': dependencies: - '@aws-sdk/checksums': 3.1002.1 - '@aws-sdk/core': 3.979.1 - '@aws-sdk/credential-provider-node': 3.972.92 - '@aws-sdk/middleware-sdk-s3': 3.972.85 + '@aws-sdk/checksums': 3.1002.2 + '@aws-sdk/core': 3.980.0 + '@aws-sdk/credential-provider-node': 3.972.93 + '@aws-sdk/middleware-sdk-s3': 3.972.86 '@aws-sdk/signature-v4-multi-region': 3.996.51 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 + '@smithy/core': 3.39.0 '@smithy/fetch-http-handler': 5.8.0 - '@smithy/node-http-handler': 4.14.0 - '@smithy/types': 4.19.0 + '@smithy/node-http-handler': 4.14.2 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/core@3.979.1': + '@aws-sdk/core@3.980.0': dependencies: '@aws-sdk/types': 3.975.0 '@aws-sdk/xml-builder': 3.972.42 '@aws/lambda-invoke-store': 0.3.0 - '@smithy/core': 3.38.1 + '@smithy/core': 3.39.0 '@smithy/signature-v4': 5.7.5 - '@smithy/types': 4.19.0 + '@smithy/types': 4.20.0 bowser: 2.15.0 tslib: 2.9.1 - '@aws-sdk/credential-provider-env@3.972.80': + '@aws-sdk/credential-provider-env@3.972.81': dependencies: - '@aws-sdk/core': 3.979.1 + '@aws-sdk/core': 3.980.0 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/credential-provider-http@3.972.82': + '@aws-sdk/credential-provider-http@3.972.83': dependencies: - '@aws-sdk/core': 3.979.1 + '@aws-sdk/core': 3.980.0 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 + '@smithy/core': 3.39.0 '@smithy/fetch-http-handler': 5.8.0 - '@smithy/node-http-handler': 4.14.0 - '@smithy/types': 4.19.0 + '@smithy/node-http-handler': 4.14.2 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/credential-provider-ini@3.973.25': + '@aws-sdk/credential-provider-ini@3.973.26': dependencies: - '@aws-sdk/core': 3.979.1 - '@aws-sdk/credential-provider-env': 3.972.80 - '@aws-sdk/credential-provider-http': 3.972.82 - '@aws-sdk/credential-provider-login': 3.972.87 - '@aws-sdk/credential-provider-process': 3.972.80 - '@aws-sdk/credential-provider-sso': 3.973.24 - '@aws-sdk/credential-provider-web-identity': 3.972.86 - '@aws-sdk/nested-clients': 3.997.54 + '@aws-sdk/core': 3.980.0 + '@aws-sdk/credential-provider-env': 3.972.81 + '@aws-sdk/credential-provider-http': 3.972.83 + '@aws-sdk/credential-provider-login': 3.972.88 + '@aws-sdk/credential-provider-process': 3.972.81 + '@aws-sdk/credential-provider-sso': 3.973.25 + '@aws-sdk/credential-provider-web-identity': 3.972.87 + '@aws-sdk/nested-clients': 3.998.0 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 + '@smithy/core': 3.39.0 '@smithy/credential-provider-imds': 4.5.2 - '@smithy/types': 4.19.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/credential-provider-login@3.972.87': + '@aws-sdk/credential-provider-login@3.972.88': dependencies: - '@aws-sdk/core': 3.979.1 - '@aws-sdk/nested-clients': 3.997.54 + '@aws-sdk/core': 3.980.0 + '@aws-sdk/nested-clients': 3.998.0 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/credential-provider-node@3.972.92': + '@aws-sdk/credential-provider-node@3.972.93': dependencies: - '@aws-sdk/credential-provider-env': 3.972.80 - '@aws-sdk/credential-provider-http': 3.972.82 - '@aws-sdk/credential-provider-ini': 3.973.25 - '@aws-sdk/credential-provider-process': 3.972.80 - '@aws-sdk/credential-provider-sso': 3.973.24 - '@aws-sdk/credential-provider-web-identity': 3.972.86 + '@aws-sdk/credential-provider-env': 3.972.81 + '@aws-sdk/credential-provider-http': 3.972.83 + '@aws-sdk/credential-provider-ini': 3.973.26 + '@aws-sdk/credential-provider-process': 3.972.81 + '@aws-sdk/credential-provider-sso': 3.973.25 + '@aws-sdk/credential-provider-web-identity': 3.972.87 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 + '@smithy/core': 3.39.0 '@smithy/credential-provider-imds': 4.5.2 - '@smithy/types': 4.19.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/credential-provider-process@3.972.80': + '@aws-sdk/credential-provider-process@3.972.81': dependencies: - '@aws-sdk/core': 3.979.1 + '@aws-sdk/core': 3.980.0 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/credential-provider-sso@3.973.24': + '@aws-sdk/credential-provider-sso@3.973.25': dependencies: - '@aws-sdk/core': 3.979.1 - '@aws-sdk/nested-clients': 3.997.54 - '@aws-sdk/token-providers': 3.1161.0 + '@aws-sdk/core': 3.980.0 + '@aws-sdk/nested-clients': 3.998.0 + '@aws-sdk/token-providers': 3.1162.0 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/credential-provider-web-identity@3.972.86': + '@aws-sdk/credential-provider-web-identity@3.972.87': dependencies: - '@aws-sdk/core': 3.979.1 - '@aws-sdk/nested-clients': 3.997.54 + '@aws-sdk/core': 3.980.0 + '@aws-sdk/nested-clients': 3.998.0 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/lib-storage@3.1161.0(@aws-sdk/client-s3@3.1161.0)': + '@aws-sdk/lib-storage@3.1162.0(@aws-sdk/client-s3@3.1162.0)': dependencies: - '@aws-sdk/client-s3': 3.1161.0 - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@aws-sdk/client-s3': 3.1162.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 buffer: 5.6.0 events: 3.3.0 stream-browserify: 3.0.0 tslib: 2.9.1 - '@aws-sdk/middleware-sdk-s3@3.972.85': + '@aws-sdk/middleware-sdk-s3@3.972.86': dependencies: - '@aws-sdk/core': 3.979.1 + '@aws-sdk/core': 3.980.0 '@aws-sdk/signature-v4-multi-region': 3.996.51 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/nested-clients@3.997.54': + '@aws-sdk/nested-clients@3.998.0': dependencies: - '@aws-sdk/core': 3.979.1 + '@aws-sdk/core': 3.980.0 '@aws-sdk/signature-v4-multi-region': 3.996.51 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 + '@smithy/core': 3.39.0 '@smithy/fetch-http-handler': 5.8.0 - '@smithy/node-http-handler': 4.14.0 - '@smithy/types': 4.19.0 + '@smithy/node-http-handler': 4.14.2 + '@smithy/types': 4.20.0 tslib: 2.9.1 '@aws-sdk/signature-v4-multi-region@3.996.51': dependencies: '@aws-sdk/types': 3.975.0 '@smithy/signature-v4': 5.7.5 - '@smithy/types': 4.19.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@aws-sdk/token-providers@3.1161.0': + '@aws-sdk/token-providers@3.1162.0': dependencies: - '@aws-sdk/core': 3.979.1 - '@aws-sdk/nested-clients': 3.997.54 + '@aws-sdk/core': 3.980.0 + '@aws-sdk/nested-clients': 3.998.0 '@aws-sdk/types': 3.975.0 - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 '@aws-sdk/types@3.975.0': dependencies: - '@smithy/types': 4.19.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 '@aws-sdk/xml-builder@3.972.42': dependencies: - '@smithy/types': 4.19.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 '@aws/lambda-invoke-store@0.3.0': {} @@ -9829,36 +9829,36 @@ snapshots: '@sindresorhus/merge-streams@4.0.0': {} - '@smithy/core@3.38.1': + '@smithy/core@3.39.0': dependencies: - '@smithy/types': 4.19.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 '@smithy/credential-provider-imds@4.5.2': dependencies: - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 '@smithy/fetch-http-handler@5.8.0': dependencies: - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@smithy/node-http-handler@4.14.0': + '@smithy/node-http-handler@4.14.2': dependencies: - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 '@smithy/signature-v4@5.7.5': dependencies: - '@smithy/core': 3.38.1 - '@smithy/types': 4.19.0 + '@smithy/core': 3.39.0 + '@smithy/types': 4.20.0 tslib: 2.9.1 - '@smithy/types@4.19.0': + '@smithy/types@4.20.0': dependencies: tslib: 2.9.1 @@ -10014,11 +10014,11 @@ snapshots: postcss: 8.5.32 tailwindcss: 4.3.4 - '@tanstack/query-core@5.105.3': {} + '@tanstack/query-core@5.106.1': {} - '@tanstack/react-query@5.105.3(@types/react@19.3.0)(react@19.3.1)': + '@tanstack/react-query@5.106.1(@types/react@19.3.0)(react@19.3.1)': dependencies: - '@tanstack/query-core': 5.105.3 + '@tanstack/query-core': 5.106.1 react: 19.3.1 optionalDependencies: '@types/react': 19.3.0 @@ -11049,7 +11049,7 @@ snapshots: crc-32: 1.2.2 readable-stream: 4.8.0 - cron-parser@5.10.2: + cron-parser@5.10.3: dependencies: luxon: 3.7.2 @@ -12579,7 +12579,7 @@ snapshots: lru.min@1.1.5: {} - lucide-react@1.67.0(@types/react@19.3.0)(react@19.3.1): + lucide-react@1.69.0(@types/react@19.3.0)(react@19.3.1): dependencies: react: 19.3.1 optionalDependencies: @@ -13016,13 +13016,13 @@ snapshots: performance-now@2.1.0: optional: true - pg-boss@12.38.0(@opentelemetry/api@1.9.1): + pg-boss@12.38.1(@opentelemetry/api@1.9.1): dependencies: '@opentelemetry/api': 1.9.1 - cron-parser: 5.10.2 + cron-parser: 5.10.3 pg: 8.23.1 rrule-temporal: 2.2.8 - serialize-error: 13.0.2 + serialize-error: 13.1.0 transitivePeerDependencies: - pg-native @@ -13610,7 +13610,7 @@ snapshots: transitivePeerDependencies: - supports-color - serialize-error@13.0.2: + serialize-error@13.1.0: dependencies: non-error: 0.1.0 type-fest: 5.10.0 @@ -14059,7 +14059,7 @@ snapshots: ssh-remote-port-forward: 1.0.4 tar-fs: 3.1.3 tmp: 0.2.7 - undici: 8.12.3 + undici: 8.12.4 transitivePeerDependencies: - bare-abort-controller - bare-buffer @@ -14243,7 +14243,7 @@ snapshots: undici@7.30.1: {} - undici@8.12.3: {} + undici@8.12.4: {} unicorn-magic@0.3.0: {} diff --git a/scripts/__tests__/release-workflows.test.ts b/scripts/__tests__/release-workflows.test.ts index 9730d3c40..1b32ba387 100644 --- a/scripts/__tests__/release-workflows.test.ts +++ b/scripts/__tests__/release-workflows.test.ts @@ -228,7 +228,7 @@ describe("release container inputs", () => { expect(fromLines).toHaveLength(4); expect(new Set(fromLines.map((line) => line.split(" AS ")[0]))).toEqual( new Set([ - "FROM node:22-trixie-slim@sha256:2117f713a417f3aff682ac8f5bc2ebbdf1beed51f36e67ab1e0fd3866b6d2d8f", + "FROM node:22-trixie-slim@sha256:be1e2a3dc2c4fd68cdfadad2a696a280e0d2749098bee509230174d72fb768c6", ]), ); }); diff --git a/src/lib/jobs/__tests__/job-failures-retention.test.ts b/src/lib/jobs/__tests__/job-failures-retention.test.ts index 6219eb253..b15aeda98 100644 --- a/src/lib/jobs/__tests__/job-failures-retention.test.ts +++ b/src/lib/jobs/__tests__/job-failures-retention.test.ts @@ -18,7 +18,7 @@ describe("pg-boss failed-row ledger retention", () => { ) as { version: string }; const plans = readFileSync(join(PG_BOSS_ROOT, "dist/plans.js"), "utf8"); - expect(packageJson.version).toBe("12.38.0"); + expect(packageJson.version).toBe("12.38.1"); expect(plans).toContain("retention_seconds: FORTEEN_DAYS"); expect(plans).toContain("deletion_seconds: SEVEN_DAYS"); // 12.37 reads the clock through job_now(), which is pg_catalog.now()