Document UI release verification

This commit is contained in:
Georg Bauer
2026-07-31 12:07:43 +02:00
parent 50bb8f94c2
commit 9fc9e3f13c
2 changed files with 46 additions and 3 deletions

View File

@@ -27,6 +27,20 @@ cargo test --workspace
Do not weaken or skip these gates to make a commit pass. Fix the underlying
warning, lint, formatting issue, or test failure.
## UI verification conventions
`TESTING.md` is the source of truth for iOS visual verification and the release
regression suite.
- Update `TESTING.md` in the same commit whenever UI appearance, behavior,
navigation, or interaction changes so its scenarios remain current.
- For each ordinary commit, run every `TESTING.md` scenario relevant to the
changed UI in addition to the required pre-commit gates. Report which visual
scenarios were exercised.
- When asked to perform a release test, run the complete `TESTING.md` checklist.
Every scenario must succeed before reporting release sign-off; record failures
and resolve release blockers instead of skipping them.
## iOS simulator build and deployment
This Apple Silicon project builds the simulator app for `arm64`. Do not disable

View File

@@ -1,7 +1,11 @@
# Testing Gotcha
Use this checklist for every iOS release. Add checks when a new screen or
interaction ships so the document remains the release regression suite.
This document is the source of truth for iOS visual verification. Every UI
change must update its relevant scenarios in the same commit. For ordinary
commits, run the build gates and every scenario affected by the change. A
release test means completing this entire checklist successfully on the stated
simulators and devices; record failures as open issues and do not sign off until
every scenario passes.
## Test record
@@ -141,6 +145,31 @@ xcrun simctl launch booted de.rfc1437.gotcha
horizontal scrolling for long lines.
- [ ] Long-press diff text and verify normal selection and copying.
## Repository files
- [ ] Switch a repository between **History** and **Files**. Each mode displays
the expected content and switching back preserves normal navigation.
- [ ] In Files, traverse several nested folders using rows, the navigation-bar
Back button, and the left-edge swipe. Folder contents and titles match the
repository hierarchy.
- [ ] Open representative source files in several languages, including Rust,
Swift, and a scripting or markup language. Keywords, strings, comments,
types, and punctuation use plausible language-specific highlighting.
- [ ] Open a source file containing a line wider than the screen. It does not
word-wrap; horizontal dragging pans smoothly across the complete line
without blank, black, clipped, delayed, or jumping text. Vertical
scrolling, selection, and copying still work.
- [ ] Open Markdown files using the supported extensions (`.md`, `.markdown`,
`.mdown`, and `.mkd`). **Preview** is selected by default and renders
headings, paragraphs, emphasis, links, lists, task lists, blockquotes,
fenced code blocks, tables, and thematic rules as structured content.
- [ ] Switch a Markdown file from **Preview** to **Source**. The literal Markdown
is syntax-highlighted, selectable, does not word-wrap, and scrolls
horizontally for long lines. Switch back and verify the rendered preview
is restored without stale or overlapping content.
- [ ] Open representative image, PDF, audio, and video files. Each uses the
native preview appropriate to its media type and returns cleanly to Files.
## Pull requests
- [ ] The list defaults to the saved Open/Closed filter.
@@ -184,4 +213,4 @@ xcrun simctl launch booted de.rfc1437.gotcha
- [ ] All build gates passed.
- [ ] Fresh-install and upgrade passes completed.
- [ ] Every supported iOS version and required device class completed.
- [ ] Failures are linked in the test record; release blockers are resolved.
- [ ] Every scenario passed; any discovered failures were resolved and retested.