Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions docs/branch-review-ledger.md
Original file line number Diff line number Diff line change
Expand Up @@ -1052,6 +1052,10 @@ This file is append-only. Never rewrite or delete an existing review record; app

| 2026-07-26 | PR #1246 / `codex/standardize-header-and-footer-behavior` | `de4864ef06626931ecd6bd22b97387f80f529cb2` | Production UI second-failure repair | APPROVE pending final hosted required CI. The first repair exposed a second invalid assumption in the same new test: `/formulation/worry` does not own a fixed phone dock, so geometry used the `-1` missing sentinel. Replaced it with the established submitted Forms result route, explicitly waiting for the dock and unfocused composer before asserting paint and scroll-hide geometry. | Exact focused production Chromium test pass 1/1 (isolated Next build); Prettier, ESLint and `git diff --check` pass; prior hosted run had 290/291 Production UI tests pass with this single invalid-route assertion. |

| 2026-07-26 | PR #1246 / `codex/standardize-header-and-footer-behavior` | `547d3a100c73333895554cf66eb0efd8d8dde8da` | Late unresolved review-thread verification and fix | APPROVE pending final hosted required CI. Confirmed the open P2 despite a bot summary claiming it was fixed: opaque phone `.edge-glass-header` / `.universal-header` still inherited `backdrop-blur-xl`. Added standard and WebKit `backdrop-filter: none` overrides and static/computed-style guards. | Prettier, ESLint and `git diff --check` pass; focused local Vitest/browser reruns blocked by consecutive legitimate shared-lock owners, so hosted Static/Unit/Production UI remain the merge gate. |

| 2026-07-26 | PR #1256 / `codex/pr1246-header-blur-followup` | correction to `547d3a100c73333895554cf66eb0efd8d8dde8da` | CSS prefix contract correction | FIXED. Hosted Unit coverage exposed the repository guard forbidding hand-authored `-webkit-backdrop-filter`; retained the standard `backdrop-filter: none` source rule and removed the duplicate vendor declaration, which the CSS toolchain owns. This supersedes only the prior row's claim that both declarations should be authored. | Targeted `clinical-dashboard-merge-artifacts` and mobile paint contract rerun required; Production UI continued separately. |

| 2026-07-26 | PR #1238 / `cursor/header-hide-top-bar-only-4fd7` | `fdc20bfedb61a2c267c22a3d78ccc8214e6c0087` | Continue-executing: top-bar-only hide + CI green | APPROVE / MERGEABLE. Root cause fixed: collapse wraps only `header#search` (+ Therapy addon); sticky hosts pin outer [top bar \| search] below `chrome-safe-area-top` without translating search away; sticky-stack composers stay `relative`. Services rail overlay hardened (testids + center scrollIntoView); ui-tools accepts sticky ancestor; Therapy nav assert uses collapse-host top under safe-area spacer. Merged main safe-area + submitted-result focus rules. | Hosted PR required + Production UI SUCCESS on tip; contract 14/14; focused Playwright services/desktop composers 6/6, chrome-scroll 12/12, therapy-nav 1/1. No provider-backed checks. |
| 2026-07-26 | PR #1238 / `cursor/header-hide-top-bar-only-4fd7` | head `db4390b3814910d0210497e2982414904f2e0704` / squash `cdbe0e662366f9308813e8d5fe8951ca11a47d6b` | prlanded after squash merge | LANDED. Top-bar-only hide-on-scroll with sticky search stack below `chrome-safe-area-top`; two-dot content diff empty vs `origin/main`. Remote feature branch deleted at merge. Required CI green at merge (PR policy, PR required, Production UI). | `gh pr view` MERGED; `git diff origin/main db4390b3` empty; no provider-backed checks. |
| 2026-07-26 | cursor/formulation-a11y-linear2-14d4 (PR #1250) | head `14b4e80ee41b16a80c974b6a1f8201407a0df05b` / squash `b91b4600171be08198e92bcf19b7d67e8207cb2f` | prlanded after squash merge | LANDED. Formulation disabled-state accessibility (#064) on main; product two-dot diff empty vs pre-merge tip. Superseded conflicted PRs #1219, #1223, #1226, #1231, #1249 closed. Remote feature branch deleted at merge. | Focused Chromium formulation 7/7; verify:cheap 3473 tests; hosted Production UI + PR required SUCCESS; `git diff 14b4e80e origin/main -- formulation-builder-page.tsx ui-formulation.spec.ts` empty. No provider-backed checks. |
1 change: 1 addition & 0 deletions src/app/globals.css
Original file line number Diff line number Diff line change
Expand Up @@ -1385,6 +1385,7 @@ summary::-webkit-details-marker {
.edge-glass-header,
.universal-header {
background: var(--surface);
backdrop-filter: none;
}

.edge-glass-header-backdrop,
Expand Down
2 changes: 1 addition & 1 deletion tests/mobile-chrome-paint-contract.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ describe("mobile chrome paint baseline", () => {
const phoneStyles = globalStylesSource.slice(globalStylesSource.indexOf("@media (max-width: 639px)"));

expect(phoneStyles).toMatch(
/\.edge-glass-header,\s*\n\s*\.universal-header\s*\{\s*\n\s*background: var\(--surface\)/,
/\.edge-glass-header,\s*\n\s*\.universal-header\s*\{[\s\S]*?background: var\(--surface\);[\s\S]*?backdrop-filter: none/,
);
expect(phoneStyles).toMatch(/\.edge-glass-header-backdrop[\s\S]*?display: none/);
expect(phoneStyles).toMatch(/\.answer-footer-search-dock\.answer-footer-search-edge[\s\S]*?bottom: 0;/);
Expand Down
2 changes: 2 additions & 0 deletions tests/ui-phone-scroll.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,7 @@ test("phone chrome has an opaque header, one edge-to-edge footer, and releases b
const dockRect = dock?.getBoundingClientRect();
return {
headerBackground: header ? getComputedStyle(header).backgroundColor : "",
headerBackdropFilter: header ? getComputedStyle(header).backdropFilter : "",
headerBackdropDisplay: headerBackdrop ? getComputedStyle(headerBackdrop).display : "missing",
dockBackdropDisplay: dockBackdrop ? getComputedStyle(dockBackdrop).display : "missing",
dockLeft: dockRect?.left ?? -1,
Expand All @@ -184,6 +185,7 @@ test("phone chrome has an opaque header, one edge-to-edge footer, and releases b
});

expect(visible.headerBackground).toMatch(/^rgb\(/);
expect(visible.headerBackdropFilter).toBe("none");
expect(visible.headerBackdropDisplay).toBe("none");
expect(["missing", "none"]).toContain(visible.dockBackdropDisplay);
expect(visible.dockLeft).toBeCloseTo(0, 0);
Expand Down
Loading