Skip to content

Prepare native desktop runtimes and a build-only candidate rehearsal - #71

Merged
MrScripty merged 1 commit into
mainfrom
release/v080-package-qualification-20261014
Oct 14, 2026
Merged

MrScripty merged 1 commit into
mainfrom
release/v080-package-qualification-20261014

Conversation

@MrScripty

@MrScripty MrScripty commented Oct 14, 2026 •

Copy link
Copy Markdown
Owner

The sixteen-artifact release path has implicit desktop ORT inputs, a Linux-only model verifier and metadata for only two Linux installers. This change prepares the existing jobs/tools for a source-pinned build-only rehearsal while keeping all outputs unsigned, unverified candidates.

Source: 9dadd33f1b906032c6102516aff03a08ae35c78c, tree 92ce587f5f52865e21d852bbce355fa77252307f, based on accepted main 055222931100eeedc43307271dbf7c504787888d. Version stays 0.8.0-rc.1; Rust production APIs/schemas, dependency resolution, accepted receipts and user inference work are unchanged.

Changes:

  • Full desktop jobs explicitly provision/probe official pinned CPU ORT 1.24.2. RPC staging admits only pinned runtime members/notices. Full packaging includes native notices; no-inference packaging whitelists RPC filenames even if staging contains stale native files.
  • Preserve the positional packaged-model CLI, replace Unix copying, isolate native child environments, use Windows process groups/CTRL_BREAK, and drain owned processes after signal failures. Linux keeps device/inode proof; Windows PSAPI/macOS lsof report module paths and current pinned bytes, with mapped-file-object identity explicitly unavailable. Copied fixture hashes are recorded without granting model provenance.
  • Generate sixteen artifact-level SPDX inventories, aggregate unsigned provenance, source/native notices, license and checksums over every other final file. Native notice roles must cover every target's exact bytes, including the verified Windows CRLF variants. filesAnalyzed=false and native component/inspection limits are explicit; retain the old extracted-Linux helper separately.
  • Add default-false manual build_candidates plus an exact checked-out expected_source guard. Reuse existing package jobs; omit review-only jobs/non-shipped Torch E2E in this new mode. Contents permissions remain read-only; no tag/release creation path.

Local validation:

  • Node release suite: 37 passed, 0 failed/skipped.
  • Python focused suites: 20 passed, 1 native Windows/macOS-only skip, 0 failed. Existing native QA now runs these contracts, including a real native observer self-process query.
  • Ruff 0.15.2 check/format, checksum-pinned actionlint 1.7.8 (local shellcheck/pyflakes plugins unavailable), attribution freshness, dependency ownership, version alignment and diff checks passed.
  • Default/S3 collections regenerated: notice texts unchanged; only Electron package input SHA changed. Both lockfiles and both earlier receipts retain their exact hashes.
  • Earlier failed assertions and the Windows notice coverage discovery are retained in the ledger and receipt.

Nomic investigation: official v1.5 FP16 pointer at ac6fcd72429d86ff25c17895e47a9bfcfc50c1b2 is 273,859,028 bytes, SHA-256 cf5b5a86edb00f895561803cfc04729090a958340b8ca2ad76c143f565f6bb04; publisher declares Apache-2.0. Executor HF metadata transfer was proxy-denied with 403, before any model bytes. Tokenizer/config local hashes and trained execution remain unavailable. No model/private data download, ASR/vision gate or GPU claim.

Independent cumulative parent review accepted exact head 9dadd33. Ordinary PR Build 38542718075 completed success: all nine applicable jobs passed. Candidate-only package/assembly jobs were skipped; this result does not represent the sixteen-artifact rehearsal. No CI repair or candidate head change was needed. Real sixteen-artifact/native model acceptance has not run. The inference matrix adds an explicitly untrained native lifecycle gate; it cannot substitute for trained Nomic acceptance.

The parent reviewed and approved this exact build-only action:

gh workflow run build.yml --repo MrScripty/Pumas-Library \
  --ref release/v080-package-qualification-20261014 \
  -F build_candidates=true \
  -f expected_source=9dadd33f1b906032c6102516aff03a08ae35c78c

Dispatch attempt was blocked before submission: gh failed its initial GET https://api.github.com/repos/MrScripty/Pumas-Library/actions/workflows/build.yml with Forbidden (exit 1), before a dispatch POST. No candidate run ID was returned. The remote branch was verified at 9dadd33 and the executor responded at 2026-10-14 09:49:51 UTC. Available connected GitHub tools have no workflow-dispatch action; no alternate credentials, tag, trigger rewrite or access bypass was attempted. The approved action would rehearse the sixteen files without a tag or publication. Required native user flows, reviewed trained fixture execution and maintainer final metadata/notices/security acceptance remain separate. Final 0.8.0 still requires an aligned version commit and parent-controlled promotion.

Terminal ordinary-PR evidence: Linux review archive artifact 11884785954, 30,659,579 bytes, GitHub outer-ZIP SHA-256 1f93d6c2006af866cf4ba7f53469e8a4cc04be881765058e450114c2ffc058db; evidence artifact 11884860569, ZIP SHA-256 21873573371459660cdaf3a0f2116ebdf8915d3a31644f93e2bcb49c7dba22a9. Both identify source 9dadd33. Actual untrained ONNX lifecycle passed through the updated Linux verifier. Windows/macOS source contracts include real self-process OS observer queries; their final packaged-model acceptance remains pending the separate approved candidate run. The current artifact transfer boundary is recorded below; no trained-model claim.

