Files
platform/todo/sendoff/per-user-size-limit.md
T
pastilhasandClaude Opus 5 4ea25d76c8 todo: the SendOff size limit should be per user, from settings
512 MB was chosen as enough-for-now on the day the feature landed, and it applies
to every account equally. The owner asked for it per user before the code was an
hour old.

Notes the adjacent question while it is in view: a size limit bounds one send, and
nothing bounds what a sender accumulates in somebody's tree over a month.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-23 02:34:15 +00:00

1.6 KiB

id, title, theme, status, created, date_source, order
id title theme status created date_source order
sendoff/per-user-size-limit The SendOff file size limit is one constant for everybody sendoff open 2026-08-23 stated 1

MAX_FILE_SIZE in src/servers/api/sendoff/router.ts is a hard-coded 512 MB and applies to every account equally. The owner asked for it to be configurable per user, from settings, on the day the feature landed — 512 MB was chosen as "enough for now" rather than as a considered ceiling.

Why it wants to be per-user rather than one server-wide number: the accounts differ in what they are for. The owner sending themselves a video off a phone and a member being allowed to drop a document are not the same size of thing, and the honest limit for one is an insult or a hazard for the other. A single number has to be set for the most generous case, which is exactly the case you would want to bound.

Shape, when it is built:

  • An owner-only setting, per account, defaulting to the current 512 MB when unset. Absence means default, not unlimited — the same posture the permission model already takes.
  • Enforced in POST /sendoff/send where the constant is read today, so there is one place it can be wrong.
  • The refusal has to say the limit it applied. A 400 reading "too big" against an invisible per-account number is the kind of error somebody retries three times before asking.

Worth deciding at the same time, because it is the same question one layer out: whether a disk quota belongs here too. A size limit bounds one send; nothing currently bounds how much a sender may accumulate in somebody's tree over a month, and the recipient's only tool is revoking them afterwards.