fabro/lib/apps
Scott Werner 5606940aaf Parse create-run bodies strictly per admission lane
Both lanes now deserialize the raw request bytes directly instead of
round-tripping through a serde_json::Value, which silently collapsed
duplicate JSON keys to last-key-wins on the legacy manifest lane and
stripped line/column locations from manifest parse errors.

When neither lane accepts the body, attribution now recognizes a
defective manifest by its required keys, so a legacy manifest carrying a
stray workflow_version_id keeps its 400 manifest error instead of being
misrouted to a 422 run_intent_invalid describing a schema the caller
never used.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-24 13:02:14 -04:00
..
fabro-cli Preserve run creation error context 2026-08-24 12:22:38 -04:00
fabro-mcp-server Address Copilot review comments 2026-08-01 09:18:57 -04:00
fabro-server Parse create-run bodies strictly per admission lane 2026-08-24 13:02:14 -04:00
fabro-spa refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00