4.0 KiB
P3-A hurtig bølge — 10. august 2026
Formål
Denne rapport dokumenterer den første hurtige P3-bølge udført efter tømrer-metoden: start med de små, målbare forbedringer, test hvert lag, notér fund og markér kun et punkt færdigt, når det virker i den kørende platform.
Arbejdet er teknisk klargøring til den månedlige feltkontrol. Det er ikke en erstatning for et rigtigt, tidsmålt kundebesøg på mobil.
Resultat
| P3 | Resultat | Bevis |
|---|---|---|
| 21 — Mål tiden til tilbud | ✅ Løst | Projektstart, kunde, geometri, smart udkast, Final Review, PDF og klar til afsendelse gemmes som tidsmilepæle. Et komplet kontrolflow blev skrevet og læst tilbage fra live-scorekortet. |
| 22 — Kontekstbaseret feedback | ✅ Løst | Feedback-dialogen vedhæfter side, projekt-id, trin, URL uden query-parametre og viewport. Playwright kontrollerede den faktiske ticket-payload. |
| 35 — Ydelsesbudget | ✅ Løst | Scorekortet kontrollerer mobil indlæsning mod 3.000 ms, API-svar mod 1.000 ms og POST/PUT/PATCH-gemninger mod 1.500 ms. |
| 40 — Månedligt produktscorekort | ✅ Løst | 30-dages API viser tilbudstider, færdiggørelse, feedback, performance, rettelser, genåbninger og PDF-fejl både samlet og pr. måned. |
Privatliv og datagrænse
Telemetry-tabellen accepterer kun kendte eventtyper. Metadata er begrænset til kilde, viewport, forbindelsestype og projekttype. Den gemmer ikke kundenavn, adresse, tilbudslinjer, noter eller feedbacktekst. Projekt-id bruges kun til at forbinde tekniske milepæle i samme tilbudsflow.
Feedbackteksten sendes fortsat til supportsystemet, men indgår ikke i produktscorekortet. Scorekortet tæller kun, at feedback blev åbnet eller sendt.
Live-verifikation
PM2-processen tilbudgivern-unified blev genstartet og kom online med PID 138080. Følgende blev derefter verificeret direkte mod http://127.0.0.1:4032:
POST /api/product-telemetry/eventsoprettede telemetry-tabellen og returnerede HTTP 201.- Et kontrolleret mobilflow for projekt 392 blev registreret med milepæle ved 0, 10, 20, 30, 40 og 41 sekunder.
GET /api/product-telemetry/scorecard?days=30returnerede 1 flow, 100 % PDF-færdiggørelse og 100 % klar-til-afsendelse for kontrolflowet.- En kontrolleret mobil indlæsning på 850 ms blev rapporteret som inden for budgettet på 3.000 ms.
- De eksisterende request-logs gav 12 ms gennemsnitlig API-svartid og 23 ms gennemsnitlig gemmetid. Historiske maksimumværdier og budgetbrud er synlige i scorekortet og må ikke forveksles med kontrolflowets tider.
Kontrolflowet er mærket source: verification og skal derfor behandles som syntetisk data, ikke som en virkelig feltbaseline.
Fund under arbejdet
En frontendtest fandt, at en milepæl med målt tid på præcis 0 ms blev opfattet som ikke-registreret og derfor kunne sendes igen. Årsagen var en truthy-kontrol på tidsværdien. Kontrollen bruger nu felteksistens, så også nulværdier deduplikeres korrekt.
Den første serverkontrol blev sendt umiddelbart efter PM2-genstart og ramte opstartsperioden, før port 4032 lyttede. En efterfølgende readiness-kontrol viste serveren online, hvorefter alle live-kald bestod. Dette ændrede ikke data eller tilbud.
Testresultater
- Backend: 35 testsuites og 170 tests bestået med coverage-kørsel.
- Frontend: 8 testsuites og 17 tests bestået.
- Frontend production build: bestået.
- Playwright, feedback og automatisk kontekst: 1/1 bestået i Chromium mod den kørende platform.
- Målrettede telemetry-tests: backend 3/3 og frontend/support 5/5 bestået før den brede regression.
Næste metodiske trin
- Kør et rigtigt tilbud fra start til kundeklar PDF på en 390 px mobilskærm og tag tiden uden at bruge de syntetiske kontrolværdier som baseline.
- Notér klik, dobbeltindtastninger, tilbagehop, uklare valg og nødvendige manuelle rettelser i
MAANEDLIG_TOEMRER_KONTROL_2026-08.md. - Brug den største observerede feltflaskehals til at vælge næste lille P3-B-opgave; løft en blokering til P0/P1 med det samme.