{"slug":"bubbesblock","total":12,"limit":100,"offset":0,"since":null,"commits":[{"hash":"977e8e6","date":"2026-06-19 16:26:55 -0700","author":"Steve","subject":"Security hardening (code-reviewer pass): server-side XSS escaping on all user input, fix inbox IDOR, stop search leaking addresses, opp-response uniqueness, safe notification links, prod SESSION_SECRET required + secure cookie, json limit, unhandledRejection guard","body":""},{"hash":"7cbd55e","date":"2026-06-19 16:19:19 -0700","author":"Steve","subject":"Build out every button with real UX: sessions + claim gate, write endpoints (posts/comments/reactions/respond/unlock/rsvp/join/bookmark), search, notifications, inbox, events, groups, content pages; live home-history wired; interaction layer (app.js) + modals/toasts","body":""},{"hash":"698091f","date":"2026-06-19 16:12:06 -0700","author":"SteveStudio2","subject":"Add home-history module with LA County parcel + LADBS permit lookup","body":"- lib/home-history.js: CommonJS module exporting getHomeHistory(address)\n  pulls Tier A data from LA County GIS ArcGIS REST (free, no auth) and\n  LADBS Socrata permit datasets; JSON cache at data/home-history.json;\n  resilient (never throws, returns honest unavailable stub on no data)\n- data/home-history.json: pre-seeded for 13 BubbesBlock lead addresses;\n  2 with real assessor data (18406 Bessemer St + 18700 Ventura Blvd),\n  11 honest unavailable stubs (fictionally-numbered addresses not in the\n  LA County public parcel roll)\n- scripts/seed-home-history.js: one-shot cache warmer\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>"},{"hash":"552f29c","date":"2026-06-19 15:39:10 -0700","author":"Steve","subject":"Rebrand: original BubbesBlock logo (row-of-homes + heart) + warm mulberry palette; drop Nextdoor-style green house mark","body":""},{"hash":"e1c77a4","date":"2026-06-19 15:34:31 -0700","author":"Steve","subject":"Add Opportunity Alerts surface: 12 similar-but-not-exact home-service leads (from iPhone Nextdoor screenshots, agent-extracted), Tarzana-localized, wholivedthere enrichment hook, DB-backed","body":""},{"hash":"0110f82","date":"2026-06-19 15:24:21 -0700","author":"Steve","subject":"Add BubbesBlock Postgres DB (posts+comments+config), migration, DB-backed server with JSON fallback; live on bubbesblock.com","body":""},{"hash":"18d989b","date":"2026-06-19 14:21:02 -0700","author":"Steve","subject":"Add /healthz route + deploy config; live on bubbesblock.com (port 9825)","body":""},{"hash":"d0b4a97","date":"2026-06-19 14:16:28 -0700","author":"Steve","subject":"Wire BubbesBlock live: Express server + data-driven block feed & post detail, seeded with religious-theme posts","body":""},{"hash":"5be1261","date":"2026-06-19 14:08:52 -0700","author":"Steve","subject":"Add Nextdoor-style block post-detail UI (public/index.html)","body":""},{"hash":"1adfcbd","date":"2026-05-11 10:02:33 -0700","author":"SteveStudio2","subject":"security: untrack .env (still present on disk, just not in git)","body":".env was committed before .gitignore exclusion was in place. File remains\non disk and functional; this stops future commits and prevents the next\ngit push (if any remote is ever added) from leaking secrets.\nNo remote currently configured, so no public exposure occurred."},{"hash":"7d43131","date":"2026-05-07 12:05:24 -0700","author":"Steve","subject":"add canonical .gitignore per standing rule","body":""},{"hash":"34dc101","date":"2026-05-04 06:58:43 -0700","author":"SteveStudio2","subject":"[overnight] pre-debate baseline","body":""}]}