Security and Compliance
AI Proposes, Human Disposes
Every documentation change produced by an InaiAgent is a proposal, never a direct publication. The agent opens a pull request; no change reaches the live site until a human approves it at a recorded review gate. The publish path proceeds only against that signed approval — the agent cannot approve or publish its own change.
This separation is enforced at the infrastructure level, not by convention:
- Branch protection prevents any actor — including administrators — from pushing directly to the main branch. All changes must arrive through a pull request. This wall applies to the agent, to automated processes, and to the team equally.
- A signed, tamper-evident approval record is created the moment a human approves. Before any merge is executed, the system independently verifies that a valid signed approval exists for that specific proposal. The agent cannot self-approve, and the merge path does not trust its caller — it verifies that approval record directly.
- Blast radius is bounded by design. Write access is scoped to the documentation repository only. A compromised credential cannot touch other repositories, organization settings, or CI pipelines, and credentials expire on a rotating schedule.
The result: the agent's judgment is always subject to human review, and the human's approval is always recorded and independently verified before publication.
Branch Protection
The inaibridge-docs repository enforces strict branch protection via the protect-main ruleset:
- Require a pull request before merging: All changes must be proposed through a pull request. Direct pushes to
mainare rejected, even for administrators (the bypass list is empty). - Auto-deploy safety: Merging a pull request triggers the GitHub Pages deployment workflow, ensuring that only human-approved changes are published.
Scoped Credentials
The documentation agent uses a fine-grained GitHub Personal Access Token (DOCS_PR_TOKEN) with a limited blast radius:
- Resource Owner:
inaibridge-aiorganization. - Repository Access: Restricted exclusively to the
inaibridge-docsrepository. - Enforcement: While
Contents:writetechnically permits pushing, the repository's branch protection ruleset prevents direct pushes tomain, ensuring defense-in-depth.