Design reproducible runtime artifacts - #77
Conversation
|
I reviewed the design against current Two specification gaps need to be resolved before this moves out of draft:
One implementation note should also be made explicit: if With those points tightened, this becomes an actionable Stage 0 design rather than only a direction of travel. |
a4e1012 to
6210346
Compare
|
The design now
I updated trust diagram, attestation schema, and acceptance tests were updated accordingly. |
Hkshoonya
left a comment
There was a problem hiding this comment.
I re-read the revised design against the three points in the earlier review. They are now resolved coherently:
- finalized signed/notarized/stapled artifacts are the exact lifecycle and hardware-test subjects, while unsigned payload reproducibility remains separate evidence;
faster-whisper==1.2.1is a direct managed-runtime input, only itsonnxruntimeedge is excluded, and acceptance tests require the rest of its declared closure;- missing private-ABI wheels must be built from pinned inputs with provenance before binary-only lock generation.
That removes the specification blockers I raised. Keeping this as a draft is still correct because the private-interpreter supplier and the DEB/RPM package shape remain explicit Stage 0 choices that need evidence-backed prototypes. The next useful step is those non-release prototypes and oldest-platform results, not merging the design into v1.5.2.
Define target-specific locks, complete runtime payloads, interpreter ownership, package lifecycle alternatives, trust boundaries, and staged release gates for issue Hkshoonya#60.
6210346 to
202ac61
Compare
|
Added the v1.5.2 evidence from Issue #60:
I can start a separate Which exact minimum releases should be used for acceptance testing across the advertised linux distributions (Debian/Ubuntu, Fedora/RHEL-family,etc)? Do I test on latest LTS or stable releases where available? |
|
Use the oldest release we are prepared to support, plus a current release. Testing only the newest LTS would miss the compatibility floor that this prototype is meant to prove. For the first
Do not include Ubuntu derivatives, rolling distributions, NixOS, aarch64, CUDA, or TensorRT in this first prototype. The Stage 0 result should prove archive verification, relocation, isolated import paths, private-ABI PyGObject/pycairo, complete dependency closure, and size on clean systems. GUI launch, camera/audio devices, v4l2loopback, package upgrade/removal, and CUDA execution remain later release gates on real systems. Please record the image identifiers and update dates with the results so the evidence is reproducible. If one floor fails because of a native library rather than the private interpreter itself, report that boundary instead of relaxing or hiding it; then we can either add a separate cell or narrow the advertised package support honestly. |
Description
Documents the proposed reproducible runtime artifact architecture requested in Issue #60.
The design defines:
uvas the proposed lock tool, with target-specific PEP 751 locks and hash-verified offline wheelhouses;Provides/Conflicts, upgrade, variant switching, rollback, and uninstall behavior; andThis is a design-only change. It does not add downloader, activation, UI, worker, installer, workflow, or runtime-changing code. It keeps
requires-python = ">=3.11", preserves the OpenAI Whisper compatibility path, starts with CPU/CUDA, and leaves TensorRT and the DEB/RPM package-shape choice outside the first milestone.References and standards sources are included in the design document.
Refs #60.
Type of Change
Checklist
Screenshots / Video (if UI change)
Not applicable; this PR changes documentation only.