feat: complete native execution and Steam discovery

This commit is contained in:
2026-07-18 20:11:52 -04:00
parent 514f87dacb
commit bc0090c63d
42 changed files with 6403 additions and 97 deletions
@@ -0,0 +1,19 @@
# Phase 1 completion evidence
- Date: 2026-07-18
- Requirement IDs: R-009, R-012, R-016, R-018, R-024, R-029
- Phase/gate: phase 1 / provider-independent contract completion
- Scope: provider/runtime capability interfaces, typed dry-run launch plans, lifecycle
confidence policy, structured versioned errors, fixed-precedence versioned TOML with
provenance, deterministic mock scenarios, and versioned CLI machine output
- Exclusions: real providers, process execution, daemon or IPC, discovery cache, GUI,
session supervision, installation management, public stability, and final naming
- Commands: `make verify`; `make audit`; `cargo test --workspace --all-targets --locked`;
human and JSON `kiln doctor` smoke paths; structured CLI error smoke paths
- Expected result: all required Phase 1 mock outcomes and hostile inputs are covered;
schemas reject unknown versions and fields; launch arguments never require a shell;
lifecycle effects degrade conservatively; configuration precedence is deterministic
- Observed result: 40 unit, contract, adversarial, persistence, concurrency, mock, and
isolated CLI integration tests passed; formatting, compilation, Clippy with warnings
denied, dependency policy, source inventory, schema reports, and smoke checks passed
- Result: pass
@@ -0,0 +1,16 @@
# Phase 1B installation registry evidence
- Date: 2026-07-18
- Requirement IDs: R-009, R-024, R-027
- Phase/gate: phase 1 / durable installation identity registry
- Scope: exact adapter-fingerprint matching, persistent UUID generation, move aliases,
XDG state resolution, bounded strict JSON, locking, atomic replacement, and backup
- Exclusions: adapters, launch plans, configuration precedence, providers, CLI changes,
and process execution
- Commands: `make verify`; `make audit`; human and JSON `kiln doctor` smoke paths
- Expected result: identity survives reloads and moves; ambiguous, corrupted, oversized,
and unsafe state fails closed without mutation; concurrent resolution creates one entry
- Observed result: 20 unit, contract, adversarial, persistence, and concurrency tests
passed; Rustfmt, workspace/all-target compilation, Clippy with warnings denied, and
cargo-deny advisories/bans/licenses/sources passed
- Result: pass
+22
View File
@@ -0,0 +1,22 @@
# Phase 1 status
Phase 1 is complete. Its contracts remain private and may change before 1.0 when the
schema version and changelog are updated.
| Required area | Evidence | Status |
|---|---|---|
| Game and installation identity | Phase 1A contract tests | Passed |
| Durable registry and move aliases | Phase 1B persistence and adversarial tests | Passed |
| Provider-independent role separation | Core types and adapter/runtime traits | Passed |
| Provider and runtime capabilities | Mock adapter and runtime contract tests | Passed |
| Versioned JSON and machine output | Serialization and CLI integration tests | Passed |
| Argument-safe launch plans | Typed command/argument tests | Passed |
| Lifecycle confidence policy | Conservative effect-matrix tests | Passed |
| Structured errors | Ambiguity, capability, and version tests | Passed |
| Versioned TOML precedence and provenance | Configuration merge and validation tests | Passed |
| All required mock outcomes | Deterministic mock scenario tests | Passed |
| Adversarial input handling | Identity, registry, launch, config, and CLI tests | Passed |
| Repository gates | `make check` | Passed |
See `evidence-contracts-2026-07-18.md`, `evidence-registry-2026-07-18.md`, and
`evidence-completion-2026-07-18.md` for the dated records.