- sdlc-diagram.md: remove double blank line (MD012) - sdlc/SKILL.md: add 'text' lang to fenced code blocks (MD040, 2 instances) - uat/SKILL.md: add trailing newline (MD047) These pre-existing issues were present on main and caused CI to fail on any incoming PR. Co-Authored-By: Paperclip <noreply@paperclip.ing>
3.2 KiB
name, description
| name | description |
|---|---|
| uat | Functional UAT procedures for Privileged Escalation Headlamp plugins. General behavior, acceptance criteria, artifact requirements, and reference to plugin-specific test steps in UAT_PLAYBOOK.md. |
UAT Procedures
Purpose
This skill defines functional User Acceptance Testing for all Privileged Escalation Headlamp plugins. UAT validates that plugins work correctly in the deployed environment — by exercising plugin features in a running Headlamp instance, not by reviewing code or CI results.
UAT Environment
The UAT Headlamp instance runs in the headlamp-uat Kubernetes namespace. Navigate to the Headlamp UAT URL using your Playwright browser. The plugin under test must be deployed to UAT before testing begins.
General Process
For every uat→main promotion:
- Open the Headlamp UAT instance in the browser
- Confirm the plugin appears in the sidebar or app bar
- Read the plugin's
UAT_PLAYBOOK.mdfor the specific test steps to run - Execute the test steps from the playbook, capturing screenshots at each verification
- Check the browser console for errors throughout
- Post a structured test report (see Artifacts section)
Acceptance Criteria
A plugin passes UAT when:
- Plugin loads — sidebar entry or app bar action is visible and accessible
- Features work — all core features in the playbook execute without errors
- No console errors — browser console shows no errors during normal operation
- Data matches cluster state — plugin data is consistent with
kubectlqueries against the cluster
A plugin fails UAT when:
- Plugin does not load or renders only an error state
- Any core feature is inaccessible or produces errors
- Console errors are present and not explainable as unrelated noise
- Displayed data contradicts known cluster state
Artifact Requirements
For each plugin tested, the UAT report must include:
- Screenshots of the plugin running in Headlamp — sidebar entry visible, main view loaded, at least one detail view
- Test checklist — each step from
UAT_PLAYBOOK.mdmarked pass/fail - Console errors — any browser console errors observed (attach screenshot if present)
- Environment info — Headlamp version, plugin version, browser used, namespace context
Reading UAT_PLAYBOOK.md
Each plugin repository contains a UAT_PLAYBOOK.md in its root directory. That file contains the canonical test steps for that specific plugin. Before running UAT, read the relevant playbook to know:
- Which features to exercise
- What the expected results are
- What screenshots to capture at each step
If UAT_PLAYBOOK.md does not exist for a plugin, treat that as a gap — report it in the UAT findings and flag it as a documentation issue.
Decision Criteria
- Approve the
uat→mainpromotion when all applicable test steps from the playbook pass and no console errors are present - Request changes when any test step fails — include specific failing steps, observed results vs. expected results, and failure screenshots
- Block if the plugin fails to load entirely — escalate to CTO as a deployment issue requiring immediate resolution