feat(memories): Tier 2 — people_together memory type (pair co-occurrence)#792
Open
Deeds67 wants to merge 7 commits into
Open
feat(memories): Tier 2 — people_together memory type (pair co-occurrence)#792Deeds67 wants to merge 7 commits into
Deeds67 wants to merge 7 commits into
Conversation
Deeds67
force-pushed
the
feat/memory-types-tier1
branch
from
July 21, 2026 20:27
28f317c to
5dfcbb9
Compare
…rage, /impl-loop slices
Deeds67
force-pushed
the
feat/memory-types-tier2
branch
from
July 21, 2026 20:28
06f2cf0 to
e05a6f9
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds the first Tier 2 memory type —
people_together: a pair of people (or pets) who were photographed together a lot in the current calendar month of a past year. Titled "Anna & Ben", subtitled "18 photos together · June 2023".Reframed from the roadmap's "You & [person]" (#5) to a pair memory — the schema has no reliable account-owner→person mapping, so "You & X" would need a fragile heuristic. Date-anchored like
month_recap: fires on day 20 with a 7-day visibility window.Spec:
docs/plans/2026-07-16-memory-types-tier2-people-together-spec.mdHow — 4 TDD slices
pairCountscuration helper — pure pair co-occurrence (dedupes a person's multiple faces per asset, no self-pairs), distinct-day counting, deterministic ordering.getMemoryFacesForPeriodrepository query — flat face rows for named, non-hidden people and pets;@GenerateSqlsnapshot regenerated.people_togetherrule (end-to-end) — rule + registry + metadata + admin toggle + 4en.jsonkeys.Key decisions
month_recap(day 1) andfavorites_throwback(day 15) so it never starvesmonth_recap's single day-1 slot. Zero engine change — reuses thevisibleForDaysmachinery shipped in Tier 1.Anna & RexandRex & Whiskersboth possible.Tests
pairCounts(9 cases), rule spec (13 cases, exactscorepinned), metadata/registry — all green.getMemoryFacesForPeriodfilter tests + 2 end-to-end generation tests (positive/negative, non-tautology verified).tsc/eslint --max-warnings 0/prettierclean; SQL snapshot regenerated (clean diff); mobile parity N/A (renders rule memories generically — verified).Stacked on #789
Based on
feat/memory-types-tier1(Tier 1, PR #789). GitHub will auto-retarget this tomainonce #789 merges.