Skip to content

Latest commit

 

History

History
148 lines (122 loc) · 5.86 KB

File metadata and controls

148 lines (122 loc) · 5.86 KB

Linux Tech Helper Release Checklist

App Identity

  • App name: Linux Tech Helper
  • Project family: Ai for Linux
  • Current release target: Linux Tech Helper v0.2.1
  • Current safety level: safety-policy-v0.2-read-only-copy-only
  • Runtime: Python 3.10+, GTK 3, PyGObject
  • Desktop support: primarily tested on KDE; X11 tested; Wayland expected but not deeply validated

Safety Model

Linux Tech Helper uses Safety Policy v0.2. It can run its fixed built-in read-only system scan and write its own app data under ~/.local/share/linux-tech-helper/.

Guided diagnostic commands are copy-only. The app shows commands for the user to run manually, then the user pastes output back into the app. Permanent forbidden zones are partition changes, filesystem repair, boot repair, and automated driver repair or driver installation.

What The App Does

  • First-run setup wizard
  • Read-only system scan
  • Machine purpose profile
  • Readiness checklist
  • Help Desk dashboard
  • Guided diagnostics for audio, internet, updates, drives, disk space, services/logs, desktop/session, application launch, and general triage
  • Rule-based interpretation of pasted command output
  • Case File review screen
  • Support Bundle review and local zip export
  • User-local desktop launcher install/remove helpers
  • Safety Policy v0.2 foundation

What The App Does Not Do Yet

  • No sudo
  • No automatic repairs
  • No package installs or removals
  • No service changes
  • No drive or mount changes
  • No partition changes, filesystem repair, boot repair, or automated driver repair
  • No AI runtime
  • No Ollama dependency
  • No .deb package
  • No AppImage
  • No upload or send workflow for support bundles
  • No dependency installation by Linux Tech Helper

Manual Smoke Test

  • ./run.sh launches the app.
  • KDE launcher launches the app when installed.
  • First-run wizard works after Reset Data and Rerun Wizard.
  • Read-only scan completes.
  • Machine Purpose page is readable.
  • Readiness checklist appears and continues to summary.
  • Guided diagnostics open from Help Desk.
  • Preflight Check opens from Maintenance.
  • Preflight results are readable and clearly non-installing.
  • Pasted diagnostic output receives a plain-English interpretation.
  • Case File opens.
  • Case File shows machine summary, latest report status, and diagnostic entries.
  • Support Bundle review appears before export.
  • Support Bundle export creates a local zip.
  • Export result shows the zip path and does not imply upload/send.
  • Launcher install helper creates ~/.local/share/applications/linux-tech-helper.desktop.
  • Launcher uninstall helper removes only the local launcher.
  • Upgrade note is clear: reinstall launcher from the newer extracted folder.
  • Support Bundle privacy wording tells users to review saved output and database contents before sharing.
  • App remains read-only and copy-only.
  • Guided Diagnostic shows policy-derived copy-only safety text.
  • Application Launch Errors terminal capture step shows a caution/user-guided action label.
  • Project Status shows policy version and permanent forbidden zones.

Validation Commands

Run from the project root:

git status
python3 -m py_compile app.py lth/core/constants.py tools/build_release_package.py tools/test_release_package.py tools/validate_knowledge_pack.py tools/test_safety_policy.py
python3 tools/validate_knowledge_pack.py
python3 tools/test_safety_policy.py
python3 tools/test_output_interpreter.py
python3 tools/test_preflight.py
python3 tools/test_release_package.py
git diff --check
desktop-file-validate packaging/linux-tech-helper.desktop
python3 tools/build_release_package.py
./run.sh

If desktop-file-validate is not installed, record that it was skipped.

Temporary-HOME launcher validation is covered by python3 tools/test_release_package.py; it must not alter the real user launcher or app data.

Known Limitations

  • No sudo.
  • No automatic repairs.
  • No package changes.
  • No service changes.
  • No drive or mount changes.
  • No partition changes, filesystem repair, boot repair, or automated driver repair.
  • No AI runtime.
  • No .deb or AppImage package yet.
  • Knowledge pack coverage is still small.
  • Support bundles are created locally only; the user must inspect and share them manually.

Source Package Inspection

After python3 tools/build_release_package.py, inspect dist/linux-tech-helper-v0.2.1.tar.gz.

  • Tarball exists under dist/.
  • Top-level folder is linux-tech-helper-v0.2.1/.
  • RELEASE-MANIFEST.json exists inside the package.
  • README.md exists.
  • run.sh exists.
  • install-local-launcher.sh exists.
  • uninstall-local-launcher.sh exists.
  • tools/test_safety_policy.py exists.
  • tools/test_release_package.py exists.
  • packaging/linux-tech-helper.desktop is not included in the public archive.
  • lth/knowledge/packs/core_v0_1/ exists.
  • No .git/ files are included.
  • No __pycache__/ folders are included.
  • No *.pyc files are included.
  • No dist/ build output is nested in the package.
  • No ~/.local/share/linux-tech-helper/ runtime data is included.
  • No support bundle zip exports are included.
  • No personal development paths or machine names are included in packaged public text.

Extract the tarball into a temporary folder and run:

python3 -m py_compile app.py lth/core/constants.py tools/build_release_package.py tools/test_release_package.py tools/validate_knowledge_pack.py tools/test_safety_policy.py
python3 tools/validate_knowledge_pack.py
python3 tools/test_safety_policy.py
python3 tools/test_output_interpreter.py

Release-Stop Rule

Do not package or tag a release if any of these are true:

  • The working tree is dirty.
  • Validation commands fail.
  • Manual smoke test fails.
  • Support bundle contents or manifest metadata are stale.
  • Any new behavior violates Safety Policy v0.2.