mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-08-15 17:42:29 +02:00
Two review findings on PR #2871: - coderabbitai: MIN_CHARS/MIN_SAVED_TOKENS parsed with a bare int() at module import time, before any try/except could catch a bad value — a malformed env_vars passthrough would crash the hook on every matched tool call instead of failing open as documented. Wrapped in _int_env() with a safe fallback. - chatgpt-codex-connector: Glob and Grep (files_with_matches mode) return a `filenames: string[]` field per the CLI's own output schema, which the hook's string-only candidate scan never touched — large file listings, the exact case named in the CLAUDE.md guidance this add-on installs, passed through uncompressed. Verified empirically that routing such an array through compress()/SmartCrusher (as done for JSON-blob string fields) silently subsamples it — 600 paths collapsed to ~15 with no visible marker, unsafe for paths the model needs to act on individually. Added a separate deterministic path: arrays over ARRAY_KEEP (40) entries are truncated in order with one labeled marker entry appended, full array recoverable from the CCR store by hash. Verified round-trip on Glob- and Grep-shaped payloads (600 and 200 entries); confirmed order preservation and that small arrays still pass through untouched. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>