repository name

This commit is contained in:
2026-07-29 16:49:46 -04:00
parent 37c92efd80
commit d047f24112

View File

@@ -0,0 +1,87 @@
# ADR-001: Use `ota-reference-design` as the Repository Name
* **Status:** Accepted
* **Date:** 2026-07-29
## Context
The project requires a repository name that communicates its purpose clearly without tying the design to a single hardware platform, implementation language, or update framework.
The repository will contain:
* architectural documentation;
* OTA design decisions;
* diagrams;
* reference implementations;
* update tooling;
* failure-injection experiments;
* security and reliability analysis.
The initial practical implementation may use Raspberry Pi hardware, but the overall design should remain applicable to other embedded Linux platforms.
The repository is not intended to provide a production-ready OTA framework or a reusable software library. Its primary purpose is to demonstrate and explain the architecture of a reliable and secure OTA update system.
## Decision
The repository will be named:
```text
ota-reference-design
```
The repository will initially remain a standalone top-level repository rather than being placed under a broader group such as `engineering`, `embedded-systems`, or `systems-engineering`.
## Alternatives Considered
### `embedded-ota-lab`
This name emphasizes experimentation and practical work.
It was not selected because the project will contain more than experiments. It will also document architecture, security, reliability, design decisions, and implementation trade-offs.
### `ota-update-lab`
This name is simple but somewhat redundant because OTA already means over-the-air updating.
It also makes the project sound more like a temporary collection of experiments than a structured reference design.
### `reliable-ota`
This name emphasizes one of the primary goals of the project.
It was not selected because it does not clearly communicate that the repository is educational and architectural rather than a production-ready OTA product.
### A Repository Under an `engineering` Group
A broader parent group could eventually contain several related repositories.
It was not selected at this stage because a group containing only one repository adds unnecessary hierarchy and does not yet provide meaningful organization.
## Consequences
### Positive
* The name clearly communicates that the project is an OTA reference design.
* The repository is not tied to Raspberry Pi or any other specific platform.
* The name allows the project to include documentation, code, diagrams, and experiments.
* Readers are less likely to mistake the project for a production-ready framework.
* The name remains appropriate if additional hardware platforms are added later.
### Negative
* The name is broader than the initial Raspberry Pi implementation.
* Readers may still require the README to understand the exact project scope.
* The term “reference design” may suggest a more complete implementation than exists during the early stages of development.
## Notes
A broader repository group may be introduced later if several related systems-engineering projects are created.
Possible future group names include:
```text
embedded-systems
systems-engineering
```
Moving the repository into such a group would not require changing the repository name.