Kamol Nazarov The back office lab Brooklyn, NY

Lab notes · Build write-ups from the shop

Notes from the back office lab.

What I shipped, how it was built and what broke, written up from the shop. Dated, first person, no customer data.

Notes · 5 publishedRSS

  1. N°05 Fixing SSE Streaming That Freezes Behind Nginx for LLM AppsLLM tokens trickle direct to Node but arrive in one lump behind nginx: one scoped location block with proxy_buffering off, gzip off and a longer read timeout. · 3 minnginx · sse · streaming
  2. N°04 Fixing zodResolver type errors after upgrading to zod 4 in React Hook FormUpgrading to zod 4 turns every zodResolver() red in React Hook Form. Three fixes: resolvers v5, dropping explicit useForm generics, and the z.coerce input trap. · 3 minzod · react · typescript
  3. N°03 Fixing ModuleNotFoundError When a Python Cron Job Works From the ShellSame script, same machine: works over ssh, ModuleNotFoundError from cron. Cron never activates your venv - point the entry at the venv's own python. · 3 minpython · cron · venv
  4. N°02 One night, five launchesOn Oct 19, five names under kamol.dev were switched on in 71 minutes, with AI agents working in parallel. The log, the runbook, and what the count leaves out. · 2 minagents · deploys · nginx
  5. N°01 Fixing Stripe Webhook Signature Verification Failures in Expressexpress.json() eats the body before constructEvent can verify it: the usual Stripe webhook failure in Express, the raw-body fix, and the rest of the checklist. · 3 minstripe · express · webhooks