Table of Contents
0. Terminology & Glossary 1. Overview 2. Philosophy & Core Thesis 2.1 The Garbage Culture Problem 2.2 Formation vs. Performance 2.3 Conscientiousness as Signal 2.4 Trust as Stake 3. Onboarding & Identity 3.1 Sequence: Practice First 3.2 Profile Completion 3.3 Visibility by Choice 4. The 90-Day Commitment 4.1 Why 90 Days 4.2 The 14-Day Launch Period 4.3 The Start Ritual 4.4 The Annual Cycle 5. Practice & Documentation 5.1 What Qualifies 5.2 Documenting Practice 5.3 Private by Default 5.4 The Sponsor Feed 5.5 Skill Categories 5.6 Naming Your Practice 6. Trust 6.1 Trust as Growth, Not Grade 6.2 Trust Stages 6.3 Dimensions: Depth, Breadth, Durability 6.4 Sponsors Who Deliver 6.5 Anti-Gaming Properties 6.6 Sharing Your Trust 7. Sponsorship 7.1 The 90-Day Sponsorship Unit 7.2 Invitation & Onboarding of Sponsors 7.3 The Veto Rule 7.4 The No-Escape-Hatch Principle 7.5 Sponsors Can Join at Any Time 7.6 Institutional Sponsorship Cannot Stand Alone 7.7 The Voluntary Donation Model 7.8 Payout Rules 8. The AI Companion 8.1 Role & Purpose 8.2 No Authority Over Trust 8.3 Other AI Surfaces 8.4 The Companion on Video 9. Self-Organizing Systems 9.1 Precedents 9.2 Structural Principles 10. Institutional Sponsorship 10.1 Standing Principle 10.2 Deferred Mechanics 11. Profile & Data 11.1 Profile Schema 11.2 Consent & Control 11.3 Portability 12. Technical Architecture 12.1 Stack 12.2 API 13. Roadmap 14. Product as Built 14.1 The Six-Stage Spine 14.2 Session Logging 14.3 Key Product Decisions Made in Build0. Terminology
The following terms have precise meanings in Search Star. Use them consistently across the product, documentation, and codebase. Where a term has a common synonym, the synonym is noted and its use discouraged.
Practice terms
| Term | Definition | Avoid |
|---|---|---|
| Practice | The activity a practitioner commits to developing over time. Also the database record representing that activity. Used as both noun ("an Italian Practice") and universal verb form ("you practice a skill"). | — |
| Skill / Craft / Pursuit | The three labels a practitioner may choose for their practice. Skill is the default. These are cosmetic synonyms — the underlying entity is always a practice. | — |
| Commitment | A declared 90-day intent to practice. The primary sponsorable unit. Has a lifecycle: launch → active → completed / abandoned. Includes the 14-day launch period, the start ritual, and the 90 active days. | Streak (avoid — implies only the active days, not the full commitment arc including declaration and launch) |
| Session | A single instance of practicing. The atomic unit of documented effort. Logged as a session post. | — |
| Session post | The record of a logged session. Contains optional text body and optional media (photo or video). Visible only to the practitioner's sponsor circle. | — |
| Launch period | The 14-day window between a commitment declaration and the start ritual, during which the initial roster of sponsors is assembled. The commitment is in launch status during this period. Additional sponsors may still join after the launch period ends. |
Launch window, sponsorship window |
| Start ritual | The deliberate act marking the transition from launch period to active commitment. A written statement of intent, timestamped. The 90-day clock begins at this moment. | — |
| Completed sponsored streak | A 90-day commitment where every sponsor who pledged — whether during the launch period or during the active commitment — released payment at day 90. The atomic unit of the Trust Record. | — |
People
| Term | Definition | Avoid |
|---|---|---|
| Practitioner | Any Search Star user who has defined a practice. All users are practitioners. The platform is built for practitioners first. | — |
| Sponsor | A person or institution that pledges financial support against a commitment. Witnesses the 90 days through the sponsor feed. Decides at day 90 whether to release payment (the attestation) or, at any point during the 90 days, to veto (ending the streak). Sponsors may or may not have a Search Star account. Two types: personal and institutional. | Validator (retired — see v4 decisions), backer, donor |
| Sponsor circle | The set of sponsors who have pledged against a given commitment, at any point during its lifecycle. The only audience for session posts. A private, trusted witness community — not a public following. | Validator circle (retired) |
| Companion | The AI that accompanies the practitioner through formation. Teacher, coach, pattern-noticer, documentation helper. Produces a summary of the practice record for sponsors at day 90. Holds no authority over the Trust Record. | Mentor, coach, tutor (ambiguous with retired v3 roles) |
Trust
| Term | Definition | Avoid |
|---|---|---|
| Trust Record | Capitalised. The portable credential built from completed sponsored streaks over time. Tracks three dimensions: Depth, Breadth, and Durability. Belongs to the practitioner and is private by default. | Trust score, trust rating |
| Trust Stage | Capitalised. The current growth level expressed by the Trust Record. One of: Seedling, Rooting, Growing, Established, Mature. A stage, not a score — it describes where someone is, not how they rank. | Trust level, growth stage, trust score |
| trust | lowercase. The philosophical concept: staking something real on another person's character and genuine effort. On Search Star, sponsors express this by putting money behind a commitment and staying present through the 90 days. | — |
| Depth | One of three Trust Record dimensions. Completed sponsored streaks within a single skill category, weighted by sponsor count, diversity, and reliability. | — |
| Breadth | One of three Trust Record dimensions. Distinct skill categories across completed sponsored streaks. Reflects wholeness of development. | — |
| Durability | One of three Trust Record dimensions. Elapsed calendar time across completed sponsored streaks — the oldest unbroken pattern of completion. The dimension most resistant to gaming because elapsed time cannot be accelerated. | — |
Money
| Term | Definition | Avoid |
|---|---|---|
| Pledge | The amount a sponsor commits to contribute when the practitioner completes the 90-day commitment. Collected at pledge time, held, and released at day 90 (or refunded on veto / abandonment). | — |
| Release | The sponsor's act at day 90 of releasing their pledged amount to the practitioner. The passive attestation that the 90 days were real. | — |
| Veto | A sponsor's act, available at any time during the 90 days, of ending the streak. One sponsor's veto ends the streak for the entire roster — no majority rule, no arbitration. The active attestation that the sponsor is no longer convinced. | — |
| Voluntary donation | An optional amount a sponsor may choose to contribute to Search Star at payout, above and beyond their pledge. Suggested at 5% of the pledge. Fully editable and removable in one action. Goes entirely to Search Star. Never deducted from the practitioner's payout. | Tip, contribution, platform fee |
Skill categories
Search Star currently has twelve skill categories. A practitioner may hold one active commitment at a time, regardless of category.
| Category | Examples |
|---|---|
| Community & Service | Volunteering, mentorship, coaching, civic participation |
| Craft & Making | Woodworking, ceramics, sewing, metalwork, restoration, building |
| Creative Arts | Drawing, painting, writing, photography, music, film |
| Culinary | Cooking, baking, fermentation, foraging, brewing |
| Language & Communication | Language learning, rhetoric, writing craft, linguistics, sign language |
| Nature & Land | Gardening, farming, ecology, hiking, conservation |
| Physical Practice | Running, strength training, martial arts, dance, swimming, cycling |
| Reading | Books, long-form journalism, poetry, serious sustained reading practice |
| Spiritual Practice | Prayer, meditation, scripture study, contemplative traditions, liturgical practice |
| Strategy & Games | Chess, poker, Go, bridge, competitive puzzles, mathematics |
| Study & Knowledge | Philosophy, history, economics, science, academic study |
| Technical Skills | Programming, electronics, mechanics, home repair, engineering |
1. Overview
Search Star is a platform for building genuine skills through sustained practice. Users define a practice — anything requiring real effort, learning, and sustained attention — invite sponsors who believe in what they are doing, and earn recognition for completing 90-day commitments witnessed by the people who put their own stake behind the work.
The platform produces a Trust Record: a portable credential built from completed sponsored streaks over time. A mature Trust Record cannot be performed into existence. It can only be grown through the actual work, witnessed over months and years by sponsors with skin in the game.
Three principles govern every product decision:
- Practice before profile. You arrive as a practitioner, not a data subject. Identity emerges from what you do, not the other way around.
- Private by default. Documentation flows to your sponsor circle, not to a public feed. You control what becomes visible and when.
- Stake precedes witness. The only people with standing to attest that the 90 days were real are the people who put money behind the commitment. Witness without stake is not the product.
2. Philosophy & Core Thesis
2.1 The Garbage Culture Problem
Dominant social platforms are optimized for engagement, not for human flourishing. Variable reward schedules, infinite scroll, and algorithmic amplification of outrage and envy have produced a culture of passive consumption and performed identity. The result is measurable: rising anxiety, declining attention spans, weakening of genuine relationship, and the displacement of difficult rewarding activities by frictionless but empty ones.
The problem is not that people lack the desire for meaningful engagement. It is that the reward architecture of current platforms makes passive consumption easier and more immediately reinforcing than high-effort alternatives. You cannot fix this by making people feel guilty about scrolling. You fix it by making the alternative genuinely more rewarding — and by building a platform whose incentive structure selects for practitioners rather than performers.
2.2 Formation vs. Performance
Every platform that rewards documentation eventually gets captured by the documenters — people optimizing for the record rather than the practice. The medium becomes the message and the message becomes performance. Instagram fitness is the canonical example: what began as a community of people who love training became a venue for people who love being seen training. The activity serves the content rather than the content serving the activity.
Search Star is built around the opposite orientation. Documentation exists to serve witness, and witness exists to serve practice. The person who is genuinely becoming a woodworker, a runner, a reader — who is undergoing real formation — is the person the platform is built for. The person performing those identities for an audience will find nothing here to reward the performance.
The goal is not fitness or craft or learning as such. It is the pursuit of beauty, grace, and truth through sustained effort in any domain that develops the whole person. A woman getting genuinely stronger is practicing. A woman performing strength for an audience is not. The platform is designed so that only the first kind of person finds the platform rewarding.
2.3 Conscientiousness as Signal
Conscientiousness — the disposition to follow through on commitments, maintain effort over time, and pursue goals requiring delayed gratification — is the single strongest personality trait predictor of life outcomes across domains: job performance, health, academic achievement, relationship stability. It predicts success better than intelligence in most occupational research.
Despite its importance, conscientiousness is almost impossible to verify reliably. GPAs inflate. Resumes embellish. Interviews measure presentation skills. Recommendations are social obligations. What institutions lack is a behavioral record of sustained effort that is hard to fake because it was accumulated over months and years — not performed in a single high-stakes moment.
A Search Star Trust Record, built from sponsored streaks sustained over time, is exactly that. It is not a personality test or a self-assessment. It is an observable track record of who someone actually is, witnessed by people who were present and had their own stake on the line.
2.4 Trust as Stake
Trust in the Search Star model is not a rating or a status. It is an action: staking something real on another person's character and genuine effort. When a sponsor pledges against a commitment, they are putting money behind a statement about that practitioner's conscientiousness. When they stay present across ninety days and release payment at the end, they are affirming it. When they veto, they are withdrawing it. No separate confirmation layer is needed — the money is the attestation.
This distinction has a structural consequence. Because witness requires real stake and real knowledge of the person's practice, Trust cannot be manufactured by accumulating strangers. The only path to a mature Trust Record is the same as the path to genuine character: sustained effort, witnessed by people who actually know you and are willing to put something behind their belief.
The platform tone reflects this: beginning at Seedling is not a mark against you. It is a blank slate — the absence of a record, not the presence of a deficit. Everyone begins at the beginning not because they are untrustworthy but because trust has not yet been grown. The entire platform is oriented toward building, not judging.
3. Onboarding & Identity
3.1 Sequence: Practice First
Onboarding begins with a single question: what do you want to practice? The user defines their first skill before completing a profile, before providing any personal information. Identity on Search Star emerges from practice.
The onboarding spine is a linear flow at /start. A stage resolver reads the user's current state and routes them to the correct stage automatically — returning users always land exactly where they are, not at the beginning.
| Stage | URL | What happens |
|---|---|---|
| 1 — Practice | /start/practice | Name your practice, choose a label (skill / craft / pursuit) and skill category |
| 2 — Commitment | /start/commitment | Declare a 90-day commitment: title, description, frequency (daily or weekly), target payout amount |
| 3 — Sponsors | /start/sponsors/[id] | Invite your first sponsor(s) by email, or copy your personal sponsor link to share directly. Skippable — additional sponsors can join at any time. |
| 4 — Companion | /start/companion/[id] | Meet the AI Companion. Shown once per user, then never shown again. |
| 5 — Launch | /start/launch/[id] | Launch dashboard: countdown, sponsor link, sponsors pledged so far. Contains the start ritual button. |
| 6 — Active | /log | Daily session logging. Progress, session form, recent sessions, Companion reflections. |
src/lib/stage.ts. It checks: practice exists → commitment exists → sponsor invited → Companion step seen → launch vs active status. The auth callback and dashboard both redirect to /start, which resolves to the correct stage.
A user with one defined practice and an active commitment is fully onboarded. The start ritual — a written statement of intent — marks the transition from the launch period to the active commitment. It is timestamped and shared with the sponsor circle as the first session post (session_number: 0).
3.2 Profile Completion
After defining a first practice, the user completes a minimal profile manually: name, location, and a brief description in their own words. Nothing is inferred, discovered, or imported without explicit user action. The profile is what the user chooses to say about themselves — no more, no less.
Profile completeness is not a gate. Additional profile sections — skills, credentials, background — can be filled in over time as the user's comfort with the platform grows. The platform never prompts for information the user has not chosen to provide.
3.3 Visibility by Choice
Profile and Trust Record visibility is set by the user and can be changed at any time. Three visibility modes are available:
| Mode | Who Can See | When to Use |
|---|---|---|
| Private | Sponsor circle only | Early practice, building confidence, not yet ready to share |
| Network | Sponsors and their connections | Open to organic discovery through trusted relationships |
| Public | Anyone, including employers and institutions | Ready to use Trust Record as a credential for opportunities |
The default is Private. The platform never pressures users to increase visibility. Moving to Public is a meaningful choice the user makes when they feel their record reflects who they are becoming — not a default they have to opt out of.
4. The 90-Day Commitment
4.1 Why 90 Days
The primary sponsorable unit on Search Star is a 90-day practice commitment. This number is not arbitrary. Research by Phillippa Lally at University College London found that the median time for a new behavior to become automatic is 66 days, with a range of 18 to 254 days depending on the complexity of the habit. 90 days sits comfortably above the median, covering the formation period for virtually any practice a person might undertake.
90 days also has a natural legibility that shorter periods lack. Three months of genuine effort is something any sponsor — a grandmother, an employer, a foundation program officer — immediately recognizes as meaningful. It is long enough that completion reflects real commitment, short enough that it can be attempted twice a year as the standard commitment. It is not a weekend challenge or a month-long resolution. It is a season of genuine formation.
The 90-day commitment is also the structural foundation of the Trust Record. A completed sponsored streak — 90 days of genuine practice with every sponsor staying present and releasing payment — is the minimum unit of genuine formation and the atomic input to the Trust Record.
4.2 The 14-Day Launch Period
Every 90-day commitment begins with a 14-day launch period. The launch period is the time between a practitioner declaring their commitment and the day they begin. It exists for a specific purpose: to give the practitioner time to share their commitment with the people who matter, assemble an initial roster of sponsors, and prepare mentally for the transition from announcing to doing.
14 days is the right length for several reasons. It is long enough for news of the commitment to travel — a practitioner tells their friends, their friends tell others who might want to sponsor, family members have time to discuss and commit. It mirrors other socially legible notice periods: a wedding RSVP window, a crowdfunding campaign launch, a job start date. And it keeps the practitioner's motivation high — the gap between intention and action is short enough that momentum is preserved.
The 14-day launch period has a defined structure:
- Day 1 — Declaration. The practitioner declares their commitment: title, description, frequency, target payout. They begin inviting sponsors.
- Days 1–14 — Launch window. The practitioner shares their sponsor link with friends, family, and potential institutional sponsors. The platform shows the practitioner who has pledged and what is behind them so far.
- Day 15 — The 90-day commitment begins. The start ritual marks the transition from announcing to doing.
4.3 The Start Ritual
The transition from launch period to active commitment is marked by a deliberate start ritual. This is not a calendar notification or an automated state change. It is a conscious act by the practitioner: a short written statement of what they are beginning, sent to their sponsor circle, marking the moment practice becomes active.
The start ritual serves two functions. First, it creates a clear psychological boundary between intention and action — the practitioner is not drifting into their commitment but stepping into it deliberately. Second, it gives sponsors a concrete signal that the 90-day clock is running. From this moment their role is to witness, stay present, and decide at day 90 whether to release.
The platform records the start ritual timestamp. The 90-day clock begins at this moment. If a practitioner does not complete the start ritual by Day 15, the launch period expires and sponsors are notified that the commitment did not begin — no funds are collected.
4.4 The Annual Cycle
Two 90-day commitments per year is the standard cadence — one per half-year, aligned with how most people naturally sustain serious effort. The rhythm is semi-annual, with a meaningful rest period between commitments that is as deliberate as the commitments themselves.
| Half-year | Launch period | Active 90 days | Rest period |
|---|---|---|---|
| First half | Jan 1–14 | Jan 15 – Apr 14 | Apr 15 – Jun 30 |
| Second half | Jul 1–14 | Jul 15 – Oct 12 | Oct 13 – Dec 31 |
A third commitment is possible for practitioners who want to push further — launched at any point during the rest period — and represents exceptional commitment. Practitioners who complete three sponsored streaks in a year demonstrate significant durability, contributing meaningfully to the Durability dimension of their Trust Record. This is the exception, not the expectation.
The rest period between commitments is deliberate and protected. It gives practitioners time to reflect on what they built, and recommit with intention rather than momentum. It also prevents the commitment mechanic from becoming mechanical — each commitment should feel like a genuine decision, not an automatic renewal.
5. Practice & Documentation
5.1 What Qualifies
Any activity requiring genuine practice, sustained learning, or the development of skill qualifies. The domain does not need to be prestigious or sophisticated. The criterion is real effort over time and the genuine development of capability — not cultural capital, socioeconomic access, or the impressiveness of the activity to an outside observer.
The distinction is not between highbrow and lowbrow. It is between activities that develop the person and activities that do not. A person restoring antique furniture has as strong a claim to an advanced Trust Record as one reading philosophy — provided the effort is genuine and the sponsorship is real.
5.2 Documenting Practice
Users document practice through session posts: text, photos, or short notes attesting to a session, milestone, or completed work. Documentation serves one primary purpose: to give sponsors something concrete to witness. It is not content for a feed. It is evidence in a private conversation between the practitioner and the people who have put something behind the work.
The quality of documentation matters less than its honesty. A photo of a rough first attempt at joinery is more valuable than a polished shot of a finished piece if the former reflects where the practitioner actually is. Sponsors want to see the work as it happens, not as it would look in a portfolio.
5.3 Private by Default
Session posts are visible only to the user's sponsor circle. There is no public feed. There is no like button on practice documentation. There is no follower count attached to skill posts. The social surface of practice is intentionally narrow: the practitioner, the AI Companion, and the specific people who have agreed to put something behind the commitment.
This is not a limitation — it is the architecture that makes genuine witness possible. A sponsor who sees every session post in context, over the 90 days, can form a real view of whether the work is happening. A public audience cannot. The intimacy of the sponsor circle is what gives the Trust Record its meaning.
5.4 The Sponsor Feed
Each user's session posts appear in a private feed visible only to their sponsor circle. This is the primary social surface of the platform — a shared stream between a practitioner and the specific people who have pledged against their commitment. It is closer in spirit to a shared journal or a group thread among trusted friends than to a social media feed.
The sponsor feed has three deliberate constraints that distinguish it from a conventional social feed:
- Fixed audience. The feed is visible only to sponsors the practitioner has invited (or who arrived via the practitioner's sponsor link). It cannot be discovered, followed, or accessed by anyone outside that circle. Sponsors access it via a permanent personal URL:
/sponsor/[commitment_id]/[token]. The token is unique per sponsor per commitment and does not expire once accepted. - No engagement metrics. Posts have no like count, no view count, no comment count. There is no inline "confirm this session" button. A sponsor's meaningful actions — release at day 90, veto at any point — are deliberate and rare, not per-post reactions.
- No algorithmic curation. Posts appear in chronological order. Nothing is surfaced or suppressed based on engagement. The feed reflects what the practitioner actually did, not what performed well.
Sponsor notifications
Every time a practitioner logs a session, all active sponsors receive an email notification from noreply@searchstar.com. The email includes the session number, the practitioner's name and commitment title, the session note if one was written, and a direct link to the sponsor's personal feed URL. Email delivery is best-effort — a failed notification does not fail the session log.
5.5 Skill Categories
Skill categories organize practices for Trust Record computation. Categories are broad by design. See Terminology §0 for the current twelve-category taxonomy.
5.6 Naming Your Practice
Users choose how to label their practice from three options, with Skill as the default. The choice is personal and can be changed at any time.
| Label | Register | Best For |
|---|---|---|
| Skill (default) | Direct, universal | Most users — emphasizes capability being built |
| Craft | Warm, maker-oriented | Making, culinary, creative — emphasizes care and mastery |
| Pursuit | Slightly elevated | Intellectual, nature, service — emphasizes ongoing journey |
Internally the platform uses practice as the universal verb form — you practice a skill, you practice a craft, you practice a pursuit. This keeps product copy consistent regardless of the user's chosen label.
6. Trust
6.1 Trust as Growth, Not Grade
Trust on Search Star is not a score out of 100. It is a living record of practice — something that grows at its own pace, reflects the genuine development of the person, and cannot be rushed any more than a tree can be rushed. A practitioner who has completed one sponsored streak is not failing at mastery. They are one streak in. Nobody blames a five-year-old for being five.
The Trust Record is expressed as a Trust Stage, not a percentage. Stages reflect the organic accumulation of completed sponsored streaks over time. They carry no implicit judgment about where a practitioner should be. They simply describe where they are — and suggest, without pressure, where continued practice leads.
The platform never displays a practitioner's Trust Stage to others without explicit consent. There are no comparisons, no leaderboards, no rankings. The only question the platform asks is: what are you growing?
6.2 Trust Stages
Every practitioner begins at Seedling — not as a deficit but as a beginning. Stages advance through completed sponsored streaks across the three dimensions of Depth, Breadth, and Durability. No stage can be purchased, accelerated, or performed into existence.
| Stage | Character | What It Reflects |
|---|---|---|
| 🌱 Seedling | A practice has begun | A commitment is declared or underway; no completed sponsored streaks yet |
| 🌿 Rooting | A practice is taking hold | At least one completed sponsored streak; a sponsor circle has formed and delivered |
| 🌳 Growing | A practice is becoming part of who you are | Multiple completed streaks over a year or more; returning sponsors and expanding circles |
| 🌲 Established | A practice has shaped the person | Deep multi-year record, multiple categories, strong sponsor network with a track record of delivering |
| 🏔 Mature | A practice of deep durability | Sustained completion across many years and many skill categories; a Trust Record that reads clearly from a distance |
Stage names and symbols are placeholders for design exploration. The principle they express is not: progression should feel like natural growth, each stage earned through time and genuine effort rather than optimized for.
6.3 Dimensions: Depth, Breadth, Durability
Depth
How far the practitioner has developed within individual skill tracks. Depth grows with completed sponsored streaks within a single skill category, weighted by the count of sponsors, their diversity, and their reliability (see § 6.4). Three completed 90-day commitments in woodworking, each witnessed by a distinct circle of sponsors, reflects greater depth than a single commitment — regardless of session volume inside each streak.
Breadth
How many distinct skill categories the practitioner maintains completed streaks in. Breadth reflects wholeness of development — the pursuit of beauty, grace, and truth across the full range of human capability. A practitioner with completed streaks in Physical Practice, Craft & Making, and Reading has grown in more directions than one deeply focused on a single domain.
Durability
How long the practitioner has maintained a consistent pattern of completion. Durability is the dimension most resistant to gaming because elapsed time cannot be accelerated. A practitioner whose first completed streak was three years ago, with continuous further completions since, reflects something that a brand-new practitioner with the same total streak count cannot — the evidence that the practice has become genuinely part of who the person is.
6.4 Sponsors Who Deliver
Not every completed streak counts equally. Two meta-considerations apply to each one:
Sponsor count and diversity
A streak completed with one sponsor carries less weight than a streak completed with five. A streak where all sponsors are immediate family carries less weight than one with sponsors across multiple social circles — close friends, work relationships, community connections. The credibility signal is that multiple real people, across multiple relationships, stayed convinced through ninety days.
Sponsor reliability
A sponsor who has backed and released payment on multiple practitioners' commitments is a more credible witness than someone who has never done so. Their continued presence on a new practitioner's streak carries more signal. Over time, a subpopulation of sponsors emerges who have a track record of delivering — backing real practitioners, staying present across the 90 days, releasing payment when the work was real, and vetoing when it wasn't. Their participation in a practitioner's commitment adds more to that practitioner's Trust Record than a first-time sponsor's does.
6.5 Anti-Gaming Properties
The Trust Record is structurally resistant to gaming because the only inputs that matter are completed sponsored streaks:
- Money as stake: Every sponsor has pledged real money. False witness costs the sponsor too.
- Unanimous release required: One sponsor's veto ends the streak. Convincing a majority is not enough.
- Time lock: Durability cannot be accelerated — gaps in completion history are permanent.
- Sponsor diversity requirement: A record of streaks all witnessed by the same small circle carries less weight than streaks witnessed by independent circles. Advanced stages require real breadth of witness.
- Sponsor reliability weighting: First-time sponsors contribute less signal than proven ones. This naturally slows reciprocal collusion rings.
- No performance surface: The absence of a public feed removes the primary incentive for performing rather than practicing.
6.6 Sharing Your Trust
A practitioner's Trust Stage and record are private by default. Sharing is always initiated by the practitioner, never by the platform. Three sharing contexts are supported:
- Direct share: Practitioner sends a verified Trust attestation to a specific person or institution — an employer, a school, a sponsor
- Public profile: Practitioner makes their Trust Stage visible on their public profile for anyone to see
- Institutional integration: Practitioner authorizes an employer or school to receive ongoing Trust Record updates through the API
The platform never exposes a Trust Record to any third party without explicit practitioner authorization. Trust is shared when the practitioner is ready — not when the platform decides it would be useful.
7. Sponsorship
7.1 The 90-Day Sponsorship Unit
The primary sponsorable unit is a 90-day practice commitment. A practitioner declares a 90-day commitment and enters the 14-day launch period. Sponsors pledge support during the launch period (and may continue joining throughout the active 90 days — see § 7.5). The payout is triggered when the commitment is completed and every sponsor has released payment. The structure is simple and universally legible: I committed to 90 days of genuine practice, I did the work, the people who put something behind me stayed present and released.
The expected payout for a completed 90-day commitment is $2,500 — proportional to the genuine effort required. Three months of practice is a meaningful achievement. A sponsor backing a 90-day commitment is not giving a tip — they are staking something real on a transformation they will witness.
The sponsorship is a private agreement between specific people. It requires no audience, no public announcement, no performance. A grandmother who pledges $5 toward her grandson's 90-day woodworking commitment is participating in exactly the same mechanism as a foundation sponsoring a student cohort. The scale differs; the structure and spirit are identical.
There is no separate sponsor account type. Every Search Star user can sponsor other practitioners, and the primary economic activity on the platform is practitioners backing each other's commitments — a running group whose members back each other's training, a reading circle whose members pledge against each other's monthly commitments, a craft community whose members celebrate each other's milestones with small tangible gestures of support. This peer sponsorship economy is the heart of the platform.
7.2 Invitation & Onboarding of Sponsors
Sponsors are invited only by the practitioner, or they arrive via the practitioner's sponsor link. There is no public directory of commitments needing sponsorship. There is no sponsor-side discovery surface where someone could browse practitioners to back. The practitioner owns the invitation entirely — they either email someone directly through the platform, or they share a link the platform generated for their commitment.
This is a structural choice. A sponsor who arrives via either path is someone the practitioner chose to bring in. It keeps the peer-sponsorship model honest and forecloses an entire category of attention-seeking behavior that a sponsor marketplace would produce.
Two invitation mechanisms exist:
- Direct email invitation. The practitioner enters a sponsor's email address and the platform sends an invitation with a unique token URL:
/sponsor/[commitment_id]/[token]. The recipient clicks through, sees the commitment, and can pledge. - Personal sponsor link. The practitioner has a single shareable link for the commitment. Sharing it via text, email, social channels, or in person is entirely up to the practitioner. Anyone who receives the link can open it, see the commitment, and pledge. The link is sharable but the decision to share it is deliberately the practitioner's.
No Search Star account is required to sponsor. A sponsor who clicks through either path can pledge, see the sponsor feed, and participate fully without signing up.
7.3 The Veto Rule
Streak completion requires unanimous continued confidence from every sponsor who has pledged. One sponsor vetoing ends the streak. There is no majority rule, no weighted voting, no arbitration body, no appeals process, no partial credit.
A sponsor expresses continued confidence passively — by staying present through the 90 days and releasing payment at day 90. A sponsor expresses veto actively — one button, at any point during the 90 days. Both actions are final in their respective directions: a released payment cannot be un-released, a veto cannot be un-vetoed.
On veto: pledged funds are refunded to every sponsor, including the one who vetoed. The commitment is marked abandoned. The practitioner retains their session history but the streak does not contribute to the Trust Record. The practitioner is free to declare a new commitment and assemble a new sponsor roster at any time.
7.4 The No-Escape-Hatch Principle
If a practitioner loses a sponsor mid-streak for any reason — honest disagreement, personal falling-out, the sponsor going silent, the sponsor changing their mind — the streak ends and the practitioner must bail and restart.
Not paused. Not partially credited. Not arbitrated. Ended. The practitioner restarts from the launch period with a new roster of sponsors.
A clarifying note: bringing in additional sponsors during the 90 days is permitted and normal (see § 7.5). Replacing a lost one is not. If sponsor A vetoes on day 40, the streak ends — even if sponsor B joined on day 30 and is still fully on board. The principle is about the integrity of a single committed roster, not about the total count of supporters.
Three consequences follow directly:
- The Trust Record is built from completed sponsored streaks only. "Completed" means every sponsor who pledged at any point during the commitment was still present and released payment at day 90. A streak that ended via veto or sponsor withdrawal contributes nothing to the Trust Record.
- There is no partial Trust credit for partial effort. The session count at which a veto occurs is irrelevant — day 3 or day 89, the result is the same. This is what makes the rule clean. It removes any temptation for the platform to quantify near-misses or award effort points.
- Practitioners develop a strong interest in sponsor selection. Because losing one sponsor means losing the whole streak, practitioners think carefully about who they invite. A sponsor likely to go silent or lose interest is a liability from day one. The invitation decision is consequential — not a social nicety but a genuine act of discernment about whose continued belief the practitioner can earn across ninety days.
7.5 Sponsors Can Join at Any Time
The 14-day launch period is where the initial sponsor roster is assembled. But sponsors are not locked out after the start ritual. Additional sponsors can pledge at any point during the active 90 days. A sponsor who joins on day 40 is in for the remaining fifty days, bound by the same veto-or-release mechanic as everyone else.
This is the right asymmetry: adding belief mid-stream is welcome; losing belief mid-stream is final. A practitioner whose commitment is going well can invite more sponsors as momentum builds. A practitioner whose commitment is struggling cannot paper over a lost sponsor with a new one.
A sponsor who pledges mid-stream sees the full session history of the commitment up to that point. They are witnessing from the present forward but with the context of what has already happened. At day 90 their release decision is informed by whatever portion of the 90 days they were present for — the Companion's summary at completion helps contextualize this for sponsors who joined late.
7.6 Institutional Sponsorship Cannot Stand Alone
An institution — an employer, a foundation, a university — cannot be the sole sponsor of a commitment. Institutional sponsorship must ride alongside personal sponsorship. A commitment backed only by an employer's wellness budget, with no friend or family member on the pledge list, does not qualify as a sponsored streak.
The standing principle: personal stake must precede institutional stake. The practitioner demonstrates that real people who know them are willing to back the commitment, and institutional money joins that pledge rather than substituting for it. The full treatment of how institutional sponsorship integrates with personal sponsorship is in § 10.
7.7 The Voluntary Donation Model
Search Star charges no mandatory platform fee beyond the cost of payment processing, passed through at cost. Platform revenue comes from a single voluntary donation mechanism at payout — modeled on GoFundMe's pattern.
At the payout moment — when a 90-day commitment is completed and sponsors are releasing payment — each sponsor sees an optional prompt: "Add a voluntary donation to Search Star?" The default is 5% of the pledge amount. The sponsor can adjust it up, down, or remove it entirely with a single click. There is no guilt, no dark pattern, no follow-up prompt.
How it works, concretely
A sponsor who pledged $500 against a 90-day commitment sees at payout:
- Your pledge: $500 (will be released to the practitioner)
- Optional Search Star donation: $25 (5%, editable)
- Total charge to your card: $525 (or $500 if you remove the donation)
The donation goes entirely to Search Star. It is never deducted from the practitioner's payout. The practitioner receives exactly what was pledged.
Revenue at scale
At the target $2,500 average payout and two commitments per year, a practitioner generates ~$5,000 in sponsor flow annually. A 5% donation on that is $250 per practitioner per year at full conversion. The realistic number is lower, but the model is structurally simple: platform revenue grows directly with platform activity, without any intermediate economic tier to fund.
7.8 Payout Rules
- Payout triggered on 90-day commitment completion. A commitment is complete when all sponsors have released payment at day 90.
- Practitioner receives the full pledged amount. Processing fees and voluntary donations are separate transactions — never deducted from what was promised to the practitioner.
- Processing fee is mandatory and passed through at cost. No margin is taken on payment processing.
- Voluntary donation is genuinely optional. One prompt per sponsor at payout, one removal action, no follow-up. The platform does not use dark patterns to recover declined donations.
- Veto refunds fully. If any sponsor vetoes during the 90 days, all pledged funds are refunded to all sponsors, including the one who vetoed. The commitment is marked abandoned.
- Sponsor-joins-late is supported. A sponsor pledging on day 40 has funds held through day 90 the same as a sponsor who pledged on day 1.
8. The AI Companion
8.1 Role & Purpose
Search Star includes an AI Companion present in every commitment. It is the third party to every practice — alongside the practitioner and the sponsor circle — and it has two purposes:
Accompany the practitioner through formation. The Companion asks the questions a good teacher would ask. It notices patterns across sessions. It helps with documentation when the practitioner wants help. It reflects on progress, points out what is being avoided, and surfaces the things worth remembering. This is the daily presence — the teacher, the coach, and the one who is actually watching the work develop.
Help sponsors assess at day 90. When a commitment reaches completion, the Companion produces a summary of the practice record — what was done, how it developed, where the effort showed, where it faltered. Sponsors use this summary to decide whether to release payment. The summary is a reading aid, not a verdict.
8.2 No Authority Over Trust
The Companion holds no authority over the Trust Record. It cannot confirm practice. It cannot advance a Trust Stage. It cannot vote on completion. It cannot veto. Its role is descriptive and supportive. All consequential attestation flows through sponsors — people with real money and real relationships on the line.
This distinction is structural. The Companion sees everything the practitioner logs. It could, in principle, assess whether a practice was real. The choice not to grant it that authority is a choice about what kind of trust the platform produces. A Trust Record witnessed by AI would be a statement about the AI's judgment. A Trust Record witnessed by sponsors with stake is a statement about human relationships and human stakes.
8.3 Other AI Surfaces
The Companion is the default AI surface, present in every commitment and facing the practitioner directly. Other AI surfaces may exist alongside it over time — surfaces that address specific needs like sponsor onboarding, commitment framing help, or domain-specific tutoring. All such surfaces share three properties:
- They are AI, clearly identified as such to users
- They hold no authority over the Trust Record
- They are subordinate to the two human roles (Practitioner and Sponsor) in every interaction
When the spec or product copy refers to "the AI" it means whichever surface is relevant to that moment. When it refers to "the Companion" it means specifically the default, practitioner-facing surface described in § 8.1.
8.4 The Companion on Video
Many practices on Search Star are naturally filmed — gym training, woodworking, cooking, instrument practice, running form, language pronunciation, any physical craft. The Companion's relationship to video is narrow and deliberate: it listens to what the practitioner said, and it does not grade what the practitioner did.
Voice-annotated video is the default pattern for visual practices. The practitioner narrates what they are doing while they film it. The narration is transcribed and becomes part of the session record the Companion reads. A statement like "squat, 8 at 225, last two felt heavy, my knee tracked okay" — said into the camera mid-set — is richer data than anything a vision model could extract from the footage itself, and it is accurate in a way inference over pixels cannot be. The Companion engages with that description specifically: quoting or paraphrasing what was said, asking a grounded question, noticing when the same complaint appears across three sessions.
The Companion does not offer technical critique of execution from video. It cannot see joint angles, bar paths, knife technique, pronunciation boundaries, or grain direction at a precision that would make such critique honest. Flagging an egregious-looking breakdown and missing a subtler one is worse than not flagging at all — it teaches practitioners to distrust the Companion on the few things it could usefully say. If a practitioner asks directly about their form or technique, the Companion says plainly that it cannot assess execution from video and asks them what they notice themselves.
This is a product choice, not a technical limitation. Specialized tools exist for pose estimation, velocity-based training, and similar domain-specific analysis; those tools may appear on Search Star over time as dedicated surfaces with their own disclaimers and constraints. They will not be merged into the Companion. The Companion's value comes from being a steady attentive presence over weeks and months — noticing patterns, remembering what was said, asking good questions — not from acting as a referee for each individual set.
9. Self-Organizing Systems
9.1 Precedents
Search Star is not the first attempt to build a community that reinforces genuine human development through peer accountability and shared practice. Several self-organizing systems have succeeded at this at scale — and their structural features are worth studying deliberately rather than reinventing.
Alcoholics Anonymous succeeds because there are no spectators. Everyone in the room is a participant. Status comes from longevity and from helping newcomers, not from performance. The shared language and ritual create belonging without hierarchy. Anonymity removes the performance incentive entirely — you cannot humble-brag your sobriety to strangers.
CrossFit succeeds because progress is measured in absolute personal terms, not relative rankings. Your clean-and-jerk PR is yours — it does not diminish because someone else lifted more. The community is the product.
GoFundMe succeeds because the economic model is simple and honest: the platform takes only what donors freely give. Most donors leave a voluntary tip. The platform's revenue aligns with the value actually delivered — people sustain the thing that helped them.
Monastic communities succeeded at sustaining high-effort practice over lifetimes because the practice was oriented toward something beyond the self. The work was not performed for an audience. The audience was the work itself, and the community existed to support each member's engagement with it.
9.2 Structural Principles
From these precedents, Search Star draws the following structural principles — each reflected in a specific product decision:
| Principle | Source | Search Star Expression |
|---|---|---|
| No spectators — everyone participates | AA, CrossFit | No public feed; every user is a practitioner and a potential sponsor |
| Progress in absolute personal terms | CrossFit | Trust expressed as Trust Stage, not ranking |
| Witness by those with real stake | AA sponsorship model, lending-circle traditions | Sponsors put money behind the commitment; their release or veto is the attestation |
| Voluntary support aligned with value | GoFundMe | 5% suggested donation at payout, fully optional and editable |
| Shared language creates belonging | AA, monasteries | Consistent vocabulary: practice, commitment, sponsor, Trust Stage, Companion |
| The work is oriented beyond the self | Monastic tradition | Beauty, grace, truth as the telos of practice |
| Anonymity from outside audiences | AA | Private by default; the sponsor circle is the only audience |
10. Institutional Sponsorship
10.1 Standing Principle
Institutional sponsors — employers, foundations, universities, civic organizations — can back a practitioner's 90-day commitment, but they cannot do so alone. Institutional pledges must ride alongside personal sponsorship from people who know the practitioner.
The reason is structural. A commitment backed only by an employer's wellness budget — with no friend or family member on the pledge list — has no human witness independent of the institutional funder. The sponsor feed would be read by compliance officers, not by people who know whether the work is real. The platform's core integrity depends on human sponsors with real relationships being the primary audience for the practice. Institutional money is welcome as an amplifier; it cannot be the sole source of witness.
Why institutions would want to participate
The institutional value proposition is signal, not program administration. Employers hiring for conscientiousness can ask candidates to share a Trust Record. Universities looking for evidence of sustained effort in applicants can do the same. Foundations funding community development can measure program outcomes in completed sponsored streaks across a cohort. These uses do not require institutions to run the platform themselves — they require a population of practitioners with portable, verifiable records of genuine practice.
Institutional sponsorship sits on top of that. An employer that pledges against an employee's commitment is affirming the value of the practice; the employee's personal sponsors are the ones attesting that the work happened. Both matter; neither replaces the other.
10.2 Deferred Mechanics
The exact mechanics of how institutional and personal sponsorship combine are deferred. Real data on practitioner behavior, institutional interest, and sponsorship patterns is needed before hardening the rules. The principle is firm; the rules wait.
Questions pending resolution:
- Minimum number of personal sponsors required before institutional pledges can attach
- Ordering rules — do personal sponsors need to pledge first in calendar time, or merely be present in the final roster?
- Relationship requirements for personal sponsors — all family acceptable, or is cross-circle diversity required?
- Ratio requirements between personal and institutional pledge amounts, if any
- The product surface for institutional deployments where the employer is the primary funder — this may warrant a distinct Institutional Portal, or may be simpler as a sponsor account with elevated permissions
11. Profile & Data
11.1 Profile Schema
The Search Star profile contains what is needed to make the Trust Record portable and meaningful to external parties. It is a credential built around practice, not a comprehensive data portrait. All profile information is entered manually by the user — nothing is inferred, scraped, or imported without explicit user action.
| Section | Default Visibility | Purpose |
|---|---|---|
| Identity | Private → user-controlled | Name, location, brief bio |
| Trust Record | Private → user-controlled | Portable credential — shared on user's terms |
| Practice Record | Private → user-controlled | Active and past commitments, completed streaks |
| Sponsor Network | Private → partial on request | Sponsor relationships and tenure |
| Skills & Credentials | Private → user-controlled | Formal credentials and verified capabilities |
| Session Documentation | Sponsor circle only | Practice evidence — never public without explicit share |
| Sponsorship History | Private — user only | Earnings record |
11.2 Consent & Control
Search Star stores all data needed to make the platform function on standard infrastructure. There is no proxy architecture or self-hosting requirement. The complexity of earlier sovereignty designs has been replaced with a simpler and more honest model: explicit consent and granular user control.
Users control visibility of every profile section independently. Sponsors and institutions see only what the user has explicitly authorized. Session documentation never becomes visible to third parties without a specific share action by the user. Commercial use of profile data — including any future advertising or targeting — requires opt-in, not opt-out.
Search Star does not sell profile data. It does not monetize behavioral data for advertising. Revenue comes from voluntary donations at payout moments. The only mandatory charge is payment processing at cost. The business model is aligned with genuine value creation — Search Star earns when practitioners and sponsors experience real outcomes, and only as much as people freely choose to give.
11.3 Portability
A user's practice record, Trust history, sponsor relationships, and session documentation belong to the user. Full data export is available at any time in standard formats. Account deletion removes all data from Search Star infrastructure within 30 days. The Trust Record and practice history can be exported as a portable attestation document for use outside the platform.
12. Technical Architecture
12.1 Stack
- Frontend: Next.js 16 (App Router), TypeScript, Tailwind v4
- Backend: Supabase (PostgreSQL, RLS) — project ID
qgjyfcqgnuamgymonblj - Deployment: Vercel — push to deploy branch triggers GitHub Actions deploy hook, auto-promotes to
searchstar.com - Email: Resend, from
noreply@searchstar.com - AI: Anthropic Claude (Companion surfaces). Exact model selection and inference patterns deferred.
- Design system: Project Graceland — Crimson Text headings, Roboto body, navy
#1a3a6b, 3px border-radius, no emojis in UI chrome - Repo:
ArchonGraceland/Search-Star
Key implementation patterns (carried from v3)
- Service client for DB operations: All API routes use
createServiceClient()for database reads/writes, andcreateClient()only forauth.getUser(). This bypasses RLS for authenticated operations and avoids recursion bugs in complex policies. - Server components for token-gated pages: The sponsor feed (
/sponsor/[commitment_id]/[token]) is a server component — token lookup happens server-side before the browser receives anything, eliminating client-side auth failures. - Stage resolver:
src/lib/stage.tsreads user state and returns which stage they are on. All post-login redirects go to/start, which delegates to the resolver. - Dynamic params: All Next.js App Router dynamic params use
{ params }: { params: Promise<{ id: string }> }withawait params— synchronous destructuring causes build failures. - Resend lazy init:
getResend()factory pattern — module-level instantiation causes build failures whenRESEND_API_KEYis absent at build time.
12.2 API (v4 target)
The v4 API surface is a simplification of v3. Routes related to validators, mentors, and the mentor economy are retired. Routes related to sponsors, payment flow, and the Companion are added or expanded.
Core practitioner + commitment routes (carried from v3)
| Route | Method | Purpose |
|---|---|---|
/api/practices | POST | Create a practice (name, label, category) |
/api/commitments | POST | Create a 90-day commitment |
/api/commitments/[id] | GET | Fetch commitment + session posts |
/api/commitments/[id]/posts | POST | Log a session; notifies all active sponsors by email |
/api/commitments/[id]/start | POST | Perform start ritual — transitions commitment to active |
/api/commitments/[id]/complete | POST | Trigger completion check; all sponsors must release for payout |
/api/profiles/visibility | PATCH | Update profile visibility setting |
Sponsor routes (new in v4)
| Route | Method | Purpose |
|---|---|---|
/api/sponsors/invite | POST | Practitioner invites a sponsor by email. Valid during launch or active commitment. |
/api/sponsors/pledge | POST | Sponsor pledges against a commitment. Creates sponsorship record, holds funds. |
/api/sponsors/release | POST | Sponsor releases pledge at day 90. Optional voluntary donation included. |
/api/sponsors/veto | POST | Sponsor vetoes at any time during active commitment. Ends streak, refunds all pledges. |
/sponsor/[commitment_id]/[token] | GET (page) | Token-gated sponsor feed (server component) |
Trust routes
| Route | Method | Purpose |
|---|---|---|
/api/trust/[userId] | GET | Retrieve Trust Record with stage and dimension breakdown (respects visibility) |
/api/trust/compute | POST | Recompute Trust Record from completed sponsored streaks. Rebuilt in v4. |
/api/trust/share | POST | Generate a shareable Trust attestation link |
Companion routes (shape deferred)
| Route | Method | Purpose |
|---|---|---|
/api/companion/* | — | AI Companion endpoints. Exact shape deferred pending Companion design. |
Routes retired in v4
The following v3 routes are retired and must be removed during the v4 build:
/api/validate/*(entire namespace)/api/validators/invite/api/confirmations/*/api/commitments/[id]/validators/api/mentors/*,/api/mentoring/*,/api/profiles/mentor-step-seen- Page routes:
/validate/*,/start/mentor/,/(dashboard)/mentors/,/(dashboard)/mentoring/
13. Roadmap
| Milestone | Description | Status |
|---|---|---|
| v3.0–3.5 | v3 foundation: auth, six-stage onboarding spine, 90-day commitments, session logging, validator feed, PWA, responsive site, terminology standardization, 12-category taxonomy | Live (migrated in v4) |
| v4.0 — Decisions & Spec | Decisions doc (docs/v4-decisions.md) and this spec rewrite. No code changes. Source of truth for all subsequent v4 work. | Shipped |
| v4.1 — Role & Schema Excision | Retire validator role end-to-end: drop validators and post_confirmations tables, retire /api/validate/*, rename validator references in commitments RLS, remove mentor tables and routes (mentor_relationships, /api/mentors/*, /api/mentoring/*, mentor pages). Simplify contributions table to a single ss_share at 5% default. | Shipped |
| v4.2 — Sponsor Flow Build | Sponsor invitation routes (/api/sponsors/invite, /pledge, /release, /veto). Sponsor feed at /sponsor/[commitment_id]/[token]. Update RLS to permit mid-streak pledging. Email templates for sponsor invitation, session notification, day-90 release prompt, veto notification. | Shipped |
| v4.3 — Stage Resolver & Onboarding Rework | Rewrite stage resolver: step 3 becomes sponsor invitation, step 4 becomes Companion introduction. Update /start/ pages accordingly. Retire mentor_step_seen profile flag. | Shipped |
| v4.4 — Trust Record Rebuild | Rewrite /api/trust/compute from completed sponsored streaks. New Depth/Breadth/Durability inputs per spec §6.3. Calibrate thresholds against whatever completions exist (notional until more data). Drop active_validators and mentees_formed columns. | Shipped |
| v4.5 — Payment Flow | Stripe integration. Pledge-time hold, day-90 release, veto refund, voluntary donation at release. Dashboard earnings summary showing practitioner payouts and, separately, voluntary donations to Search Star. | Shipped |
| v4.6 — Companion v1 | First Companion surface: practitioner-facing reflection and pattern-noticing during active commitments. Day-90 sponsor summary generation. Memory architecture minimal (per-commitment) in v1. | Shipped |
| v4.6.1 — Companion v1.5 | Companion extended to the 14-day launch window with its own system prompt. Media upload (camera/gallery) on /commit/[id] session form. Companion panel ported to /log (the PWA daily surface) in a dark-theme variant. Voice-annotated video codified as the default for visual practices (§8.4): Groq Whisper transcribes narration, Companion reads what the practitioner said, declines to grade technique from video. | Shipped |
| v4.7 — Public Narrative Rewrite | Homepage, onboarding, manifesto, spec, and roadmap rewritten against v4. Homepage restructured around the four presences (Practitioner / Sponsor / Companion / Institution) with the Companion as a first-class role. /home escape-hatch route added so logged-in users on /log can reach the marketing homepage. Public header made auth-aware: logged-in visitors see Dashboard / Sign Out across /, /home, /onboarding, /manifesto. All retired v3 terminology swept from public surfaces. | Shipped |
| v4.7.1 — Launch Blockers (Auth + Reliability) | Self-serve password reset flow: "Forgot password?" link on /login, /auth/forgot-password page calling supabase.auth.resetPasswordForEmail, /auth/reset page that consumes the recovery session established by the existing /auth/confirm handler and calls supabase.auth.updateUser client-side. Always-200 submit behavior to avoid account enumeration. The remaining @supabase/ssr → service-client migration also landed in the same window: twelve files across admin/, institution/, and /api/trust/* migrated. The admin layout gate is the most consequential — a silent empty read on the role lookup would have booted a real admin out to /dashboard; the institution dashboards had the same failure mode for contact_email checks. Pattern unchanged from prior sweeps (commits 0710ce4 / 1dccc46 / 501d976 / 0f28db9): getUser() stays on the SSR client, all RLS-gated reads/writes route through createServiceClient() with application-layer authorization preserved. | Shipped |
| v4.7.2 — Launch Blockers (Content) | Rewrite of docs/next-session-companion-v2.md to reflect current state and scope Stage B. Recut or replace seven-feeds-of-death.mp4 and SearchStar_Trust_as_Validation.mp4 with David's own voice (no TTS). | Next |
| v4.7.3 — Companion v2 (Stage B) | Chat UI on Companion panel (replacing current one-shot reflection). Streaming token responses. Voice input via MediaRecorder or Web Speech API. Persisted conversation threads as a first-class artifact (new tables or extension to commitment_posts). Companion responds specifically to fresh video uploads rather than reflecting on the full record. North-star interaction: practitioner uploads video mid-session and gets a Companion response to what they just said. | Planned |
| v4.8 — Institutional Sponsorship (experimental) | Enable institutional pledges riding alongside personal sponsorship. Enforce the standing principle: at least one personal sponsor required. Revisit deferred mechanics (§10.2) with whatever real data exists. | Future |
| v4.9 — Portable Trust Export | Trust Record as shareable attestation document. Employer/university verification flow. Third-party attestation format. | Future |
docs/v4-decisions.md and this spec. No session makes changes grounded in inline chat instructions alone. The spec is the source of truth; inline instructions are additions to that source, not substitutes for it.
14. Product as Built
This section documents the v3 build that v4 migrates from, and the key product decisions made or being made in the v4 transition. Where the spec describes the intended v4 product, this section describes what was actually built in v3 and the surgery required to reach v4.
14.1 The Six-Stage Spine
The v3 onboarding was implemented as a six-stage linear spine at /start, with a server-side stage resolver that automatically routes users to the correct stage every time they arrive.
The key insight driving this design: users returning to the platform after days away should land exactly where they are — not at a dashboard that requires them to figure out what to do next, and not at the beginning of onboarding. The stage resolver reads database state and routes deterministically. There is no session state, no cookie, no user preference to manage. The resolver is the single source of truth for where a user is in their practice journey.
mentor_step_seen flag is retired; a companion_step_seen flag takes its place. Sponsor invitation at Stage 3 is skippable — unlike the v3 validator invitation, which gated progression. Additional sponsors can always be invited later.
14.2 Session Logging
No one-session-per-day limit
Session logging has no daily cap. If a practitioner practices twice in a day, both sessions are logged. The platform rewards showing up — not limiting how much showing up is recorded.
Start ritual is session 0
The start ritual is stored as a session post with session_number: 0. It does not count toward the session total displayed on the active commitment page or the sponsor feed. It appears in the session history labelled "Start ritual." This distinction matters because the start ritual is a declaration of intent, not a practice session.
The three jobs (v3 copy — being rewritten)
The v3 active commitment page showed a "Your three jobs" section: come back tomorrow and log; share your sponsor link; invite more validators. In v4 this becomes two jobs: log tomorrow's session; invite more sponsors (or share your sponsor link). The "validators" framing is retired. The guidance text is otherwise preserved — users who complete the start ritual still benefit from explicit direction about what to do next.
14.3 Key Product Decisions Made in Build
| Decision | Resolution | Rationale |
|---|---|---|
| Validator vs. sponsor roles | Retire validator entirely; sponsor is the witness | Asking a friend to be an unpaid evaluator is the wrong social ask. Sponsors already stake something real; separating the roles duplicated a function money performs cleanly. See docs/v4-decisions.md decision #1. |
| Launch period as cutoff | Launch period is runway, not cutoff; sponsors can join anytime | The 14-day boundary is when the work begins, not when sponsorship closes. Adding belief mid-stream is welcome; losing belief mid-stream is final. See decision #3. |
| Sponsor confirmation mechanism | Unanimous release at day 90; any single veto ends streak | Asymmetric in favor of veto. One honest doubt from one person with stake ends the streak. Simpler and more honest than majority rule or arbitration. See decision #3. |
| Replacement sponsors | No — a lost sponsor ends the streak; practitioner restarts | Maintaining sponsor relationships across 90 days is part of the practice. The platform does not mediate or provide a safety net. See decision #3 and spec §7.4. |
| Mentor economy | Retired entirely; two human roles only (Practitioner, Sponsor); Companion is AI | AI Companion is a better teacher than a weekly human mentor for the skill categories Search Star supports. Paying humans to do what AI does better is not a model to build economics on. See decisions #2 and #5. |
| Revenue model | Single 5% voluntary donation to Search Star at payout, GoFundMe-pattern | The mentor economy split (23.75% × 4) collapsed with the Mentor role retirement. A single voluntary donation is simpler, more honest, and aligned with real value delivered. See decision #5 and spec §7.7. |
| Trust Record inputs | Completed sponsored streaks only, weighted by sponsor count, diversity, and reliability | v3's per-session confirmation mechanic is gone. The new input is the whole 90-day streak witnessed by sponsors who stayed present. Sponsors who deliver across multiple practitioners carry more signal over time. See decision #6 and spec §6.4. |
| Launch period length | 14 days (per v4 spec) — v3 shipped with 7 days | v3 shipped a 7-day version for implementation speed. v4 restores the spec-original 14 days: long enough for news to travel, short enough to preserve momentum. Mirrors other socially legible notice periods. |
| Validator URL format (v3, now retired) | Path segments, not query parameters | Query parameters were mangled by Gmail and other mobile email clients. Path segments are not. The sponsor URL format /sponsor/[commitment_id]/[token] inherits this pattern. |
| API route database client | Service client for DB ops; auth client only for getUser() |
RLS policies caused intermittent failures for newly created users. Service client bypasses RLS while still verifying user identity via auth. |
| Server component for token-gated pages | Server component with service client, not client-side queries | Client-side queries against unauthenticated-visitor tables failed intermittently. Server component eliminates the failure mode. Applies to the v4 sponsor feed same as the retired v3 validator feed. |
| Shared component with server dependency | Split into two files: server variant and static variant | A single module cannot export both an async server component and a sync variant for client-component consumers — named imports do not tree-shake across the RSC server/client boundary, so importing the sync variant still pulls next/headers (via the server variant's dependency graph) into the client bundle and breaks the build. tsc does not catch this; only the bundler does. The rule is structural: code that imports @/lib/supabase/server (or any next/headers consumer) must live in a file that no client component transitively imports. PublicHeader (auth-aware) and PublicHeaderStatic (client-safe) are split along this line. |