mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-24 04:33:17 +00:00
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:
@@ -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."
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user