Merge nucleic/lucid-river-toad-6efj into dev
This commit is contained in:
+5
-5
@@ -180,11 +180,11 @@ for, and nothing above it should move. These three are different:
|
||||
mounted vs. in-VM). Deliberately held back until `WslcApiDump` has run: written now, against
|
||||
guessed names, it would not compile, and fixing it blind is the mistake this whole approach
|
||||
exists to avoid.
|
||||
- **The internal arm, Tier 1 — "recover"** (`WslcInternal.cs` in the broker, not a spike).
|
||||
Everything it needs is confirmed on hardware: entry point, vtable, impersonation, and
|
||||
`OpenSessionByName`. On broker restart, open the orphaned session, `ListContainers` for
|
||||
reporting, `Terminate` it, and create a fresh one through the compat SDK — automatic clean
|
||||
recovery instead of a manual `wsl --shutdown`. Enough for M2.
|
||||
- ~~**The internal arm, Tier 1 — "recover"**~~ **written**: `windows/NucleicBroker/Wslc/WslcInternal.cs`.
|
||||
On broker restart it opens the orphaned session, lists its containers for the log, terminates
|
||||
it, and lets the facade start fresh — automatic clean recovery instead of a manual
|
||||
`wsl --shutdown`. Still needs one live test: kill a broker mid-session and confirm the next one
|
||||
recovers (see below).
|
||||
- **Tier 2 — "adopt"** (keep containers running across a broker restart) is **blocked**. The
|
||||
`Session.FromAbi()` handoff throws `InvalidCastException` even though the QI to
|
||||
`IWSLCCompatSession` succeeds: the WinRT layer appears to be a client-side wrapper in
|
||||
|
||||
Reference in New Issue
Block a user