Polish AI Labs density
GeoIntel CI / docs-smoke (push) Has been cancelled
GeoIntel CI / contract-smoke (push) Has been cancelled

This commit is contained in:
Codex
2026-06-20 22:55:35 +02:00
parent 335d5d1869
commit 5544c92006
8 changed files with 476 additions and 208 deletions
+35
View File
@@ -3175,3 +3175,38 @@ Limitations:
Next recommended pass:
- Continue with AI Labs run-form hierarchy and detection/segmentation result density after this pass is deployed and visually checked.
## Sprint 88 AI Labs density polish (2026-06-20)
Changed:
- Wrapped Detection Lab and Segmentation Lab in shared `ai-lab-shell` workspace shells.
- Grouped model registry states into `ai-lab-model-surface` with a shared `ai-lab-state-stack`.
- Grouped run controls into `ai-lab-run-surface`.
- Grouped persisted detection/segmentation result loading and tables into `ai-lab-results-surface`.
- Grouped QA controls and metric summaries into `ai-lab-qa-surface`.
- Added shared AI Lab CSS contracts for compact model grids, form grids and summary grids.
- Added `backend/tests/test_sprint88_ai_lab_density.py`.
- Updated `frontend/README.md`, `docs/TODO.md` and `CHANGELOG.md`.
Tested:
- Red step: `python -m pytest backend/tests/test_sprint88_ai_lab_density.py -q` failed on missing AI Lab shells/surfaces and CSS contracts.
- `python -m pytest backend/tests/test_sprint88_ai_lab_density.py backend/tests/test_sprint8c_detection_visualization_qa.py backend/tests/test_sprint9_segmentation_foundation.py backend/tests/test_sprint39_frontend_orchestration_hooks.py backend/tests/test_sprint47_workbench_interaction_smoke.py -q` (`34 passed`)
- `cd frontend && npm run typecheck`
- `cd frontend && npm run build`
- Local browser UI check against `http://127.0.0.1:5174` passed on desktop and mobile: Detection/Segmentation shells and model/run/result/QA surfaces rendered, no horizontal overflow and no console warnings/errors. The local-only screenshot showed expected API 500 states because only the frontend Vite server was running.
- First full readiness run caught legacy AI Lab static contract expectations for exact `lab-block` and `result-summary-card` class names. Kept those compatibility anchors while preserving the new AI Lab surfaces.
- `python -m pytest backend/tests/test_sprint50_workspace_usability_polish.py backend/tests/test_sprint75_ai_labs_mobile_polish.py backend/tests/test_sprint88_ai_lab_density.py -q` (`8 passed`)
- `bash scripts/run_readiness_check.sh` (`299 passed`; frontend typecheck/build passed; Alembic head `202606120900`; live smoke syntax passed)
- Tower deploy via `scripts/deploy_tower.ps1` rebuilt and restarted the all-in-one container on `http://192.168.10.150:1202`.
- Tower deploy live migration smoke passed with PostGIS `3.6 USE_GEOS=1 USE_PROJ=1 USE_STATS=1` and required runtime schema objects present.
- Browser runtime verification passed for frontend, proxied API and icon.
- Live browser AI Labs check against `http://192.168.10.150:1202` passed on desktop and mobile: Detection/Segmentation shells and model/run/result/QA surfaces rendered, no horizontal overflow and no console warnings/errors.
Open:
- None known after full readiness, Tower deploy and live browser validation.
Limitations:
- Frontend AI Labs presentation hierarchy only; no detection/segmentation behavior, API contract, persistence, migration, provider fetching or AI/model changes.
Next recommended pass:
- Continue with export/system final visual consistency or live workflow guidance once this pass is deployed and visually checked.