Nonblocking documentation followup: 46a747503114dd5586da097331f1fbd60cbcbcbd, branch docs/v080-build-only-gates-20261014, changes only docs/DEVELOPMENT.md tag-only wording/table to describe explicit build-only candidate dispatch. All 17 existing CI gating tests passed. It is held separately for later integration and is not the reviewed candidate artifact source. The approved release branch remains pinned at 9dadd33f1b906032c6102516aff03a08ae35c78c for the user's pending manual dispatch.

Qualification resumption (2026-10-14): authenticated exact-source manual-run reads still return zero workflow_dispatch runs. Under renewed parent/user instruction, the same reviewed CLI command was retried once; its preliminary workflow GET again returned Forbidden before POST, with no run ID. Stopped dispatch attempts. Supported manual action: Actions → Build → Run workflow, branch release/v080-package-qualification-20261014, build_candidates=true, expected_source=9dadd33f1b906032c6102516aff03a08ae35c78c.

Separate qualification handoff commit 24140512000027bc57f61245cc13099876e15046 on qualification/v080-handoff-20261014 records all sixteen expected filenames, refreshed review ZIP metadata, actual native observer test outcomes, minimal remaining gates and a machine-readable receipt. Documentary consistency/identity/link checks passed; no runtime suite was rerun for this report. The candidate head and docs46 branch remain unchanged. The integration retrieved evidence ZIP 11884860569 into a file reference, but its single current executor transfer was proxy-denied with HTTP 403 and zero bytes received; local extraction/inner hashes are unavailable. Trained fixture bytes/config hashes and actual native trained execution remain unavailable; no substitute model or access bypass was used. No tag, release or merge was performed.

Source merge audit (2026-10-14, parent-authorized backlog resolution): source integration ready at unchanged head 9dadd33f1b906032c6102516aff03a08ae35c78c. The plan's Milestone/write-set/gates section explicitly says: “Actual full matrix/trained/native model qualification may remain pending with exact runnable procedures/owners; source fixtures cannot close those release gates.” RELEASING.md reserves actual native artifact/trained acceptance for the later tag/publication decision. Source CI, focused regressions and independent cumulative parent review are complete. Fresh checks: nine applicable Build jobs successful, seven CodeQL checks successful, CodeRabbit status successful; no pending/failed checks or unresolved inline threads. No formal GitHub review submission exists; independent acceptance is the parent's explicitly supplied cumulative review of this exact head, not a self-review or invented GitHub approval.

Decision: integrate only the reviewed source using a merge commit with expected-head protection; retain the exact release branch ref for qualification and keep the plan's release acceptance partial. No product API/schema or dependency-resolution change is introduced. All sixteen actual package files/user flows, reviewed trained fixture/native execution, final metadata/notices/security acceptance and aligned 0.8.0 promotion remain unsatisfied release gates. This integration does not authorize or prove a release. The separate documentation/evidence branches remain held for parent integration. No denied dispatch/artifact access is retried.

Source integration completed 2026-10-14 20:24:41 UTC: ready transition succeeded, then Greptile completed successfully (20 files reviewed, zero comments). GitHub merged the expected unchanged head via merge commit 694c6f676d367342dc33e8f46140e635d2df9f63. Its parents are 055222931100eeedc43307271dbf7c504787888d and 9dadd33f1b906032c6102516aff03a08ae35c78c; its tree is exactly the reviewed 92ce587f5f52865e21d852bbce355fa77252307f. Remote main and retained release branch were verified; all three task worktrees are clean. No new source commit or inference-work change was made. Post-merge main Build 38631834981 started and is not yet qualified by this audit.

Retention contract: release/v080-package-qualification-20261014 stays pinned at 9dadd33f1b906032c6102516aff03a08ae35c78c, under the parent release integrator, solely for exact-source package qualification/manual dispatch. Do not synchronize/rebase/delete it during that qualification; parent decides retirement after the preserved pin is no longer needed. Separate docs46 and qualification241 branches/worktrees remain held for parent integration. Source preparation is integrated; the package/release plan remains partially accepted. All previously recorded native package/model/metadata/version promotion gates and access blockers remain in force. No denied dispatch or artifact access was retried, and no tag/release was created.

@coderabbitai

coderabbitai Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: c502f5ed-aa26-4133-a0b0-25e9cbe25edd
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@MrScripty
MrScripty marked this pull request as ready for review October 14, 2026 20:18
@greptile-apps

greptile-apps Bot commented Oct 14, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5

[High impact] The source changes appear safe to merge; release acceptance remains a separate decision.

Summary

This PR prepares native candidate builds without authorizing publication.

  • Candidate builds run only after an exact manual source pin.
  • Desktop packages carry only the native runtime their variant needs.
  • Packaged ONNX checks run on Linux, Windows, and macOS.
  • Every candidate artifact gets its own inventory and final checksum.

No actionable issues were found. MrScripty explicitly leaves actual native package flows, trained-model acceptance, exhaustive native inventories, final package inspection, and publication approval for later release gates. MrScripty also acknowledges the tag-only wording in docs/DEVELOPMENT.md and identifies a separate documentation follow-up.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart TD
  A["Version tag or explicit manual candidate build"] --> B["Source and workflow checks"]
  B --> C["Full desktop builds: stage pinned ORT"]
  B --> D["No-inference desktop and headless builds"]
  B --> E["Inference headless builds"]
  E --> F["Native untrained model lifecycle"]
  C --> G["Collect sixteen exact artifacts"]
  D --> G
  F --> G
  G --> H["SPDX, unsigned provenance, notices and checksums"]
  H --> I["Upload unsigned candidates"]
  I --> J["Separate native, trained-model and maintainer acceptance"]
Loading

Reviews (1) · Last reviewed commit: "build(release): prepare native candidate..." · Reviewed by Greptile

@MrScripty
MrScripty merged commit 694c6f6 into main Oct 14, 2026
28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant