Viewing is open to everyone. Downloading and starring need a GitHub sign-in. Sign in with GitHub

README.md

v0.1.0-build.85 Latest Commit ede38f5

Size
3.8 KB
Lines
43
Language
markdown
SHA-256
ddf7793dbf60…
View on GitHub

Sign in with GitHub to download. Each download is recorded with your GitHub username.

1# CKey field tests
2
3<!-- Generated from field-tests/suite.json by tools/field_tests.py. Edit the JSON, not this file. -->
4
5Repeatable checks of how CKey reads in the real world: printed sizes, distance, angle, light, screens, damage, styles, density, small labels, speed and payload safety. Each test states the claim it checks, how to set it up, what to record, and how to grade the result.
6
7Anyone can run a test and report the result, on [https://openckey.org/tests](https://openckey.org/tests) or [here on GitHub](https://github.com/clearkeysolutions/ckey/issues/new?template=field-test-report.yml). Every result is public: on the site, and as JSON at [https://openckey.org/api/field/results](https://openckey.org/api/field/results). Results reported on GitHub are imported to the site, and each one links back to its issue.
8
9Suite version **1.0**. The machine-readable definition is [`suite.json`](suite.json); openckey.org reads it from the release it pins, so the site and this folder always match.
10
11| Test | Category | What it checks |
12|---|---|---|
13| [FT-01: Smallest printed size](tests/FT-01.md) | Print | A standard-layout CKey holding a short link reads when printed at 1 inch (25 mm) wide. |
14| [FT-02: Reading distance](tests/FT-02.md) | Distance | A 2-inch CKey reads from arm's length, about 60 cm. |
15| [FT-03: Viewing angle](tests/FT-03.md) | Angle | A CKey reads when seen at up to 45 degrees off square. |
16| [FT-04: Lighting](tests/FT-04.md) | Light | A printed CKey reads in daylight, ordinary indoor light, dim light and under a reflection. |
17| [FT-05: On a screen](tests/FT-05.md) | Screen | A CKey shown on a phone or computer screen reads, including at low brightness and in light-on-dark colours. |
18| [FT-06: Damage](tests/FT-06.md) | Damage | Error correction lets a CKey read through marks, a covered patch and creasing, with more damage tolerated at higher levels. |
19| [FT-07: Styles in the real world](tests/FT-07.md) | Design | A style the core certifies reads in practice, and reads about as well as plain black on white. |
20| [FT-08: Density](tests/FT-08.md) | Capacity | At a fixed 2-inch print size, denser versions need a closer, steadier camera; version 10 still reads. |
21| [FT-09: Small labels: print layout](tests/FT-09.md) | Print | The print layout (Profile 0.1) reads at smaller sizes than the standard layout. |
22| [FT-10: Time to read](tests/FT-10.md) | Speed | In ordinary conditions a CKey reads in under 2 seconds from pointing the camera. |
23| [FT-11: Payload safety](tests/FT-11.md) | Safety | A reader shows what a code holds and acts only on a tap, and flags content that is not a plain link. |
24
25## Grading
26
27Each test has a rubric with three outcomes. The person running the test chooses the outcome; the measurements are published beside it so anyone can check the grade.
28
29- **Pass:** Meets the pass criterion in the test's rubric.
30- **Partial:** Meets the partial criterion but not the pass criterion.
31- **Fail:** Meets neither.
32
33## Your own tests
34
35You can also design a test on [https://openckey.org/tests/new](https://openckey.org/tests/new): its purpose, set-up, steps, what to record and its rubric. It is listed at once, marked Community, and anyone can report results for it. A community test that proves useful can be proposed for this suite in a pull request to `suite.json`.
36
37## Photos and privacy
38
39Photos sent with a result on openckey.org are checked before anyone else can see them, and a photo that shows a face waits for a person to review it. See [https://openckey.org/privacy#field-tests](https://openckey.org/privacy#field-tests). Photos attached to a GitHub issue are published by GitHub under its own terms.
40
41## Changing the suite
42
43Edit `suite.json`, run `python3 tools/field_tests.py` to regenerate this folder and the issue form, and commit both. CI runs `--check`, which fails when they differ.