fix(site-finder): gate velocity on confidence of objective_complex_mapping (#307 OBJ-2) #1720

Merged
lekss361 merged 1 commit from fix/objective-mapping-is-reviewed-gate-307-obj2 into main 2026-06-17 19:43:04 +00:00
Owner

Задача (#307 OBJ-2)

Backfill #1331/#1333 добавил low-confidence auto-mappings (down to 0.50) с is_reviewed=false, которые молча шли в velocity MV.

Решение

Гейт (is_reviewed = TRUE OR match_method = 'manual' OR match_score >= 0.85).
Не строгий is_reviewed=true: в живой таблице только 2 из 309 reviewed → строгий гейт обнулил бы фичу. 0.85 = документированный AUTO_ACCEPT_THRESHOLD (vault: «fuzzy 0.85+ надёжны для auto-use»). Изолирует именно риск-сет (auto_fuzzy_v2 0.625, corroborated 0.50-0.75).

  • velocity.py: _MAPPING_CONFIDENCE_GATE в обоих mapped-CTE.
  • Миграция 165_velocity_mapping_reviewed_gate.sql: redefine mv_layout_velocity с гейтом (формула weighted-AVG #21 сохранена).

Verify (live, read-only)

EKB mappings 303→264 (drop 39 low-conf); MV-объекты 275→236. pytest -k "velocity or mapping or layout"130 passed, 11 skipped; ruff clean.

⚠️ Деплой передефинирует прод-MV (DROP+CREATE+REFRESH ~30s lock); покрытие 275→236 — это и есть фикс, не регрессия.

Closes #307 (OBJ-2)

## Задача (#307 OBJ-2) Backfill #1331/#1333 добавил low-confidence auto-mappings (down to 0.50) с `is_reviewed=false`, которые молча шли в velocity MV. ## Решение Гейт `(is_reviewed = TRUE OR match_method = 'manual' OR match_score >= 0.85)`. **Не строгий `is_reviewed=true`:** в живой таблице только 2 из 309 reviewed → строгий гейт обнулил бы фичу. 0.85 = документированный `AUTO_ACCEPT_THRESHOLD` (vault: «fuzzy 0.85+ надёжны для auto-use»). Изолирует именно риск-сет (auto_fuzzy_v2 0.625, corroborated 0.50-0.75). - `velocity.py`: `_MAPPING_CONFIDENCE_GATE` в обоих mapped-CTE. - Миграция `165_velocity_mapping_reviewed_gate.sql`: redefine `mv_layout_velocity` с гейтом (формула weighted-AVG #21 сохранена). ## Verify (live, read-only) EKB mappings 303→264 (drop 39 low-conf); MV-объекты 275→236. `pytest -k "velocity or mapping or layout"` → **130 passed, 11 skipped**; ruff clean. ⚠️ Деплой передефинирует прод-MV (DROP+CREATE+REFRESH ~30s lock); покрытие 275→236 — это и есть фикс, не регрессия. Closes #307 (OBJ-2)
lekss361 added 1 commit 2026-06-17 19:34:00 +00:00
fix(site-finder): gate velocity on is_reviewed objective_complex_mapping (#307 OBJ-2)
Some checks failed
CI / changes (pull_request) Successful in 6s
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Failing after 2m23s
CI / backend-tests (pull_request) Failing after 9m12s
24615b96c1
lekss361 merged commit 8a24b057ac into main 2026-06-17 19:43:04 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#1720
No description provided.