feat(collab): sessie-levenscyclus host/join (increment 2 van #996) #999
No reviewers
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck!999
Loading…
Reference in a new issue
No description provided.
Delete branch "collab/inc2-session-bootstrap"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Increment 2 van #996: de sessie-levenscyclus die de Fase 0.5-bouwstenen aan elkaar knoopt (COLLABORATION.md §6.5), bovenop increment 1 (#997).
collab_session_launch.dart:hostCollabSession— schrijft de baseline die anderen bijkomen, wordt de autoriteit, begint te pollen.joinCollabSession— leest de baseline, rebaset het lokaal geopende deck op de slides van de autoriteit (neemt hun id's over zodat ops kloppen, §5.5), haalt de gemiste ops in, pollt verder. Gooit als er nog geen host een baseline plaatste.Store-generiek, dus end-to-end getest over de in-memory store (host↔join, id-overname, inhaalslag, gast-bewerking round-trip) en in productie over WebDAV; er komt hier geen netwerk aan te pas.
v1 houdt de host de hele sessie de autoriteit; eigenaarsoverdracht (§5.3) en herbaselijning op een niet-nul versie (§5.2) zijn vervolg. Resteert (increment 3): de provider-/UI-bedrading (§5.7) en de editor→op-adapter die een deck-brede bewerking naar de veld-ops vertaalt die de sessie indient.
make checkgroen (7559 tests, dekking 87,4%). Docs bijgewerkt (SOURCE_MAP, CHANGELOG, COLLABORATION.md §10). Gerebased op de laatste main.