STOA Governance
This section documents STOA Platform's governance model, quality standards, and decision-making processes.
Why Governance Mattersβ
STOA aims to be the European Agent Gateway β a sovereign, enterprise-grade API management platform. This requires:
- Consistent quality across all contributions
- Security-first mindset in every decision
- Transparent processes for the community
- Clear accountability for maintainers
Core Standardsβ
Implementation Review Loopβ
The Implementation Review Loop (Standard Marchemalo) ensures every significant code change passes rigorous validation before reaching production.
Key principles:
- Multi-persona review (Architecture, Security, Business)
- Iterative improvement until score of 9/10 or above
- Timeboxed iterations with clear escalation paths
- Capitalization of patterns and decisions
Architecture Decision Records (ADRs)β
All significant architectural decisions are documented in ADRs. These provide:
- Context and problem statement
- Considered options
- Decision and rationale
- Consequences and trade-offs
Over 40 ADRs have been published, covering topics from API exposure strategy (ADR-001) to GitOps reconciliation operators (ADR-042).
Patterns Libraryβ
Validated implementation patterns are collected and documented across the codebase:
- Gateway Adapter Pattern β abstract interface for multi-gateway orchestration (Multi-Gateway Setup)
- UAC (Universal API Contract) β define once, expose everywhere (UAC Concept)
- Ship/Show/Ask β PR categorization for autonomous or reviewed merges
- Micro-PR Strategy β Stripe-inspired small PRs (under 300 LOC) for reviewability
The Councilβ
STOA's quality is maintained by a "Council" of review personas:
| Persona | Focus | When Activated |
|---|---|---|
| Archi 50x50 | Architecture, patterns, maintainability | Always |
| Team Coca | Security (crypto, injection, secrets, access) | Security-related changes |
| OSS Killer | Business value, scope, over-engineering | New features, unclear scope |
| Better Call Saul | Legal, IP, compliance | IP/licensing/data issues |
Contribution Workflowβ
1. Open Issue/Ticket
β
2. Implementation Plan (if significant)
β
3. Council Review (iterative)
β
4. Implementation
β
5. PR Review
β
6. Merge + Deploy
β
7. Capitalization (ADR/Pattern if new)
Contributing Guideβ
Getting Startedβ
- Fork the repository on GitHub
- Create a feature branch:
git checkout -b feat/your-feature - Follow the commit conventions:
type(scope): description - Run the component quality gate before pushing (see below)
- Open a Pull Request against
main
Quality Gates by Componentβ
| Component | Pre-Push Command |
|---|---|
| Python (API) | ruff check . && black --check . && pytest tests/ -q |
| TypeScript (UI, Portal) | npm run lint && npm run format:check && npm test -- --run |
| Rust (Gateway) | cargo fmt --check && cargo clippy -- -D warnings && cargo test |
PR Requirementsβ
- Signed commits (DCO check enforced)
- CI green (3 required checks: License, SBOM, Signed Commits)
- Component-specific CI passes
- Under 300 LOC changed (split larger changes into stacked PRs)
Code of Conductβ
STOA Platform follows the Contributor Covenant Code of Conduct (v2.1).
Our pledge: We are committed to providing a welcoming and inspiring community for all, regardless of background or identity.
Scope: This Code of Conduct applies within all community spaces β GitHub issues, pull requests, discussions, and any other STOA-related communication channels.
Enforcement: Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to the project maintainers at conduct@gostoa.dev. All complaints will be reviewed and investigated promptly and fairly.
Current Governance Modelβ
STOA is currently in BDFL (Benevolent Dictator For Life) phase during early development.
BDFL: Christophe ABOULICAM (@caboulicam)
As the community grows, governance will evolve toward a distributed model with:
- Technical Steering Committee
- Working Groups
- Community voting on major decisions
Related Documentsβ
- Implementation Review Loop β Quality validation process
- ADRs β Architecture Decision Records
- Community β Community resources
- FAQ β Frequently asked questions