By: Michael Lynch <git@mtlynch.io>
Add typed StorageKey and ContentType wrappers for MediaWriter Replace the bare string key and contentType parameters threaded through the MediaWriter interface with typed wrappers, mirroring the existing littlemoments.Filename pattern: each has a validating constructor that rejects empty input plus a String() accessor. The typed values propagate through every implementation and caller (LocalWriter, s3.Writer, WriteConverted, imagepipe, importers, uploads, s3config.FullPath, and the import command). Because the constructors return errors, key-building call sites now surface those errors rather than silently passing strings. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>