30 lines
1.1 KiB
Markdown
30 lines
1.1 KiB
Markdown
# Journey repository contract
|
|
|
|
The UAT repository is a standalone pnpm project. It contains no Kubernetes/Helm/Argo CD manifests and no application implementation.
|
|
|
|
Required baseline:
|
|
|
|
```text
|
|
journeys/
|
|
smoke/
|
|
regression/
|
|
fixtures/
|
|
helpers/
|
|
playwright.config.ts
|
|
package.json
|
|
pnpm-lock.yaml
|
|
Taskfile.yml
|
|
.gitea/workflows/validate.yaml
|
|
```
|
|
|
|
Rules:
|
|
|
|
- Stable journey IDs appear in test titles and evidence.
|
|
- `UAT_BASE_URL` is required; no production-looking default is embedded.
|
|
- Authentication is loaded from runtime secrets and never persisted in storage-state files committed to Git.
|
|
- Retries are explicit and low; a retry cannot turn a flaky first failure into an undisclosed pass.
|
|
- Failure evidence includes trace and screenshot; video is opt-in when data handling permits it.
|
|
- CI validates types, lint, journey discovery, and a non-network contract test. Environment execution is a separately authorized job.
|
|
- Taskfile is the human/automation entry point and delegates to package scripts.
|
|
- The repository README documents local execution, evidence locations, environment variables by name only, and failure classification.
|