\
December 15, 2025 ยท View on GitHub
Author: @username
PIC: @username
Proposal Issue: #123
Overview
The Overview section should be largely identical to the project proposal issue.
Provide a concise 2-3 sentence summary of what this project does and why it matters.
Motivation
Why should we do this project? What are the key goals we're trying to achieve?
Problem
Describe the problem this project solves. What is the current situation?
Use Cases
| Use Case | Description |
|---|---|
| name | description |
| Upload a dataset | A user with an existing dataset on their workstation can upload... |
Requirements
| Title | Description | Type |
|---|---|---|
| title | <entity> shall <do thing> | type |
| title | <pre-condition> <entity> shall <do thing> | type |
| Upload a new dataset version | A user shall be able to upload a new version... | Functional |
| Support dataset versions up to 100 TiB in size | OSMO shall support uploading a dataset of up to 100 TiB... | KPI |
| Datasets cannot be accessed by users without sufficient roles | If the user does not have sufficient roles, a user shall not be able to... | Security |
Architectural Details
Provide a high-level technical overview of the proposed solution. Include block diagrams if applicable. How will we solve the problem? What is the general approach?
This should expand on the "High-Level Approach" field from the project proposal. Include:
- Architecture overview
- Key components or modules
- How they fit together
- Static and dynamic components
- User-facing changes (if applicable)
Detailed Design
Provide the detailed technical design. This is the core of the document.
Include:
- API designs (new endpoints, function signatures, interfaces)
- Data models and schemas
- System architecture diagrams
- Component interactions and workflows
- Configuration changes
- User interface mockups or flows (if applicable)
- Examples of how the system will be used
Break this into subsections as needed for clarity.
Alternatives Considered
What other approaches did you consider? Why did you choose this design over the alternatives?
For each alternative:
- Describe the approach
- List pros and cons
- Explain why it was not chosen
Backwards Compatibility
Does this change break existing APIs, configurations, or user workflows? If yes, how will we handle it?
Performance
What are the performance implications? Will this impact latency, throughput, resource usage, etc.?
Operations
How does this affect operations, deployment, monitoring, or maintenance?
Security
Are there any security considerations or implications?
Documentation
What documentation needs to be created or updated?
Testing
What unit, integration, or end-to-end tests need to be created or updated? How will these tests be integrated in automation? What test metrics will be tracked and what are KPIs?
Dependencies
Which other projects or components impact this work? Which other projects or components are impacted by this work?
Implementation Plan
[Optional] For large projects, break the project into smaller pieces.
Open Questions
List any unresolved questions or decisions that need to be made.
- Question 1?
- Question 2?