mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-07-31 20:32:20 +03:00
4 fixes from Gemini Code Assist PR #1689 review: 1. HIGH: Multi-part message content duplication — skip array-content messages instead of joining+replacing all text parts with compressed result, which caused content duplication (e.g., [A,B] → [comp(A+B), comp(A+B)]) 2. HIGH: String.prototype.replace $& vulnerability — use arrow function callback instead of string arg in restorePreservedBlocks() to prevent special replacement patterns ($&, , etc.) from corrupting restored content containing code, URLs, or file paths 3. HIGH: UI/backend rule name mismatch — ALL_CAVEMAN_RULES in CompressionSettingsTab.tsx now uses actual backend rule names (polite_framing, hedging, verbose_instructions, etc.) instead of fabricated names (hedging_disclaimer, redundant_please, etc.) that would break the skip-rules feature 4. MEDIUM: Remove no-op turn_marker rule — pattern /^$/g matches only empty strings and replaces with empty string, achieving nothing. Removed from CAVEMAN_RULES; total count now 29 (was 30). Tests: 72/72 pass, typecheck: 0 errors, lint: 0 errors