File & Media

experimental

R2-backed file uploads with tenant-scoped keys, validated upload tickets, orphan cleanup, and soft-deletes. Async image variants fan out through jobs-workflows.

File & Media is source-visible, contract-first code — your agent reads the whole interface before it composes, never a black box.

Every hook has typed I/O and required tests, and the composition is pinned in microservices.lock.json — what you inspect here is exactly what pnpm microservices check verifies and deploys.

Typed hooks

Extension points with typed input/output and required tests — customize behavior without forking the module.

  • beforeUpload
  • allowContentType
  • onFileUploaded

Events emitted

A stable, documented event surface other modules can subscribe to.

  • media.upload_requested
  • media.uploaded
  • media.deleted
  • media.ticket_expired

Permissions

Scoped capabilities the module declares; the gateway enforces them at the boundary.

  • media.upload
  • media.read
  • media.admin

Experimental listing. Generated from the canonical module manifest via `registry build`.