Skip to content

Scan-theater feel prototype for the AI-primitive OBD reader direction - #5

Draft
DigitalVeer wants to merge 3 commits into
mainfrom
claude/car-copilot-strategy-men7z1
Draft

Scan-theater feel prototype for the AI-primitive OBD reader direction#5
DigitalVeer wants to merge 3 commits into
mainfrom
claude/car-copilot-strategy-men7z1

Conversation

@DigitalVeer

Copy link
Copy Markdown
Owner

What this is

A self-contained, framework-neutral HTML feel-prototype (prototypes/scan_theater.html) of the proposed "Car Copilot Scan" direction — a trustworthy OBD scan primitive narrated by an always-present AI. It is a design artifact, not production code: all data is mocked, there is no backend and no adapter. It exists to answer one product question before any stack is chosen — "does this feel AI-native, or just a nicer FIXD?" — and to serve as the design spec for whichever cross-platform stack the Phase-0 spike selects.

Open the file in a browser (works on a phone). Pick a scenario (top-left), toggle Owner/Buyer/Seller modes, tap "Ask about this scan," and flip "show how it stays safe" to expose the Claim Ledger under every sentence.

What it demonstrates

  • Persistent "Copilot Line" that narrates each scan state — deterministic strings, no model call on the always-on path — including the narrowing/hedging verdict effect as evidence arrives.
  • Claim Ledger as the spine: every user-visible sentence is a typed Claim (observed / decoded / inferred / not_checked / risk / next_action) carrying source, confidence, raw-byte evidence, and fixed-wording vs AI-phrased (modelEditable). The AI only rewrites approved claims; it never owns facts, safety, or scope.
  • Three-axis verdict — mechanical risk / scan status / buyer risk — instead of a single severity number.
  • Scoped honesty as a spoken claim, never a footer; no "clean car" / "safe to drive"; scoped-clear renders teal, never pass-green.
  • Readiness-monitor "recently cleared" hero moment (buyer scenario 3): no codes but self-tests not ready → buyer risk: recent clear?.
  • Live-data emergency override with the AI visibly suppressed (scenario 4): fixed safety copy the model is not allowed to write.
  • Owner / Buyer / Seller stances over one engine; bounded tap-only follow-ups composed from claims; report = serialized claim ledger with a "what this scan did NOT check" section.

Scope / status

  • Adds one file under a new prototypes/ directory; touches nothing in app/ and no existing reference material.
  • Feel-only: it proves cadence and the safety/scope model, not real OBD function. The truth harness (real iPhone + real clone adapter on a real car) and the ScanSnapshot → ClaimBuilder → Verdict → narration data contract are the next steps.

🤖 Generated with Claude Code


Generated by Claude Code

claude added 3 commits June 30, 2026 17:57
Self-contained, framework-neutral HTML prototype of the "Car Copilot Scan"
direction — a trustworthy OBD scan primitive narrated by an always-present AI.
Mocked data, no adapter/backend; the question it answers is "does this feel
AI-native, or just a nicer FIXD?"

Demonstrates the converged design:
- Persistent deterministic "Copilot Line" narrating each scan state (no model
  call on the always-on path) + the narrowing/hedging verdict effect.
- Claim Ledger as the spine: every user-visible sentence is a typed Claim
  (observed/decoded/inferred/not_checked/risk/next_action) with source,
  confidence, evidence, and fixed-wording vs AI-phrased (modelEditable). Toggle
  "show how it stays safe" to expose it. The AI rewrites approved claims; it
  never owns facts, safety, or scope.
- Three-axis verdict (mechanical risk / scan status / buyer risk) instead of a
  single severity number.
- Scoped honesty as a spoken claim, never a footer; no "clean car"/"safe to
  drive"; scoped-clear is teal, never pass-green.
- Readiness-monitor "recently cleared" hero moment (buyer scenario 3).
- Live-data emergency override with the AI visibly suppressed (scenario 4).
- Owner/Buyer/Seller modes over one engine; bounded tap-only follow-ups
  composed from claims; report = serialized claim ledger.

Design spec for whichever cross-platform stack the Phase-0 spike selects.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YLTKkoZLyaRfxcdkcqXURc
Adds AI legibility + presence on top of the trust scaffolding:
- Dominant Copilot hero with emotional avatar states (connecting/
  investigating/found/suspicious/emergency/clear) + live status chip.
- "Working thought" card: I'm checking / current read / why it matters.
- Beat-driven narration with interruptions ("Hold on." / "Stop.") and a
  held pause for drama; scenario 1 rewritten as a narrowing detective story.
- One bounded tap-question per scenario with adaptive replies.
- Consumer-reframed provenance: "Why I'm saying this" → plain reason →
  "technical details" (raw bytes); dev metadata hidden by default.
- "Safety mode · fixed rule" instead of "AI suppressed".
- Warm relief copy on the clean scan; "My read" sentence atop the 3-axis
  verdict; per-mode voice (calm/skeptical/transparent); a memory beat;
  report framed as something the Copilot made for you.

Demo-only inspector toggle expands all rationale + bytes at once.
Reverses the scan-theater "show the AI thinking" direction. Adopts the
original CAR·COPILOT result-card hierarchy: one screen, one answer, evidence
one tap away.

Four visible layers only:
  1. Verdict headline (color-coded, one-glance)
  2. Friend-voice explanation (one short paragraph)
  3. Practical meta/action row (cost·time·difficulty or a status tag) + CTAs
  4. Collapsed drawers: Why I'm saying this / Evidence for a mechanic
     (raw bytes nested) / What this scan did not check

The AI is present as WORK PRODUCT, not theater: CTAs compose the fix steps,
the mechanic message, the seller questions, the buyer report. No thinking
card, no scan pips, no avatar moods, no per-claim machinery on the surface,
no "AI suppressed" — the emergency is simply decisive ("Pull over now").

The Claim Ledger remains the grounding contract but is hidden behind a
debug toggle ("data contract underneath"), per: the AI is present in the
quality of the answer, not in a visible thought process.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants