Part III · Chapters 15–18
The pact
Two lanes, one finish line — plus the reminders, surfaces, and permission boundary around them.
Chapter 15. The Pact and Pactmate Experience
15.1 Make a Pact flow
- The initiating user invites one Pactmate by email or verified phone number.
- The initiator selects a fixed term: 1 week, 1 month, 2 months, or 3 months.
- The initiator picks their Pact Lane: workouts, nutrition, or both.
- The invitee creates or signs into a FitPact account.
- The invitee accepts or declines the pact.
- When accepting, the invitee chooses either Back my Pactmate or Make it mutual.
- If mutual, the invitee creates a separate Pact Lane containing workouts, nutrition, or both.
- Both members review the term, lane scopes, default visibility, and Pact Pulse cadence.
- Both members confirm, and the fixed-term pact becomes active on its start date.
An invitation expires after a configurable period. One account may own a Pact Lane and act as Pactmate for the other member inside the same pact.
15.2 Pact lifecycle
Pact statuses are:
- Invited
- Ready to start
- Active
- Paused
- Ended early
- Finished
The pact stores an immutable term selection plus deterministic start and end dates. It cannot remain active outside that interval. Members may pause or end it early, but they cannot extend it. At Finish, FitPact celebrates participation without requiring perfect adherence and offers a deliberate Make another pact action.
15.3 Separate Pact Lanes
- Each lane belongs to exactly one member.
- Each lane independently contains workouts, nutrition, or both.
- Each member logs, edits, pauses, and requests Resets only for their own lane.
- Each Pactmate views the other lane through that lane owner’s permissions.
- A mutual pact does not combine adherence scores or goals.
- A member may pause their own lane without automatically pausing the other member’s lane.
- Either member may leave or end the shared pact; the other member’s personal plans remain available outside the ended pact.
15.4 Default Pactmate visibility
After the user reviews and confirms the sharing summary, the Pactmate can see by default:
- Primary goal
- Active workout plan
- Active nutrition framework and macro targets
- Upcoming workouts and meal commitments
- Daily completion states
- Workout adherence
- Nutrition adherence
- Partial and missed commitments
- Pact Pulse summaries
- Upcoming Pact Pulses
- Proposed Resets
The following remain private unless separately and explicitly shared:
- Health issues and safety-intake answers
- Allergens and physical limitations beyond what is visible in the plan
- Body weight and body measurements
- Progress photos
- Private notes
- Account and contact information not required for the pact
The user sees a plain-language preview of default sharing before activating the pact and may revoke sharing or end the pact at any time.
15.5 Structured interactions
FitPact does not provide free-form direct messaging in the MVP. Pactmates can:
- Send a predefined Boost.
- React to a completed or partially completed commitment.
- Answer a structured weekly Pact Pulse.
- Ask a predefined support question.
- Co-sign or decline a proposed Reset.
- Select a structured reason when declining.
Suggested language must be supportive and must not shame, threaten, diagnose, or imply surveillance.
Chapter 16. SMS Reminders
MVP reminders are delivered by SMS.
User reminders
- Upcoming planned activity
- Pact Pulse ready
- Pactmate interaction
- Reset co-signed or declined
- Pact invitation status
Pactmate reminders
- New pact invitation
- Scheduled Pact Pulse
- User response
- Reset awaiting co-sign
- Pact paused or ended
Requirements
- A verified mobile number and explicit SMS consent are required before SMS is enabled.
- SMS consent is recorded separately for each account.
- Users can disable nonessential reminders and withdraw SMS consent.
- Quiet hours use the recipient’s timezone and default to 21:00–08:00.
- Sensitive health information, weight, macro values, and adherence details do not appear in SMS text.
- SMS links require authentication before showing private information.
- Reminder frequency is configurable and rate-limited.
- The product supports legally required opt-out handling.
Structured Pactmate actions occur inside FitPact; SMS serves as the notification and return channel, not as unrestricted Pactmate-to-user messaging.
Chapter 18. Roles and Permissions
Permissions are evaluated relative to each Pact Lane. In a mutual pact, each person is the owner of their own lane and the Pactmate for the other lane.
| Capability | Lane owner | Other Pactmate |
|---|---|---|
| Maintain own fitness journey | Yes | Yes |
| Create and edit this lane’s plans | Yes | No |
| Activate first plan | Yes | No |
| Reset an active plan | Submit | Co-sign or decline |
| Pause or stop this lane | Yes | No |
| Log this lane’s activity | Yes | No |
| View shared plan and adherence | Yes | Yes, by pact permission |
| Send structured interactions | Yes | Yes |
| Send free-form messages | No | No |
| Change sharing permissions | Yes | No |
| Change the fixed pact term | No | No |
| End pact | Yes | Yes |
| View health intake or private notes | Yes | No by default |
Role checks are relationship-scoped: being a Pactmate for one person grants no access to any other user.