fix(db-load,db-update): диагностика аномального кода — только факты, без догадки о причине

Убрана спекулятивная гипотеза причины (headless/GUI/лицензия) из сообщения:
краш сигналом/exception может быть вызван чем угодно, а зашитая догадка
заякоривает модель-координатора на неверном диагнозе. Оставлены только факты
(сигнал/exception-код, признак аномального завершения), следствие (ИБ может
быть несогласованна) и нейтральное действие (verify before retrying).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-07-19 20:02:42 +03:00
co-authored by Claude Opus 4.8
parent 28f3410463
commit 00cd0f3f5f
10 changed files with 30 additions and 35 deletions
@@ -1,5 +1,5 @@
#!/usr/bin/env python3
# db-load-git v1.13 — Load Git changes into 1C database
# db-load-git v1.14 — Load Git changes into 1C database
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
import argparse
@@ -133,16 +133,15 @@ def describe_exit(code):
3221226505: "0xC0000409 (stack overrun)", -1073740791: "0xC0000409 (stack overrun)",
}
if code in win:
return f" — abnormal termination {win[code]}; the platform crashed; the infobase may be left in an inconsistent state"
return f" — abnormal termination, exception {win[code]}; the infobase may be left in an inconsistent state; verify it before retrying"
if -64 <= code < 0:
try:
import signal
name = signal.Signals(-code).name
except (ValueError, AttributeError):
name = f"signal {-code}"
return (f" — terminated by {name}; the platform crashed abnormally "
"(often a headless environment without a GUI session or license); "
"the infobase may be left in an inconsistent state")
return (f" process terminated by {name} (abnormal termination, not a normal exit); "
"the infobase may be left in an inconsistent state; verify it before retrying")
return ""