Dart Records & Patterns Deep Dive — Destructuring, Sealed Classes & Exhaustive Matching Dart 3.0 shipped Records, Patterns, and Sealed Classes together. Used well, they eliminate entire categories of runtime errors and make state management dramatically more expressive. // Before: untyped Map Map<String, dynamic> getUserInfo() => {'name': 'Alice', 'age': 30}; // Dart 3: typed Record (String nam
The problem: too many clients, too few discovery hooks We expose Supabase Edge Functions as MCP (Model Context Protocol) servers. The clients that hit them are heterogeneous — Claude Desktop, Codex CLI, Cursor, VS Code Continue, a couple of in-house browser extensions. None of them ship with a hard-coded "use WorkOS AuthKit, scope is tool:ai_chat, audience must contain urn:jibun:tool:<tool>" rec