# Vaatimukset — Gitea Actions CI -kirjasto > Funktionaaliset vaatimukset käyttäjän näkökulmasta. Muoto: käyttötapaukset (use cases). --- ## UC1: Kehittäjä näkee commitin build-statuksen **Actor:** Kehittäjä **Precondition:** Workflow on käynnissä tai päättynyt **Main success:** - Kehittäjä avaa commitin Giteassa - Näkee job-statukset automaattisesti: spinner (käynnissä), checkmark (ok), risti (feilasi) - Testijobit näyttävät statuksen linkillä: "unit-tests Link to Bats reports", "acc-tests Link to Cucumber reports" - Klikkaamalla testistatusta kehittäjä pääsee suoraan HTML-raporttiin git-pagesissa - Docker-build näyttää linkin konttirekisteriin **Poikkeukset:** - Statusviesti puuttuu (workflow kaatui ennen raportointia) → commitissa näkyy timeout/error - Useampi workflow samalle commitille → statukset erottuvat `context`-avaimella --- ## UC2: Kehittäjä lukee testiraportteja selaimessa **Actor:** Kehittäjä **Precondition:** Build on valmistunut, raportit julkaistu git-pagesiin **Main success:** - Kehittäjä klikkaa commitin status-kuvaketta (esim. "unit-tests") - Selain avautuu suoraan HTML-raporttiin git-pagesissa - Bats-raportissa näkyy: testitulokset, code coverage - Cucumber-raportissa näkyy: mitkä testit menivät läpi, mitkä epäonnistuivat, stack tracet **Poikkeukset:** - Raporttia ei ole (testit skipattiin, workflow kaatui ennen julkaisua) → 404 --- ## UC3: Kehittäjä vertailee kahden buildin raportteja **Actor:** Kehittäjä **Precondition:** Projektilla on vähintään kaksi buildia **Main success:** - Kehittäjä avaa kaksi buildia Gitean Actions-näkymässä eri välilehtiin - Voi verrata Cucumber-tuloksia: "build #42 vs #41 — mikä testi meni rikki?" --- ## UC4: Kehittäjä jäljittää kontin koko ketjun commitista (tuleva) **Actor:** Kehittäjä **Precondition:** Mikropalvelun commitista on ajettu deployment ja klusteritestit **Main success:** - Kehittäjä avaa mikropalvelun commitin - Näkee statusviestit: "Build OK", "Deployed to staging", "Integration tests OK" - Klikkaamalla statusta siirtyy toisen repon committiin - Koko ketju on navigoitavissa edestakaisin commit-statuslinkkien kautta --- ## UC5: Kehittäjä näkee deployatun version ympäristössä (tuleva) **Actor:** Kehittäjä **Precondition:** Deployment on suoritettu **Main success:** - Avaa Helm-repon commitin - Näkee suoraan mikä konttiversio on deployattu - Voi verrata mikropalvelun uusimpaan commitiin — onko ympäristö ajan tasalla? --- ## UC6: Kehittäjä saa Gitea 1.27+ Summary-näkymän raporttilinkeistä (tuleva) **Actor:** Kehittäjä **Precondition:** Gitea 1.27+ ja päivitetty runner **Main success:** - Avaa workflow'n Gitea Actionsissa - "Report Summary" -jobin Summary-välilehdellä näkyy taulukko linkeillä kaikkiin raportteihin - Yhdellä silmäyksellä näkee mitä testejä ajettiin ja pääsee klikkaamalla raportteihin --- ## Ei-toiminnalliset vaatimukset | Vaatimus | Toteutus | |---|---| | Raportit selailtavissa HTML:nä | git-pages static hosting | | Linkki commitista suoraan raporttiin | Commit-status API:n `target_url` | | Raporttien pysyvyys | git-pages retention sidecar | | Virheiden propagointi | Gitea Actions `needs`-ketju | | Pipeline-pysäytys virhetilanteessa | `needs` automaattinen skip | | Exit-koodi ainoa totuus | ADR 0008 | | Statusraportointi vain raporttilinkeille | ADR 0007 |