Skip to content

add diagram sharing design and tla verification specs#74

Merged
fabracht merged 3 commits into
mainfrom
diagram-sharing-design
May 26, 2026
Merged

add diagram sharing design and tla verification specs#74
fabracht merged 3 commits into
mainfrom
diagram-sharing-design

Conversation

@fabracht

Copy link
Copy Markdown
Contributor

Summary

  • design doc for diagram sharing: named view/edit grants + public/link sharing + transitive cascade, holding across CRUD, child entities, and the live event stream under a mutually-untrusting-tenant model
  • corrects stale frontend-ownership.md claims (read is enforced; events are broadcast) verified against code
  • TLA+ specs verifying the authorization core; a current-behavior spec proves the event-leak and unprotected-children holes are real

Test plan

  • DiagramSharing.tla — 12/12 invariants hold (26,244 states)
  • DiagramSharingCurrent.tla — same invariants violated on today's behavior (teeth check)
  • CascadeClosure.tla — cascade = exact reference closure, cycle-safe (1,792 states)
  • GrantLifecycle.tla — direct=set, cascade=max never downgrades, revoke clears (6/6)

@fabracht fabracht merged commit 4386aff into main May 26, 2026
5 checks passed
@fabracht fabracht deleted the diagram-sharing-design branch May 26, 2026 01:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant