f289b6382c
Third per-module ratchet under ADR 0004. Add a parsing/serialization suite for the egress engine's core: - route validation rejections: payload/route shape, host, auth pairing, git block, every matches sub-field (paths/methods/headers type + regex-compile + unknown-key), and the dlp block (detector type/name, outbound_on_match, unknown key) - a full valid route round-trips; detectors:false disables - parse_config log-level validation + load_config invalid-YAML - route_to_yaml_dict: minimal/auth/git/dlp/matches with default-omission - evaluate_matches: exact/prefix/regex paths, method filter, exact + regex header matching (match and non-match) egress_addon_core.py: 84% -> 99%. The two remaining missed statements are defensive guards (an unreachable separator-return and a no-matching-path-type fallthrough). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NkwFXLFff9PYPy4wgVBJp9