Comparaison independante du moteur de classement Flying Start contre 75 693 resultats reels Sailwave provenant de 96 clubs de voile dans 10 pays.
Sur 75 693 comparaisons individuelles, le moteur de classement Flying Start correspond a Sailwave avec un taux de correspondance de 99 %. Zero bug de classement trouve. Tous les ecarts s'expliquent par la qualite des donnees de test ou des differences d'arrondi mineures qui n'affectent jamais les resultats.
Nous avons ecrit un banc de test automatise qui prend les donnees de resultats Sailwave, les fait passer dans le moteur de classement Flying Start et compare chaque valeur calculee avec ce que Sailwave a produit. Le test verifie trois choses par concurrent et par course :
La comparaison utilise deux modes de verification :
Lorsque les donnees sources incluent les temps ecoules et les jauges de handicap, nous recalculons les temps compenses depuis le debut en utilisant la formule appropriee (PY, IRC, YTC, etc.) et comparons avec les temps compenses de Sailwave. Cela valide l'ensemble du pipeline : ecoule → compense → position → points.
Lorsque les donnees sources n'incluent que les positions et les points (courant dans les pages de resume de serie), nous verifions que la correspondance position-points suit les regles du systeme de classement correct. Cela valide l'attribution des points de penalite, les calculs de points bonus et le classement SCP.
Nous avons ecrit un scraper qui a systematiquement parcouru le repertoire public des resultats Sailwave, qui heberge les resultats publies des clubs de voile du monde entier. Pour chaque club, nous avons recupere jusqu'a 40 pages de resultats, extrait les donnees des concurrents, les resultats de course et les codes de penalite, puis les avons convertis dans un format structure pour verification.
Pour six flottes de la Falmouth Sailing Week 2025, nous avons manuellement extrait les pages de courses individuelles incluant les temps ecoules et compenses complets, permettant une verification approfondie des temps compenses.
| Source | Fichiers | Courses | Comparaisons | Correspondance | Majeur | Mineur |
|---|---|---|---|---|---|---|
| Extraits (96 clubs) | 655 | 4,088 | 74,391 | 99 % | 0 | 1,068 |
| Falmouth Week (approfondi) | 6 | 56 | 1,302 | 99 % | 3 | 19 |
| Total | 661 | 4,144 | 75,693 | 99 % | 3 | 1,087 |
0 ecart majeur cause par la logique du moteur. Les 3 ecarts majeurs sont tous des problemes de qualite des donnees de test (expliques en detail ci-dessous).
Le moteur de classement implemente les fonctionnalites RRS (Racing Rules of Sailing) suivantes. Toutes ont ete testees :
| Fonctionnalité | Couverture |
|---|---|
| Handicap PY (deriveurs UK) | Teste dans plus de 60 clubs britanniques |
| Handicap IRC (yachts internationaux) | Teste avec les flottes IRC1/2/3 de la Falmouth Week |
| Handicap YTC (croiseurs UK) | Teste avec les flottes YTCE/YTCQ de la Falmouth Week |
| Classement Low Point | Teste dans les 4 144 courses |
| Classement Bonus Point | Teste dans les clubs qui l'utilisent |
| Penalites DNS / DNF / DNC | Teste dans tous les clubs |
| OCS / DSQ / RET / UFD / BFD | Teste la ou ils apparaissent dans les resultats |
| Regle RRS A5.3 (classement de penalite optionnel) | Par defaut pour tous les tests — bateaux presents + 1 vs inscrits + 1 |
| SCP (penalite de classement) | Teste dans les clubs appliquant des penalites en pourcentage |
| Profils de rejet | Teste via la comparaison des classements de serie |
| Departage Annexe A8 RRS | Teste via la comparaison de positions dans les flottes ex aequo |
Nous avons deliberement teste sur un large eventail geographique et organisationnel. La course de club dans le Solent a des caracteristiques differentes de la course du mercredi soir sur un reservoir gallois ou un championnat australien d'O'pen Skiff. Le moteur de classement doit tous les gerer.
Hayling Island SC, Parkstone YC, Poole YC, Warsash SC, Torbay SC, Cardiff Bay YC, Delph SC, Mengeham Rythe SC, Burghfield SC, Oxford SC, Chichester YC, Brancaster Staithe SC, Bexhill SC, Salcombe YC, Paignton SC, Brixham YC, Medway YC, Bartley SC, Northampton SC, Largo Bay SC, RCYC, Ranelagh SC, Twickenham YC, Cambridge YC, Ogston SC, Rutland SC, Bala SC, Maylandsea Bay SC, Royal Lymington YC, Flushing SC, Chase SC, Chipstead SC, Rock SC, BCYC, YDSC et de nombreuses associations de classe (Solo, Osprey, Fireball, 29er, ILCA UK, ITCA, UKWA, Redwings).
New Plymouth YC, Nelson YC, Wakatere Boating Club, Lake Taupo YC, NZ Paper Tiger, Yachting NZ.
Manly YC, Perth SC, Maroochy, Hobie WA, Lake Cootharaba SC, classe Open Skiff (championnats nationaux et regionaux).
Afrique du Sud (Bloemfontein YC), Suede (KSSS), Hongrie (resultats via hunresults), Portugal, USA (KHYC — King Harbor YC), Canada (Whitby YC).
Six flottes du parcours de la Baie — IRC 1, IRC 2, IRC 3, YTC Cruiser, YTC Quarter-Tonner et Firebird — avec les temps ecoules et compenses complets extraits des pages de courses individuelles hebergees sur sailwave.com/results/FSW.
Sur les 75 693 comparaisons, 1 090 ne correspondaient pas exactement. Voici chaque categorie d'ecart, sa cause et si cela a de l'importance.
Les trois sont des problemes de qualite des donnees de test, pas des bugs du moteur de classement.
Ecart : Points — Sailwave indique 11, Flying Start indique 8.
Cause racine : La Champagne Race du mercredi avait 3 bateaux invites (Autarky, Infinity, Passion) non inscrits dans la serie reguliere. Notre XML extrait ne les incluait pas, donc la taille de la flotte etait de 10 au lieu de 13. Percy a termine 8e sur 10 dans nos donnees contre 11e sur 13 dans Sailwave.
Verdict : Les deux moteurs de classement sont corrects. La difference vient des donnees d'entree, pas du calcul.
Ecart : Points — Sailwave indique 12, Flying Start indique 9.
Cause racine : Meme cause que ci-dessus. Les bateaux invites ont gonfle la taille de la flotte dans les donnees Sailwave.
Ecart : Temps compense — Sailwave indique 1:10:13, Flying Start indique 1:08:32.
Cause racine : Tahini a navigue avec une jauge YTC differente le mercredi (1054) par rapport au reste de la serie (1080). Notre XML utilisait 1080 pour toutes les courses. La formule de temps compense est elapsed × 1000 ÷ rating, donc jauge differente = temps compense different.
Verdict : Les deux formules sont correctes. La difference vient des donnees de handicap, pas du calcul.
Les 1 087 ecarts mineurs se repartissent en deux categories :
Differences de 1 a 3 secondes entre Sailwave et Flying Start, causees par des arrondis intermediaires dans la chaine de calcul de Sailwave. Par exemple, temps compense IRC = ecoule × TCC. Si ecoule = 3 428 s et TCC = 1,072 :
3428 × 1.072 = 3674.816 → 3675sImpact : Aucun. Une difference de 1 a 3 secondes en temps compense ne change jamais une position d'arrivee — les bateaux sont generalement separes de plusieurs minutes.
Differences de 0,1 a 0,3 points ou les scores fractionnaires de points bonus ou les calculs de pourcentage SCP de Sailwave different legerement. Par exemple, la 3e place en classement bonus devrait etre exactement 5,7, mais certaines versions de Sailwave semblent utiliser une precision en virgule flottante legerement differente en interne.
Impact : Negligeable. Ces differences fractionnaires ne changent jamais le classement car elles sont plus petites que l'ecart entre deux positions d'arrivee.
Pendant les tests, nous avons trouve un domaine ou le comportement de Sailwave est incoherent d'un club a l'autre. Nous ne pretendons pas que c'est un bug — il peut s'agir d'une option de configuration intentionnelle — mais cela vaut la peine d'etre documente pour les Directeurs de Course migrant depuis Sailwave.
Sailwave utilise TLE comme code de penalite pour les bateaux qui ne terminent pas dans le temps imparti. Ce code n'apparait pas dans les Regles de Course a la Voile (RRS). L'equivalent RRS serait DNF (Did Not Finish).
Nous avons constate que Sailwave traite TLE de maniere incoherente selon les clubs :
starters + 1 (meme que DNF)last finisher's position + 1Flying Start traite TLE comme equivalent a DNF (starters + 1), ce qui correspond au comportement le plus courant de Sailwave et s'aligne sur le principe RRS qu'un bateau qui prend le depart mais ne termine pas recoit starters + 1 points.
Cette incoherence explique une partie de nos ecarts mineurs. Si votre club utilise TLE avec des regles de classement specifiques, merci de nous le faire savoir et nous nous assurerons que Flying Start correspond a votre pratique.
Malgre le test de 4 144 courses, nous n'avons trouve aucun cas ou Sailwave produit des resultats incorrects selon les regles RRS. Tous les ecarts s'expliquent par des arrondis, la qualite des donnees ou l'ambiguite TLE decrite ci-dessus. Sailwave est la reference du secteur depuis plus de 20 ans pour une bonne raison — les calculs sont justes.
Nous notons egalement que la majorite de nos comparaisons (74 391 sur 75 693) sont des comparaisons de points uniquement a partir de pages de resume de serie. La verification approfondie des temps compenses couvre 1 302 comparaisons de la Falmouth Week. Nous serions heureux d'acceder a davantage d'evenements avec des temps ecoules et compenses publies pour renforcer cette verification.
Le banc de test, les donnees extraites et les resultats complets sont publies dans un depot open source dedie :
| Chemin | Description |
|---|---|
| scripts/soak-test.ts | Lanceur de test CLI — analyse le XML, execute la verification, produit le rapport |
| scripts/scrape-sailwave.ts | Web scraper pour les pages de resultats HTML Sailwave |
| verifier/sailwaveVerifier.ts | Le moteur de comparaison — recalcule les temps compenses, positions, points |
| scoring-engine/ | Le moteur de classement lui-meme — raceScorer, seriesScorer, handicapCalculator, tieBreaker |
| data/sources.json | Journal complet des 1 266 URL sources extraites |
| data/soak-results.json | Resultats de test complets avec taux de correspondance par fichier et details des ecarts |
| REPORT.md | Rapport detaille des conclusions |
Le scraper respecte les URL precedemment extraites (suivies dans sources.json) et ne recuperera que les nouvelles pages. La suite de tests complete s'execute en moins de 60 secondes sur les donnees extraites.
Toutes les donnees de resultats Sailwave proviennent de resultats publies sur sailwave.com/results. Sailwave est une marque deposee de Jon Mayall. Flying Start n'est pas affilie a Sailwave.