web: stamp each zebra-report page with build date + md5/sha256

Add an integrity footer to chat.html, zebra-audio.html, and how-it-works.html
showing the build date (2026-05-28) and the page's own MD5 + SHA-256. A file
can't hold its own hash, so web/stamp.js (make stamp) computes the hashes with
the two hash fields zeroed, then writes the real values back — self-consistent
and idempotent. To verify a served page: blank the two fields and re-hash;
confirmed it reproduces the stamped value with plain sha256sum.
This commit is contained in:
Russell Ballestrini 2026-05-28 17:50:12 -04:00
parent 60615a2e73
commit ae3e4316fb
No known key found for this signature in database
5 changed files with 58 additions and 1 deletions

View file

@ -395,5 +395,11 @@ $('music-mode').addEventListener('change', async (e)=>{
logLine('', 'ready — type a rendezvous code and call. mic stays muted to the room until connected.');
})();
</script>
<footer style="max-width:560px;margin:2.2rem auto 0;font-size:0.65rem;color:#999;line-height:1.7;word-break:break-all;font-family:monospace">
<span style="color:#777">page integrity</span> &nbsp;·&nbsp; built <span class="stamp-date">2026-05-28</span><br>
md5 <span class="stamp-md5">e5fddae2c65939dee70fa8cb05f246d0</span><br>
sha256 <span class="stamp-sha">ca3d20d2d9d8f33ce23faee41a148e459ef404e6a4be73001cd991781ce146bc</span><br>
<span style="color:#bbb">hashes are of this page with these two fields zeroed — to verify, blank them and re-hash</span>
</footer>
</body>
</html>