Samarbejdende whiteboard i sessionen
Operatør og feltbruger tegner på det samme lærred i realtid — målinger, pile, "hvor er bulen"-annotationer. Hver snap fanger både den renderede PNG og Excalidraw-scene-JSON, hashet sammen. Manipulér den ene side bagefter, og audit-kæden fanger det.
Hvad der bliver fanget
Hvad alle så
Det pixelnøjagtige billede renderet på snap-tidspunktet. Overlever sagsfilsvisningen i årevis uden at kræve, at Excalidraw kan indlæses — læg PNG'en i et retsbundt, og den taler for sig selv.
Formerne der skabte det
Canonical-JSON-dump af sceneelementerne: hvert strøg, hver pil, hvert label. Rendér JSON'en igen senere, og du får en byte-identisk PNG — det kryptografiske bevis på, at det renderede billede ikke blev manipuleret efter registreringen.
Kombineret SHA-256 forankrer PNG + canonical JSON sammen. Ændr én byte i den ene, og kæden brydes.
Hvorfor begge sider
En renderet PNG alene er overbevisende, men teoretisk forfalskelig — enhver billededitor producerer en pixelnøjagtig forfalskning. En scene-JSON alene er ulæselig for en domstol — strøg og koordinater i en viewer, dommeren ikke har. Sammen: JSON'en beviser, at billedet er den deterministiske rendering af disse former; billedet beviser, hvad deltagerne faktisk så på skærmen. Manipulér billedet uden at røre JSON'en, og gen-render-tjekket udløses; manipulér JSON'en, og hashen matcher ikke.
Live-samarbejdsmodel
Strøg propagerer i realtid med konfliktfri merge, så begge sider kan tegne på én gang uden låsning. Operatøren kan låse en flise til sig selv (envejsannotation, almindeligt i skadesgennemgange) eller åbne den for ægte co-edit (almindeligt i fjerntræning).
| Tilstand | Hvem kan tegne |
|---|---|
| Operatør-låst | Kun operatøren. Feltbrugeren ser annotationerne lande — almindeligt i inspektion-efter-bogen-flows. |
| Åbent lærred | Begge sider. Feltbrugeren kan indkredse "det er det, jeg mente" uden at vente på tur. |
| Snap-og-behold | "Snap den aktuelle tilstand og åbn den samarbejdende annotator på den" — fanger et stillbillede og genåbner det til asynkron annotation senere. |
At læse det tilbage fra API'et
Whiteboards lander som Evidence-rækker med kind=whiteboard. List dem via GET /api/v1/public/sessions/{id}/whiteboards, anmod om en underskrevet download-URL via GET /api/v1/public/evidence/{id}/download. Både den renderede PNG og et verify-endpoint for scene-JSON'en er dokumenteret i Whiteboards-API-reference.
Prøv det live lærred
Demo-sessionen leveres med operatør- + feltsiden allerede parret. Åbn den i to browsere, tegn på begge — strøgene propagerer; snappen fanger begge lag; audit-kæden forankrer begge.