feat: complete Steam execution
This commit is contained in:
@@ -16,7 +16,7 @@ R-014,12,Pegasus adapter tests,post-v1
|
||||
R-015,8,Lean and Ready policy tests,planned
|
||||
R-016,7,Phase 1 contracts Phase 2 native and Phase 3 Steam capability tests,in-progress
|
||||
R-017,8,window-switching acceptance tests,planned
|
||||
R-018,4,Phase 1 policy and Phase 2 owned native-process lifecycle tests,in-progress
|
||||
R-018,4,Phase 1 policy Phase 2 owned native-process lifecycle tests and Phase 4 provider-handoff evidence,in-progress
|
||||
R-019,15,vendor launcher tests,post-v1
|
||||
R-020,6,Bluetooth CLI and TUI tests,planned
|
||||
R-021,11,installer destructive VM tests,planned
|
||||
|
||||
|
@@ -0,0 +1,28 @@
|
||||
# Phase 4 Steam execution evidence
|
||||
|
||||
- Date: 2026-07-20
|
||||
- Requirement IDs: R-005, R-016, R-018, R-024
|
||||
- Phase/gate: phase 4 / Steam execution
|
||||
- Scope: typed native and Flatpak Steam launch plans, configuration provenance,
|
||||
argument-safe client submission, private logs, structured errors, and representative
|
||||
native plus Proton execution
|
||||
- Exclusions: direct executable launch, provider-client ownership, strong game-lifetime
|
||||
tracking, automatic Steam shutdown, and minimal-session behavior
|
||||
- Host: Linux 7.1.4-arch1-1; NVIDIA GeForce RTX 5070 using the `nvidia` driver;
|
||||
Steam 1.0.0.87-1
|
||||
- Commands: `kiln launch steam:105600 --dry-run --json`; `kiln launch steam:105600
|
||||
--json`; `kiln launch steam:12810 --dry-run --json`; `kiln launch steam:12810
|
||||
--json`; `make check`
|
||||
- Expected result: Kiln emits a typed `steam -silent -applaunch <appid>` plan, submits
|
||||
it without shell interpolation, returns promptly with unknown lifecycle confidence,
|
||||
launches one native and one Proton title through Steam, and reports missing clients
|
||||
as structured failures
|
||||
- Observed result: Terraria App ID 105600 loaded through Steam Linux Runtime and its
|
||||
native `Terraria.bin.x86_64`; Overlord II App ID 12810 loaded through
|
||||
`GE-Proton11-1` and `Overlord2.exe`; both returned cleanly after user exit
|
||||
- Safety and cleanup: Steam was stopped before the temporary compatibility change and
|
||||
final restore. The original `config.vdf` was restored byte-for-byte with SHA-256
|
||||
`9251c6dbf08602857399916808208bd58dd415b5d5b000acc01f1c9044d89c37`, mode and
|
||||
ownership unchanged, and Steam restarted
|
||||
- Automated result: 61 tests passed with the complete local gate
|
||||
- Result: pass
|
||||
@@ -0,0 +1,16 @@
|
||||
# Phase 4 status
|
||||
|
||||
Phase 4 is complete.
|
||||
|
||||
| Exit condition | Evidence | Status |
|
||||
|---|---|---|
|
||||
| Steam launch plans | Typed native and Flatpak unit tests | Passed |
|
||||
| Safe client submission | Shell-free CLI integration test with private logs | Passed |
|
||||
| Failure handling | Structured missing-client integration assertion | Passed |
|
||||
| Native representative | Terraria App ID 105600 through Steam Linux Runtime | Passed |
|
||||
| Proton representative | Overlord II App ID 12810 through GE-Proton11-1 | Passed |
|
||||
| Host cleanup | Original Steam config restored byte-for-byte; Steam restarted | Passed |
|
||||
| Repository gates | `make check` | Passed |
|
||||
|
||||
Full provider-client lifecycle tracking remains later session-hardening work. Phase 5
|
||||
can now prove the minimal compositor, terminal, login/session, and recovery path.
|
||||
@@ -33,4 +33,4 @@ This directory is the starting point for project planning and later implementati
|
||||
|
||||
## Integrity note
|
||||
|
||||
The numbered topic files are the current v0.22 source of truth. `99_FULL_SPEC_ARCHIVE.md` preserves the complete monolithic v0.4 specification for historical and integrity checks, so it no longer matches the evolving numbered files byte-for-byte.
|
||||
The numbered topic files are the current v0.23 source of truth. `99_FULL_SPEC_ARCHIVE.md` preserves the complete monolithic v0.4 specification for historical and integrity checks, so it no longer matches the evolving numbered files byte-for-byte.
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
|
||||
> Performance-first Linux gaming appliance with a unified launcher backend
|
||||
|
||||
| **Status** | Implementation — phases 0–3 complete; phase 4 ready |
|
||||
| **Status** | Implementation — phases 0–4 complete; phase 5 ready |
|
||||
|--------------------|----------------------------------------------------|
|
||||
| **Version** | 0.22 |
|
||||
| **Version** | 0.23 |
|
||||
| **Created** | July 17, 2026 |
|
||||
| **Document type** | Living project specification |
|
||||
| **Current target** | Purpose-built, performance-focused gaming distribution |
|
||||
|
||||
@@ -145,6 +145,7 @@
|
||||
| 0.20 | 2026-07-18 | Replaced the unused hosted-CI plan with mandatory local verification, made Rust 1.97.1 the minimum and reviewed compiler, and scheduled closure of the remaining configuration and adversarial-test gaps before phase 3. |
|
||||
| 0.21 | 2026-07-18 | Closed the pre-phase-3 gaps with local configuration defaults, validation, explanation and safe edits; native launch-plan configuration integration; removal of the obsolete file-lock dependency; bounded redacted process logs; and expanded adversarial tests. |
|
||||
| 0.22 | 2026-07-18 | Completed Phase 3 with bounded read-only Steam library and app-manifest parsing, stable App ID identities, provider-scoped CLI discovery, adversarial fixtures, and a non-launching check against the local Steam installation. |
|
||||
| 0.23 | 2026-07-20 | Completed Phase 4 with typed native and Flatpak Steam launch plans, shell-free client submission, structured failures, and real native Terraria plus GE-Proton Overlord II acceptance tests. |
|
||||
|
||||
## 21. Reference notes
|
||||
|
||||
|
||||
Reference in New Issue
Block a user