Rahandusministeerium · 22. juuli 2025
- Viit
- 12.2-10/25-165/199-5
- Registreeritud
- 22. juuli 2025
- Dokumendi liik
- Sissetulev kiri
- Adressaat
- osaühing BPW Consulting
- Saabumis/saatmisviis
- e-post
- Funktsioon
- 12.2 RIIGIHANGETEALANE TEGEVUS
- Sari
- 12.2-10 Riigihangete vaidlustusmenetluse toimikud
- Toimik
- 12.2-10/25-165
- Vastutaja
- Angelika Timusk (Rahandusministeerium, Riigihangete vaidlustuskomisjon)
Sisu (failidest)
TÄIENDAVAD SELGITUSED Riigihangete vaidlustuskomisjonile
21. juuli 2025
Vaidlustus nr 12.2-10/165 Riigihange nr 290452
Esitame täiendavad selgitused seoses hankija 16.07.2025 seisukohtadega.
1. Uurimispõhimõtte kohaldamine - 0% tulemus nõuab kontrolli
1.1. Hankija väidab (p 2.13), et "0%-line tulemus ei viita ilmselgelt tehnilisele
puudusele, vaid võib olla pakkuja valik". See väide on loogiliselt vastuoluline:
• Kui pakkuja teadlikult esitab 0% testikatte, teades et nõue on 75%, oleks see
hanke tingimuste tahtlik eiramine
• Kuid testide füüsiline olemasolu koodis (mida hankija saab kontrollida) välistab
tahtliku eiramise
• Järelikult pidi 0% tulemus viitama tehnilisele probleemile
1.2. Uurimispõhimõtte ulatus riigihangetes: Hankija viitab RKHKo 3-3-1-24-13
otsusele, kuid:
Riigikohtu 13.06.2013 otsuses nr 3-3-1-24-13
Punkt 26: "Hankija otsus peab olema põhjendatud ja kontrollitav (RHS § 39 lg 6).
Hankija ei või tugineda pelgalt oletustele."
Piisanuks elementaarsest kontrollimisest:
• Avada lähtekood ja vaadata, kas testifailid eksisteerivad
• Käivitada ng test käsk
• Avada JaCoCo HTML raport
Kuna SonarQube ei testi ise, vaid tugineb teistele vahenditele, siis on SonarQube
tulemus oletuslik.
1.3. Rahvusvahelise piirmäära ületava hanke erisus: Käesolev hange ületab
rahvusvahelist piirmäära (500 000 EUR). Riigikohus on hiljutises praktikas (RKHKo 3-20-
1198, 11.12.2020) rõhutanud, et sellistes hangetes peab kontroll olema põhjalik ja
sisuline, mitte piirduma formaalsusega.
2. Formaalne vs sisuline nõuete täitmine
2.1. Hanke eesmärk vs formaalne tulemus:
• Hanke Lisa 2.1 nõue: testikattuvus vähemalt 75%
• Eesmärk: tagada koodi kvaliteet ja jätkusuutlikkus
• Tegelik olukord: testid eksisteerivad ja katavad 75,45% koodist
• Formaalne probleem: SonarQube ei suutnud teste tuvastada
konfiguratsioonivea tõttu
2.2. Proportsionaalsuse põhimõte: RHS § 3 p 1 nõuab hankijalt proportsionaalset
tegutsemist. 10 punkti kaotus 20-st võimalikust (50% kaotus) tehnilise
konfiguratsioonivea tõttu on ilmselgelt ebaproportsionaalne, eriti kui:
• Testid füüsiliselt eksisteerivad
• Testid töötavad ja annavad nõutud kattuvuse
• Probleem on ainult raporteerimises
3. Hankija enda tunnistus süsteemsest probleemist
3.1. Hankija seisukoha punkt 2.16: "Sonar test tuvastas kõigil kolmel esitatud
proovitööl hälbed nõutud määrast."
See on oluline tunnistus:
• Kui kõigil pakkujatel on sarnane probleem, viitab see tööriista või nõuete
probleemile
• RHS § 3 p 2 (võrdse kohtlemise põhimõte) nõuab sarnaste olukordade sarnast
käsitlemist
• Hankija ei saa karistada ühte pakkujat süsteemse probleemi eest
3.2. Hankija väidab (p 2.16), et paranduste võimaldamine tähendaks, et "kõik oleks
saanud maksimaalsed 50 punkti". See on eksitav:
• Me ei palu parandusi ega uute testide lisamist
• Testid olid juba pakkumuses olemas
• Küsimus on ainult nende õiges tuvastamises
Hankija tunnistab ise (p 2.16), et "Sonar test tuvastas kõigil kolmel esitatud proovitööl
hälbed". Seega:
• Mitte keegi ei saanud täispunkte - kõigil olid mingid probleemid
• Hankija spekuleerib, väites et kõik saaksid selgituste korral 50 punkti
• Tegelikkuses võisid teiste pakkujate probleemid olla sisulised, mitte tehnilised
4. Tehnilised tõendid
4.1. Backend (Maven/JaCoCo):
• JaCoCo genereerib ise HTML raporti: target/site/jacoco/index.html
• See raport näitab tegelikku kattuvust: 81,3%
• SonarQube peaks seda sama raportit lugema
• 81,3% → 28,7% muutus on võimalik ainult konfiguratsioonivea korral
4.2. Frontend (Angular/Karma):
• Karma test (ng test --code-coverage) genereerib LCOV raporti
• Raport näitab: 69,6% kattuvust
• SonarQube näitab: 0%
• 69,6% → 0% on tehniliselt võimatu, kui testid eksisteerivad
5. Õiguslikud argumendid
5.1. Haldusmenetluse seadus § 6 - uurimispõhimõte: "Haldusorgan on kohustatud
välja selgitama menetletavas asjas olulise tähendusega asjaolud ja vajaduse korral
koguma selleks tõendeid oma algatusel."
0% testikate on ilmselgelt oluline asjaolu, mis vajab selgitamist.
5.2. Hea halduse põhimõte: Hea haldus nõuab, et ilmselgete anomaaliate korral (nagu
0% vs füüsiliselt olemasolevad testid) peab haldusorgan küsima selgitusi enne
kahjustava otsuse tegemist.
5.3. Euroopa Liidu põhimõtted: Läbipaistvuse ja võrdse kohtlemise põhimõtted
nõuavad, et hindamine vastaks tegelikule olukorrale, mitte ainult formaalsele
tulemusele.
6. Hankija vastuolulised väited
6.1. Hankija väidab (p 2.5), et "ei saa pidada mõistlikuks olukorda, kus hankija asub igalt
pakkujalt /.../ küsima, kas tema sooviks oli esitada puudustega pakkumus".
Kuid:
• 0% testikate korral ei ole tegemist "iga pakkujaga"
• Tegemist on objektiivse anomaaliaga
• Küsimus poleks "kas soovisite esitada puudustega pakkumuse", vaid "palun
selgitage 0% tulemust"
6.2. Hankija väidab (p 2.7), et vaidlustaja pidi arvestama SonarQube kasutamisega. Me
arvestasimegi - seepärast esitasime testid. Probleem on selles, et SonarQube ei
suutnud neid tuvastada.
7. Nõuded vaidlustuskomisjonile
Palume:
1. Tühistada hankija hindamisotsus osas, mis puudutab proovitöö teist ülesannet
2. Kohustada hankijat hindama uuesti, arvestades:
o Testide tegelikku olemasolu
o Tegelikke testitulemusi (Maven 81,3%, Karma 69,6%)
o Kogukattuvust 75,45%
8. Mõju hanke tulemusele
Õiglase hindamise korral:
• Vaidlustaja: 88,27 punkti
• Edukaks tunnistatud: 83,78 punkti
• Vahe: 4,49 punkti vaidlustaja kasuks
Kokkuvõte
Hankija on teinud hindamisotsuse, mis:
1. Ei vasta tegelikule olukorrale (testid eksisteerivad, kattuvus on 75,45%)
2. Põhineb tehnilistel vigadel (SonarQube konfiguratsioon)
3. Eirab ilmselget anomaaliat (0% vs olemasolevad testid)
4. On ebaproportsionaalne (50% punktikaotus tehnilise vea eest)
Palume arvestada, et tegemist on rahvusvahelist piirmäära ületava hankega, kus
kontrolli ulatus peab olema põhjalikum kui tavapärastes hangetes.
Lugupidamisega,
Ago Meister
OÜ BPW Consulting
Lisad:
1. Backend projektipuu testifailide olemasoluga
2. Frontend projektipuu testifailide olemasoluga