Human-in-the-loop sequence
- A human creates a scoped AI Access Grant from the dashboard.
- The AI reads
/ai/primer, bootstraps the grant, and discovers canonical routes. - The AI calls
/api/ai/stageor the local FastMCP tool to stage a draft action. - CivCharter stores the draft in
ai_staged_actionswith pending status and a hashed approval token. - The human opens
/ai/review?token=..., reviews the draft, and chooses Publish Live or Reject Draft. - The token is consumed. Published drafts become normal human-owned civic posts with audit/provenance records.