PrintLatch 0.1.1
This patch release adds a focused local operator dashboard to the supported
Windows 11 x64 agent. The existing PDF-only API and security boundaries remain
deliberately narrow.
What changed
- A calm, keyboard-accessible setup dashboard is embedded at
/app/. printlatch dashboardcreates a five-minute grant for the exact loopback
dashboard origin and opens it on Windows. Before creating the grant, the CLI
verifies an HMAC challenge from this installation and binds the grant to the
current random agent session.- First run resumes from real agent, printer, capture target, and queue state.
- A fresh grant rotates one stable dashboard credential, invalidates the old
token, and retains its queue history. - Stable credential recovery applies only to the built-in dashboard. Separate
application pairing grants never share a client record or job history merely
because their name and origin match. A dedicated internal marker selects the
stable dashboard identity. - The built-in PDF preview requires explicit confirmation before capture or
printer submission. - Empty, connecting, queued, printing, success, offline, driver, permission,
paper, timeout, and interrupted states provide a next action. - The installer can open the dashboard after installation.
- The dashboard's recovery command includes the running executable, active data
directory, and port, including custominstall.ps1 -DataDirinstallations. - Long integration commands scroll inside their cards without widening the
mobile dashboard. - Active queue polling recovers automatically after a temporary request failure,
with a retry delay capped at five seconds. - Active jobs remain visible even when they are older than the 100-job recent
history window. - A one-time dashboard link remains pending when the initial health check fails
and is consumed automatically after the operator retries the connection. - The public landing page now matches the supported setup workflow and
documents boundaries more clearly.
Security boundary
- There is still no unauthenticated localhost print endpoint.
- The bundled test PDF is authenticated like every preview and document.
- Dashboard authentication remains origin-bound. Same-origin browser requests
without anOriginheader are accepted only when Fetch Metadata says
same-originand the stored origin exactly matches the loopbackHost. - Pairing grants expire after five minutes and application tokens remain
rotatable and revocable. - Concurrent stable-dashboard rotations acquire the SQLite write lock before
reading client state. - CORS and Private Network Access headers are limited to
/v1/*API routes.
The unauthenticated operator shell and its embedded local recovery paths are
not readable cross-origin. - Telemetry remains off because no telemetry is included.
Supported path and evidence
- Supported: Windows 11 x64 and static, unencrypted PDF jobs.
- Testable without hardware: the built-in
capture:pdftarget. - The Windows release archive passed install, health, pairing, preview,
capture, rejection, and uninstall smoke checks on Windows 11 x64. - Browser E2E covered pairing, capture target detection, preview, explicit
confirmation, queue success, offline UI, narrow layout, console output, and
capture hash equivalence. - No physical printer model is newly claimed by this release.
Known limitations
- The executable is not code-signed. Verify
SHA256SUMS.txt. No build
attestation is claimed for this release, and Windows may show a SmartScreen
warning. - Windows 10, ARM64, macOS, Linux, raw ESC/POS, ZPL, HTML, image, URL, encrypted
PDF, cloud relay, fleet management, and driver replacement remain out of
scope. - A physical-printer
succeededstate means Windows accepted the submission.
It does not prove paper output.