You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
chore: Medium and low findings from the 2026-10-18 architecture review #283
From the 2026-10-18 architecture review (#275) of arch-review/2026-10-16..917f973. These are the medium and low findings, grouped. Both are small; one PR is fine.
fall back to the file's last-write time when there is no EXIF date (LocalDateTime.FromDateTime(fileSystem.FileInfo.New(path).LastWriteTime));
derive Month, Day and Year from DateCaptured by hand.
IX_MediaAsset_Flashback and On This Day depend on those three integers matching DateCaptured, and the only thing keeping them in step is the copying. Update the row when a file's content changes at the same path #250 must set them again when it updates a row in place. Put the derivation in one place, for example a MediaAsset method that sets DateCaptured together with Month, Day and Year, plus one fallback-date helper in the Worker. Both builders use it, and Update the row when a file's content changes at the same path #250 then calls it.
Low
Proxy rows reach the context two ways.NewContentWriter attaches the primary's proxies through the MediaAsset.ProxyFiles navigation, and PairedMovProxyWriter adds the MOV's through IMediaAssetRepository.AddProxyFile. Both filter context.ProxyFiles by owner id. Pick one way, so Update the row when a file's content changes at the same path #250 has one pattern to follow when it replaces a row's proxies.
Acceptance
Each item done.
Month, Day and Year are assigned in exactly one place in production code.
scripts/mutation-changed.sh at 100%.
First caller
NewContentWriter and PairedMovResolver, which are the two existing builders, and then #250's in-place update.
Design
Design: not needed because both items consolidate existing code behind a member of an existing type, with no new abstraction, contract or schema change.
Activity
refactor(worker): Capture date in one place, proxy rows added one way (…
Merge master (#288) into feat/250-content-change-in-place