{"slug":"the-ai-factory","total":5,"limit":100,"offset":0,"since":null,"commits":[{"hash":"0aa9c0c","date":"2026-05-19 17:33:46 -0700","author":"Steve","subject":"viewer: 404-guard snapshot/backup paths from static root","body":"Block requests for *.bak, *.bak.*, *.pre-*, *.orig from being served\nby express.static even if such a file is accidentally placed in\npublic/. Returns 404 before static middleware sees the path.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>"},{"hash":"0d5209c","date":"2026-05-19 17:33:31 -0700","author":"Steve","subject":"gitignore: broaden snapshot/backup patterns","body":"Add *.bak, *.bak.*, *.pre-*, *.orig, *.swp so accidental snapshot\nfiles never land in the repo.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>"},{"hash":"cee93fb","date":"2026-05-13 08:58:03 -0700","author":"Steve","subject":"snapshot: 11 file(s) changed, +3 new, ~8 modified","body":""},{"hash":"20486fe","date":"2026-05-07 12:29:32 -0700","author":"Steve","subject":"tighten .gitignore: add missing standing-rule patterns (tmp/ dist/ build/ .next/)","body":""},{"hash":"75e44f6","date":"2026-05-04 01:08:09 -0700","author":"SteveStudio2","subject":"[overnight] pre-debate baseline","body":""}]}