Lab: The Northdesk service, packaged and gated
317 min read·
Module 10 · Lab · About 75 minutes · Needs: lessons 1 to 6 of this module, and the Module 9 lab (or nothing: Step 1 rebuilds Modules 1 to 9)
What you are building
The lessons built the serving pieces one at a time. This lab joins them into one FastAPI service, service/app.py, that a Dockerfile starts, Docker Compose runs beside its workers and stores, and GitHub Actions gates. On the way it fixes a bug Lesson 1 left in: a client that leaves before its stream starts keeps its admission slot for ever.
Every number comes from scripted models, fakeredis and TestClient; one optional cell calls your provider. Open a new Colab notebook, module-10-lab.ipynb, and run each cell in order.