-
Notifications
You must be signed in to change notification settings - Fork 2
verslag vergadering 2019 10 03
Boxxy willen we houden als zwarte doos; het is battle-tested. Dan maken we nu nog:
- essentie
- tel rondjes (blocked)
- stuur JSON naar boxxy
- voorts
- push nieuwe staat
- pull huidige staat
- naar volgende jaren toe
- publieke API zodat er niet gescrapet wordt
niet
- scheidsrechter
opletten voor
- stroom valt weg
- netwerk-issues (valt weg, packet loss)
- DB/file corrupt
- authenticatie
- uplink valt weg
- batons verwisselen
- rules veranderen
Is telraam de core of een deel van het systeem? Zit er nog iets tussen de beacons en telraam dat de informatie pre-processt? Nee, beacons verbinden met telraam. (In praktijk is er ook nog een andere computer die van de beacons kan ontvangen)
Log van laatste pakketten per station
Niet pushen naar master, PR's worden gereviewd. Coverage wordt gemeten voor PR geaccepteerd wordt, maar we spreken geen quota af.
-
team
-
baton
-
beacon
-
detectie (wanneer baton voorbij station gepasseerd is)
- beacon
- baton
- timestamp
-
laps (derived van detectie maar wordt ook opgeslagen)
- team
- timestamp
-
CRUD
-
overview (met dingen zoals rondjes per team, eventueel wanneer beacon voor het laatst iets gezegd heeft ...)
-
{beacon_id}/last_detection
-
beacons/last_detection
-
utility endpoint
- zoals X aantal laps toevoegen
- freeze/unfreeze (stop communicatie met doxxy) + is_frozen
State van het veld kan veranderen en daar moet het programma kunnen mee omgaan Een idee was rulesets gebruiken met geldigheidsduren, maar dit is misschien niet nodig "Ruleset" van i++ van Leuven is sensible in dynamische situaties Stations hotswappen? Sowieso nodig: er kunnen stations bijkomen
Eerst leggen we structuur vast, zie 12ul_diagram.png in ~12urenloop: https://github.com/12urenloop/docs.12urenloop/blob/master/19-20/12ul_diagram.png
Minimaal bericht van beacon naar logic
- beacon
- baton
- timestamp
We kunnen met alles al beginnen behalve beacon_comm
Twee telraam-instanties tegelijk draaien zou kunnen
Verandert er iets aan de applicatie? Herstart dan met zelfde database
We houden graag het platform onafhankelijk van de DBMS (moet draaien op sqlite, postgres)
Repo en build opzetten (Gradlefiles, CI, testframeworks, docs): tegen eind volgende week Implementatie, eerste sprint
- Unit tests
- CI
- Build (met Gradle)
- Run tests
- Show coverage (geeft warning)
- Lint (geeft warning)
- Docs voor dev environment: instructies om te starten
- Lint plugin
- Gebruik autoformatting on save