Parent: #117
Generalize upstream PR abhigyanpatwari#2489 across the fork schema surface. Begin with failing tests. Remove top-level anyOf/oneOf/allOf from advertised tools while preserving names and properties. Enforce api_impact route/file and impact target/name/symbol requirements in runtime normalization before repository resolution.
Acceptance: invariant holds after policy wrappers and stdio/HTTP listing; canonical, agreeing, conflicting, missing, grouped, read-only, and allowlisted cases pass.
Evidence: /Volumes/LEXAR/Codex/session-notes/2026-07-14/gitnexus-electric-2-sprint/
Parent: #117
Generalize upstream PR abhigyanpatwari#2489 across the fork schema surface. Begin with failing tests. Remove top-level anyOf/oneOf/allOf from advertised tools while preserving names and properties. Enforce api_impact route/file and impact target/name/symbol requirements in runtime normalization before repository resolution.
Acceptance: invariant holds after policy wrappers and stdio/HTTP listing; canonical, agreeing, conflicting, missing, grouped, read-only, and allowlisted cases pass.
Evidence:
/Volumes/LEXAR/Codex/session-notes/2026-07-14/gitnexus-electric-2-sprint/