Add the repo-side pieces for milestone 5: MIT licensing, real maintainer and forge metadata, a public support doc, 1.0.0 release notes, release-prep tooling, and CI uploads for the full candidate artifact set. Keep source-tree version surfaces honest by reading the local project version in the CLI and About dialog, and cover the new release-prep plus version-fallback behavior with focused tests. Document where raw validation evidence belongs, add the GA validation rollup, and archive the latest readiness review. Milestone 5 remains open until the forge release page is published and the milestone 2 and 3 matrices are filled with linked manual evidence. Validation: PYTHONPATH=src python3 -m unittest discover -s tests -p 'test_*.py'; PYTHONPATH=src python3 -m unittest tests.test_release_prep tests.test_portable_bundle tests.test_aman_cli tests.test_config_ui; python3 -m py_compile src/*.py tests/*.py; PYTHONPATH=src python3 -m aman version
3.3 KiB
3.3 KiB
Runtime Validation Report
This document tracks milestone 3 evidence for runtime reliability and diagnostics.
Automated evidence
Completed on 2026-03-12:
PYTHONPATH=src python3 -m unittest tests.test_diagnostics tests.test_aman_cli tests.test_aman tests.test_aiprocess- covers
doctorversusself-check, tri-state diagnostic output, warning versus failure exit codes, read-only model cache probing, and actionable runtime log wording for audio, hotkey, injection, editor, and startup failures
- covers
PYTHONPATH=src python3 -m unittest discover -s tests -p 'test_*.py'- confirms the runtime and diagnostics changes do not regress the broader daemon, CLI, config, and portable bundle flows
python3 -m py_compile src/*.py tests/*.py- verifies the updated runtime and diagnostics modules compile cleanly
Automated scenario coverage
| Scenario | Evidence | Status | Notes |
|---|---|---|---|
doctor and self-check have distinct roles |
tests.test_diagnostics, tests.test_aman_cli |
Complete | self-check extends doctor with service/model/startup readiness checks |
| Missing config remains read-only | tests.test_diagnostics |
Complete | Missing config yields warn and does not write a default file |
| Managed model cache probing is read-only | tests.test_diagnostics, tests.test_aiprocess |
Complete | self-check uses cache probing and does not download or repair |
Warning-only diagnostics exit 0; failures exit 2 |
tests.test_aman_cli |
Complete | Human and JSON output share the same status model |
| Runtime failures log stable IDs and one next step | tests.test_aman_cli, tests.test_aman |
Complete | Covers hotkey, audio-input, injection, editor, and startup failure wording |
Repeated start/stop and shutdown return to idle |
tests.test_aman |
Complete | Current daemon tests cover start, stop, cancel, pause, and shutdown paths |
Manual X11 validation
These rows must be filled with release-specific evidence before milestone 3 can be closed as complete for GA signoff.
Store raw evidence for each runtime validation pass in
user-readiness/<linux-timestamp>.md and reference that file in the Notes
column.
| Scenario | Debian/Ubuntu | Arch | Fedora | openSUSE | Reviewer | Status | Notes |
|---|---|---|---|---|---|---|---|
| Service restart after a successful install | Pending | Pending | Pending | Pending | Pending | Pending | Verify systemctl --user restart aman returns to the tray/ready state |
| Reboot followed by successful reuse | Pending | Pending | Pending | Pending | Pending | Pending | Validate recovery after a real session restart |
| Offline startup with an already-cached model | Pending | Pending | Pending | Pending | Pending | Pending | Disable network, then confirm the cached path still starts |
| Missing runtime dependency recovery | Pending | Pending | Pending | Pending | Pending | Pending | Remove one documented dependency, verify diagnostics point to the correct fix |
| Tray-triggered diagnostics logging | Pending | Pending | Pending | Pending | Pending | Pending | Use Run Diagnostics and confirm the same IDs/messages appear in logs |
| Service-failure escalation path | Pending | Pending | Pending | Pending | Pending | Pending | Confirm doctor -> self-check -> journalctl -> aman run --verbose is enough to explain the failure |