# Next Session: v2 Perspectives HTML — Bug Fixes & Polish

## Context
The v2 perspectives HTML (`docs/perspectives-vlm-primary-hybrid-nav-v2.html`, 450KB, 26 lenses) was assembled in session 98. QA passed the major items (rendering, theme toggle, click-to-reveal, SVG radar, scatter plot). Post-QA corrections applied: camera-on-Pi WiFi path (9 fixes), VRAM 8→16GB (12 fixes), hardware name hallucinations (4 fixes), Panda-placement hallucinations (3 fixes, 2026-04-14: lines 267/355/1505 — Panda incorrectly placed "on the robot" / "co-located with camera" / given 4GB VRAM instead of 16GB). This session addresses remaining bugs.

## Bug List

### Bug 1: 14 Think Boxes Missing "Click to reveal" Hint
**Severity:** Medium — boxes work (click toggles answer), but user doesn't know to click.
**Lenses affected:** 05, 06, 07, 08, 09, 10, 11, 12, 14, 20, 21, 22, 24, 26
**Root cause:** Those agents didn't include `<p class="think-hint">Click to reveal</p>` in their think boxes.
**Fix:** For each affected lens, find the `<div class="think">` block and add `<p class="think-hint">Click to reveal</p>` after the `<div class="think-answer">...</div>` block (before the closing `</div>` of the think container). The CSS already hides the hint when `.revealed` is active: `.think.revealed .think-hint{display:none}`.

### Bug 2: Lens 07 Div Mismatch
**Severity:** Low-Medium — may cause layout shift after lens 07.
**Details:** 22 `<div` opens vs 23 `</div>` closes inside the lens-07 section. One extra `</div>`.
**Fix:** Read `docs/.perspectives-build/lens-07.html`, find the extra `</div>`, remove it. Then re-inject into the assembled v2 HTML (or just fix the v2 HTML directly by searching inside the lens-07 section).

### Bug 3: Synthesis Section Still Uses Scaffold Content
**Severity:** High — the synthesis is the most valuable part and it's still shallow.
**Details:** The assembly script replaced all 26 lens sections but left the synthesis section unchanged (from the scaffold). It has 5 convergence points but they're the shallow scaffold versions, not enriched from the 24 crosslens files.
**Fix:**
1. Read all `docs/.perspectives-build/lens-*-crosslens.txt` files (24 available)
2. Identify themes that appear across 3+ lenses (cluster the cross-lens notes)
3. Rewrite the synthesis section (`<section class="synthesis" id="synthesis">`) with deeper convergence points backed by specific lens findings
4. Should have 8-12 convergence points instead of the current 5
5. Each convergence should cite specific lens numbers AND specific findings from those lenses

The 12 convergence themes identified in session 96 (listed in NEXT-SESSION-PERSPECTIVES-ASSEMBLY.md) are a good starting framework:
1. WiFi is the Achilles' heel (04, 10, 13, 25)
2. Multi-query pipeline = highest-value lowest-risk (01, 17, 18, 23)
3. Semantic map + voice = killer app (06, 16, 20, 21)
4. Glass door problem unsolved (10, 11, 12, 13)
5. Transfer potential massive (05, 17, 19)
6. Research describes Waymo then does opposite (14)
7. Last 40% costs 10x hardware (15)
8. Build map to remember, not navigate (16)
9. Voice-to-ESTOP gap (21)
10. Bypass text-language layer (26)
11. 3 neuroscience mechanisms untried (08)
12. 18-gap ghost inventory (24)

### Bug 4: Bar Fill Animation Pre-Triggered
**Severity:** Low — cosmetic. Bars show full on page load instead of animating on scroll.
**Details:** Bar fills in lenses 04, 17, 19, 23 have `class="bar-fill animated"` pre-applied. The scaffold JS uses IntersectionObserver to add the `animated` class on scroll. But the agents wrote the class inline.
**Fix:** Remove the `animated` class from all `bar-fill` elements. The IntersectionObserver in the `<script>` block will add it when the user scrolls to each bar section:
```
.bar-fill.animated { width: var(--bar-pct); }
```
Without `animated`, bars start at `width: 0` and animate to full when scrolled into view.

### Bug 5: Version Nav in v2 Hero May Need Timestamp Update
**Severity:** Low — cosmetic.
**Details:** The assembly script updated the hero meta timestamp but the version nav box may still show the scaffold's original timestamp.
**Fix:** Verify the version nav shows current date. If not, update:
```html
<span>Version 2 — 2026-04-14 IST</span>
```

## Files

| File | Purpose |
|------|---------|
| `docs/perspectives-vlm-primary-hybrid-nav-v2.html` | The v2 HTML to fix (450KB) |
| `docs/.perspectives-build/lens-*.html` | Source lens files (if re-injection needed) |
| `docs/.perspectives-build/lens-*-crosslens.txt` | Cross-lens notes (24 files, for synthesis enrichment) |
| `docs/.perspectives-build/assemble.py` | Assembly script (for reference) |

## Priority Order
1. **Bug 3** (synthesis enrichment) — highest impact, most valuable section
2. **Bug 1** (think-hint) — easy batch fix, improves UX
3. **Bug 4** (bar animation) — easy regex fix
4. **Bug 2** (div mismatch) — needs careful HTML inspection
5. **Bug 5** (timestamp) — trivial check

## After Fixes
1. Re-test in browser (Playwright: `python3 -m http.server 9876` from `docs/` dir)
2. Verify click-to-reveal on a previously-hintless think box
3. Verify bar animation triggers on scroll (not pre-loaded)
4. Verify synthesis section has 8+ convergence points
5. Check lens-07 layout for no extra spacing
