StopCovid : le code source publié... sans code source

Ça y est ! la publication du code source de l’application de proximity tracing du gouvernement français a été publié sur GitLab. Comme promis ? Pas exactement, puisque à l’exception de la documentation relative au protocole ROBERT et à son implémentation, le repository ne contient rien de croustillant, que ce soit côté app ou côté serveur. 

Un petit pas pour StopCovid, une grosse déception pour la communauté ! Comme annoncé par l’Inria, le code source a commencé le 12 mai en fin de journée à être publié. Objectif annoncé par l’équipe derrière l’application de proximity tracing voulue pour le gouvernement : permettre à la communauté, aux experts, aux associations de défense des libertés, de se plonger dans les entrailles de StopCovid, de la décortiquer aussi bien pour en trouver les failles que les abus en termes de surveillance. Un souci de transparence louable...

Cependant, qu’il s’agisse des documents publiés mardi, ou ceux ajoutés hier, il faut se lever tôt pour espérer trouver le moindre petit bout de code sur le dépôt Gitlab ouvert par l’Inria. En lieu et place, les recommandations de l’Anssi, quelques schémas et un document relatif aux modalités d’implémentation du protocole ROBERT, dont on ne sait pour le moment s’il est définitivement le protocole retenu par l’exécutif. En bref, dans ce code source, il n’y a pas grand chose à se mettre sous la dent.

Des tests de terrain la semaine prochaine ?  

En l’état, on se demande comment l’équipe StopCovid pourra réussir à tenir son calendrier. La publication des codes sources et de la documentation a certes débuté le 12 mai, comme prévu. Mais rien sur le pan serveur, pas le moindre petit morceau du code de l’app... On explique côté Inria qu’il s’agit d’une première phase, dite « transparence » : le code est visible, la communauté peut contribuer, mais rien de plus.  

Car cette phase « limite l’ampleur des interactions du fait des contraintes sur les ressources de l’équipe-projet StopCovid, pleinement mobilisée sur le développement, dans le cadre d’un agenda restreint » indique l’institut, qui ajoute vouloir cette phase « courte » mais que cela dépendra des impératifs de tests et de mise en disponibilité. Traduction : jusqu’à preuve du contraire, faites confiance aux ingénieurs de l’équipe et prenez votre mal en patience.  

Or l’agenda est pour sa part particulièrement serré. Dans la semaine du 25 mai, l’application doit être présentée à l’Assemblée nationale, qui a obtenu de pouvoir en débattre. Mais d’ici là, « courant mai », l’application doit subir un éventail de tests techniques (unitaires, fonctionnels, montée en charge), de terrain et enfin de « simulation de conditions réelles de la vie quotidienne » ». Et ce pour une entrée en fonction début juin. Ce qui laissera un délai très court à la communauté pour se plonger dans le code source, s’il est réellement publié d’ici là.  

Le programme de l’Inria

Pourtant, du côté de l’Inria, on promet une ouverture progressive pour ce processus de développement collaboratif, qui a été contraint par l’agenda du projet et qui va s’ouvrir progressivement pour « permettre de proposer des évolutions à l'application, de signaler des bugs, et de suggérer des changements pour la documentation, tout en suivant la prise en compte ou non de ces propositions ».

Cettevolonté de transparence et d’amélioration de la qualité du logiciel va devoir s’accommoder de quelques contraintes. En effet, une partie du code n’est pas et ne sera pas publiée « correspondant à des tests ou à des parties critiques pour la sécurité de l’infrastructure ». Une autre sera publique sans appel à contributions : les propositions seront étudiées, annonce l’institut, mais rien de plus. Et enfin, l’open source à proprement parler, le « cœur de l’application » soit, en l’état, l’implémentation du protocole ROBERT, et rien d’autre. On reste donc avec ce repo sur notre faim, en attendant d’avoir un peu plus de code à examiner.