👋 I work on infrastructure at TapNow. 📚 My Blog -Matthew Lab.
🐕 sheepdog runs on my own machine and sits between Lark and the AI agent sessions I work with. Every minute it pulls new messages, hands each one to the session responsible for it, and keeps track of which sessions are working, waiting or stalled. When a session needs a decision from me, it asks me in Lark. I'm the shepherd, the sessions are the flock. 🐑
🚀 Release pipelines. Build each image once, then move that same digest from staging to production. A read-only check of the service's dependencies runs before every rollout, and the pipeline stops at the step that fails.
📡 Signals. In the systems I design, every message to a person or an agent is sorted by two questions: does it need attention now, and does the receiver owe a result? A notification needs neither. An alert needs attention but owes nothing. An action owes a result and can wait in a queue. A summons needs both. People and agents get the same four.
- ⚡ cdn-latency-tester: a Go tool that compares CDN latency over HTTP/1.1, HTTP/2 and HTTP/3, and splits time to first byte into CDN time and server time.
- 🩺 cloud-run-readiness-probe-test: a small FastAPI service for checking what Cloud Run's load balancer does when an instance's readiness probe starts failing.
Both are documented in Chinese.
💬 If you're working on something similar, I'm happy to talk. An issue on sheepdog is the easiest way to reach me.
