Add People hub, Phase 5 junk reject, cluster-name, a11y smoke.
CI / skip-ci-check (pull_request) Successful in 30s
CI / python-lint (pull_request) Successful in 32s
CI / docker-ci (pull_request) Successful in 31s
CI / secret-scan (pull_request) Successful in 39s
CI / viewer-unit (pull_request) Successful in 1m44s
CI / admin-unit (pull_request) Successful in 2m1s
CI / e2e (pull_request) Failing after 2m2s

Nest Identify/Auto-Match/Modify under /people with redirects; reject
blur/extreme pose at Process; Name-cluster on Identify; axe smoke tests;
helpers to rotate DEV admin password and seed match_decisions.
This commit is contained in:
2026-08-05 14:24:28 -04:00
parent eb2c73a757
commit e8c13f86d7
18 changed files with 586 additions and 31 deletions
+30
View File
@@ -0,0 +1,30 @@
import AxeBuilder from '@axe-core/playwright';
import { test, expect } from '../fixtures';
import { DEFAULT_ADMIN_BASE_URL } from '../env-defaults';
/**
* Lightweight a11y smoke — critical violations only (axe impact: critical|serious).
* Does not block on moderate/minor noise.
*/
test.describe('a11y smoke @smoke', () => {
test('viewer home has no critical axe violations', async ({ page }) => {
await page.goto('/');
await expect(page.getByRole('link', { name: /skip to main content/i })).toBeAttached();
const results = await new AxeBuilder({ page })
.withTags(['wcag2a', 'wcag2aa'])
.analyze();
const bad = results.violations.filter((v) => v.impact === 'critical' || v.impact === 'serious');
expect(bad, JSON.stringify(bad, null, 2)).toEqual([]);
});
test('admin login has no critical axe violations', async ({ page }) => {
const adminBaseUrl = process.env.PLAYKIT_ADMIN_BASE_URL || DEFAULT_ADMIN_BASE_URL;
await page.goto(`${adminBaseUrl}/login`);
await expect(page.getByRole('button', { name: /sign in/i })).toBeVisible({ timeout: 20_000 });
const results = await new AxeBuilder({ page })
.withTags(['wcag2a', 'wcag2aa'])
.analyze();
const bad = results.violations.filter((v) => v.impact === 'critical' || v.impact === 'serious');
expect(bad, JSON.stringify(bad, null, 2)).toEqual([]);
});
});