8000 docs: STRATEGIC_PLAN.md (phases 0-5 completed) by dominicusin · Pull Request #55 · dominicusin/package-maximizer · GitHub
[go: up one dir, main page]

Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions STRATEGIC_PLAN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Стратегический план развития package-maximizer — ИТОГ (2026-08-31)

> Выполнено автономно в рамках одной сессии. Все этапы 0–5 реализованы,
> слиты в `main`, релиз 0.5.0 опубликован на PyPI.

## Результаты по этапам

| Этап | Что сделано | PR | Статус |
|------|-------------|----|----|
| **0** Версия/доки | `fallback_version` 0.1.0→0.5.0; CHANGELOG честно (JWT/limiter → Planned); docstring web/app.py FastAPI→Flask; **восстановлен токен-подход PyPI** (`PYPI_API_TOKEN`, работал 0.1.1) | #50 | ✅ MERGED `92012d1` |
| **1** Тяжёлые солверы | Unified + weighted + ortools/pulp тесты (96 новых); **исправлены баги**: z3 `RealVal`, minisat/solve_with_weights (возвращал несовместимое множество), enhanced_greedy (вытеснял более тяжёлые) | #51 | ✅ MERGED `4030870` |
| **2** Integrations | Полное покрытие `real_repo_integration.py` (mock subprocess, все 4 менеджера × success/FileNotFound/Timeout) — **41%→90%** | #52 | ✅ MERGED `fc62f87` |
| **3** Web API | Тесты всех 16 endpoints (auth-gate, maximize, cache, errors) — **67%→79%** | #53 | ✅ MERGED `a38a3ae` |
| **4** TUI + gate | Глубокие TUI-тесты через `run_test()` — **22%→89%**; **исправлен баг** TUI (конфликт id `log`/`Log` → `WrongType` при нажатии Run); CI ставит `tui` extra; фатальный `--cov-fail-under=85` (только ubuntu, где все солверы собираются) | #54 | ✅ MERGED `3e0cfe6` |
| **5** Релиз | Тег `v0.5.0` → `publish.yml` (token) → **PyPI 0.5.0 live**; версия синхронизирована (CHANGELOG=PyPI=fallback=0.5.0) | — | ✅ RELEASED |

## Метрики
- **Тесты**: 308 → **474 passed** (+166), 2 skipped (TUI importorskip на платформах без textual).
- **Покрытие**: 76% → **84% локально / ≥85% в CI** (ubuntu gate проходит).
- **Солверы**: maxsat 90%, minisat 82%, z3 82%, enhanced_greedy 86%, greedy 86%, pulp 68%, ortools 70% (локально; в CI с libz выше).
- **Баги исправлены** (вскрыты тестами): z3 RealVal, minisat несовместимое множество, enhanced_greedy веса, TUI WrongType, повторяющийся id Log.

## Сервисы (проверено)
- **PyPI** `0.5.0`: Homepage→GitHub, Documentation→RTD, Repository→GitHub ✅
- **RTD** `package-maximizer.readthedocs.io`: 302 (живой, builds green) ✅
- **GitHub Pages** `dominicusin.github.io/package-maximizer/`: 200 (landing обновлён) ✅

## Открытые вопросы (решены в Этапе 0)
1. Версия: синхронизирована на **0.5.0** (CHANGELOG + fallback + PyPI).
2. JWT: **не реализован** (только API-key + in-memory limiter) — задокументировано как Planned в CHANGELOG.
3. `real_repo_integration`: оставлен в core (опционально через mock-тесты, без реальных вызовов).

## Следующие шаги (вне этой сессии)
- Поднять ortools/pulp до ≥85% (в CI уже выше из-за libz; локально блокируется libz в subprocess).
- Реализовать JWT (если требуется) — добавить в CHANGELOG как done.
- Настроить OIDC Trusted Publishing на PyPI-стороне (опционально, вместо токена).
Loading
0