alumni_lookup

Alumni Network — AI Context: User Roles and Permissions

Canonical sources: Portal philosophy, posture, and language live in /docs/planning/champion-portal/source/README.md.
Use these sources (including CHRIST_CENTERED__IDENTITY_STATEMENT.md) when writing specs or user-facing copy. Prefer quoting/paraphrasing over inventing new language.

AI Context Bundle File 3 of 8
Purpose: Define all user types, roles, and their capabilities to ensure behavioral accuracy
Authority: Use this file to determine what each user type can and cannot do
Last Updated: April 2026


System Overview

The Alumni Network is part of a two-portal system sharing a single database:

┌─────────────────────────────────────────────────────────────────┐
│                    SHARED POSTGRESQL DATABASE                   │
├────────────────────────────┬────────────────────────────────────┤
│   LOOKUP PORTAL            │   ALUMNI NETWORK                   │
│   alumnilookup.com         │   belmontalum.com                  │
│   (Internal Staff)         │   (External Alumni)                │
├────────────────────────────┼────────────────────────────────────┤
│   • Admin                  │   Tier 1: Alumni Member            │
│   • Portal Admin           │   Tier 2: Alumni Champion          │
│   • Staff                  │   Tier 3: Community Leader (CL)    │
│   (uses Devise User model) │   (uses Devise Cp::Champion model) │
└────────────────────────────┴────────────────────────────────────┘

Three-Tier Engagement Model

The Alumni Network organizes users into three concentric engagement tiers:

Tier Who Detection % of Users
Tier 1: Member Everyone who signs up and is verified Default 100%
Tier 2: Champion Completed the Champion Role quiz has_champion_role? ~10%
Tier 3: Community Leader Champion assigned to lead a community community_leader? ~1%

Tiers are derived from existing data, not a separate field. Each higher tier inherits all capabilities of lower tiers.


Alumni Network Roles

Tier 1: Alumni Member (Base)

Who: Any verified alumnus who signs up

Verification Status Requirements:

Status Can Do
unverified Cannot log in
email_verified Log in, edit profile, browse communities (trust-first access)
champion_verified Full portal access (below)

Verified Member Capabilities:

Area Can Do Cannot Do
Profile Edit own profile, photo, privacy settings Edit others’ profiles
Directory Search/view other alumni, filter by district/year/college/industry/affinity Export contact lists
Connections Send/accept/ignore/cancel connection requests, disconnect Bypass rate limits (10/day), message without connection
Connection Settings Set open-to types (Say Hi, Career Advice, Networking), daily cap, pause mode, community restrictions
Messaging Message connected alumni, react with emoji Message non-connected alumni (except support threads)
Discussion Boards Post, comment, react on boards they’re a member of Moderate, delete others’ posts
Content Submissions Submit news stories and event ideas for staff review Publish directly
Events View events Create/edit events (admin only)
News View news posts, like/unlike Create/edit news (admin only)
Career Center Browse resources, download PDFs Manage resources (admin only)
Communities Browse, join/leave communities, see members Assign CLs, manage community settings
Notifications In-app notifications, configure email digest preferences

Tier 2: Alumni Champion (Opt-In)

Who: A Member who has completed the Champion Role discovery quiz

How they become a Champion: Self-service quiz (~2 minutes) → selects one of four roles

Additional capabilities beyond Member:

Area What Changes
Profile Champion badge displayed on profile and in discussion comments
Directory Slightly higher weight in recommendation listings
Role Card Dashboard card shows daily engagement ideas (3 per day, role-aligned)
Role Ideas Receives role-specific coaching: how to get more deeply involved
Recognition Celebrated in welcome messages and milestone moments

Four Champion Roles:

Role Focus
Community Builder Host gatherings, welcome newcomers, create spaces of belonging
Connection Advisor Mentor, make introductions, share job openings
Digital Ambassador Amplify alumni stories, share Belmont content, celebrate people online
Giving Advocate Inspire generosity, share impact stories, normalize giving

Tier 3: Community Leader (CL)

Who: A Champion assigned by staff to lead a specific community

How assigned: Staff assigns via Lookup Portal admin interface

Community Types a CL Can Lead:

Type Example
District Nashville Community
College College of Music Community
Major Music Business Community
Affinity Phi Mu Community
Industry Healthcare Industry Community
Custom Special interest communities

CL Capabilities (in their assigned community):

Area Can Do Cannot Do
Moderation Hide/unhide posts, lock threads, pin posts Delete posts (only Staff)
Members View all community members Remove members
Support Threads Access support thread with Engagement Team
Announcements Pin announcements to community board
Role Ideas Receive CL-specific + role-based daily ideas (mixed pool)

What CLs CANNOT Do:


CLC (Community Leadership Council)

Who: The collective body of all Community Leaders

Not a role in the system — just a term for “all CLs together.” Used for communication to all CLs and coordination.


Lookup Portal Roles

Staff (Base Internal Role)

Who: Belmont staff with basic access to alumni data

Area Can Do Cannot Do
Alumni Search Search, view alumni records Edit records
Engagement View engagement data Modify engagement data
Champion Signups View, edit signups Delete signups

Portal Admin

Who: Staff with elevated Champion Program permissions

Additional Capabilities (beyond Staff):

Area Can Do
Champion Verification Link alumni to BUID for full access
CL Assignment Assign/remove Community Leaders
Events Create, edit, delete events
News Posts Create, edit, delete news posts
Content Submissions Review, approve, decline alumni submissions
Career Resources Create, edit, delete downloadable resources
Role Ideas Manage daily engagement ideas
Seeded Questions Manage discussion-sparking questions
Discussion Moderation Delete posts, view analytics
Analytics Connection metrics, onboarding metrics, career center analytics
Impersonation “Log in as Champion” for support/testing (Admin only)

Admin

Who: Full system administrators

Everything Portal Admin can do, plus: user management, system configuration, data imports, impersonation.


Permission Hierarchy

Alumni Network:                   Lookup Portal:
                                  
Tier 1: Member ─────────────────── Staff
    │                                │
    ▼                                ▼
Tier 2: Champion ───────────────── Portal Admin
    │                                │
    ▼                                ▼
Tier 3: Community Leader ───────── Admin

Authorization Guards (Code Reference)

Lookup Portal (ApplicationController)

ensure_staff!         # staff?, portal_admin?, or admin?
ensure_portal_admin!  # portal_admin? or admin?
ensure_admin!         # admin? only

Alumni Network (Cp::BaseController)

authenticate_cp_champion!  # Any authenticated alumni (Devise)
ensure_champion_verified!  # verification_status == champion_verified
ensure_community_leader!   # CL for the requested community

Membership Types

Alumni have a membership_type that determines their connection to Belmont:

Type Description Has BUID? Has Degrees? Status
alumni Traditional alumni with degrees Yes Yes ✅ Fully implemented
almost_alumni Current students/graduating seniors Yes No (pending) ✅ Implemented (Phase 5)
honorary Staff/faculty without degrees Optional No ✅ Implemented (Phase 5)
parent Parent of student/alum No No ✅ Defined (Phase 5)
friend Friend of the university No No ✅ Defined (Phase 5)

Verification Flow

1. Alumni signs up (email/SSO)
        │
        ▼
   ┌─────────────────┐
   │  UNVERIFIED     │ ← Cannot log in
   └────────┬────────┘
            │ (email confirmation)
            ▼
   ┌─────────────────┐
   │ EMAIL_VERIFIED  │ ← Can log in, browse, limited access
   └────────┬────────┘
            │ (Staff links BUID in Lookup Portal)
            ▼
   ┌─────────────────┐
   │CHAMPION_VERIFIED│ ← Full access
   └─────────────────┘

Community Membership

Alumni belong to multiple communities:

Community Type How Assigned
District Auto-assigned from ZIP code
College(s) Auto-assigned from linked Alumni degrees
Major(s) Auto-assigned from linked Alumni degrees
Affinity(ies) Selected during profile setup / onboarding
Industry Selected during profile setup
National Auto-join (“Alumni Champions” — all verified members)

Communities are dynamically created when 3+ alumni share an attribute.


What Each Tier Sees on Dashboard

Member Dashboard

Champion Dashboard (Additional)

CL Dashboard (Additional)


Source Documentation