mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-06-10 16:14:54 +03:00
fc76407877
run.mjs: - buildSeverityIndex(config) — валидация config.severity (inverted map «уровень → [теги]») при загрузке: ключи только из blocker|critical| normal|minor|trivial, теги не дублируются между bucket'ами, defaultSeverity тоже валидируется. fail-fast через die. - resolveSeverity(t, severityIndex): 1. mod.severity если задан и валидный — выигрывает. 2. max-rank среди тегов (стандартные имена severity или маппинг). 3. config.defaultSeverity или 'normal'. Rank: blocker(5) > critical(4) > normal(3) > minor(2) > trivial(1). Max-wins инвариантен к порядку тегов. - writeAllure: добавлены labels suite (= dirname(t.file) или 'root') + severity. Тег `tag` остался как раньше. - testResult пробрасывает t.severity (для passed/failed веток). - SEVERITY_RANK/LEVELS объявлены в модульной шапке (top-level await на cmdTest начинается до конца тела модуля, TDZ-аккуратность). webtest.config.mjs: severity policy для нашего сьюта (smoke + multi-context → critical, recording → minor, defaultSeverity = normal). spec.md §7: раздел про severity-policy в конфиге с валидацией. spec.md §9: «Авто-эмиссия label-ов» — tag/suite/severity + правила резолва. Регресс 19/19 ✓ (9m 7.6s). Распределение по уровням после исправления 'record' → 'recording' в маппинге: 13 critical / 5 normal / 1 minor. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>