docs(state): Phase 1 MVP LIVE — backend+frontend deployed, smoke checks green
This commit is contained in:
@@ -1,10 +1,30 @@
|
|||||||
# Premium Mechanic PWA — Implementation State
|
# Premium Mechanic PWA — Implementation State
|
||||||
|
|
||||||
> Last updated: 2026-05-17 (Phase 1 MVP code-complete, awaiting production deploy)
|
> Last updated: 2026-05-17 (Phase 1 MVP LIVE IN PRODUCTION)
|
||||||
|
|
||||||
## Status: **READY TO DEPLOY** (Phase J prep done, awaiting explicit user OK)
|
## Status: 🟢 **DEPLOYED — Phase 1 MVP LIVE on https://mechanic.pptaxi.ru**
|
||||||
|
|
||||||
Backend (Phases B-F) and Frontend (Phases G-I) are feature-complete and pushed to Gitea. Deployment is the only step left — it requires SSH into `root@100.64.0.12` (prod VDS), Docker compose restart, and Caddy reload. **Not executed automatically.** See "Deployment runbook" section below for the exact steps.
|
All 4 deployment phases executed successfully:
|
||||||
|
|
||||||
|
- ✅ **J1 Backend**: `git push vds feat/mechanic-mvp` → checkout on VDS → `docker build` → rolling restart blue+green → healthz 5/5 green on `https://crm.pptaxi.ru/api/v1/mechanic/healthz`
|
||||||
|
- ✅ **J2 Frontend**: `scp dist/` → VDS at `/opt/sites/mechanic-pwa/dist/` (448K) → added Caddy block + bind mount → `docker compose up -d --force-recreate caddy` → Let's Encrypt cert auto-issued → HTTPS 200 on `https://mechanic.pptaxi.ru/`
|
||||||
|
- ✅ **J3a Merge**: `feat/mechanic-mvp` → `main` (ff-only) in BOTH repos, pushed to Gitea + VDS
|
||||||
|
- ✅ **J3b Prod sync**: VDS now on `main` branch, healthz still green
|
||||||
|
|
||||||
|
**Smoke checks passed:**
|
||||||
|
| Check | Result |
|
||||||
|
|---|---|
|
||||||
|
| `GET https://mechanic.pptaxi.ru/` | 200 OK, text/html, served from SPA |
|
||||||
|
| `GET /manifest.webmanifest` | JSON with `"name": "Premium Механик"` |
|
||||||
|
| `GET /api/v1/mechanic/healthz` (via mechanic.pptaxi.ru) | `{"status":"ok"}` |
|
||||||
|
| `GET /api/v1/mechanic/me` (no auth) | 401 |
|
||||||
|
| `GET /api/v1/mechanic/vehicles` (no auth) | 401 |
|
||||||
|
| `GET /icons/icon-192.png` | 200 image/png, 2326 bytes |
|
||||||
|
| `GET /sw.js` (service worker) | 200 text/javascript |
|
||||||
|
| `GET /vehicles/12345` (SPA route) | 200 text/html (index.html fallback) |
|
||||||
|
| `crm.pptaxi.ru/api/v1/mechanic/healthz` x5 | 5/5 ok (both blue+green serving) |
|
||||||
|
|
||||||
|
**Remaining manual smoke (mobile, J3 step 8):** open `https://mechanic.pptaxi.ru` on Android Chrome / iOS Safari, login with test mechanic account, create inspection, snap photo, verify MinIO upload + thumbnail appears, verify "Add to Home Screen" works. *Not automated — you'll do that on a phone.*
|
||||||
|
|
||||||
## What is done
|
## What is done
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user