Files
VacatureRadar/docs/product/USER_STORIES.md
Jens b8091e59bd
deploy / deploy (push) Canceled after 0s
Initial deploy setup
2026-07-21 14:00:00 +02:00

113 lines
3.5 KiB
Markdown

# User stories en primaire flows
## Persona
De gebruiker wil geen dagelijkse zoekmachine bedienen. Hij wil enkele sterke vacatures zien, begrijpen waarom ze passen en snel opvolgen wat hij ermee deed.
## Onboarding
### US-001 — Zoekprofiel instellen
Als gebruiker wil ik mijn gewenste rollen, skills, regio en harde uitsluitingen één keer instellen zodat de tool daarna zelfstandig zoekt.
Acceptatie:
- defaults zijn direct bruikbaar;
- titel/skillvelden ondersteunen meerdere regels;
- locatie kan eerst zonder coördinaten worden opgeslagen;
- ongeldige drempels of coördinaten geven veldgerichte feedback;
- opslaan maakt een profielrevisie.
### US-002 — Veilige bronkanalen kiezen
Als gebruiker wil ik vacaturemails en publieke werkgeversbronnen kunnen activeren zonder platformlogins aan de tool te geven.
Acceptatie:
- mailboxconfiguratie staat alleen in secrets/environment;
- denylistlinks uit mails worden als aliassen opgeslagen maar niet door de fetcher bezocht;
- onbekende bron blijft in review.
## Dagelijkse lus
### US-010 — Beste matches bekijken
Als gebruiker wil ik bij het openen maximaal een overzichtelijke selectie zien zodat ik niet opnieuw honderden resultaten hoef te filteren.
Acceptatie:
- actieve, niet-hard-uitgesloten vacatures eerst;
- één kaart per canonieke vacature;
- score, werkgever, locatie, werkvorm en kernreden zichtbaar;
- sterke en mogelijke matches duidelijk onderscheiden.
### US-011 — Begrijpen waarom iets past
Als gebruiker wil ik bewijs, pluspunten en aandachtspunten zien zodat ik de score kan vertrouwen en corrigeren.
Acceptatie:
- scorecomponenten en confidence zijn zichtbaar;
- onbekende afstand/salaris wordt als onbekend gemeld;
- herkomstlinks blijven bereikbaar;
- gesanitized vacaturetekst bevat geen uitvoerbare scripts/forms.
### US-012 — Snelle feedback
Als gebruiker wil ik met één actie interessant, bewaren, verbergen of gesolliciteerd registreren.
Acceptatie:
- actie is CSRF-beschermd en user-scoped;
- verbergen verwijdert de vacature uit toekomstige digests;
- gesolliciteerd maakt een dossier en bewaart een snapshot;
- geen actie verstuurt iets naar de werkgever.
## Meldingen
### US-020 — Dagelijkse digest
Als gebruiker wil ik één samenvatting ontvangen zodat ik de interface niet voortdurend hoef te controleren.
Acceptatie:
- één outboxrecord per profiel/dag;
- herhaald uitvoeren verzendt niet dubbel;
- sterke en mogelijke matches worden geteld;
- zonder ontvanger wordt veilig overgeslagen;
- verzendfouten blijven retrybaar en zichtbaar.
### US-021 — Deadline en opvolging
Als gebruiker wil ik herinnerd worden aan sluitings- en opvolgdata zodat kansen niet ongemerkt verlopen.
Acceptatie:
- reminders respecteren quiet hours;
- verlopen vacature wordt niet als nieuwe match gemeld;
- herinnering bevat bronlink en dossierstatus;
- gebruiker kan herinnering uitschakelen.
## Beheer en herstel
### US-030 — Bronproblemen zien
Als gebruiker wil ik zien welke bronnen gezond, vertraagd of geblokkeerd zijn zonder logs te lezen.
Acceptatie:
- status, laatste succes/fout, volgende run en reden zichtbaar;
- handmatige retry respecteert denybeleid;
- herhaalde parsefout degradeert bron, niet hele app.
### US-031 — Herstellen na storing
Als beheerder wil ik back-up en restore kunnen uitvoeren zodat profiel, vacatures en sollicitatiedossiers niet verloren gaan.
Acceptatie:
- database- en mediaback-up zijn apart;
- restore vereist expliciete bevestiging;
- hersteltest is gedocumenteerd;
- secrets worden niet in gewone databack-up opgenomen.