Tell contributors about the key and manual gates
CONTRIBUTING named four CI commands and the traceability tag, and nothing about the three checks added since 0.14.1 that a first UI change is most likely to meet: gestures-check, which fails on a key bound without a GESTURE block or a block naming an unbound key (9d1e31f); manual-check, which fails when index.html is not the render of the manual (1021635); and record.sh --check, which fails when the manual shows a picture no scene makes (70583b9). Two short paragraphs say what each holds and where the recording tools are.
This commit is contained in:
@@ -130,6 +130,24 @@ strength of plumbing a future feature would use. So: **close a requirement
|
||||
with a test that would fail if the behaviour were removed.** Coverage that
|
||||
moves slowly and means something beats coverage that moves quickly.
|
||||
|
||||
**Keys and gestures are held the same way.** A key handler in Slint compares
|
||||
one canonical chord, `Keys.chord(event) == "Ctrl+Z"`, under a `// KEYMAP:`
|
||||
comment naming its section of the gesture book, and every key it binds must be
|
||||
named by a `GESTURE:` block beside it. `cargo run -p traceability -- gestures`
|
||||
regenerates [`docs/gestures.md`](docs/gestures.md) and the in-app help sheet
|
||||
from those blocks; `-- gestures-check` fails when a handler binds a key no tag
|
||||
names, or a tag names a key no handler binds. A `manual:` field in a block
|
||||
links the gesture to a section of the manual, and a heading that is not there
|
||||
fails the scan.
|
||||
|
||||
**The manual is checked too.** `docs/manual/index.html` is rendered from
|
||||
`docs/manual/README.md` by `-- manual` and `-- manual-check` fails when they
|
||||
differ; `tools/manual/record.sh --check` fails when the manual shows a picture
|
||||
no scene in `tools/manual/scenes.py` makes. If you change what a pictured
|
||||
screen looks like, [`tools/manual`](tools/manual/README.md) says how to record
|
||||
it again. The pre-commit hook regenerates the matrix, the gesture book and the
|
||||
page; CI runs all three checks.
|
||||
|
||||
## Two invariants the build defends
|
||||
|
||||
Worth knowing before you trip one, because both failures name a requirement
|
||||
|
||||
Reference in New Issue
Block a user