Add enterprise appliance experience Phase 1 foundation

This commit is contained in:
Jino Jose committed 2026-07-12 12:13:23 +05:30
1 parent b3eec34158
commit ebaa2e7219
69 files changed
+6832 -18

No files matched your search

+16
View File
@@ -0,0 +1,16 @@
# Browser Journey and Accessibility Tests
Browser tests MUST run against a disposable local or appliance target, never a production customer.
Required coverage:
- supported desktop browser viewport plus 200% zoom/reflow;
- keyboard-only primary and failure/recovery journeys;
- visible focus, logical order, accessible names, headings and landmarks;
- dynamic status, progress, validation and completion announcements;
- loading, empty, ready, degraded, failed, restricted, unavailable and stale states;
- 1-second navigation feedback and 2-second operation acknowledgement trials;
- screenshots and machine-readable results stored outside source control.
The final browser runner and dependency versions MUST be pinned when implementation selects them.
Automated accessibility results never replace the manual WCAG 2.2 AA checklist.
+26
View File
@@ -0,0 +1,26 @@
from pathlib import Path
ROOT = Path(__file__).resolve().parents[2]
WEB_SETUP = ROOT / "autoinstall/websetup/server.py"
def test_web_setup_exposes_validation_and_customer_facing_license_labels():
source = WEB_SETUP.read_text()
assert "validate_static_network" in source
assert "LICENSE_STATUS_LABELS" in source
assert "Invalid signature — re-upload a valid signed license" in source
def test_phase1_contract_requires_durable_progress_not_only_process_memory():
source = WEB_SETUP.read_text()
# This test intentionally fails until T026 replaces process-local-only state.
assert "INSTALL_OPERATION_JSON" in source
assert "idempotency_key" in source
assert "operation_id" in source
def test_setup_acknowledgement_contract_is_explicit():
source = WEB_SETUP.read_text()
assert "acknowledged_at" in source
assert "duplicate_request" in source