← Q-Branch launcherWhat to try — watermark
# WHAT TO TRY — Item 1: The Invisible Watermark
**Time needed: about 5 minutes. You need: a terminal in this folder and
one of your own photos you don't mind copying.**
Folder: `~/workspace/horizon-works/q-branch-2026-10-31/01-watermark/`
The page that explains it all (just open the file, nothing is online):
`watermark-ui.html` — theme “Darkroom Brass”.
## The 5-minute walk
1. **See the test bench pass with your own eyes**
```
python3 run_fixtures.py
```
Expect the last line: `ATTACKS: 6/7 survived; negative control: PASS; distinct-ID: PASS; short-ID: PASS`
The one DIE is the 25% crop — that failure is real and is printed on purpose.
2. **Mark a copy of one of your own photos** (use a copy, never your only original)
```
python3 watermark.py mark ~/path/to/your-photo.jpg marked-test.png --id "Chris Fernandez — Berserk 2026"
```
Mark text can be anything up to 32 characters — a name, a business, a date.
3. **Read it straight back**
```
python3 watermark.py read marked-test.png
```
Expect: `MARK FOUND: Chris Fernandez — Berserk 2026` with the CRC verified.
4. **Try to kill it the normal way** — open `marked-test.png`, save it as a
JPEG, shrink it to half size, save again, then:
```
python3 watermark.py read your-shrunk-copy.jpg
```
On the house sample this still reads. Your photo, your editor, your
result — if it dies, that is a real finding; tell Muse the editor and
settings and it goes in the fixture record.
5. **Try to kill it the hard way** — crop a quarter off the marked copy and
read it again. Expect `NO MARK`. That is the honest boundary of v1.
## The fence, in plain words
- Your own photos only — this is for marking work that is yours.
- A found mark **supports** a claim that a copy came from you. It is not
DRM, it is not unremovable, and it is not courtroom proof by itself.
- Everything runs on this machine. No photo is uploaded anywhere.
## If something breaks
- `error: --id is N UTF-8 bytes; maximum is 32` → shorten the mark text.
- `too small` → the picture is under 128×128; use a bigger original.
- `NO MARK` on a file you just marked → check you marked *that* file and
read the marked output, not the original.