81 lines
4.5 KiB
Markdown
81 lines
4.5 KiB
Markdown
# Milestone 20 evidence: vocabulary and prepared contexts
|
|
|
|
Recorded 2026-10-29T22:38:53+02:00. Base commit
|
|
`ede45d224a9ad255a919900e556a03d7e575430f` had a clean working tree.
|
|
The final tree is dirty only for this milestone's `PLANS.md`, Rust source and
|
|
test changes, and this evidence report. No `Cargo.toml` or `Cargo.lock` diff,
|
|
new dependency, persisted-format change, production configuration, or secret
|
|
fixture was introduced. The final Rust source/test patch fingerprint is
|
|
SHA256 `cba97207f926f1927c70643754db2743603e0f72892115ef8d959696d769992a`,
|
|
produced by:
|
|
|
|
```sh
|
|
git diff -- src/app.rs src/domain.rs src/persistence.rs src/container_driver.rs src/tui/events.rs src/tui/render.rs src/tui/state.rs src/tui/terminal.rs tests/client_delivery.rs tests/commit_restore.rs tests/runtime_restart.rs tests/tui_workflow.rs | sha256sum
|
|
```
|
|
|
|
The release artifact `target/release/wireguard-admin` built from those inputs
|
|
has SHA256 `7a6ee46b1d9c39bac9a7b3627b0b8ba30e70321126ebd16b1948b42b8658ac98`.
|
|
`file target/release/wireguard-admin` identified an x86-64 dynamically linked
|
|
GNU/Linux PIE with interpreter `/lib64/ld-linux-x86-64.so.2`.
|
|
|
|
## Implementation and acceptance mapping
|
|
|
|
- M20.1 renamed the domain's current knowledge enum to `ApplyStatus`, retained
|
|
`runtime::RuntimeObservation` for measured interface data, and migrated actual
|
|
application, persistence, TUI and integration callers. The exact duplicate
|
|
TUI `AppliedState` enum/mapping and now unnecessary `Statistics`,
|
|
`TechnicalObservation` and `ObservedRuntime` aliases were removed. UI labels
|
|
and current-versus-historical state transitions were preserved (M20-A1).
|
|
- M20.2 replaced the six-value prepared delivery tuple and three-value restore
|
|
tuple with private named contexts. A private `DeliveryMode` distinguishes
|
|
first issue and reissue without changing public `reissue` flags. Neither
|
|
context derives `Clone` or `Debug`; identity, attempt, generation, overwrite,
|
|
cancellation, unrelated-command clearing, password ownership and QR/file
|
|
order remain unchanged. A behavioral test covers cancel/unrelated-command
|
|
clearing (M20-A2).
|
|
- All affected production and test callers compile; no manifests, formats or
|
|
transport behavior changed. Focused tests, final full RUST gates and
|
|
independent review passed (M20-A3).
|
|
|
|
## Independent review and repair
|
|
|
|
A GPT-6-Luna/high implementer completed M20.1 and M20.2 sequentially. A
|
|
separate fresh GPT-6-Luna/high read-only reviewer inspected the integrated
|
|
diff, production paths, callers, tests and secret-bearing contexts and found
|
|
no behavior issue. The coordinator's first Clippy gate found M20-R1 (P2): two
|
|
test/test-only `.clone()` calls on the now-`Copy` status. A separate
|
|
GPT-6-Luna/high repairer changed only those two calls to dereferences in
|
|
`src/app.rs` and `src/container_driver.rs`. The reviewer independently
|
|
rechecked the repair and affected tests, closed R1 and found no new issue.
|
|
No actionable finding remains.
|
|
|
|
## Checks and limits
|
|
|
|
Environment at execution: `rustc`/Cargo 1.97.1 on
|
|
`x86_64-unknown-linux-gnu`, rustfmt 1.9.0 and Clippy 0.1.97, matching the
|
|
pinned compiler. Focused implementer/reviewer runs covered `domain::` (13),
|
|
`runtime::` (25), `tui::state::` (7), `tui::events::` (7),
|
|
`--test commit_restore` (9), `--test runtime_restart` (3),
|
|
`--test tui_workflow` (8), and `--test client_delivery` (5). After R1, the
|
|
repairer ran `cargo test --locked app::` (58 passed) and
|
|
`cargo test --locked --lib container_driver::` (23 passed, 2 ignored). The
|
|
reviewer reran affected app/event tests. These are host synthetic/PTY checks;
|
|
ignored Alpine selectors were not run.
|
|
|
|
| Final coordinator command | Actual result |
|
|
| --- | --- |
|
|
| `cargo fmt --all -- --check` | exit 0 |
|
|
| `cargo clippy --locked --all-targets -- -D warnings` | exit 0 after M20-R1 repair |
|
|
| `cargo test --locked` | exit 0: 391 unit/integration tests passed, 3 ignored; 2 doctests passed; 0 failed |
|
|
| `cargo build --locked --release` | exit 0; artifact SHA256 above |
|
|
| `git diff --check` | exit 0 |
|
|
|
|
The initial Clippy run exited 101 on M20-R1 before repair and is not the final
|
|
gate result. Default tests did not execute the three explicitly ignored
|
|
Alpine/selected-daemon tests. No Alpine Testcontainers or disposable systemd VM
|
|
run was required for this naming/context refactor or performed. Prior Alpine
|
|
results are historical for earlier source and do not validate this artifact;
|
|
real systemd/D-Bus and IPv6 limitations remain as previously recorded. No
|
|
production, live VPN, host service or host network operation was performed.
|
|
|