Skip to content

docs(adr-0150): accept 8 GB per server and profile on a device - #405

Merged
jeffcrouse merged 4 commits into
docs/adr-0137-acceptfrom
adr/0150-storage-budget-per-server
Oct 5, 2026
Merged

jeffcrouse merged 4 commits into
docs/adr-0137-acceptfrom
adr/0150-storage-budget-per-server

Conversation

@jeffcrouse

Copy link
Copy Markdown
Member

Proposed, stacked on #404 (which accepts ADR-0137). Supersedes ADR-0137 point 5 once accepted. On acceptance, ADR-0137's Status: becomes accepted; point 5 superseded by ADR-0150.

The owner's rule: 8 GB per server and profile, and warn when a device starts holding more than one. Choices made with it: the 8 GB covers kept + cached (play cache) tracks, explicit downloads stay outside it, and it is the same on the Mac.

What investigation turned up that the ADR has to decide (all verified in familiar-apple today):

  • Storage is global. One Downloads folder and one Cache folder shared by every server and profile, so per-pair storage is a partition that doesn't exist yet (points 1, 6).
  • The play cache already has a per-device budget (16 GB Mac / 8 GB phone, ADR-0010's measurement). This folds it into the per-pair 8 GB. The Mac's cost is recorded honestly: 23.6% hit rate at 8 GB vs 33.3% at 16.
  • Up to 5 pairs (RecentServers.limit), so 40 GB worst case. That's what the warning states (point 4).
  • Downloads don't record why they were made, so existing auto-downloaded favourites can't be told from chosen downloads. "Kept" becomes a third directory class (point 3, following ADR-0010 point 2), and existing files stay "downloaded" (point 6).

Build order: partition → budget → warning and storage screen.

🤖 Generated with Claude Code

jeffcrouse and others added 2 commits October 4, 2026 21:26
Supersedes ADR-0137 point 5 (a share of free space) with the owner's
rule: each server/profile pair gets its own storage and an 8 GB budget
covering kept and cached tracks, on phone and Mac alike; explicit
downloads stay outside it. A device warns, with the total, when it
starts holding a further pair.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@jeffcrouse jeffcrouse changed the title docs(adr-0150): propose 8 GB per server and profile on a device docs(adr-0150): accept 8 GB per server and profile on a device Oct 5, 2026
jeffcrouse and others added 2 commits October 4, 2026 22:03
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@jeffcrouse
jeffcrouse merged commit 23b8d41 into docs/adr-0137-accept Oct 5, 2026
1 check passed
@jeffcrouse
jeffcrouse deleted the adr/0150-storage-budget-per-server branch October 5, 2026 17:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant