Developer Page Specifications
Status Logic
IsActive / IsVerified / IsFeatured stored flags + Flavor enum (editorial vs founder-led).
Complete
Founder status is stored, not computed — none of the gates derive from time. Three boolean flags drive every behavioral switch: IsActive (soft-delete + publish gate), IsVerified (editorial verification badge), IsFeatured (spotlight). Flavor (editorial vs founder-led) is a hard enum that determines ownership rules.
Status flags
- IsActive
- Defaults true on create. Set to false to soft-delete (hides from public queries; preserves cross-module mentions). Reversible. Never hard-deleted — see admin doctrine §10.10.
- IsVerified
- Defaults false. Set to true after the 3-gate verification (real photo + ≥1 published startup + LinkedIn confirmed by editor). Drives the green ✓ badge + appears in "Verified founders" filters across the platform. Revocable when underlying conditions change.
- IsFeatured
- Editorial spotlight tier. Drives the homepage "Featured founders" rail + bumps in default sort on the listing page. Set quarterly by editorial leadership, NOT requestable.
- Flavor (enum)
- editorial | founder-led. Determines ownership: editorial profiles are staff-controlled, founder-led profiles allow self-edit via the Founder Account. Flavor is set on create and rarely flips — when it does (e.g. founder claims their editorial profile), an admin must explicitly run the transfer.
Publishability matrix
- A founder is publicly queryable when IsActive=true AND BOTH FounderLang.en + FounderLang.ar rows exist with DisplayName + Headline + Bio populated.
- Verified badge requires IsVerified=true AND AvatarUrl !== null AND LinkedInUrl !== null.
- Founder-led edit affordance requires Flavor='founder-led' AND viewer.userId === OwnerUserId AND user session is active.
