# Bloomie Visual QA Issues

No production UI was changed during Phase 16. Review statuses remain open until a human visual review is completed.

| ID | Screenshot | Severity at discovery | Original finding | Affected screen | Implementation status | Product review | Recommended next action |
|---|---|---|---|---|---|---|---|
| VQA-001 | `accessibility/2x/calendar.png` | High | At 2× text scale, the prediction legend’s horizontal row overflowed to the right, displaying Flutter’s overflow indicator and clipping the legend copy. Phase 16A reproduced a 135-pixel RenderFlex overflow at 412 × 915 using the original deterministic fixture. | Calendar prediction legend | Fixed in code in Phase 16A: flexible label text wraps within each existing legend row. Wording, markers, tokens and semantics are unchanged. | Not reviewed — ready for human visual review; not Approved. | Review regenerated CAL-04, A11Y-05 and CMP-04 in the manifest before product sign-off. |

Phase 16A regression coverage checks both 412 × 915 and 360 × 800 at normal and 2× text scaling, including absence of layout exceptions, complete visible label text, filled/outlined markers and unchanged legend semantics. The Calendar accessibility capture now asserts that no exception occurs instead of suppressing overflow errors. The compact capture includes the prediction legend. Generated PNGs remain ignored.

## Capture-only caveat

`BloomieDestructiveButton` labels may render as Ahem block glyphs in widget-test PNGs because the component provides an inline text style without a font family. Android renders these labels normally. Verify the Period, Check-in and Delete All destructive actions during emulator/device visual QA; do not treat the golden glyph substitution itself as a production defect.

## Human-review issue workflow

Record one concern per issue, using the next unused `VQA-NNN` ID (next currently VQA-002). Include the actual manifest screenshot ID, not only its filename. Keep the original finding when implementation status changes. Do not create fixes automatically.

For VQA-001 the primary screenshot ID is **A11Y-05** (B01), with **CAL-04** and **CMP-04** (B04) as comparison records. Category: Accessibility/layout. Implementation is fixed in code; human visual review remains pending. The original High severity is retained above.

Use this schema for new issues; the empty table is intentional and does not represent a new finding:

| Issue ID | Screenshot ID(s) | Severity | Category | Description | Recommended next action | Status |
|---|---|---|---|---|---|---|
| VQA-002 | TDA-04, CAL-09, A11Y-02 | Low | Copy | Bloomie review.docx p1: replace child-facing observed cycles with logged cycles. | Review updated prediction copy. | Fixed in code — awaiting human visual review |
| VQA-003 | CHK-01–13, A11Y-04, A11Y-10, CMP-03 | High | Agency | Bloomie review.docx p1: separate Normal for me and Not sure, preserving historical ambiguity. | Review new selections and legacy display; see phase17_review.md for evidence semantics. | Fixed in code — awaiting human visual review |
| VQA-004 | DAT-01–07, A11Y-07, CMP-06 | Medium | Copy | Bloomie review.docx p2: explain healthcare-sharing purpose without misrepresenting JSON. | Review copy of Bloomie information wording and retained privacy boundary. | Fixed in code — awaiting human visual review |
| VQA-005 | DAT-03–05, DAT-11 | Medium | Capture tooling | Bloomie review.docx p3: notes-on and selection-summary captures duplicated the same state; ready dialog lacked a summary. | Review actual notes-off/notes-on summaries before sharing, including compact 2x. | Fixed in code — awaiting human visual review |
| VQA-006 | ERR-03, ERR-04, A11Y-11 | Medium | Visual | Bloomie review.docx p4: first-name retry differed because callback was null; Export had the same defect. | Verify working shared retry treatment and retained input. | Fixed in code — awaiting human visual review |
| VQA-007 | PAT-01–13, ERR-06, A11Y-06, CMP-05 | Low | Copy | Bloomie review.docx p5: Bloomie check-in / Does that sound right to you? | Review all eight mappings, teaser, errors and acknowledgements. | Fixed in code — awaiting human visual review |
| VQA-008 | JRN-01, JRN-02, CMP-02 | Low | Copy | Bloomie review.docx p6: rename Journal destination Check-in. | Review navigation, heading and distinction from focused Log today editor. | Fixed in code — awaiting human visual review |
| VQA-009 | PAT-10, PAT-12, PAT-13 | Medium | Agency | Bloomie review.docx p6–7: clarify suppression consequence and remove surveillance-like Yes wording. | Review truthful acknowledgement copy; raw evidence and suppression unchanged. | Fixed in code — awaiting human visual review |
| VQA-010 | PER-02 | Low | Capture tooling | During Phase 17 comparison, the historical picker today marker varied with machine date despite the injected fixture date. | Picker now receives currentDate from the existing today clock; verify stable marker. Production clock behaviour unchanged. | Fixed in code — awaiting human visual review |

Source and implementation detail: [Phase 17 human review record](review/phase17_review.md). All seven pages and embedded screenshots were inspected. These implementation statuses are not human approval.

Severity: Critical / High / Medium / Low. Category: Visual / Copy / Agency / Privacy / Accessibility / Product decision / Capture tooling. Record the severity explicitly; review priority P0/P1/P2 does not assign it automatically.

Status should distinguish **Open**, **Decision required**, **Fixed in code — awaiting human visual review**, and **Closed — human reviewed**. Record reviewer and review date when closing an issue. An Approved draft in the browser never closes an issue or updates the manifest.

Review-note convention: `Screenshot ID | Outcome | Priority | Category | Observation / next action | Reviewer`.
Download tab-only draft notes from the review index, reconcile Rakesh and Seemal's observations, then explicitly update the manifest and this issue register. Preserve unrelated statuses and provisional wording flags.
