c-ashud-asga-collector-dbahu-nqwi-af

My profile and adaptive Find someone

Approved scope: the October 22, 2026 owner-profile/onboarding/quiz prompt and supplied Find someone reference. This is the implementation and preservation record for the active follow-on scope.

Before-change inventory and destinations

Existing data/action Preserved destination / integration
Invited password sign-in, verified Auth identity, active beta membership Existing authentication retained. New provisioned accounts complete profile setup on their first approved sign-in; public registration remains disabled. Existing accounts receive a nonblocking invitation.
Header email and Sign out Far-right account/avatar menu; My profile, Account settings and the existing Sign out action.
Global appearance/automation/cost preferences Existing Settings store and routes; Account settings opens it.
Saved contacts, names/aliases, photos, methods, About, locations and optional identity Existing Contacts folder browser, editors and expanded profiles. Owner profile is a separate account-bound record, never a contact or duplicate candidate.
Current/former/unknown affiliations, partial dates, archived entries and history Existing contact sections remain; owner profile reuses their validated entry and edit patterns with its own private storage/history.
Appearance, manual voice, exact height/ranges, pending/rejected photo suggestions Existing records and review states retained. Quiz evidence uses allowed confirmed/manual facts only. Owner identity stays profile-only.
Original notes, source-linked Unreviewed summaries, encounters, groups, relationships, imports/custom/combined history Existing contact/profile/review surfaces, including the compact recognition card; no migration into About or owner data.
Sentence search, scope, any/all groups, clue removal, candidate gallery, rejection/recovery Retained around the new question panel. Versioned quiz history coordinates scope/query, answers and skips; Prev. replaces ambiguous independent undo counters.
Earlier appearance-weighted question selector and many small option buttons Superseded by the approved common-first/balanced catalogue and two or three full-area blue buttons. Unknown/uncertainty remain internal, not answer categories.

Consequential implementation decisions

Implemented files and boundaries

Question and evidence policy

Each question records its field/operator/values, display text, immutable choices, source-evidence policy and any resolved owner anchor/revision. COMMON selects greatest known Yes count, then coverage, lower expected remaining, familiar owner wording and stable ID. BALANCED minimizes U + sum(ni²)/K, treats scores within 1e-9 as equal, then prefers fewer choices, coverage, familiar wording and stable ID. The named switch policy is 20% improvement after a substantive answer; skipping alone does not advance a stage. Once balanced, it stays balanced forward; Prev restores the historical mode.

Known incompatible answers leave the active branch, while unknowns stay neutral and eligible. Tolerant sentence scores are retained, without introducing a hard text cutoff. A deliberately broadened search includes incompatible records with an explicit label. Original contact facts are never changed by recognition answers.

Single-valued appearance requires one allowed confirmed/nonconflicting value. Voice descriptors can overlap and use binary inclusion only; absent tags remain unknown unless the list is explicitly complete. Organization comparisons retain kind and current/former status, multiple anchors and exact normalized/established-alias equality. Partial or unknown-time lists cannot prove nonmembership. Owner identity, About, prose, appearance and interests do not enter owner comparison facts. Existing contact identity-exclusion projections/source-review rules remain intact.

Categorical questions cover all reliable categories in the current pool and have two or three actual choices. Their meanings remain fixed in history; newly broadened records outside those historical categories remain unknown rather than being assigned a false answer. Inverse/equivalent partitions in the same field cannot evade Skip. Generic unstructured meeting/role prose remains available to sentence search and profiles; it is not treated as an exhaustive categorical fact.

Snapshots are account-bound in-memory search state. Opening tabs, profiles, Settings or the account menu preserves progress. Reloading begins a new search; owner edits and setup progress remain persistent in the database. A changed contact/group/owner revision shows an explicit updated-details restart. Query/scope changes replay the current answer prefix against the frozen evidence. Start over retains visible description/groups; Broaden search visibly relaxes groups/rejections/answer filtering and keeps history. Saved photo review and cue source links remain in existing recognition/profile views.

Setup, verification and limits

Use the existing local setup in README. For an existing database run npx supabase migration up --local; do not reset it. This task applied 018–019 locally. The current production preview runs with CONTACT_RECALL_DIST_DIR=.next-owner-quiz APP_ORIGIN=http://127.0.0.1:3002 npm run start -- --port 3002.

Executed results: 111 unit checks, 65 local backend checks and 31 Chromium browser checks passed, along with type checking, lint and the production build. The optional WebKit run could not start a page because of an installed-runtime protocol mismatch; Firefox and hosted deployment were not verified. Details and initial test failures are in BUILD_STATUS. All fixtures are disposable, synthetic, ownership-isolated and cleaned up. Browser screenshots cover the approved common/three-choice layouts, owner profile and narrow dark/compact rendering. Additional passing interaction runs exercised text and two blank areas of every answer rectangle, and the one-candidate recognition suggestion with Prev. recovery. No live paid calls or external synchronization were performed.

Invite provisioning remains operator-managed, with profile setup on first approved sign-in rather than public registration. Canonical owner profiles have no public route and no contact-export path. Account deletion/export infrastructure, OAuth, notifications, integrations, recording and social discovery remain outside scope. The 20% threshold is an initial deterministic heuristic, not proof of optimal identification. Existing conservative English-language identity filtering in unstructured contact prose is retained; this work adds no semantic classifier or broader language claims. Owner history is paged from the database but currently rendered on demand as a whole list; very large histories may warrant incremental UI pagination later.