Keep using Photos.app like you always do. Attic quietly backs up your originals and edits to an S3 bucket you control. One-way, append-only.
3
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix(status): Stable sort for UTI breakdown with equal counts

Dictionary sort is non-deterministic for equal values, causing
flaky CI on utiBreakdownTopTypes test. Add alphabetical tiebreaker.

+1 -1
+1 -1
Sources/AtticCore/StatusStats.swift
··· 107 107 let display = uti.hasPrefix("public.") ? String(uti.dropFirst(7)).uppercased() : uti.uppercased() 108 108 counts[display, default: 0] += 1 109 109 } 110 - let sorted = counts.sorted { $0.value > $1.value } 110 + let sorted = counts.sorted { $0.value != $1.value ? $0.value > $1.value : $0.key < $1.key } 111 111 let total = Double(assets.count) 112 112 var result: [TypeBreakdown] = [] 113 113 var shown = 0.0