feat(generative): full static developer financial cascade (epic #1881 PR-1) #1882

Merged
bot-backend merged 1 commit from feat/finmodel-cost-cascade into main 2026-06-23 11:57:06 +00:00
Collaborator

Summary

Эпик #1881 PR-1 — расширяет generative/financial.py из статического GDV−COST в полный статический девелоперский расчёт. Объединяет наше (площади из реальной геометрии TEAP) + полноту эталонной Excel-модели (каскад затрат + БДР с налогами). Без DCF (PR-3), без новых вводных (только нормативы + TEAP).

Каскад

  • Выручка: жильё + паркинг (spaces × 1.9М)
  • Затраты: СМР(резид+паркинг) + ПИР 2.5% + сети/ТУ 6000₽/м² + услуги 1.5% + резерв 3% + маркетинг/риэлтор 7% + земля
  • БДР: валовая маржа → НДС (упрощённо) → прибыль до налога → налог 25% (ФЗ 176-ФЗ) → чистая прибыль → ROI + чистая маржа%
  • Нормативы документированы (Excel-эталон + RU-рынок)

FinancialModel +16 additive-полей (старые 4 сохранены, backward-compat). IRR честно помечен irr_is_proxy=True (не DCF). НДС — документированное упрощение. Офисы пропущены (нет в TEAP).

Честность

VAT/IRR-упрощения задокументированы в 3 местах (docstring + PDF-сноска + UI-аккордеон), не выдаются за НК-точность/настоящий IRR.

Test plan

  • mypy strict clean (generative.*); ruff clean
  • +тесты (каскад sum-identity, паркинг, налоги срезают маржу, нет налога при убытке, backward-compat, edge cost=0), 36 passed
  • api-types.ts регенерён авторитетно (openapi-typescript+prettier как CI → openapi-codegen-check git-diff будет зелёным)
  • frontend tsc clean; PDF + concept UI показывают полный БДР + чистую прибыль/ROI
  • code-reviewer APPROVE (каскад выверен до копейки)
  • post-deploy: concept-отчёт показывает чистую прибыль/ROI/каскад

Follow-up (PR-2+)

  • PR-2: калибровка цен/себест по Objective/market (сейчас хардкод-классы); ROI display-cap для вырожденных входов
  • PR-3: помесячный DCF → настоящие NPV/IRR/PBP
  • PR-4: подключить к site-finder cockpit Investment Clearance + финансирование

Refs #1881

🤖 Generated with Claude Code

## Summary Эпик #1881 **PR-1** — расширяет `generative/financial.py` из статического `GDV−COST` в полный статический девелоперский расчёт. Объединяет наше (площади из реальной геометрии TEAP) + полноту эталонной Excel-модели (каскад затрат + БДР с налогами). **Без DCF** (PR-3), **без новых вводных** (только нормативы + TEAP). ## Каскад - **Выручка**: жильё + **паркинг** (spaces × 1.9М) - **Затраты**: СМР(резид+паркинг) + ПИР 2.5% + сети/ТУ 6000₽/м² + услуги 1.5% + резерв 3% + маркетинг/риэлтор 7% + земля - **БДР**: валовая маржа → НДС (упрощённо) → прибыль до налога → налог 25% (ФЗ 176-ФЗ) → **чистая прибыль** → ROI + чистая маржа% - Нормативы документированы (Excel-эталон + RU-рынок) `FinancialModel` +16 additive-полей (старые 4 сохранены, backward-compat). IRR честно помечен `irr_is_proxy=True` (не DCF). НДС — документированное упрощение. Офисы пропущены (нет в TEAP). ## Честность VAT/IRR-упрощения задокументированы в 3 местах (docstring + PDF-сноска + UI-аккордеон), не выдаются за НК-точность/настоящий IRR. ## Test plan - [x] mypy **strict** clean (`generative.*`); ruff clean - [x] +тесты (каскад sum-identity, паркинг, налоги срезают маржу, нет налога при убытке, backward-compat, edge cost=0), 36 passed - [x] **api-types.ts регенерён авторитетно** (openapi-typescript+prettier как CI → openapi-codegen-check git-diff будет зелёным) - [x] frontend tsc clean; PDF + concept UI показывают полный БДР + чистую прибыль/ROI - [x] code-reviewer ✅ APPROVE (каскад выверен до копейки) - [ ] post-deploy: concept-отчёт показывает чистую прибыль/ROI/каскад ## Follow-up (PR-2+) - PR-2: калибровка цен/себест по Objective/market (сейчас хардкод-классы); ROI display-cap для вырожденных входов - PR-3: помесячный DCF → настоящие NPV/IRR/PBP - PR-4: подключить к site-finder cockpit Investment Clearance + финансирование Refs #1881 🤖 Generated with [Claude Code](https://claude.com/claude-code)
bot-backend added 1 commit 2026-06-23 11:46:22 +00:00
feat(generative): full static developer financial cascade (epic #1881 PR-1)
All checks were successful
CI / changes (pull_request) Successful in 6s
CI / frontend-tests (pull_request) Successful in 1m5s
CI / openapi-codegen-check (pull_request) Successful in 1m58s
CI / backend-tests (pull_request) Successful in 10m10s
65bab902e1
Объединяет наше (площади из реальной геометрии teap) + полноту девелоперской
Excel-модели (каскад затрат + БДР с налогами). Расширяет financial.py из
статического GDV−COST в полный статический расчёт. БЕЗ DCF (PR-3), БЕЗ новых
вводных от пользователя — только нормативы + существующий TEAP.

Каскад (financial.py):
- Выручка: жильё (residential×price) + ПАРКИНГ (spaces×1.9М)
- Затраты: СМР(резид+паркинг) + ПИР 2.5% + сети/ТУ 6000₽/м² + услуги заказчика
  1.5% + резерв 3% + маркетинг/риэлтор 7% выручки + земля
- БДР: валовая маржа → НДС (упрощённо) → прибыль до налога → налог 25% (ФЗ
  176-ФЗ) → ЧИСТАЯ прибыль → ROI + чистая маржа%
- Нормативы документированы (источник: Excel-эталон «Авангардная 13» + RU-рынок)

FinancialModel (concept.py): +16 additive-полей (revenue breakdown, cost cascade,
БДР/налоги, roi, margin_pct, irr_is_proxy). Старые 4 поля сохранены (backward-compat).

IRR честно помечен irr_is_proxy=True (annualized net ROI, не DCF) — настоящий
IRR/NPV/PBP в PR-3 (помесячный cashflow). НДС — документированное упрощение, не
точный НК РФ. Офисы пропущены (нет площади в TEAP).

PDF + concept UI: полный БДР-каскад + чистая прибыль/ROI + честные сноски.
api-types.ts регенерён авторитетно (openapi-typescript + prettier, как CI).

mypy strict clean (generative.*), +тесты (каскад/паркинг/налоги/backward-compat/
edge cost=0), 36 passed.

Refs #1881
bot-backend merged commit 29bbe47ed8 into main 2026-06-23 11:57:06 +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#1882
No description provided.