Place2Page blog
Product notes, launch updates, and lessons from shipping Place2Page

Why We Used SSE First and Polling as a Fallback
Place2Page streams generation progress over authenticated SSE, then falls back to polling only when the live channel fails.

Why We Moved Streaming Events Out of Process Memory
The first streaming version worked on one worker, but a shared event store was the safer boundary once generation and stream requests could land on different processes.

How We Made Korean Business Names Work as Safe Subdomains
ASCII-only slugging broke on Hangul-heavy place names, so Place2Page added Korean-aware suggestions and deterministic fallbacks without changing the publish contract.

Why We Wrote a Risk Map Before Adding More Tests
Instead of chasing raw test counts, Place2Page used a risk map to choose which API paths needed DB-backed integration coverage first.

How We Built Place2Page's Selective CI/CD Pipeline
A grounded look at how Place2Page ties together change detection, selective tests, GHCR image builds, and production deploy automation.
