37 lines
1.8 KiB
Markdown
37 lines
1.8 KiB
Markdown
|
|
# OTKO — specifications (this repo)
|
|||
|
|
|
|||
|
|
This folder holds **OTKO's own planning documents**. It is deliberately
|
|||
|
|
separate from the greenfield rebuild spec set at
|
|||
|
|
`~/Sync/otko-development/specifications` (docs `00`–`14`), which stays the
|
|||
|
|
reference for *what a conformant rebuild looks like*. Requirement IDs of
|
|||
|
|
the form `[AREA-NNN]` cited in this folder refer to that rebuild set.
|
|||
|
|
|
|||
|
|
## Why this folder exists
|
|||
|
|
|
|||
|
|
`~/Sync/otko` (this repo) is the **working, feature-rich app** and is the
|
|||
|
|
primary deliverable. `~/Sync/otko-development` is a **greenfield rebuild**
|
|||
|
|
that conforms closely to the rebuild specs but is less capable in several
|
|||
|
|
areas (transient/pushover/response-spectrum, richer element/material
|
|||
|
|
coverage, `.osmodel` corpus, HDF5). The goal of the plan below is to
|
|||
|
|
**harvest the rebuild's good, spec-conformant capabilities into this app
|
|||
|
|
without breaking what already works** — not to rewrite this app to the
|
|||
|
|
rebuild's architecture.
|
|||
|
|
|
|||
|
|
## Documents
|
|||
|
|
|
|||
|
|
| # | Document | Purpose |
|
|||
|
|
|---|---|---|
|
|||
|
|
| 15 | [15-rebuild-adoption-plan.md](15-rebuild-adoption-plan.md) | Dependency-ordered plan for porting rebuild capabilities into this repo, with adoption matrix, phases, gates, risks and explicit skips. |
|
|||
|
|
|
|||
|
|
## Ground rules (summary — see doc 15 §3)
|
|||
|
|
|
|||
|
|
- **Additive, never replacement.** This repo is a superset of the rebuild
|
|||
|
|
in the solver/runner/export surface; protect that.
|
|||
|
|
- **Keep the working app working:** `.osmodel` format, AGPL-3.0 license,
|
|||
|
|
Python 3.10–3.12 support, existing tests green.
|
|||
|
|
- **Adapt, don't copy:** re-type ported code to this repo's APIs
|
|||
|
|
(`StaticResults`/`ModalResults`, mutable `Project`, 4-value `UnitSystem`).
|
|||
|
|
- **One phase = one branch = independently shippable**, each with its own
|
|||
|
|
tests and gate.
|
|||
|
|
- **License hygiene:** the rebuild is MIT, this repo is AGPL-3.0; MIT→AGPL
|
|||
|
|
is compatible, but ported files need attribution (see doc 15 §7).
|