test(llup): add exact-APK LLUP-50 physical evidence runner - #491
Draft
daniele21 wants to merge 5 commits into
Draft
test(llup): add exact-APK LLUP-50 physical evidence runner#491daniele21 wants to merge 5 commits into
daniele21 wants to merge 5 commits into
Conversation
Owner
Author
|
/preflight auto |
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.
Scope
Adds LLUP-50 physical evidence tooling only; no runtime/product behavior changes.
run-llup50-physical-side.shconsumes CI-builtdevice-test-runnerapp/test APK pairs and their package manifest; it never invokes Gradle;sourceRevisionor APK SHA-256 does not match the expected evidence ref;compare-llup50-evidence.pyrejects mismatched device/model/profile/thermal identities and reports descriptive control/candidate medians and deltas without inventing promotion thresholds;run-llup50-physical-ab.shis the one-command PC controller: physical preflight, optional exact GGUF download, frozen GitHub Actions artifact download, control/candidate execution, canonical comparison, cleanup and finalPASS/FAIL/INCONCLUSIVEresult.The controller deliberately does not make the LLUP-70 promotion decision.
PASSmeans the frozen control and candidate produced comparable physical evidence; promotion remains an explicit later decision.Current exact identities
498dd155ab10cc8c5cebe3af7a7e148c102c1b32;80164329bbc41a00b75721e3d0524294c03fdb56;59af48313b450d9cff13c7f43458c2e5e6560374;evidence/llup50-control@fcbefc7cd9af84de570da96d039582175dd1700b;evidence/llup50-candidate@a2a050d9551db541bb4c6b152cba8623c782164d;33334957429.Both evidence refs carry the same instrumentation-only model-load probe. The package run already produced exact-ref app/test APK pairs plus manifests for control, candidate and candidate-runtime.
One-command usage
With one physical Android device connected over ADB and GitHub CLI authenticated:
Use
--device SERIALwhen more than one ADB device is online. Existing exact GGUF paths can be supplied with--model-0.8band--model-2b; already-downloaded package artifacts can be supplied with--artifact-root.The controller writes a bounded run directory under
build/llup50-physical-ab/containing logs, side evidence, comparison output,result.jsonandresult.md.Exit/result semantics:
0 / PASS: control and candidate executed successfully on the same physical device and canonical evidence comparison passed;1 / FAIL: candidate physical instrumentation/lifecycle failed after a valid control;2 / INCONCLUSIVE: environment, control baseline, artifact identity or comparison validity did not permit a trustworthy A/B conclusion.Signal handling is fail-safe:
INT/TERMexit and theEXITcleanup removes pushed model files and temporary test/app installations.Validation
Exact tooling HEAD
498dd155ab10cc8c5cebe3af7a7e148c102c1b32:33336253443: SUCCESS;unknown or repository-wide executable scopeon the frozen merge-ref);bash -nover all shell scripts): PASS;Repository-health run
33336253412is independently red because currentdevcontains an unrelated documentation-lifecycle defect indocs/assets/brand/reference/hbridge-core/README.md(Statusmetadata missing). That baseline defect is not patched in this LLUP tooling PR.Physical acceptance boundary
The LLUP-50 controller covers:
The comparator fails closed on mismatched device/model/profile/thermal identities and deliberately reports descriptive deltas without introducing an unreviewed percentage promotion threshold.
LLUP-60 remains a separate affected-evidence replay. In particular, existing LLRT physical owners must not be reused blindly against the new backend identity: the canonical LLRT-6 wrapper currently pins the production
b9637backend revision. Candidate-safe LLRT/quality replay therefore remains a separate work item rather than being falsely reported as part of this LLUP-50 controller.This PR remains draft/unmerged while the frozen physical A/B and LLUP-70 decision are pending.