Problem Statement
Stage: Build the First Vertical Slice
A feature needs safe defaults with environment-specific overrides.
Deliverable
A recursively merged JSON configuration.
Input and output contract
Read base JSON on the first line and override JSON on the second; recursively merge objects and print sorted compact JSON.
Acceptance criteria
- Preserve unmodified defaults.
- Replace scalar values.
- Merge nested objects recursively.
Suggested vibe loop
Read AGENTS.md, connect your Ollama or OpenAI-compatible provider in the browser, and ask the agent to restate the contract and make one small verifiable change. Watch edits stream into app.py while the editor is locked, then review the result and run the visible example. Keep the checkpoint when the evidence is correct or use Undo to restore it. The browser-client agent does not require an administrator gateway or API key.