{"slug":"shopify-oauth-catcher","total":3,"limit":100,"offset":0,"since":null,"commits":[{"hash":"26ea658","date":"2026-05-19 21:23:55 -0700","author":"Steve Abrams","subject":"feat(server): 404-guard snapshot file paths","body":"Adds Express middleware that rejects any request path matching common\neditor/snapshot extensions (.bak, .bak.<x>, .pre-*, .orig, .rej, .swp,\ntrailing ~) with a 404 before reaching any route or static handler.\n\nDefense-in-depth — if a future static dir is added or a stray snapshot\nfile is left in the deploy tree (or exposed via a misconfigured proxy),\nit cannot leak source / config / token-shaped content over HTTP.\n\nOAuth flow unchanged: /install and /callback handlers untouched.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>"},{"hash":"8d63f76","date":"2026-05-19 21:23:23 -0700","author":"Steve Abrams","subject":"chore(gitignore): broaden to ignore editor/snapshot detritus","body":"Adds *.bak, *.bak.*, *.pre-*, *.orig, *.rej, *.swp, *~ so stray\nsnapshot files from refactor passes don't sneak into git.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>"},{"hash":"809a878","date":"2026-05-13 12:13:51 -0700","author":"Steve Abrams","subject":"initial scaffold","body":""}]}