Repository navigation
Conversation
# Conflicts: # docs/vm-lifecycle.md # scripts/tuna-vm-lane
…qualification # Conflicts: # docs/vm-lifecycle.md # scripts/tuna-vm-lane
…qualification # Conflicts: # scripts/tuna-vm-lane
# Conflicts: # scripts/tuna-vm-lane
…on' into fix/launcher-completion
…dentity The strict published qualification removed guest_role with its pre-rename prefix normalization, but menu_identity still called it, so the published lifecycle died with NameError at the restart/power-off dialog cases (run 41388914199 marlin-vm). Match the tuna-compositor executable exactly, like every other identity check.
…on' into fix/launcher-completion
TourViewPredicates' await_still test patches lane.time.sleep, which is the process-wide time.sleep. On Python 3.12 (the CI runners), subprocess.wait() reaps ffmpeg in a time.sleep() poll loop, so a slow ffmpeg exit after it closes stdout spun that loop, advanced the fake clock past the 5 s deadline and left the exact alt-tab PNG unconfirmed (check failed on #994-#1008-era heads: runs for PRs 998, 999, 903, 920, 922). Reproduced with an ffmpeg shim that exits 0.2 s after closing stdout; Python 3.13+ waits via pidfd and was unaffected. Only sleeps issued from the lane now advance the fake clock.
…on' into fix/launcher-completion
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implement the private artifact consumer and real four-host native qualification driver for #577. Reuse Corral qemu create --qcow --firmware uefi --arch amd64, canonical qemu//local/NAME lifecycle, and authenticated real RFB callback. Keep HOST binaries separate from the one signed amd64 GUEST; ARM hosts explicitly use x86 TCG. Verify exact release/main workflow certificate identity, issuer, transparency bundle and source SHA; immutable manifest pin, same-byte offline acquisition, qcow2 ownership, native binary headers, QEMU/UEFI package acquisition, browser/process ownership and safe cancellation are enforced. Critical OS package transactions finish rather than being killed midway.\n\nNative qualification drives pristine stock GNOME Initial Setup in a COPY through actual Chromium/noVNC pixels, real passworded Tuna login and password-required wheel sudo, logout/login and changed-kernel-boot-ID persistence. It also exercises real browser close, stop/cancel/failure retirement, signature/source rejection and a separate owned guard VM. Browser transport readiness is never described as OS readiness.\n\nThe public scripts/try-tuna-desktop and duplicate .sh are deliberately unchanged until the real signed artifact and all four native gates are qualified. No unsigned/local binary fallback, PENDING production identities or publisher-policy changes. This branch includes the required strict published-acquisition cutover from #994; the separate producer is #993 and minimal stock GIS image dependency is tunaOS#4207. Actual tagged Corral release and qualified normal core package/image handoffs remain prerequisites for final native dispatch/public cutover; this PR alone is not full launcher acceptance. Latest review fixes have not been locally re-tested; the new normal CI step exercises behavioral helper boundary tests, and actual native artifact tests remain mandatory.