Skip to content

Исправить передачу ошибок hooks и выбор runtime-сессии - #1

Merged
ivaschru merged 1 commit into
mainfrom
codex/hook-failure-diagnostics
Sep 29, 2026
Merged

ivaschru merged 1 commit into
mainfrom
codex/hook-failure-diagnostics

Conversation

@ivaschru

Copy link
Copy Markdown
Contributor

Изменения

  • Ошибка распознанного PreToolUse возвращается как JSON deny с точной причиной и exit 0. Это сохраняет блокировку при нормализации exit 2 в exit 1 внешним PowerShell.
  • Все повторы захвата registration lock ограничены общим deadline. Неудаляемая stale-блокировка возвращает причину ОС и сохраняет содержимое.
  • ID события имеет приоритет над унаследованным ID чата при выборе private state и transcript.
  • Неудачный replay после runtime update сохраняет исходный gate для структурированного отказа.
  • Windows regression выполняет настоящий runtime через cmd.exe, Windows PowerShell и pwsh.exe. Plugin shell и hooks.json не меняются.

Проверки

  • Все 28 direct Node test files из runtime-tests.yml прошли локально на macOS.
  • Два runtime package одной версии побайтово совпадают.
  • Новые проверки охватывают конфликт session IDs, сохранение nonempty stale-lock и блокирующий JSON вместо ненулевого exit.
  • Перед интеграцией требуется Windows CI.

Эти исправления закрывают воспроизведённые дефекты runtime. Они не доказывают первопричину конкретного внешнего инцидента без повторной проверки после выпуска.

Передавать отказ PreToolUse через JSON deny независимо от PowerShell, ограничить восстановление stale-lock и выбирать session ID из события. Проверять реальные Windows launcher-ы и сохранить исходный gate при неудачном replay.
@ivaschru
ivaschru merged commit 3318b06 into main Sep 29, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant