-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
rfdRequest for DiscussionRequest for Discussion
Description
Decision Goal
Establish a clear policy for creating and managing GitHub issues across OpenCHAMI repositories, distinguishing between RFDs (roadmap repo), ADRs (community repo), and implementation issues (code repos).
Category
Process
Stakeholders / Affected Areas
teams, users
Decision Needed By
No response
Problem Statement
Currently, there's no formal policy governing where and how issues should be created across the OpenCHAMI organization's repository structure. This leads to:
- Confusion about whether to submit feature requests as issues in code repos vs. RFDs in roadmap repo
- Inconsistent issue types and missing ADR references for development task work
- Difficulty tracking the relationship between RFDs, ADRs, and implementation issues
- Unclear guidelines on when bugs vs. development tasks should be created in code repos
- No clear process for handling security vulnerabilities or community feature suggestions
Proposed Solution
Implement a repository-specific issue policy:
Roadmap Repository:
- RFDs submitted as issues for new feature proposals
- Discussion and approval process before conversion to ADRs
Community Repository:
- Stores ADRs converted from approved RFDs
- No direct issue creation (ADRs are documents, not issues)
Code Repositories:
- Four issue types: Bug, Development Task, Security Vulnerability, and Feature Request
- Bug issues: Can be opened anytime, may optionally reference related ADR/RFD
- Development Task issues: Must reference a specific ADR, treated as development tasks to implement approved decisions
- Security Vulnerability issues: Can be opened anytime, not required to be tied to an ADR, follow responsible disclosure practices
- Feature Request issues: Community suggestions for new features, may lead to RFD creation after review, not for approved work
Workflow:
- New features → RFD in roadmap repo
- Approved RFDs → ADR in community repo
- Implementation work → Development Task issues in code repos referencing ADR
- Bug reports → Bug issues in relevant code repos
- Security issues → Security Vulnerability issues in relevant code repos
- Community suggestions → Feature Request issues in code repos, may prompt RFD creation
Alternatives Considered
- Single repository for all issues: Rejected due to loss of service-specific context
- No ADR requirement for development tasks: Rejected as it breaks the RFD→ADR→implementation workflow
- Allow feature requests directly in code repos: Modified to allow as suggestions that may lead to RFDs
- More granular issue types: Rejected to keep code repo issues simple and focused
- Separate security reporting process: Considered but included as issue type for transparency while following disclosure practices
Other Considerations
Risks:
- Contributors may not understand the three-repo workflow initially
- Development Task issues without ADR references may slip through
- Bug vs. development task vs. feature request categorization ambiguity
- Security vulnerabilities may need special handling for sensitive issues
Trade-offs:
- Structured workflow vs. contributor learning curve
- Clear separation of concerns vs. potential overhead
- Transparency for security issues vs. responsible disclosure
Open Questions:
- How to handle bugs that reveal need for architectural changes?
- Should development task issues be automatically linked to their ADRs?
- What's the process for updating ADRs based on implementation feedback?
- Should feature requests have a standardized format for evaluation?
- How to handle private security vulnerability reporting?
Related Docs / PRs
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
rfdRequest for DiscussionRequest for Discussion
Type
Projects
Status
In Progress