Verify composed container labels and host context

Record inspected desktop and touch-WebKit phone light/dark evidence for the final fractional CPU, silent-host and shared-column content. Exercise the actual mobile Filters and View controls before flat-row drawer expansion; production container source is unchanged.

Change-source: pulse-maintainer
This commit is contained in:
pulse-triage[bot]
2026-10-05 06:51:02 +01:00
parent ca255a0e3f
commit d358adf7d0
2 changed files with 45 additions and 1 deletions
@@ -5,7 +5,7 @@ const path = require('node:path');
const crypto = require('node:crypto');
const { chromium, webkit } = require('playwright');
const root = '/workspace/frontend-modern';
const output = '/workspace/tmp/docker-composed-20261005-complete';
const output = '/workspace/tmp/docker-composed-20261005-controls';
const origin = 'http://127.0.0.1:5341';
const runtimePath = 'frontend-modern/src/features/docker/DockerContainersTable.tsx';
const expectedHash = '85753788c2e982dcedbab9aed99ff74a1f1623ec35bc7886ab25661e86de2dd9';
@@ -223,6 +223,7 @@ const hash = (file) => crypto.createHash('sha256').update(fs.readFileSync(file))
'Missing host context removes stale/status claims, keeps container engine fallback, fractions and scale guidance.',
);
await activate(page.getByRole('button', { name: 'Restore host context', exact: true }));
if (width < 768) await activate(page.getByRole('button', { name: 'Filters', exact: true }));
await activate(page.getByRole('button', { name: 'View', exact: true }));
await activate(page.getByRole('button', { name: 'List', exact: true }));
await page.keyboard.press('Escape');
@@ -0,0 +1,43 @@
{
"version": 1,
"base_sha": "ca255a0e3f81a8d1588f3e783b7084fc863b37c8",
"verified_at": "2026-10-05T05:44:42.674Z",
"result": "passed",
"changed_paths": [
"frontend-modern/src/features/docker/DockerContainersTable.tsx"
],
"content_sha256": {
"frontend-modern/src/features/docker/DockerContainersTable.tsx": "85753788c2e982dcedbab9aed99ff74a1f1623ec35bc7886ab25661e86de2dd9"
},
"routes": [
"/browser-tests/docker-composed.html (production DockerContainersTable and ResourceDetailDrawer)"
],
"viewports": [
{
"width": 1440,
"height": 900
},
{
"width": 390,
"height": 844
}
],
"states": [
"Four Chromium desktop / touch WebKit emulated-phone light/dark cases; Playwright 1.56.1 matches integration lock. All 12 captures independently hash-matched and visually inspected.",
"Combined small-positive/zero/tiny-positive CPU labels with silent-host/shared-column presentation. Available and missing host context; grouped and flat layout preserve labels and total-host-capacity guidance.",
"Real drawer expansion/collapse uses trusted keyboard desktop and tap phone input. View selection follows actual mobile Filters disclosure. No unexpected errors, off-origin requests or operation requests."
],
"interactions": [
"Toggle host context and restore it; verify host status and engine fallback separately.",
"Open real View disclosure (phone Filters first), select List, expand and collapse small-positive container; inspect real drawer scale explanation."
],
"proof": {
"script": "frontend-modern/browser-tests/docker-composed.cjs",
"script_sha256": "7529007d411f8d40bda969e2b43470779077c263e704aba43ecba34fc21467e8",
"checks": 12,
"screenshots": 12,
"browser_closed": true,
"server_closed": true,
"limits": "Production table, drawer and CSS with selected synthetic resources/APIs. Emulated phone, not a native phone. No collector, engine, threshold duration, notification, installed or release acceptance."
}
}