Hi @AIPilotDeveloper ,
On your first question, I could not find a documented and supported Windows mechanism that establishes an ordering boundary between revocation and plaintext release to an isolated untrusted process. This is based on the Microsoft documentation I reviewed for process isolation, handle management, I/O cancellation, and IPC. The documentation also does not state that such a mechanism is absent, so this reflects what is documented rather than a confirmed platform limitation. The ordering point that can be established is one the broker controls itself.
That applies directly to your follow-up. I could not find a documented Windows primitive that closes the gap between reservation and submission on its own, but the gap comes from the broker's own sequence, so the broker can close it. In the existing example, the lock is released after reservation, so a revocation that commits before submission does not stop the submission. Making the revocation check and the transition into a submitting state one atomic step, performed immediately before the call that hands plaintext to the transport, removes that window. If revocation wins, nothing is submitted. If submission wins, revocation applies only to later releases. With asynchronous RPC, this step maps onto a documented server decision: RpcAsyncCompleteCall is final for the server, while RpcAsyncAbortCall aborts the call without marshaling output arguments (both Windows 2000 and later).
As for bounded and verifiable outcomes, the prevention guarantee you describe can be established up to the submit call, but not beyond it. Before the submit call, a broker crash leaves the plaintext only in the broker's memory, and the outcome can be verified on the broker side as long as the release record is durable before the atomic check. File Caching explains that writes are cached by default and file metadata is always cached, so the record should be flushed with FlushFileBuffers or written through a handle opened with FILE_FLAG_WRITE_THROUGH. Once the submit call has started, including while the I/O is still pending, I could not find a documented primitive that still guarantees prevention. For named pipes, DisconnectNamedPipe (Windows 2000 and later) discards data the client has not yet read, but the documentation gives the broker no way to learn how much was already read. I also found no documentation on what happens to buffered pipe data when the broker process terminates. Those outcomes remain indeterminate, so splitting a release into small chunks, each passing the same atomic check, limits what any single submit call can expose.
For the architecture, the main documented constraint is that plaintext delivered to the client cannot be retracted, so the client should hold nothing that lets it bypass the broker. PROC_THREAD_ATTRIBUTE_HANDLE_LIST in UpdateProcThreadAttribute (Windows Vista and later) limits which handles the client inherits at launch. Process Security and Access Rights warns that a handle with PROCESS_DUP_HANDLE can be used to obtain maximum access to the target process, so the client should never hold one to the broker. Plaintext can also outlive the client process, since Collecting User-Mode Dumps (Windows Vista SP1 and later) describes how crashing processes can be dumped to disk when an administrator enables it. If you plan to rely on Win32 app isolation, it requires Windows 11, version 24H2 or later and is still marked as preview.
I understand that the lack of a single platform mechanism is not the answer you were hoping for, though your framing of exposure versus recovery already fits the constraints these pages describe. This covers what I can confirm from Microsoft's public documentation on this forum. If you need Microsoft to confirm a guarantee beyond what these pages document, that would need to go through Windows developer support.
I hope this helps clarify the available documentation. If you found my explanation above was truly helpful or informative to you, I would greatly appreciate it if you could follow this guidance so others with the same issue could benefit as well.
Thank you.