feat: D12 Steam-launch wrapper for auto crash-capture + doc status fixes — 0.16.0
D12 "build first" wrapper: `rigdoctor wrap %command%` (Steam launch option / Lutris/Heroic wrapper field) auto-brackets a focused diagnostic around a game — start a game-tagged capture on launch, clean stop on exit; a hard freeze leaves it unterminated → flagged as a crash next launch. - core/wrap.py: game name from SteamAppId, PATH-proof launch_option(), run() that doesn't disturb an existing capture and returns the game's exit code. - diagnostic.start() preserves an unanalyzed crash to diagnostic-crash.jsonl before clearing, so auto-relaunch can't wipe an unseen crash; pending_crash/ analyze_crash check the archive first. - GUI: "Auto-capture…" helper dialog (copyable launch-option string). - Tests for wrap (name resolution, exit-code passthrough, no-double-start). - docs: fix stale MODULES.md status column (M1/M3/M4/M5/M8/M10/M13 → done), update ROADMAP/MODULES for the wrapper + crash detection. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -5,6 +5,22 @@ All notable changes to RigDoctor are recorded here. Format follows
|
||||
(`MAJOR.MINOR.PATCH`, pre-1.0). `__version__` and `pyproject.toml` must match the git
|
||||
release tag (so the auto-updater, D18, can compare versions).
|
||||
|
||||
## [0.16.0] - 2026-05-22
|
||||
### Added
|
||||
- **Automatic crash-capture via a Steam launch wrapper (M6/D12).** Set `rigdoctor wrap
|
||||
%command%` as a game's Steam launch option (or in Lutris/Heroic's wrapper field) and RigDoctor
|
||||
starts a focused, game-tagged capture when the game launches and stops it cleanly on exit — no
|
||||
manual Run Diagnostic / Finish. A hard freeze leaves the capture unterminated, so it's flagged
|
||||
as a crash next launch. The wrapper resolves the game name from Steam's `SteamAppId`, doesn't
|
||||
disturb an existing capture, and returns the game's exit code. (`core/wrap.py`, `rigdoctor wrap`.)
|
||||
- GUI **Auto-capture…** helper on the Games page: shows the exact launch-option line (absolute
|
||||
path, copy button) and how to set it in Steam.
|
||||
- Auto-capture preserves an unanalyzed crash (`diagnostic-crash.jsonl`) before starting a new
|
||||
capture, so relaunching the game can't wipe a crash report you haven't seen yet.
|
||||
### Fixed
|
||||
- `docs/MODULES.md` status column was stale — M1, M3, M4, M5, M8, M10, and M13 are done and now
|
||||
marked ✅ (only M2 and M11 remain not-started; M6/M9/M12 in progress).
|
||||
|
||||
## [0.15.0] - 2026-05-22
|
||||
### Added
|
||||
- **Hard-crash detection & recovery for the guided diagnostic.** If a focused capture ends
|
||||
|
||||
Reference in New Issue
Block a user