From 0101660bd70a22bbb36563b120e28da22ed25ed9 Mon Sep 17 00:00:00 2001 From: Jens Date: Wed, 22 Jul 2026 20:48:48 +0200 Subject: [PATCH] docs: complete Stitch frontend replacement --- CHANGELOG.md | 17 +++ README.md | 20 ++- docs/ai/BACKLOG.yaml | 6 +- docs/ai/PROJECT_STATE.md | 26 +++- docs/design/ACCESSIBILITY.md | 87 ++++------- docs/design/DESIGN_SYSTEM.md | 156 ++++++------------- docs/design/STITCH_INTEGRATION_PLAN.md | 4 +- docs/design/STITCH_INTEGRATION_REPORT.md | 94 ++++++++++++ docs/design/UX_SPEC.md | 182 +++++------------------ docs/quality/TRACEABILITY_MATRIX.md | 3 +- 10 files changed, 268 insertions(+), 327 deletions(-) create mode 100644 docs/design/STITCH_INTEGRATION_REPORT.md diff --git a/CHANGELOG.md b/CHANGELOG.md index aef561d..2540ee7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,23 @@ Alle betekenisvolle wijzigingen worden hier bijgehouden. Het project volgt voorlopig een pre-1.0 semantische versieaanpak. +## 0.3.0 — 2026-07-22 + +### Gewijzigd + +- De voormalige MVP-frontend is volledig vervangen door één high-fidelity, server-rendered Stitch Intelligence Cockpit met nieuwe lokale tokens, shell, SVG-iconen, responsive lagen en progressive enhancement. +- Alle negen Stitch-schermen zijn functioneel gekoppeld: dashboard, vacatureverkenner/detail, sollicitatiepipeline, zoekprofiel, brongezondheid, automatisering, activiteit en werkgeversintelligence. +- Login, skillsradar, dossieredit, foutpagina's, empty states en messages gebruiken dezelfde componenttaal; de normale productiefrontend heeft geen legacyflag of parallelle shell. +- Nieuwe read services leveren echte dashboard-, vacature-, activiteit-, werkgever- en automationdata; vacaturefilters tonen standaard alleen aantoonbaar IT-relevante kansen. +- Sollicitatiestatus is een gebruikersgescopeerde CSRF-POST met audittrail. Niet-bestaande runtime- of marktdata blijft expliciet onbekend in plaats van gesimuleerd. +- Bronhealth gebruikt één geslicete prefetch voor alle bronnen; het automatiseringsscherm daalde in de representatieve dataset van 63 naar 23 queries. + +### Verificatie + +- De geïntegreerde Codex-browser controleerde alle negen schermen op desktop en 390 px, plus kernflows op 360, 768, 1024, 1280, 1440, 1920 en 2560 px zonder documentoverflow, kapotte assets of consolewaarschuwingen. +- Elf screenshots staan onder `artifacts/visual-validation/`; dark/light, mobiele drawer en toegankelijke actielabels zijn functioneel getest. +- Gerichte regressies, Ruff, Django system check, migratiecheck en de queryregressietest zijn groen; de volledige gate-uitkomst staat in `docs/ai/PROJECT_STATE.md`. + ## 0.2.13 — 2026-07-22 ### Gewijzigd diff --git a/README.md b/README.md index a4b5ea2..4e8b581 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # VacatureRadar -VacatureRadar is een persoonlijke, vrijwel autonome vacature-assistent voor toegestane publieke werkgeversbronnen, publieke ATS-pagina's, RSS/Atom en vacaturemails. De applicatie verzamelt vacatures, normaliseert en dedupliceert ze, past harde filters toe, berekent een uitlegbare matchscore en bundelt de beste resultaten in een dagelijkse digest. +VacatureRadar is een persoonlijke, vrijwel autonome vacature-assistent voor toegestane publieke werkgeversbronnen, publieke ATS-pagina's, RSS/Atom en vacaturemails. De applicatie verzamelt vacatures, normaliseert en dedupliceert ze, past harde filters toe, berekent een uitlegbare matchscore en presenteert vacatures, skillsvraag, werkgevers, opvolging en bronstatus in een Stitch-gebaseerde Intelligence Cockpit. De repository bevat zowel een **werkende MVP-kern** als de volledige product-, architectuur-, UX-, beveiligings-, operationele en agentische overdrachtsdocumentatie om het project verder autonoom af te bouwen. @@ -8,7 +8,7 @@ De repository bevat zowel een **werkende MVP-kern** als de volledige product-, a Reeds geïmplementeerd: -- Django 5.2-modulaire monoliet met Nederlandstalige responsive dark/light Intelligence Cockpit; +- Django 5.2-modulaire monoliet met de volledige Nederlandstalige, responsive dark/light Stitch Intelligence Cockpit; - PostgreSQL in productie en SQLite voor lokale ontwikkeling; - Celery-worker en scheduler via Redis; - veilige HTTP-fetcher met domeinbeleid, redirecthercontrole, contentlimieten en SSRF-blokkering; @@ -17,19 +17,29 @@ Reeds geïmplementeerd: - exacte en fuzzy deduplicatie; - deterministische kenmerken, harde uitsluitregels en uitlegbare scoring; - zoekprofielen met revisiehistoriek en begrensde feedbackaanpassing; -- dagelijkse digests, vacaturelevenscyclus en sollicitatiedossiers; +- dagelijkse digests, vacaturelevenscyclus, auditbare sollicitatiepipeline en activiteitstijdlijn; +- werkgeversintelligence, persoonlijke skillsradar en eerlijke operationele automatiseringsstatus; - optionele lokale Ollama-analyse met prompt-injectionguardrails; - Docker Compose voor lokaal gebruik en een Unraid-variant; - tests, fixtures, CI, back-up-/herstelscripts en healthchecks. Nog niet als productievoltooid beschouwd: -- live broninventaris en bronvoorwaarden per concrete werkgever; -- een gekozen actuele geodataset met licentie; +- periodieke menselijke voorwaardenreview voor bijkomende live werkgeversbronnen; - productiespecifieke secrets, mailboxcredentials, domein/TLS en containerregistry. Deze punten staan als uitvoerbare taken in [`docs/ai/BACKLOG.yaml`](docs/ai/BACKLOG.yaml). Externe credentials blokkeren nooit de rest van het werk: taken worden met mocks en interfaces afgewerkt en daarna als `blocked-external` gedocumenteerd waar echte configuratie nodig is. +## Frontend en visuele validatie + +De enige normale browserfrontend is de server-rendered Stitch Intelligence Cockpit. Alle negen referentieschermen zijn aan echte Django-data gekoppeld; er is geen SPA, runtime-CDN, demo-KPI of oude parallelle shell. De ontwerpcontracten en gemotiveerde afwijkingen staan in: + +- [`STITCH_FRONTEND_CONTRACT.md`](docs/design/STITCH_FRONTEND_CONTRACT.md); +- [`STITCH_INTEGRATION_PLAN.md`](docs/design/STITCH_INTEGRATION_PLAN.md); +- [`STITCH_INTEGRATION_REPORT.md`](docs/design/STITCH_INTEGRATION_REPORT.md). + +De elf desktop-/mobielbeelden staan in `artifacts/visual-validation/` en zijn uitgesloten van de productiecontainer. De browsermatrix bestrijkt 360 tot 2560 px. + Release-productiepad: - `./scripts/release_verify.sh` bouwt de smoke-, backup/restore- en artifactcontrole; diff --git a/docs/ai/BACKLOG.yaml b/docs/ai/BACKLOG.yaml index b7b95b4..d60f26e 100644 --- a/docs/ai/BACKLOG.yaml +++ b/docs/ai/BACKLOG.yaml @@ -1717,7 +1717,7 @@ tasks: groen. - id: VR-213 title: Stitch responsive validatie en legacyverwijdering - status: ready + status: done priority: P0 requirement_ids: - NFR-004 @@ -1744,6 +1744,10 @@ tasks: - tests/e2e - artifacts/visual-validation - docs/design/STITCH_INTEGRATION_REPORT.md + result: + completed_at: '2026-07-22' + note: Alle negen Stitch-schermen zijn browsergevalideerd van 360 tot 2560 px; elf screenshots, accessibility-/legacy-/queryaudit + en documentatie afgerond. Volledige gate groen met 248 tests, 2 optionele skips en 84,40% coverage. - id: VR-301 title: Multi-tenant SaaS, teams en billing status: deferred diff --git a/docs/ai/PROJECT_STATE.md b/docs/ai/PROJECT_STATE.md index 026ae60..b80255c 100644 --- a/docs/ai/PROJECT_STATE.md +++ b/docs/ai/PROJECT_STATE.md @@ -1,7 +1,7 @@ # Projectstatus - Laatst bijgewerkt: 2026-07-22 -- Repositoryversie: 0.2.13 persoonlijke skillsvraag- en leerkansenradar +- Repositoryversie: 0.3.0 volledige Stitch Intelligence Cockpit - Uitvoeringsmodus: autonome backlog - Eerste uitvoerbare taak: controleer met `python scripts/backlog.py next` @@ -14,11 +14,33 @@ De repository bevat een uitvoerbare Django-MVP met: - JSON-LD-, HTML-, RSS/Atom- en e-mailadapters; - normalisatie, sanitization, werkgeverresolutie, dedupe, aliassen, provenance en versies; - deterministische features, harde exclusions, scores en optionele uitgeschakelde Ollama-boundary; -- responsive dark/light cockpitdashboard, vacaturelijst/detail, sollicitatiepipeline, profiel-, bron- en systeemschermen; +- volledige responsive dark/light Stitch-cockpit met negen functionele hoofdschermen, skillsradar, login en foutstates; - feedbackacties, applicationdossiers, lifecycle en dagelijkse digest-outbox; - Celeryworker/scheduler, healthchecks, Docker/Unraidconfiguratie en back-up-/herstelscripts; - offline unit-, integratie- en securitytests. +## Laatste frontendvervanging + +VR-209 tot en met VR-213 vervangen de oude browserfrontend integraal: + +- één nieuwe lokale Stitch-shell en design system zonder CDN of clientframework; +- echte dashboard-/vacature-intelligence, sollicitatiepipeline, profielconfigurator en source-healthinterface; +- nieuwe activiteit- en werkgeversroutes/read models en een eerlijke automationcockpit; +- standaard IT-relevantie, persoonlijke scorecontext en user-scoped mutaties blijven intact; +- browsermatrix van 360 tot 2560 px, elf actuele screenshots, schone console en geen documentoverflow; +- bronhealth-N+1 verwijderd: twee queries voor alle bron/runmetingen, 23 totale queries voor het representatieve automationscherm. + +Het volledige scherm- en afwijkingsrapport staat in `docs/design/STITCH_INTEGRATION_REPORT.md`. + +VR-209–213-verificatie op 2026-07-22: + +- 248 tests geslaagd, 2 optionele Playwrightvarianten overgeslagen en 84,40% branch-aware codedekking; +- Ruff, Django system check, migratiecheck, backlogvalidatie en repository-/documentvalidatie geslaagd via `scripts/codex_verify.sh`; +- alle negen routes in de geïntegreerde browser gecontroleerd zonder consolewaarschuwingen, kapotte assets of documentoverflow; +- browsermatrix: 360×800, 390×844, 768×1024, 1024×768, 1280×800, 1440×900, 1920×1080 en 2560×1440; +- elf actuele beelden onder `artifacts/visual-validation/`; artifacts en Stitch-referenties blijven buiten de productieimage; +- volgende uitvoerbare taak: geen; alleen de bestaande externe credentials-/infrastructuurblokkades en uitgestelde productkeuzes resteren. + ## Laatste geverifieerde baseline Release-audit op 2026-07-21: diff --git a/docs/design/ACCESSIBILITY.md b/docs/design/ACCESSIBILITY.md index 863975c..3213457 100644 --- a/docs/design/ACCESSIBILITY.md +++ b/docs/design/ACCESSIBILITY.md @@ -1,73 +1,42 @@ # Toegankelijkheid -Doel: WCAG 2.2 AA voor de kernflows. +Doel: WCAG 2.2 AA voor alle kernflows van de server-rendered Stitch-cockpit. -## Semantiek +## Productiecontract -- één `h1` per pagina, hiërarchische headings; -- navigatie in `