Skip to content

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.

#FeatureEffortFreqSubstrate it composes overWave
C1"Today" section on the consumer home: next accepted session · check-in due · coach's latest announcementSDconsumer home section stack (hides empty sections by rule) + meetings + group chatwith the modules
C2Daily check-in + streaks in My Progress: up to 3 self-chosen lifestyle habits, one tap, no-shame streaksSDMy Progress entries + reminders engine for the local nudge (off by default)with the modules
C3Post-session acknowledgment: next app open after a joined session shows name, attendance count, streakSper sessionmeetings participation recordswith the modules
C4Weekly recap card (consumer, in-app only): sessions attended, check-ins, entriesSWpure derivation over stored rows; absent when emptywith the modules
M1Quick replies in the chat composer + management sheetSD⚠ 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 foundcurrent wave eligible
M2Daily digest — ONE local notification: tomorrow's sessions, follow-ups due, reorder-due; first-run explainer, one-tap offMDreminders port + data knowable at schedule time. A Ganapati-shaped digest (reminders due, orders to collect) works before the vertical landscurrent wave eligible (lite)
M3"Leads going cold" attention item — no activity in N days, one card with a count, never N cardsSDlead activity timestamps + the attention railwith the modules
M4Weekly business snapshot widget: sessions held, people joined, new leads, conversions, messages answeredSWmodule data only (insights group is registered and waiting) — never fabricated analyticswith the modules
M5Share shortcuts in Quick tools: my card · next session invite · a media-library imageSDexisting share mechanics + Quick tools gridcurrent 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 ​

FeatureWhy it waitsUnlock
Remote push infrastructureNot low-effort: token table + dispatch EF + paid Apple account. The one infra investment worth scheduling deliberately26.0.2 architecture agenda (QRS-674)
Coach's daily tip surfaced on members' Today stripFalls out of group announcements (Module 4) once rooms exist; human-authored motivation beats platform fillerModule 4 ships
Suggested next actions on lead detailRule-based archetype config (ADR-0009), never ML; needs the pipeline live firstleads module ships
Birthday / festival greeting nudgesOne date field + reminders engine + a media-library share; India-context engagement goldparty substrate ships
Shareable milestone card ("12-day streak" image to WhatsApp status)A growth loop, but image snapshot is a native-module/app-size callapp-size decision
Education row on VendorView + card video blockAlready specified in the Public Setu Card Spec section floorthat spec's work
Enquiry auto-acknowledgment via a quick replyNeeds the D2 enquiry decision + the chat Edge FunctionD2 + 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 ​

RejectedWhy
Platform-authored daily motivational quotesUnfalsifiable 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 / leaderboardsCompetition on health outcomes among identifiable people: compliance minefield plus shame dynamics
Diet, calorie or meal advice in any formMedical-adjacent, FSSAI exposure, fabricated insight by definition
Community feed / social wallUGC before the moderation/takedown path exists — the same gate that blocks reviews
Points / rewards schemesNeeds a ledger and a legal read; engagement-bait risk wearing a feature costume
"We miss you" re-engagement notificationsNo push in R1 anyway, and pure noise even with it
In-app upgrade nudgesApple 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.