diff --git a/CLAUDE.md b/CLAUDE.md index e16683e..cf4997e 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -122,10 +122,10 @@ Handshake frame: `[0x5A 0x42 0x01 baud_lo baud_hi xor_cksum]` — 6 bytes at 50 ### Web page integrity stamping -Each deployed page (`web/chat.html`, `web/zebra-audio.html`, `web/how-it-works.html`) -carries a footer with the build date + its own MD5 + SHA-256. **Run `make stamp` -before deploying any page change** — it sets today's date and recomputes the -hashes (`web/stamp.js`). +Each deployed page (`web/chat.html`, `web/zebra-audio.html`, `web/how-it-works.html`, +`web/host-your-own.html`) carries a footer with the build date + its own MD5 + SHA-256. +**Run `make stamp` before deploying any page change** — it sets today's date and +recomputes the hashes (`web/stamp.js`). - A file can't hold its own hash, so the hashes are computed with the two hash fields **zeroed**, then written back (same length). Self-consistent and @@ -135,6 +135,12 @@ hashes (`web/stamp.js`). injects it in the browser. `stamp.js` is build tooling, never loaded by a page. - **Verify a served page**: blank the md5 field to 32 zeros and the sha256 field to 64 zeros, then re-hash with `sha256sum`/`md5sum` — must match the footer. -- **Deploy flow**: edit `web/*.html` → `make stamp` → commit here → copy the - page(s) into `~/git/www.unturf.com/zebra-report/` (`chat.html` → `index.html`, - others same name) → commit + push there. +- **Deploy = push to BOTH repos.** A page change is not live until it lands in + both. Pushing only the source changes nothing served; pushing only the deploy + repo orphans the source of truth. Both, every time: + 1. **source** — this repo (`zebra-report`): edit `web/*.html` → `make stamp` → + commit → **push to origin**. + 2. **served** — `www.unturf.com`: copy the page(s) into + `~/git/www.unturf.com/zebra-report/` (`chat.html` → `index.html`; + `zebra-audio.html`, `how-it-works.html`, `host-your-own.html` keep their + names) → commit → **push to origin**. diff --git a/Makefile b/Makefile index 70ff986..61c1e2b 100644 --- a/Makefile +++ b/Makefile @@ -8,7 +8,7 @@ PULSE = src/pulse.c # stamp each web page with today's date + its own md5/sha256 (run before deploy) stamp: - @node web/stamp.js web/chat.html web/zebra-audio.html web/how-it-works.html + @node web/stamp.js web/chat.html web/zebra-audio.html web/how-it-works.html web/host-your-own.html all: tx rx chat bt carrier zebrad diff --git a/web/chat.html b/web/chat.html index c37ec31..7579faf 100644 --- a/web/chat.html +++ b/web/chat.html @@ -169,6 +169,7 @@
volume modem chatroom · e2e encrypted · webrtc carrier · how it works · + host your own · unturf