Skip to content

v0.2.0: Remove the unserved downloadUrl; validate document ids

Choose a tag to compare

@cyanheads cyanheads released this 28 Jun 05:04
· 9 commits to main since this release
c5154d4

Remove the unserved downloadUrl; validate document ids

Breaking: the downloadUrl envelope field is no longer emitted; document ids are now validated at the schema boundary.

Removed:

  • downloadUrl is no longer emitted — no HTTP route served the advertised /documents/{id} path, so a GET 404'd. The field stays reserved in the schema but is always absent; bytes deliver via the docgen://document/{id} resource URI and inline base64. Breaking: read resourceUri or inlineBase64 instead. (#2)

Fixed:

  • template_render_failed now carries its declared recovery.hint on the wire, alongside the existing missingKey. (#1)

Security:

  • documentId is validated against ^doc_[A-Za-z0-9_-]{24}$ at the schema boundary, and the store resolves a non-conforming id as not-found before any storage read — a malformed id no longer bypasses document_expired or leaks the internal doc/meta/ storage key. (#3)

142 tests pass; bun run devcheck clean.