[object Object]

← back to Commercialrealestate

prove authenticated CRCP header runtime

dffa481c3bbab92851cad2943f86369cbc586a3b · 2026-08-30 14:30:34 -0700 · Steve Abrams

Files touched

Diff

commit dffa481c3bbab92851cad2943f86369cbc586a3b
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Sun Aug 30 14:30:34 2026 -0700

    prove authenticated CRCP header runtime
---
 verification/TK-10883-header-runtime-results.json | 646 ++++++++++++++++++++++
 verification/TK-10883-header-runtime.e2e.cjs      |  24 +-
 2 files changed, 666 insertions(+), 4 deletions(-)

diff --git a/verification/TK-10883-header-runtime-results.json b/verification/TK-10883-header-runtime-results.json
new file mode 100644
index 0000000..4f24ce9
--- /dev/null
+++ b/verification/TK-10883-header-runtime-results.json
@@ -0,0 +1,646 @@
+{
+  "ticket": "TK-10883",
+  "generated_at": "2026-08-30T21:30:00.283Z",
+  "scope": "authenticated local Chromium List+Grid header runtime proof",
+  "base": "http://127.0.0.1:9911",
+  "session_value_recorded": false,
+  "matrix": [
+    {
+      "width": 390,
+      "mode": "grid",
+      "pass": true,
+      "checks": {
+        "authenticated_app_rendered": true,
+        "requested_mode_active": true,
+        "title_copy_complete": true,
+        "title_not_truncated": true,
+        "title_text_inside_viewport": true,
+        "menu_title_no_overlap": true,
+        "menu_title_horizontal_gap": true,
+        "responsive_font_size": true,
+        "title_weight_preserved": true,
+        "ghost_menu_preserved": true,
+        "no_global_horizontal_overflow": true,
+        "zero_js_errors": true
+      },
+      "observed": {
+        "viewport": {
+          "width": 390,
+          "document_scroll_width": 390
+        },
+        "text": {
+          "line1": "LA County CRE",
+          "line2": "Investment Explorer"
+        },
+        "rects": {
+          "title": {
+            "left": 191.140625,
+            "top": 12,
+            "right": 505.265625,
+            "bottom": 71.359375,
+            "width": 314.125,
+            "height": 59.359375
+          },
+          "line1": {
+            "left": 191.140625,
+            "top": 12,
+            "right": 505.265625,
+            "bottom": 35.3125,
+            "width": 314.125,
+            "height": 23.3125
+          },
+          "line2": {
+            "left": 191.140625,
+            "top": 36.3125,
+            "right": 505.265625,
+            "bottom": 49.359375,
+            "width": 314.125,
+            "height": 13.046875
+          },
+          "menu": {
+            "left": 10,
+            "top": 10,
+            "right": 57.203125,
+            "bottom": 43,
+            "width": 47.203125,
+            "height": 33
+          }
+        },
+        "text_rects": {
+          "line1": {
+            "left": 191.140625,
+            "top": 10,
+            "right": 346.265625,
+            "bottom": 36,
+            "width": 155.125,
+            "height": 26
+          },
+          "line2": {
+            "left": 191.140625,
+            "top": 35.3125,
+            "right": 314.21875,
+            "bottom": 50.3125,
+            "width": 123.078125,
+            "height": 15
+          }
+        },
+        "title_style": {
+          "font_size": "22px",
+          "font_weight": "800"
+        },
+        "line_overflow": {
+          "line1": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          },
+          "line2": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          }
+        },
+        "menu_style": {
+          "background_color": "rgba(0, 0, 0, 0)",
+          "border_width": "1px"
+        },
+        "active_mode": "grid",
+        "rendered_count": 60
+      },
+      "js_errors": []
+    },
+    {
+      "width": 390,
+      "mode": "list",
+      "pass": true,
+      "checks": {
+        "authenticated_app_rendered": true,
+        "requested_mode_active": true,
+        "title_copy_complete": true,
+        "title_not_truncated": true,
+        "title_text_inside_viewport": true,
+        "menu_title_no_overlap": true,
+        "menu_title_horizontal_gap": true,
+        "responsive_font_size": true,
+        "title_weight_preserved": true,
+        "ghost_menu_preserved": true,
+        "no_global_horizontal_overflow": true,
+        "zero_js_errors": true
+      },
+      "observed": {
+        "viewport": {
+          "width": 390,
+          "document_scroll_width": 390
+        },
+        "text": {
+          "line1": "LA County CRE",
+          "line2": "Investment Explorer"
+        },
+        "rects": {
+          "title": {
+            "left": 191.140625,
+            "top": 12,
+            "right": 505.265625,
+            "bottom": 71.359375,
+            "width": 314.125,
+            "height": 59.359375
+          },
+          "line1": {
+            "left": 191.140625,
+            "top": 12,
+            "right": 505.265625,
+            "bottom": 35.3125,
+            "width": 314.125,
+            "height": 23.3125
+          },
+          "line2": {
+            "left": 191.140625,
+            "top": 36.3125,
+            "right": 505.265625,
+            "bottom": 49.359375,
+            "width": 314.125,
+            "height": 13.046875
+          },
+          "menu": {
+            "left": 10,
+            "top": 10,
+            "right": 57.203125,
+            "bottom": 43,
+            "width": 47.203125,
+            "height": 33
+          }
+        },
+        "text_rects": {
+          "line1": {
+            "left": 191.140625,
+            "top": 10,
+            "right": 346.265625,
+            "bottom": 36,
+            "width": 155.125,
+            "height": 26
+          },
+          "line2": {
+            "left": 191.140625,
+            "top": 35.3125,
+            "right": 314.21875,
+            "bottom": 50.3125,
+            "width": 123.078125,
+            "height": 15
+          }
+        },
+        "title_style": {
+          "font_size": "22px",
+          "font_weight": "800"
+        },
+        "line_overflow": {
+          "line1": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          },
+          "line2": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          }
+        },
+        "menu_style": {
+          "background_color": "rgba(0, 0, 0, 0)",
+          "border_width": "1px"
+        },
+        "active_mode": "list",
+        "rendered_count": 200
+      },
+      "js_errors": []
+    },
+    {
+      "width": 1000,
+      "mode": "grid",
+      "pass": true,
+      "checks": {
+        "authenticated_app_rendered": true,
+        "requested_mode_active": true,
+        "title_copy_complete": true,
+        "title_not_truncated": true,
+        "title_text_inside_viewport": true,
+        "menu_title_no_overlap": true,
+        "menu_title_horizontal_gap": true,
+        "responsive_font_size": true,
+        "title_weight_preserved": true,
+        "ghost_menu_preserved": true,
+        "no_global_horizontal_overflow": true,
+        "zero_js_errors": true
+      },
+      "observed": {
+        "viewport": {
+          "width": 1000,
+          "document_scroll_width": 1000
+        },
+        "text": {
+          "line1": "LA County CRE",
+          "line2": "Investment Explorer"
+        },
+        "rects": {
+          "title": {
+            "left": 119,
+            "top": 12,
+            "right": 433.125,
+            "bottom": 81.296875,
+            "width": 314.125,
+            "height": 69.296875
+          },
+          "line1": {
+            "left": 119,
+            "top": 12,
+            "right": 433.125,
+            "bottom": 41.671875,
+            "width": 314.125,
+            "height": 29.671875
+          },
+          "line2": {
+            "left": 119,
+            "top": 42.671875,
+            "right": 433.125,
+            "bottom": 59.296875,
+            "width": 314.125,
+            "height": 16.625
+          },
+          "menu": {
+            "left": 10,
+            "top": 10,
+            "right": 96.421875,
+            "bottom": 43,
+            "width": 86.421875,
+            "height": 33
+          }
+        },
+        "text_rects": {
+          "line1": {
+            "left": 119,
+            "top": 10,
+            "right": 318.140625,
+            "bottom": 43,
+            "width": 199.140625,
+            "height": 33
+          },
+          "line2": {
+            "left": 119,
+            "top": 41.671875,
+            "right": 270.234375,
+            "bottom": 59.671875,
+            "width": 151.234375,
+            "height": 18
+          }
+        },
+        "title_style": {
+          "font_size": "28px",
+          "font_weight": "800"
+        },
+        "line_overflow": {
+          "line1": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          },
+          "line2": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          }
+        },
+        "menu_style": {
+          "background_color": "rgba(0, 0, 0, 0)",
+          "border_width": "1px"
+        },
+        "active_mode": "grid",
+        "rendered_count": 60
+      },
+      "js_errors": []
+    },
+    {
+      "width": 1000,
+      "mode": "list",
+      "pass": true,
+      "checks": {
+        "authenticated_app_rendered": true,
+        "requested_mode_active": true,
+        "title_copy_complete": true,
+        "title_not_truncated": true,
+        "title_text_inside_viewport": true,
+        "menu_title_no_overlap": true,
+        "menu_title_horizontal_gap": true,
+        "responsive_font_size": true,
+        "title_weight_preserved": true,
+        "ghost_menu_preserved": true,
+        "no_global_horizontal_overflow": true,
+        "zero_js_errors": true
+      },
+      "observed": {
+        "viewport": {
+          "width": 1000,
+          "document_scroll_width": 1000
+        },
+        "text": {
+          "line1": "LA County CRE",
+          "line2": "Investment Explorer"
+        },
+        "rects": {
+          "title": {
+            "left": 119,
+            "top": 12,
+            "right": 433.125,
+            "bottom": 81.296875,
+            "width": 314.125,
+            "height": 69.296875
+          },
+          "line1": {
+            "left": 119,
+            "top": 12,
+            "right": 433.125,
+            "bottom": 41.671875,
+            "width": 314.125,
+            "height": 29.671875
+          },
+          "line2": {
+            "left": 119,
+            "top": 42.671875,
+            "right": 433.125,
+            "bottom": 59.296875,
+            "width": 314.125,
+            "height": 16.625
+          },
+          "menu": {
+            "left": 10,
+            "top": 10,
+            "right": 96.421875,
+            "bottom": 43,
+            "width": 86.421875,
+            "height": 33
+          }
+        },
+        "text_rects": {
+          "line1": {
+            "left": 119,
+            "top": 10,
+            "right": 318.140625,
+            "bottom": 43,
+            "width": 199.140625,
+            "height": 33
+          },
+          "line2": {
+            "left": 119,
+            "top": 41.671875,
+            "right": 270.234375,
+            "bottom": 59.671875,
+            "width": 151.234375,
+            "height": 18
+          }
+        },
+        "title_style": {
+          "font_size": "28px",
+          "font_weight": "800"
+        },
+        "line_overflow": {
+          "line1": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          },
+          "line2": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          }
+        },
+        "menu_style": {
+          "background_color": "rgba(0, 0, 0, 0)",
+          "border_width": "1px"
+        },
+        "active_mode": "list",
+        "rendered_count": 200
+      },
+      "js_errors": []
+    },
+    {
+      "width": 1280,
+      "mode": "grid",
+      "pass": true,
+      "checks": {
+        "authenticated_app_rendered": true,
+        "requested_mode_active": true,
+        "title_copy_complete": true,
+        "title_not_truncated": true,
+        "title_text_inside_viewport": true,
+        "menu_title_no_overlap": true,
+        "menu_title_horizontal_gap": true,
+        "responsive_font_size": true,
+        "title_weight_preserved": true,
+        "ghost_menu_preserved": true,
+        "no_global_horizontal_overflow": true,
+        "zero_js_errors": true
+      },
+      "observed": {
+        "viewport": {
+          "width": 1280,
+          "document_scroll_width": 1280
+        },
+        "text": {
+          "line1": "LA County CRE",
+          "line2": "Investment Explorer"
+        },
+        "rects": {
+          "title": {
+            "left": 119,
+            "top": 12,
+            "right": 433.125,
+            "bottom": 91.21875,
+            "width": 314.125,
+            "height": 79.21875
+          },
+          "line1": {
+            "left": 119,
+            "top": 12,
+            "right": 433.125,
+            "bottom": 48.03125,
+            "width": 314.125,
+            "height": 36.03125
+          },
+          "line2": {
+            "left": 119,
+            "top": 49.03125,
+            "right": 433.125,
+            "bottom": 69.21875,
+            "width": 314.125,
+            "height": 20.1875
+          },
+          "menu": {
+            "left": 10,
+            "top": 10,
+            "right": 96.421875,
+            "bottom": 43,
+            "width": 86.421875,
+            "height": 33
+          }
+        },
+        "text_rects": {
+          "line1": {
+            "left": 119,
+            "top": 10,
+            "right": 360.390625,
+            "bottom": 50,
+            "width": 241.390625,
+            "height": 40
+          },
+          "line2": {
+            "left": 119,
+            "top": 48.03125,
+            "right": 298.4375,
+            "bottom": 70.03125,
+            "width": 179.4375,
+            "height": 22
+          }
+        },
+        "title_style": {
+          "font_size": "34px",
+          "font_weight": "800"
+        },
+        "line_overflow": {
+          "line1": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          },
+          "line2": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          }
+        },
+        "menu_style": {
+          "background_color": "rgba(0, 0, 0, 0)",
+          "border_width": "1px"
+        },
+        "active_mode": "grid",
+        "rendered_count": 60
+      },
+      "js_errors": []
+    },
+    {
+      "width": 1280,
+      "mode": "list",
+      "pass": true,
+      "checks": {
+        "authenticated_app_rendered": true,
+        "requested_mode_active": true,
+        "title_copy_complete": true,
+        "title_not_truncated": true,
+        "title_text_inside_viewport": true,
+        "menu_title_no_overlap": true,
+        "menu_title_horizontal_gap": true,
+        "responsive_font_size": true,
+        "title_weight_preserved": true,
+        "ghost_menu_preserved": true,
+        "no_global_horizontal_overflow": true,
+        "zero_js_errors": true
+      },
+      "observed": {
+        "viewport": {
+          "width": 1280,
+          "document_scroll_width": 1280
+        },
+        "text": {
+          "line1": "LA County CRE",
+          "line2": "Investment Explorer"
+        },
+        "rects": {
+          "title": {
+            "left": 119,
+            "top": 12,
+            "right": 433.125,
+            "bottom": 91.21875,
+            "width": 314.125,
+            "height": 79.21875
+          },
+          "line1": {
+            "left": 119,
+            "top": 12,
+            "right": 433.125,
+            "bottom": 48.03125,
+            "width": 314.125,
+            "height": 36.03125
+          },
+          "line2": {
+            "left": 119,
+            "top": 49.03125,
+            "right": 433.125,
+            "bottom": 69.21875,
+            "width": 314.125,
+            "height": 20.1875
+          },
+          "menu": {
+            "left": 10,
+            "top": 10,
+            "right": 96.421875,
+            "bottom": 43,
+            "width": 86.421875,
+            "height": 33
+          }
+        },
+        "text_rects": {
+          "line1": {
+            "left": 119,
+            "top": 10,
+            "right": 360.390625,
+            "bottom": 50,
+            "width": 241.390625,
+            "height": 40
+          },
+          "line2": {
+            "left": 119,
+            "top": 48.03125,
+            "right": 298.4375,
+            "bottom": 70.03125,
+            "width": 179.4375,
+            "height": 22
+          }
+        },
+        "title_style": {
+          "font_size": "34px",
+          "font_weight": "800"
+        },
+        "line_overflow": {
+          "line1": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          },
+          "line2": {
+            "overflow": "visible",
+            "text_overflow": "clip",
+            "scroll_width": 314,
+            "client_width": 314
+          }
+        },
+        "menu_style": {
+          "background_color": "rgba(0, 0, 0, 0)",
+          "border_width": "1px"
+        },
+        "active_mode": "list",
+        "rendered_count": 200
+      },
+      "js_errors": []
+    }
+  ],
+  "verdict": "PASS"
+}
diff --git a/verification/TK-10883-header-runtime.e2e.cjs b/verification/TK-10883-header-runtime.e2e.cjs
index 8c4a1e5..e99d286 100644
--- a/verification/TK-10883-header-runtime.e2e.cjs
+++ b/verification/TK-10883-header-runtime.e2e.cjs
@@ -33,13 +33,17 @@ const intersects = (a, b) => !(
     matrix: [],
     verdict: 'FAIL'
   };
-  const browser = await chromium.launch({ headless: true });
+  // Use the installed system Chrome: the legacy Playwright.app wrapper is not compatible
+  // with this macOS version, while Playwright can safely drive Chrome's real binary.
+  const browser = await chromium.launch({ channel: 'chrome', headless: true, timeout: 15000 });
   try {
     for (const width of widths) {
       for (const mode of modes) {
         const context = await browser.newContext({ viewport: { width, height: 900 } });
         await context.addCookies([{ name: 'crcp_sid', value: sid, url: base }]);
         const page = await context.newPage();
+        page.setDefaultTimeout(15000);
+        console.log(`RUN  ${width}px ${mode}`);
         const jsErrors = [];
         page.on('pageerror', error => jsErrors.push(`pageerror: ${error.message}`));
         page.on('console', msg => {
@@ -57,7 +61,7 @@ const intersects = (a, b) => !(
           if (!active || !active.classList.contains('active')) return false;
           return expected === 'grid'
             ? document.querySelectorAll('#grid .card').length > 0
-            : document.querySelectorAll('#grid .compactrow').length > 0;
+            : document.querySelectorAll('#grid .crow').length > 0;
         }, mode);
         await page.waitForTimeout(500);
 
@@ -66,6 +70,15 @@ const intersects = (a, b) => !(
             const r = el.getBoundingClientRect();
             return { left: r.left, top: r.top, right: r.right, bottom: r.bottom, width: r.width, height: r.height };
           };
+          // Flex items stretch to the title container's cross-size, which is not the
+          // rendered text width. A DOM Range measures the actual glyph run and catches
+          // real viewport clipping without false-failing on the intentionally scrollable nav.
+          const textRect = el => {
+            const range = document.createRange();
+            range.selectNodeContents(el);
+            const r = range.getBoundingClientRect();
+            return { left: r.left, top: r.top, right: r.right, bottom: r.bottom, width: r.width, height: r.height };
+          };
           const title = document.querySelector('.htitle');
           const h1 = document.querySelector('.htitle h1');
           const line1 = document.querySelector('.htitle .tl1');
@@ -81,6 +94,7 @@ const intersects = (a, b) => !(
             viewport: { width: innerWidth, document_scroll_width: document.documentElement.scrollWidth },
             text: { line1: line1.textContent.trim(), line2: line2.textContent.trim() },
             rects: { title: rect(title), line1: rect(line1), line2: rect(line2), menu: rect(menu) },
+            text_rects: { line1: textRect(line1), line2: textRect(line2) },
             title_style: { font_size: h1Style.fontSize, font_weight: h1Style.fontWeight },
             line_overflow: {
               line1: { overflow: l1Style.overflow, text_overflow: l1Style.textOverflow, scroll_width: line1.scrollWidth, client_width: line1.clientWidth },
@@ -88,7 +102,7 @@ const intersects = (a, b) => !(
             },
             menu_style: { background_color: menuStyle.backgroundColor, border_width: menuStyle.borderWidth },
             active_mode: active && active.dataset.view,
-            rendered_count: grid.querySelectorAll('.card, .compactrow').length
+            rendered_count: grid.querySelectorAll('.card, .crow').length
           };
         });
 
@@ -101,7 +115,9 @@ const intersects = (a, b) => !(
             const x = observed.line_overflow[key];
             return x.overflow === 'visible' && x.text_overflow === 'clip' && x.scroll_width <= x.client_width + 1;
           }),
-          title_inside_viewport: observed.rects.title.left >= 0 && observed.rects.title.right <= width,
+          title_text_inside_viewport: ['line1', 'line2'].every(key =>
+            observed.text_rects[key].left >= 0 && observed.text_rects[key].right <= width
+          ),
           menu_title_no_overlap: !intersects(observed.rects.menu, observed.rects.title),
           menu_title_horizontal_gap: observed.rects.menu.right <= observed.rects.title.left,
           responsive_font_size: observed.title_style.font_size === expectedFont,

← 091a86c afternoon CRE update 2026-08-30  ·  back to Commercialrealestate  ·  auto-data-snapshot: 2026-08-30T15:20:13 (2 data files) — dat 66f5ef8 →