How it works · the shape
Six clean areas of responsibility.
The system is partitioned so each concern has one home. repos is the hub; the others surround it.
Users, sessions, sign-in (OAuth via GitHub / GitLab / Google), and the device flow that lets a CLI be approved in a browser on another machine.
The core: repositories, versions, files, push / pull / revert, and fork lineage.
Who can do what: collaborator roles and the resolution rule — owner → direct grant → team grant → public → none.
Named groups that hold shared access to a set of repositories; members inherit the team's role.
The public Explore surface: search, tag filtering, and ranking of public repositories.
An immutable record of every mutation — who did what, when. The backbone of trust and traceability.
Clear boundaries keep the platform easy to reason about, secure, and cheap to extend — new capabilities land in exactly one area.