Evaluate the field’s audience
The selected tests distinguish community membership, family branch, friendship, and self-only fields.
A broad profile permission should not automatically expose every field within that profile.
CASE STUDY 04 / COMMUNITY & GENEALOGY
A private community and genealogy project combining family trees, stories, social posts, messaging, and one-to-one calls. It explores how belonging to a community differs from permission to view a particular record.
Hosted development preview. Family records require sign-in. Opens in a new tab.

01 / SYSTEM VIEW
A simplified view to support a technical conversation.
Profiles, posts, and family stories
Trees and reviewed corrections
Viewer context · field visibility · record restrictions
Audience-filtered data queries
Socket.IO messaging / WebRTC calls
Conceptual view of the project. Field visibility and messaging permissions are distinct review areas; one does not establish the other’s security.
02 / ENGINEERING DECISIONS
Implementation choices paired with the tradeoffs they introduce.
The selected tests distinguish community membership, family branch, friendship, and self-only fields.
A broad profile permission should not automatically expose every field within that profile.
The privacy test checks the database filter as well as the visibility helper.
Filtering only after fetching a record increases the number of places where private fields could accidentally escape.
The selected family-branch example denies viewers from another branch or without branch context.
This is a specific tested rule, not a claim that all child privacy or consent requirements have been satisfied.
03 / REVIEW SCENARIOS
Illustrative explanations of selected test definitions. These controls do not call the application or execute its tests.
A viewer is a friend and in the same family branch, but is not the subject of a self-only field.
The selected test expects self-only visibility to remain restricted despite the other relationships.
Check serializers, exports, and notifications for the same field-level rule.
A viewer from another family branch requests a branch-restricted minor’s record.
The selected privacy test denies the other branch and a viewer with no branch information.
Validate the viewer context on the server rather than accepting a branch ID from the client.
A viewer has no linked person or family branch context.
The selected filter test includes only community-member-visible records in that context.
Also verify that unauthenticated requests never acquire membership context by default.
04 / TRACEABLE EVIDENCE
Selected source reviewed on November 6, 2026.
Source reviewed · tests not rerunsrc/features/privacy/visibility.test.ts177ebe623a45These statements summarize the test definitions at this repository snapshot. They do not report a passing run, complete coverage, or an independent security audit. Application source stays private.
WHAT I WOULD EXAMINE NEXT
A fuller production review would trace privacy rules through search, exports, media, notifications, and real-time messages, then validate deployment-specific calling and storage configuration.