docs: sync RFC coverage and record spec mismatches
This commit is contained in:
parent
5be20af4b0
commit
f229dbe2a6
2 changed files with 1916 additions and 1080 deletions
38
FINDINGS.md
Normal file
38
FINDINGS.md
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
# Specification Mismatches
|
||||
|
||||
## Scope
|
||||
Findings are mismatches between current repository source behavior and existing docs/spec pages under `docs/`.
|
||||
|
||||
### 1) `docs/getting-started.md` uses deprecated constructor pattern
|
||||
- Example and prose show `core.New(core.Options{...})` and say constructor reads only the first `core.Options`.
|
||||
- Current code uses variadic `core.New(...CoreOption)` only; passing `core.Options` requires `core.WithOptions(core.NewOptions(...))`.
|
||||
- References: `docs/getting-started.md:18`, `docs/getting-started.md:26`, `docs/getting-started.md:142`.
|
||||
|
||||
### 2) `docs/testing.md` and `docs/configuration.md` repeat outdated constructor usage
|
||||
- Both files document `core.New(core.Options{...})` examples.
|
||||
- Current constructor is variadic `CoreOption` values.
|
||||
- References: `docs/testing.md:29`, `docs/configuration.md:16`.
|
||||
|
||||
### 3) `docs/lifecycle.md` claims registry order is map-backed and unstable
|
||||
- File states `Startables()/Stoppables()` are built from a map-backed registry and therefore non-deterministic.
|
||||
- Current `Registry` stores an explicit insertion-order slice and iterates in insertion order.
|
||||
- References: `docs/lifecycle.md:64-67`.
|
||||
|
||||
### 4) `docs/services.md` stale ordering and lock-name behavior
|
||||
- Claims registry is map-backed; actual behavior is insertion-order iteration.
|
||||
- States default service lock name is `"srv"`, but `LockEnable`/`LockApply` do not expose/use a default namespace in implementation.
|
||||
- References: `docs/services.md:53`, `docs/services.md:86-88`.
|
||||
|
||||
### 5) `docs/commands.md` documents removed managed lifecycle field
|
||||
- Section “Lifecycle Commands” shows `Lifecycle` field with `Start/Stop/Restart/Reload/Signal` callbacks.
|
||||
- Current `Command` struct has `Managed string` and no `Lifecycle` field.
|
||||
- References: `docs/commands.md:155-159`.
|
||||
|
||||
### 6) `docs/subsystems.md` documents legacy options creation call for subsystem registration
|
||||
- Uses `c.Data().New(core.Options{...})` and `c.Drive().New(core.Options{...})`.
|
||||
- `Data.New` and `Drive.New` expect `core.Options` via varargs usage helpers (`core.NewOptions` in current docs/usage pattern).
|
||||
- References: `docs/subsystems.md:44`, `docs/subsystems.md:75`, `docs/subsystems.md:80`.
|
||||
|
||||
### 7) `docs/index.md` RFC summary is stale
|
||||
- Claims `docs/RFC.md` is 21 sections, 1476 lines, but current RFC content has expanded sections/size.
|
||||
- Reference: `docs/index.md` table header note.
|
||||
2958
docs/RFC.md
2958
docs/RFC.md
File diff suppressed because it is too large
Load diff
Loading…
Add table
Reference in a new issue