This is a proposed reference architecture inviting community validation and adaptation. We welcome contributions that improve the patterns, documentation, and implementations.
Found a failure mode we missed? Have a success pattern to share?
- Open an issue with the
patternlabel - Describe the scenario, what happened, and what the prevention/solution looks like
- Include data if possible (anonymized metrics, timeline, team size)
- Fork the repository
- Create a branch:
git checkout -b docs/your-improvement - Make your changes
- Submit a pull request with a clear description of what changed and why
Built an agent type, policy template, or observability configuration on this foundation?
- Fork the repository
- Create a branch:
git checkout -b feature/your-integration - Follow the existing directory structure and naming conventions
- Include a README explaining what it does and how to use it
- Submit a pull request
Safe failures teach more than polished success stories. If you've had a notable failure in a test/lab environment:
- Open an issue with the
disaster-reportlabel - Describe what happened (anonymize sensitive details)
- Explain what safeguards would have prevented it
- We may feature it in the playbook (with credit, if desired)
- Follow standard Go conventions (
gofmt,go vet) - All Go files must start with a 2-line ABOUTME comment:
// ABOUTME: Brief description of what this file does. // ABOUTME: Second line with additional context.
- Use table-driven tests
- Include error path testing
- Run
go test ./...before submitting
- YAML files use 2-space indentation
- Markdown files use standard CommonMark
- YAML and Markdown files should include ABOUTME headers as HTML comments:
<!-- ABOUTME: Description line 1 --> <!-- ABOUTME: Description line 2 -->
- Use conventional commit format:
fix:,feat:,docs:,refactor:,chore: - Keep the first line under 72 characters
- Include a body explaining why for non-trivial changes
- Ensure your changes pass all existing tests
- Update documentation if your changes affect user-facing behavior
- Add tests for new functionality
- Request review from maintainers
- Address review feedback
- Maintainers will merge once approved
This project follows the CNCF Code of Conduct. Please report unacceptable behavior to the maintainers.
By contributing, you agree that your contributions will be licensed under the Apache License 2.0.