Jakob Wennberg
749f90fe62
feat(inbox): direct-to-storage upload for files over the hosted body limit ( #1551 ) ( #2030 )
...
Hosted uploads larger than the 4 MB multipart ceiling (Vercel's 4.5 MB request-body cap) now go POST /upload/create (signed PUT URL, rate-limited) -> PUT to the raw Storage URL -> POST /upload/complete (server-side magic-byte and size validation, sha256, WORM move, idempotent), reusing the #1378 pending-upload primitives. uploadAndExtract is split into uploadDocument + processArchivedDocument so both paths share the inbox pipeline. Dokumentinkorgen and the supplier-invoice form use the new path only above the threshold; files that fit keep the multipart route. Cap stays at 10 MB (the issue asks for 20 MB: founder call). Refs #1551
2026-08-30 11:55:42 +02:00
..
2026-08-17 14:30:25 +02:00
2026-08-24 16:37:30 +02:00
2026-08-12 14:36:08 +02:00
2026-08-24 16:37:30 +02:00
2026-08-28 18:57:02 +02:00
2026-08-19 19:52:31 +02:00
2026-08-28 18:14:31 +02:00
2026-07-27 14:39:13 +02:00
2026-08-28 18:14:31 +02:00
2026-07-07 01:14:59 +02:00
2026-08-30 11:22:05 +02:00
2026-08-29 00:26:47 +02:00
2026-08-27 18:32:52 +02:00
2026-07-27 03:34:56 +02:00
2026-08-26 16:56:39 +02:00
2026-08-24 16:32:44 +02:00
2026-08-30 11:23:15 +02:00
2026-08-26 16:56:39 +02:00
2026-08-28 17:38:36 +02:00
2026-08-03 16:30:14 +02:00
2026-08-30 11:55:42 +02:00
2026-07-27 03:34:56 +02:00
2026-08-21 18:32:17 +02:00
2026-08-26 15:14:49 +02:00
2026-07-17 15:48:25 +02:00
2026-08-26 13:35:54 +02:00
2026-08-30 11:55:42 +02:00
2026-08-25 19:55:53 +02:00
2026-08-27 18:32:52 +02:00
2026-08-26 16:56:39 +02:00
2026-08-19 19:52:31 +02:00
2026-08-30 11:55:42 +02:00
2026-08-27 17:45:40 +02:00
2026-06-17 14:38:44 +02:00
2026-08-30 11:54:47 +02:00
2026-08-20 19:39:08 +02:00
2026-04-22 18:14:01 +02:00
2026-08-27 14:34:02 +02:00
2026-08-13 15:39:49 +02:00
2026-08-30 11:52:14 +02:00
2026-08-11 14:23:58 +02:00
2026-08-21 12:19:35 +02:00
2026-08-12 21:07:57 +02:00
2026-08-26 14:02:09 +02:00
2026-08-25 12:09:20 +02:00
2026-07-27 03:34:56 +02:00
2026-08-08 15:14:34 +02:00
2026-08-14 12:25:23 +02:00
2026-08-10 14:04:08 +02:00
2026-08-27 22:24:36 +02:00
2026-08-30 11:22:05 +02:00
2026-08-28 18:14:31 +02:00
2026-08-13 00:49:20 +02:00
2026-08-30 11:52:14 +02:00
2026-07-04 15:58:06 +02:00
2026-08-13 15:45:24 +02:00
2026-08-29 00:26:47 +02:00
2026-08-28 12:12:47 +02:00
2026-08-30 11:22:05 +02:00
2026-08-30 11:22:05 +02:00
2026-07-28 18:55:16 +02:00
2026-08-25 14:25:00 +02:00
2026-08-09 12:44:08 +02:00
2026-08-30 10:48:05 +02:00
2026-08-18 09:50:48 +02:00
2026-08-17 14:52:50 +02:00
2026-08-26 12:32:29 +02:00
2026-08-18 17:22:52 +02:00
2026-08-01 16:02:12 +02:00
2026-08-29 00:26:47 +02:00
2026-07-23 21:29:36 +02:00
2026-08-28 17:22:38 +02:00
2026-08-26 13:34:27 +02:00
2026-08-25 21:04:06 +02:00
2026-08-26 14:02:09 +02:00
2026-08-17 14:30:25 +02:00
2026-08-21 12:45:11 +02:00
2026-07-27 03:34:56 +02:00
2026-08-14 02:22:07 +02:00
2026-07-04 15:58:06 +02:00
2026-08-03 16:30:14 +02:00