Last 50 commits. Not publicly indexed.
S217: FAQ regulatory audit complete — all 12 trades, compliance engine v2.1
S217: merge staging to production
fix: correct taxonomy doc to live DB (12 trade types, 339 categories); fix category 101 trade_type p
S217: compliance rules v2.1 — all 12 trades, audit script v2, migration 035
S217: complete gas_engineer and roofer FAQ compliance review
S217: complete roofer regulatory FAQ compliance audit
S217: PL-SEO-DOMAIN-001 — canonical domain redirect for SEO
S217: PL-CAT-IMG-001 and PL-CAT-IMG-002 raised
S217: category hero images — migration 034, image generator, publicRoutes wire-up
S217: cleanup — image-gen-log and migration 034 committed
S217: category hero images — migration 034, image generator, publicRoutes wire-up
feat: landing page scroll reveal system, lifecycle strip, smoke card stagger 200ms
feat: add lifecycle strip section to landing page between How It Works and The Difference
fix: correct trade sign-off email copy for auto-invoice path; add trade invoice auto-generated notif
fix: S217 — pause system hardening, trade category NULL scope guards, ON CONFLICT customer_id repair
fix: S217 — pause system hardening: admin pause writes paused_by, admin unpause route, defensive coe
docs: S216 handover — add resume bug note, smoke test status, railway up clarification
feat: S216 — pause/unpause UI, dispute UI, admin status fixes, branch workflow, inline assigned_trad
fix: clear pause columns on admin status override unless overriding to paused
fix: resolve tradeRoutes merge conflict — accept staging version
feat: trade pause/unpause UI, dispute UI, admin status dropdown fixes, admin paused bilateral emails
fix: defensive paused_by comparison — guard against whitespace and null coercion
feat: pause/unpause UI for trade and client scope detail pages
fix: add final_price input to mark-complete form — resolves ?error=invalid_price on in_progress scop
fix: credit balance chip on /trade/settings — add credit_balance subquery to settings trade fetch
chore: enforce staging→production→main workflow in session scripts
merge: resolve doc conflicts — accept staging versions
S215: security hardening — rate limiting, UK phone validation, honeypot, bot cleanup script, chatLim
fix: loginLimiter on /webhooks/reconcile — brute force hardening
fix: chatLimiter on /chat, intakeLimiter on /scope-edit — API cost protection
fix: UK phone validation and honeypot on /apply — bot protection
fix: UK phone validation and honeypot on /register — bot protection
fix: signupLimiter on /register and /client/accept-invite — bot protection
docs: S214 handover — session complete, deployed to production 30 May 2026
merge: resolve doc conflicts — accept staging versions
S214: Blocks 8–11 + pre-Block-12 — new email templates, amendment fixes, admin parity, platform copy
S214 Block 10: admin status override bilateral emails — in_progress auto-start, signed_off bilateral
S214 Block 9: amendment route open to all tiers, client notification on submit, accept/decline canon
S214 Block 8: 11 Postmark templates and send functions — auto-start, sign-off nudge, auto-sign-off,
docs: update Friday deploy checklist — add step 0 deploy list print
docs: add weekly release cadence and Friday deploy dates through 3 July 2026
docs: handover 213 updated — DB audit system, production cleanup,
Fix: create job_contracts row for all subscription tiers on offering acceptance (was incorrectly gat
S213: Add cleanup-orphans.js — removes orphaned rows from deleted test trades
S213: Add /admin/audit page — DB health checks, account/scope/trade lookups
docs: add DATABASE_AUDIT.md for audit toolkit usage
scripts: add read-only trade audit diagnostic
scripts: add read-only DB health audit
scripts: add read-only scope audit diagnostic
scripts: add read-only account audit diagnostic