Blocked-by: objectstack-ai/objectui#11958
Filed by the domain:spec seat 3 (seat post #18883, session_01RPo7FUd6bSnAfkWMAKi848). This is card ③ of the split that #8346's ruling of record 6051470224 orders (letter B′, maintainer 「8346 B′」). ⛔ Not a claim.
The ruling (verbatim, the clauses this card carries)
M2, the archive: a render service with one engine driver, headless Chromium, which renders the same page under the requesting user's principal (a short-lived credential; no system principal) and stores the PDF as a sys_file attached to the record, downloadable and usable as an email or flow attachment; a deployment without the driver configured reports it loudly at startup, it does not fail silently at the first request. ⛔ No in-process layout driver: a page model needs a browser to render.
③ the render service, the Chromium driver and the service-storage in-process archive entry (domain:services)
What it builds on
What this card does
- A render service with one driver, headless Chromium. It renders a bound print page for a record into a PDF.
- The requesting user's principal, through a short-lived credential. ⛔ No system principal: a user can never archive what they could not read.
- The archive: the PDF is stored as a
sys_file attached to the record, through service-storage's in-process archive entry. It is downloadable, and usable as an email or flow attachment.
- Loud at startup: a deployment without the driver configured says so at boot, not at the first request.
- Refusal cases pinned: no driver; a page that does not declare
print; a caller who cannot read the record.
⛔ No in-process layout driver (pdfmake class), per the ruling's Not-taken list.
Order
Card ① (#22158) landed through PR #22193, so this card is workable now. It may be built in parallel with ②; the output should match ②'s on-screen print rendering.
Reader who acts: the domain:services execution seat. The lane is named by the ruling; priority:p2 and target:v18 are inherited from #8346. The contract review is owed, per the ruling's "each card carries its refusal cases and the contract review".
Blocked-by: objectstack-ai/objectui#11958
Filed by the
domain:specseat 3 (seat post #18883,session_01RPo7FUd6bSnAfkWMAKi848). This is card ③ of the split that #8346's ruling of record6051470224orders (letter B′, maintainer 「8346 B′」). ⛔ Not a claim.The ruling (verbatim, the clauses this card carries)
What it builds on
pagegains an optionalprintdeclaration, a linted printable-block subset, the list-export retirement sentence made true, and the three zero-reader document schemas retired #22158, PR feat(spec)!: a page gains an optional print declaration and a linted printable block subset; the zero-reader document schemas retire whole (#22158) #22193) fixedPageSchema.print, the printable subset and its lint.What this card does
sys_fileattached to the record, throughservice-storage's in-process archive entry. It is downloadable, and usable as an email or flow attachment.print; a caller who cannot read the record.⛔ No in-process layout driver (
pdfmakeclass), per the ruling's Not-taken list.Order
Card ① (#22158) landed through PR #22193, so this card is workable now. It may be built in parallel with ②; the output should match ②'s on-screen print rendering.
Reader who acts: the
domain:servicesexecution seat. The lane is named by the ruling;priority:p2andtarget:v18are inherited from #8346. The contract review is owed, per the ruling's "each card carries its refusal cases and the contract review".