Unit test covers unknown fixture throw (hooks/tests/fixtures/unknown-ide-input.json). No live capture of an actual unknown tool event from a real IDE. Gap for extended QA pass. AC: capture live stdin from an unsupported/unknown tool invocation and run normalize() to verify error handling path.
Unit test covers unknown fixture throw (hooks/tests/fixtures/unknown-ide-input.json). No live capture of an actual unknown tool event from a real IDE. Gap for extended QA pass. AC: capture live stdin from an unsupported/unknown tool invocation and run normalize() to verify error handling path.