Skip to content

Move the qualification baseline to LiteRT-LM v0.19.1 - #110

Merged
leehack merged 2 commits into
mainfrom
upstream/v0.19.1
Nov 7, 2026
Merged

leehack merged 2 commits into
mainfrom
upstream/v0.19.1

Conversation

@leehack

@leehack leehack commented Nov 7, 2026 •

Copy link
Copy Markdown
Owner

Outcome

PR qualification now builds and smokes upstream LiteRT-LM v0.19.1 (7a03724cece417f1724c923b3d527b4319730841). Merging this is the prerequisite for a prepare-only candidate and an explicit maintainer publication of native v0.19.1. Nothing is published, tagged or released by this PR.

Why

Upstream v0.19.1 (2026-11-05) is three commits over v0.19.0. The manual detector (run 42393199805) reports reason: ready: compatible with native baseline v0.19.0, all required official assets present. Every carry gate is keyed on exact tags, so without this change v0.19.1 fails closed (and prebuilt_overrides would silently drop the Android Dawn rollback).

Changes

  • Upstream delta audited: the only runtime change is e4e00eee, which makes the main executor's max_num_images default 4 instead of 0 (runtime/engine/engine_settings.cc, runtime/executor/llm_executor_settings.{h,cc}, litert_lm_lib.cc, shared_flags.cc). The rest is upstream Package.swift checksums and Web tests. c/, omni/, prebuilt/, WORKSPACE, .bazelrc are byte-identical, so LiteRT dcb657e8, TensorFlow 4f8e6d47, XNNPACK 28d1fc6d and every prebuilt are unchanged.
  • Every carried upstream preimage (Android GPU safety, HF token bytes, stream finish reason, ASR untimed overlap) hashes identically at v0.19.1; XNNPACK patches target the same pinned archive.
  • Each carry decision extends explicitly to v0.19.1 (same patch files and pre/postimage hashes; retired carries stay retired). v0.19.2 and later still fail closed. prebuilt_overrides keeps the Android Dawn rollback for v0.19.1.
  • PR qualification env pins move to v0.19.1 / 7a03724c.
  • Tests: the "next unknown tag" probes move from v0.19.1 to v0.19.2; a new test asserts the v0.19.1 source-patch manifest, Dawn overrides and XNNPACK pin equal v0.19.0.
  • Docs: README baseline, docs/v019_qualification.md v0.19.1 section, untimed-overlap and patch-audit pointers.
  • No bridge, ASR bridge or patch-file change: neither bridge reads max_num_images or any changed file.

Validation

  • Local: python3 -m unittest discover -s tools -p 'test_*.py' (440 OK, 3 skipped), diagnostics tests OK, actionlint (only the pre-existing SC2155 warning at line 107).
  • CI at head 5d6df7d4: PR Release Qualification run 42393854832 succeeded on the full scope: shared tooling validation (incl. publication lifecycle and Linux loader), SentencePiece sanitizers, model-free ASR overlap/push-source/HF-bytes/Android GPU-safety lanes, all 8 platform builds, full-platform verify (runtime matrix, dependencies, Apple SwiftPM archives, exact-tag check), Moonshine ASR + Whisper container routing + finish-reason ABI smokes on Linux x64 / Windows x64 / macOS arm64, and Qwen3-0.6B CPU inference + num_threads probe on the same three. ASR evidence is bound to upstream 7a03724c and native 5d6df7d4; JFK transcript is the full sentence on all three.
  • Exported-symbol diff, PR runtimes vs published native v0.19.0 runtimes: identical on all 8 platforms (0 added, 0 removed; C API/bridge subset 294–753 symbols per platform, unchanged).
  • Not covered: GPU or device qualification (Android Dawn rollback, Adreno guard, iOS device), as for v0.19.0.

Publication steps for the maintainer

Not performed here. After merge, from canonical main at the merge commit <MAIN_SHA> (inputs match the detector's preparation):

  1. Prepare (no writes):
    gh workflow run native_release.yml -R leehack/litert-lm-native --ref main -f release_tag=v0.19.1 -f upstream_tag=v0.19.1 -f upstream_commit=7a03724cece417f1724c923b3d527b4319730841 -f upstream_compatibility_tag=v0.19.1 -f native_commit=<MAIN_SHA> -f correlation_id=<id> -f publication_approval=prepare-only
  2. Publish the exact candidate: same inputs with publication_approval=publish and candidate_source={"runId":<run>,"runAttempt":1,"artifactId":<id>,"digest":"sha256:<hex>"} read from that run's artifact metadata (docs/release_protocol.md, "Exact candidate promotion").

v0.19.1 changes no carried preimage, C header, dependency pin or prebuilt,
so every v0.19.0 carry decision and the Android Dawn rollback extend to it.
v0.19.2 and later still fail closed.
@leehack
leehack merged commit 1fa4d43 into main Nov 7, 2026
19 checks passed
@leehack
leehack deleted the upstream/v0.19.1 branch November 7, 2026 18:28
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