Follow ADR 0479 version 6: the glass only until the feeder is decided, and how the upload bound holds

This commit is contained in:
2026-10-21 11:18:13 +02:00
parent c7bebf53d4
commit 115df9fd69
@@ -11,8 +11,8 @@ decisions:
# 61 — The print and scan page
**A web page where the people the operator names sign in with Keycloak, print a document and scan from the glass
or the feeder, and where only the operator manages the printer. It is a module of its own, `print-and-scan`, that
**A web page where the people the operator names sign in with Keycloak, print a document and scan from the glass,
and where only the operator manages the printer. It is a module of its own, `print-and-scan`, that
knows only the seats `printer`, `scanner` and `object-store`, so any module holding the printer and scanner seats
works with it unchanged.** (ADR 0479, proposed and not in force.)
@@ -50,10 +50,11 @@ differs from the mail web client, whose route is internal only (ADR 0479 §3).
## 3. Documents
A document goes from the browser to the page over HTTPS, and from the page into its own bucket by a link the object
store signs; it never crosses the bus, the page keeps none on its disk, an upload is bounded at 100 MiB, and a signed link never reaches a browser, because the links name the store's
store signs; it never crosses the bus, the page keeps none on its disk, an upload is bounded at 100 MiB (refused by its declared length, or cut at the bound, which stores nothing), and a signed link never reaches a browser, because the links name the store's
internal name (ADR 0468 §3, ADR 0479 §4). To print, the page names its own bucket and the key; its bucket shares
reading with the printer seat (ADR 0479 §5). A scan is read from the scanner's bucket, which shares reading with the
page, and streamed to the browser as a download (ADR 0479 §6).
page, and streamed to the browser as a download; the page offers the feeder and both sides only once a decision in
force gives them to the scanner seat's scan (ADR 0479 §6).
## 4. Managing the printer