feat(home-b): Today feed-first parent home prototype with persistent conversational composer (synthetic data) - #30
Draft
obvious-autobuild[bot] wants to merge 3 commits into
Draft
obvious-autobuild[bot] wants to merge 3 commits into
obvious-autobuild[bot] wants to merge 3 commits into
Conversation
…2-test behavior suite
Candidate B core (no UI yet): raw-before-events capture with captureId
idempotency, { captureId, attempt } extraction envelope with stale-result
suppression, review-surface edits with schema validation, audience grants,
publish with provenance, append-only post-publish corrections, fail-closed
authorization (port of security/access/policy.ts + audience dimension),
read-only lookups pinned by a serialized-state test, and the synthetic
September 2026 Polanco household fixtures.
Co-authored-by: Gilbert Polanco <gilbertpolanco42@gmail.com>
…le wiring - HomeBDemoApp: persona switcher, since-you-were-away catch-up, month day navigation, Today feed with provenance, draft review/edit surface, append-only correction flow, and a persistent composer (text path + simulated-voice demo mode) driving the same store pipeline. - Denied results now carry DenyDecision (a denial always holds a DENY). - apps/mobile: EXPO_PUBLIC_HOME_CANDIDATE=b renders candidate B; Convex client constructed only on the shell path; web platform enabled for the Expo web demo export. Co-authored-by: Gilbert Polanco <gilbertpolanco42@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The parent home needs an organizing experience, and the A/B comparison must test two coherent answers, not two feature sets. Candidate B's thesis: the feed is home — today's recorded events newest-first, with the whole month's history one navigation away — and capture is always one composer away, docked at the bottom of every screen. A parent taking over care should answer "what happened today?" before they answer "what do I want to record?".
What
A runnable Expo React Native prototype (Expo web export verified) of the Today feed-first parent home with a persistent conversational composer:
Synthetic data only (Polanco Household, 22 deterministic utterances across Sep 1–16, 2026); in-memory store mirroring the Convex adapter semantics — no live Convex, no LLM. All stored shapes decode through the canonical Effect v4 schemas in
packages/domain.Task: todo_w3Y69OzH
Evidence & findings: https://app.obvious.ai/p/ai-dictation-powered-agent-companion-monorepo-BIp9UTWX/parent-home-candidate-b-today-feed-first-prototype-VwaZuiWP
How to Review
packages/home-b/src/store.ts— the behavioral core (raw-before-events, captureId idempotency, review edits, audience controls, append-only lineage, read-only lookups).packages/home-b/src/ui/HomeBDemoApp.tsx— the candidate experience; the persistent composer is the load-bearing UX claim, so check it stays reachable in every state.packages/home-b/src/ui/theme.ts+apps/mobile/App.tsx— candidate-local tokens and the env-guarded mobile wiring (EXPO_PUBLIC_HOME_CANDIDATE=b); the Convex-backed shell path is otherwise untouched.Test Evidence
corepack pnpm turbo run typecheck test build→ 18/18 tasks successful, 0 cached, at pushed HEAD3b4b53b19b9c2c509e8c55f0a83d8bcab39682d8.packages/home-bVitest suite 22/22: mixed-topic capture via both text and simulated-voice paths; pre-publish correction of type/child/time/amount/audience; publish → raw-preserved entry + provenance; post-publish append-only lineage (original intact); read-only lookups never write; fail-closed authorization (non-member sees nothing).tc-1-today-feed.png,tc-2-review-after-send.pngin the evidence artifact.Human author: Gilbert Polanco (gilbertpolanco42@gmail.com)
🔗 Obvious Project · 🧵 Obvious Thread