Skip to content

ADR 0040 — Baptized Member Designation ​

Status: Accepted
Date: 2026-06-24
Deciders: Kristopher Turner
Supersedes:
Related: ADR 0038 (RBAC multi-role), ADR 0032 (extended profile fields)


Context ​

Heritage Virginia is a faith community, not merely an application user base. Within the congregation there is a meaningful distinction between:

  • Application members — anyone with an approved account (may be seekers, regular attendees, or family members not yet formally committed)
  • Baptized covenant members — individuals who have been baptized into the Body of Christ and entered into formal church covenant

This distinction matters for:

  • Baptized-member-only meetings, business sessions, or votes
  • Targeted pastoral communications to the covenant body
  • Future church membership tracking and records

The member application role alone does not capture this distinction; it only means "approved platform account."

Decision ​

Add a boolean isBaptized field to the User model. This field is:

  • Not self-settable. A member cannot declare their own baptism status through the platform. The field is an administrative record set by an admin or minister who has personally witnessed or verified the baptism.
  • Admin/minister write. Settable via the admin member management screen; also settable by a minister from the minister portal.
  • Visible to admins and ministers. Not shown in the public directory or to the member themselves (the sacrament is a church record, not a self-reported preference).
  • Default: false. All existing accounts start as false; explicit action by an admin/minister is required to designate a member as baptized.

Wire format ​

isBaptized: boolean is included in MemberSummary and admin-facing endpoints. It is NOT included in UserProfile (the member's self-view) because it is an administrative designation, not a self-reported attribute.

Access model ​

OperationWho can do it
Set isBaptized = true/falseAdmin, minister (via admin member manage UI)
Read isBaptizedAdmin, minister
Member self-viewNot exposed

Consequences ​

  • One new boolean column isBaptized (default false) added to User.
  • AdminUpdateUserRequest schema gains an optional isBaptized: boolean field.
  • MemberSummary DTO gains isBaptized: boolean field.
  • Admin member manage page gains a "Baptized member" checkbox (admin/minister-only visible).
  • Future comms feature can filter recipients by isBaptized = true for covenant-body communications.
  • The field is included in admin CSV export.

Heritage Community Hub — Internal. Access restricted via Cloudflare Access + Entra ID.