@fairgarden/policy
A community organization's policy for the services it runs, as Open Policy Agent Rego: written and kept by the organization, shown in full to the people it governs, run inside each service, and every decision recorded.
A service names the decisions it makes — may this person do this, may they join, what may this service be given — and asks them with the evidence it holds. Its own rules answer, until the organization's do. The organization writes its rules the way it writes its bylaws: in the open, changed by the group over time, and released with the rest of the distribution.
Start here
- Overview — who writes what, and how it reaches the services
- Layers — the services' rules, and the organization's on top
- Bylaws as policy — sign-offs, votes, volunteer hours and elections, as Rego
- Decisions — naming them, built-in rules, failing closed
- Rego — writing and testing it
- Deploying — built from the repository, once, for every service
- The decision log — every decision, and the revision that made it
- Commands —
fg-policy - Functions — the API
Install
pnpm add @fairgarden/policy
Building and testing Rego use the opa CLI, fetching a pinned release when none is installed. Running a policy does not.