Appearance
Direct seller — the engagement layer
OWNER DECISION 2026-08-14 — BUCKET 1 IS COMMITTED SCOPE, "WITHOUT ANY SECOND THOUGHT"
The owner reviewed the engagement reassessment (QRS-674) and committed the low-effort set to R1 of this work — the first release that carries it — as non-optional scope. This page is the durable record of the full four-bucket assessment that was previously only in conversation. The design asks are already embedded in the vertical spec's Prompt B (ENGAGEMENT LAYER block).
Delivery mechanics, stated precisely because "R1" has two readings: three of the nine committed items are vertical-independent and eligible for the current Ganapati wave (their substrate is already in 26.0.1 scope); the other six render data that only exists once the vertical's five modules land, so they ship with the vertical's implementation release (26.0.2 at the earliest, per the discovery brief §0) — as committed scope, not as a later enhancement wave. Six of nine cannot precede the modules they render; that is a dependency fact, not a reconsideration.
The ask, and the rubric
The owner asked for a product-owner pass over the whole Herbal Life scope: features that are low effort, high perceived value, reusable, compliance-safe, and that create daily or recurring engagement — "a daily wellness companion and business-enablement platform", never "another place where I store information". Every candidate was scored on Effort → Value → Frequency → Stickiness → Reusability → Compliance, and every effort claim below is grounded in the substrate audit of live migrations and modules, not in hope. Feature bloat was explicitly rejected: the avoid list (§4) is as load-bearing as the add list.
The constraint that shaped everything
⚠ Remote push does not exist in R1, by explicit decision (QRS-234: the iOS push entitlement is stripped, there is no device-token table and no dispatch path). Consequences:
- Every "notification" here is either in-app or a locally scheduled notification whose content is knowable at schedule time (tomorrow's sessions and follow-ups qualify; "someone just enquired" does not).
- Real-time new-enquiry and link-changed alerts are in-app and badge only until the push decision is revisited — recommended for the 26.0.2 architecture agenda (token table + dispatch Edge Function + the paid Apple account the store ship needs anyway). A lead-generation vertical without new-lead alerts runs at reduced power; every committed item below is designed to work without push so nothing here is blocked on that decision.
- All scheduled notifications share the iOS 64-slot budget with reminders: short horizon, reconciled on open (the ADR-0016 machinery).
1 · Committed — the nine R1 items
Effort: S small / M medium · Frequency: D daily / W weekly · all nine are compositions over the five modules' own data (Meetings · Leads · Media Library · Team & Group Chat · My Progress) — zero new systems.
| # | Feature | Effort | Freq | Substrate it composes over | Wave |
|---|---|---|---|---|---|
| C1 | "Today" section on the consumer home: next accepted session · check-in due · coach's latest announcement | S | D | consumer home section stack (hides empty sections by rule) + meetings + group chat | with the modules |
| C2 | Daily check-in + streaks in My Progress: up to 3 self-chosen lifestyle habits, one tap, no-shame streaks | S | D | My Progress entries + reminders engine for the local nudge (off by default) | with the modules |
| C3 | Post-session acknowledgment: next app open after a joined session shows name, attendance count, streak | S | per session | meetings participation records | with the modules |
| C4 | Weekly recap card (consumer, in-app only): sessions attended, check-ins, entries | S | W | pure derivation over stored rows; absent when empty | with the modules |
| M1 | Quick replies in the chat composer + management sheet | S | D | ⚠ the quick_replies table is already live in the chat schema (QRS-543, in 26.0.1 scope) with no designed affordance — the highest value-per-effort item found | current wave eligible |
| M2 | Daily digest — ONE local notification: tomorrow's sessions, follow-ups due, reorder-due; first-run explainer, one-tap off | M | D | reminders port + data knowable at schedule time. A Ganapati-shaped digest (reminders due, orders to collect) works before the vertical lands | current wave eligible (lite) |
| M3 | "Leads going cold" attention item — no activity in N days, one card with a count, never N cards | S | D | lead activity timestamps + the attention rail | with the modules |
| M4 | Weekly business snapshot widget: sessions held, people joined, new leads, conversions, messages answered | S | W | module data only (insights group is registered and waiting) — never fabricated analytics | with the modules |
| M5 | Share shortcuts in Quick tools: my card · next session invite · a media-library image | S | D | existing share mechanics + Quick tools grid | current wave eligible (card share half) |
Compliance note held across all nine: every nudge is dismissible, quiet-hours aware, individually mutable; nothing renders without data behind it; a surface with nothing to say is absent, never a placeholder; streaks encourage and never shame (no red broken state; a quiet "start again today").
2 · Easy follow-up enhancements
| Feature | Why it waits | Unlock |
|---|---|---|
| Remote push infrastructure | Not low-effort: token table + dispatch EF + paid Apple account. The one infra investment worth scheduling deliberately | 26.0.2 architecture agenda (QRS-674) |
| Coach's daily tip surfaced on members' Today strip | Falls out of group announcements (Module 4) once rooms exist; human-authored motivation beats platform filler | Module 4 ships |
| Suggested next actions on lead detail | Rule-based archetype config (ADR-0009), never ML; needs the pipeline live first | leads module ships |
| Birthday / festival greeting nudges | One date field + reminders engine + a media-library share; India-context engagement gold | party substrate ships |
| Shareable milestone card ("12-day streak" image to WhatsApp status) | A growth loop, but image snapshot is a native-module/app-size call | app-size decision |
| Education row on VendorView + card video block | Already specified in the Public Setu Card Spec section floor | that spec's work |
| Enquiry auto-acknowledgment via a quick reply | Needs the D2 enquiry decision + the chat Edge Function | D2 + chat EF |
3 · Future opportunities
- Personalized content by interests — the consumerPrefs seam exists as a stub; personalisation is an explicit R1 deferral platform-wide. Needs real usage data first.
- Campaigns-driven content distribution (ADR-0025) — coach/upline publishing down the network properly; waits on the outbox drain worker and the workspace tree.
- Coach programs over My Progress — structured multi-week wellness programs, after My Progress proves retention and the legal read lands.
- Wearables / step counts (HealthKit / Google Fit) — native modules plus health-data store scrutiny; revisit post-launch with evidence, if ever.
4 · Explicitly avoided — each with its failure mode
| Rejected | Why |
|---|---|
| Platform-authored daily motivational quotes | Unfalsifiable filler that trains users to ignore the nudges that ARE real — the anti-noise failure mode verbatim. Motivation comes from their coach (§2) and their own streak (C2) |
| Weight-loss challenges / leaderboards | Competition on health outcomes among identifiable people: compliance minefield plus shame dynamics |
| Diet, calorie or meal advice in any form | Medical-adjacent, FSSAI exposure, fabricated insight by definition |
| Community feed / social wall | UGC before the moderation/takedown path exists — the same gate that blocks reviews |
| Points / rewards schemes | Needs a ledger and a legal read; engagement-bait risk wearing a feature costume |
| "We miss you" re-engagement notifications | No push in R1 anyway, and pure noise even with it |
| In-app upgrade nudges | Apple 3.1.3(d) / ADR-0002: upsell converts on web or email, never in-app |
Proactive-value answer
- What action it prompts: the consumer's one-tap check-in and next session; the merchant's morning digest pointing at exactly the three things that make money (tonight's session, due follow-ups, cooling leads).
- What makes it timely: every surface is driven by a dated fact — a session start time, a follow-up date the merchant set, a check-in streak, a last-activity timestamp.
- Where the intelligence comes from: stored rows in the five modules only. No scores, no fabricated insight; with no data the surface is absent rather than a placeholder.
Related
- Discovery brief — the vertical's evidence and capability mapping
- Direct Seller Vertical Spec — Prompt B carries these design asks
- Tracker: QRS-674 (this assessment) · QRS-667 · QRS-672 · QRS-673