PR-B (follow-up к unify-concept). Закрывает «вписать пятно» из round-3: - BuildingProgramItem получает опциональные footprint_w_m/footprint_d_m (float|None, ge=4 le=120, default None → каталог; ADDITIVE, byte-for-byte backward-compat). place_program кладёт ручное пятно когда заданы ОБА габарита, иначе каталожное. api-types.ts регенерирован под новую схему. - ConceptProgramForm: пятно секции теперь редактируемое (ширина × глубина); пусто → возврат к каталогу; Σ пятно и ориентир КСИТ считаются от эффективного габарита. building_program несёт footprint в Section7Concept. - ConceptVariantsResult: грамматика «корпус» (1 корпус / 2–4 корпуса / 5+ корпусов) в headline / подписи карты / partial-fit; program-вариант получает свой хинт вместо STRATEGY_HINTS[balanced]. - Тесты place_program: footprint-override и partial-footprint fallback. |
||
|---|---|---|
| .. | ||
| test_api_concepts.py | ||
| test_catalog.py | ||
| test_exporters.py | ||
| test_financial_dcf.py | ||
| test_geometry.py | ||
| test_market_price_lookup.py | ||
| test_placement.py | ||
| test_program_placement.py | ||
| test_teap_financial.py | ||