---
name: verify-with-production-interpreter
description: "Проверочный прогон запускать ТЕМ интерпретатором и окружением, что и прод — иначе молчащая деградация читается как регресс кода. Третий случай за месяц"
metadata: 
  node_type: memory
  type: feedback
  originSessionId: d0c6c5aa-4d05-42e2-a1f9-034482b88603
  modified: 2026-08-02T13:59:03.509Z
---

**Проверку запускай ровно тем интерпретатором/окружением, что и прод.** Не `python3`, не «активирую venv по привычному имени» — а тот путь, что стоит в `plist`/`systemd`/`Procfile`.

**Почему:** 02.08.2026, ЗБР. Замер после правки дал 67/18/33 вместо ожидаемого улучшения — выглядело как чистый регресс. Причина: активировал `.venv`, а у бота venv называется `venv`; прогон ушёл на системный python3, где нет `requests`, и внешний резолвер тихо отключился на `except Exception: return None`. Правильным интерпретатором — 93/0/25. Полчаса ушло на диагностику исправного кода.

Третий случай той же семьи за месяц: [[env_source_defeats_test_setdefault]] (`source .env` глушил conftest), [[env_module_getenv_import_order]] (модульный `os.getenv` до `load_dotenv`, фича лежала 6 недель).

**Как применять:**
- перед прогоном достать реальный интерпретатор: `plutil -p ~/Library/LaunchAgents/<label>.plist` → `ProgramArguments[0]`;
- любой `except Exception: return None` вокруг импорта или сети обязан писать `logger.warning` — молчащая деградация превращает исправный код в «сломанный» на глазах у проверяющего;
- неожиданный регресс сперва объяснять окружением прогона, и только потом кодом.
