\

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 CaseDescription
namedescription
Upload a datasetA user with an existing dataset on their workstation can upload...

Requirements

TitleDescriptionType
title<entity> shall <do thing>type
title<pre-condition> <entity> shall <do thing>type
Upload a new dataset versionA user shall be able to upload a new version...Functional
Support dataset versions up to 100 TiB in sizeOSMO shall support uploading a dataset of up to 100 TiB...KPI
Datasets cannot be accessed by users without sufficient rolesIf 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?