docs: update sprint 1 docs after manual testing
- СПРИНТЫ.md: mark Sprint 1 as completed (✅), check all tasks, add 4 bugs found and fixed during testing - ШАГ_006.md: add bugs table with symptoms, causes and fixes Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+22
-15
@@ -11,30 +11,37 @@
|
||||
|
||||
---
|
||||
|
||||
## Спринт 1 — Инфраструктура + Создание тестов
|
||||
## Спринт 1 — Инфраструктура + Создание тестов ✅
|
||||
|
||||
**Результат:** Поднят весь стек, можно зайти на страницу и создать тест.
|
||||
**Статус:** Завершён и протестирован вручную в браузере.
|
||||
|
||||
### Инфраструктура
|
||||
- [ ] Структура репозитория: `backend/`, `frontend/`, `nginx/`, `docker-compose.yml`
|
||||
- [ ] `docker-compose.yml`: сервисы `db`, `backend`, `frontend`, `nginx`
|
||||
- [ ] PostgreSQL: контейнер, volume для данных
|
||||
- [ ] FastAPI: контейнер, `GET /api/health` → `{"status": "ok"}`
|
||||
- [ ] Alembic: инициализирован, первая миграция (пустая схема)
|
||||
- [ ] React + Vite: контейнер, базовая страница открывается в браузере
|
||||
- [ ] Nginx: `/` → React SPA, `/api/` → FastAPI
|
||||
- [x] Структура репозитория: `backend/`, `frontend/`, `nginx/`, `docker-compose.yml`
|
||||
- [x] `docker-compose.yml`: сервисы `db`, `backend`, `frontend`, `nginx`
|
||||
- [x] PostgreSQL: контейнер, volume для данных
|
||||
- [x] FastAPI: контейнер, `GET /api/health` → `{"status": "ok"}`
|
||||
- [x] Alembic: инициализирован, первая миграция (`001_init`)
|
||||
- [x] React + Vite: контейнер, базовая страница открывается в браузере
|
||||
- [x] Nginx: `/` → React SPA, `/api/` → FastAPI
|
||||
|
||||
### Создание тестов (без авторизации)
|
||||
- [ ] Модели БД: `Test`, `Question`, `Answer`
|
||||
- [ ] API: `POST /api/tests` — создать тест с вопросами и ответами
|
||||
- [ ] API: `GET /api/tests` — список тестов
|
||||
- [ ] API: `GET /api/tests/{id}` — детали теста
|
||||
- [ ] Фронт: страница создания теста (название, вопросы, варианты, настройки)
|
||||
- [ ] Фронт: список тестов
|
||||
- [ ] Фронт: страница просмотра теста
|
||||
- [x] Модели БД: `Test`, `Question`, `Answer`
|
||||
- [x] API: `POST /api/tests` — создать тест с вопросами и ответами
|
||||
- [x] API: `GET /api/tests` — список тестов
|
||||
- [x] API: `GET /api/tests/{id}` — детали теста
|
||||
- [x] Фронт: страница создания теста (название, вопросы, варианты, настройки)
|
||||
- [x] Фронт: список тестов
|
||||
- [x] Фронт: страница просмотра теста
|
||||
|
||||
**Настройки теста:** порог зачёта (%), таймер (опционально), разрешить возврат к предыдущему вопросу
|
||||
|
||||
### Баги, найденные и исправленные при тестировании
|
||||
- [x] `permission denied` на `entrypoint.sh` — volume mount перекрывал `chmod +x` из Dockerfile → исправлено: `CMD ["bash", "entrypoint.sh"]`
|
||||
- [x] `No module named 'app'` в Alembic — Python не видел `/app` → исправлено: `ENV PYTHONPATH=/app` в Dockerfile
|
||||
- [x] `host not found in upstream "backend"` в nginx — nginx резолвил хост при старте, до поднятия backend → исправлено: Docker DNS resolver + `set $backend`
|
||||
- [x] `http://localhost/api/docs` → 404 — FastAPI отдавал docs по `/docs`, а не `/api/docs` → исправлено: явные `docs_url`, `redoc_url`, `openapi_url` в FastAPI
|
||||
|
||||
---
|
||||
|
||||
## Спринт 2 — Прохождение теста
|
||||
|
||||
Reference in New Issue
Block a user