Drive diff panel state from route search params

- Parse and validate `diff`, `diffTurnId`, and `diffFilePath` from chat route search
- Switch ChatView/DiffPanel diff open/target actions to router navigation instead of store actions
- Remove diff-specific state/actions from the app store and update reducer tests
cc3e1db22aJulius Marminge committed on 2/19/2026, 9:47:48 AMparentb253d1f
8 files changedLine totals unavailable