Skip to content

Restore reliable required hosted native qualification #130

Open

Description

@HemSoft

Retained query/state correspondence diagnosis, November 10

The retained-data investigation for normal main fc725368, run42868081894 attempt1, is complete within the existing evidence. No new input, query, run, capture or source change was used.

  • The tablet-10 failure remains Resume flow12, sixth authored command, positive Re-roll (1). Its preceding explicit compact snapshot belongs to flow11, before termination and the subsequent Resume flow. That snapshot has one matching leaf. The before-relaunch and failure save bytes are identical. A retained JS prefix contains Resume press-in, press-out and touch-cancel for numeric ID10; collector health is unavailable with exit143. This is positive callback evidence only. It neither proves an absent handler/commit nor identifies the native cancelling owner or joins the original matcher query by wall time.
  • The modal failure remains reset flow1, second authored command, positive recovery-warning visibility after launch. The earlier original CLI corruption flow used byte-identical YAML and its structured command record marks that same assertion COMPLETED. The readiness compact snapshot before the later launch also contains one matching warning leaf and its same-frame ancestor. Those two nodes are not proof of runtime ambiguity. The post-failure retained SQL marker confirms the authored damaged value persisted; it is not a database snapshot or proof of what the app read.
  • The XCTest logs contain hierarchy route activity, but no selector/query identity or returned hierarchy body that binds the actual filtered result to either assertion. The preceding compact snapshots and later screenshots cannot fill that gap.

Pinned Orchestra source, verified against its retained original SHA256 and Git blob, explains the distinction. Default lookup failure attaches a new diagnostic viewHierarchy to ElementNotFound; positive-condition evaluation catches that error and returns false. The assertion then takes another diagnostic hierarchy before throwing AssertionFailure. RunTool projects the exception to its message. Consequently, even an error's diagnostic hierarchy would be later than the deciding lookup. Request counts or the last hierarchy request cannot identify the deciding tree or match count. Expected pinned source is separate from the artifacts' partial, loaded-image-unattested runtime evidence.

No source defect, cause or safe functional correction is established. The exact unmet evidence gate is the original lookup's deciding hierarchy/filter result with authored-command and request correspondence for these two assertions. This cannot be reconstructed from the retained records. Further runtime observation needs an applicable bounded source-observation allocation and normal meaningful new-source qualification; no such run is pending or started. Do not rerun, weaken an oracle, change a gesture/wait/budget, or assign a reset-search cause. Existing issues, original histories and all partial/143/clock/C++ callback/loaded-image/font/public404 limits remain.


Latest completed main, November 10 at 13:58 EST

Current main fc725368babfb87523b5d43bb6a68e070c745743 passed all nine core requirements, including quality-gate, Windows and Ubuntu, simulator build, AX, mutation, audit and unsigned archive. Its quality workflow is terminal failure solely from two advisory jobs:

  • Tablet-10: hash-verified artifact13791340483 identifies scenario tablet-10-ai-light-wide, Resume flow12, sixth authored command, positive Re-roll (1) visibility assertion after the original Resume tap. The retained before-relaunch and failure save documents are byte-identical; that does not prove the UI handler or original matcher result. Its last explicit inspection belongs to flow11, before the failing flow12.
  • Owned modal: hash-verified artifact13792287975 identifies reset flow1, second authored command, positive Your saved data has not been reset. assertion after launch. Its retained explicit inspection is readiness flow0, before that launch.
  • Both original MCP logs report the corresponding positive assertion false. Neither occurrence reaches the owned Help/reset-search geometry branch, so these failures provide no evidence for another search/gesture correction. The retained explicit inspection snapshots cannot substitute for either assertion's own matcher/query hierarchy. Native presentation, activation, AX and paint causes remain unknown.
  • Phone-5, phone-6, tablet-8 and isolated settle passed. Both complete artifact ZIP digests and all 163 tablet / 54 modal manifest-listed file hashes and sizes were verified privately. No later screenshot, new input/query, observer, replay or source change was used for this diagnosis.

The restore streak remains 0 of 3. The original required/native acceptance criteria and budgets below remain unchanged. PR124 is merged and its normal main core delivery is verified, so the dependency sequencing hold is now lifted. The same owner, claim chief-dispatch-22b89184-yahtzee109-102-51, has identified the actual failed commands from the existing artifacts. The next source-only question is whether existing pinned assertion/driver logs provide a genuinely bound original matcher/query result; the explicit snapshots already examined do not. A new observation or correction needs a demonstrated missing seam or defect, not a reset hypothesis inferred from these pre-search failures. No new device input/query, unchanged rerun, source observer, motion/wait/budget change or guessed repair is authorized by this result. Missing original snapshots remain unavailable.

Earlier snapshot entries below remain historical, including their former dependency sequencing holds.


Latest completed main, November 9 at 19:36 EST

Main 23a62917a555d8a0c6eebcaf4bdcd79f2250ef59 passed all nine core requirements, including quality-gate, both validation platforms, simulator build, AX, mutation, audit and unsigned archive. Its quality workflow finished red from three advisory native jobs:

  • Tablet-8 reports Maestro flow-failed; its exact assertion and native cause are unknown from the job log.
  • Tablet-10 and owned modal failed the original 60000 ms reset-reachability assertion.
  • Phone-5, phone-6 and isolated settle passed. Frozen evidence uploads succeeded. Full sanitized failure logs and artifact identities/digests are retained; payloads have not been acquired or inferred. A standalone settle pass does not waive the ordinary reset failure.

The restore streak remains 0 of 3. Original assertions, budgets and the restore checklist below remain mandatory; no cause, environment pin or native acceptance is established. PR136's bounded export-alias fix is now verified on normal main without a historical timeout claim. The final dependency PR124 now integrates this main at ca4f490b, with the three fix blobs unchanged and 27 combined local workflow controls passing. Its fresh exact-head review and normal hosted CI are pending. Earlier 4b509b51 all-nine-core and SFL6 results remain historical.

The existing owner retains the bounded native follow-up plan once dependency qualification settles. The next task remains actual retained reset AX/ownership/ancestor geometry analysis, with exact missing boundaries stated before any new diagnostic or correction. No speculative gesture, wait, budget, passing-oracle or driver change is justified by these outcomes.


Latest completed main, November 9 at 16:51 EST

Main b7cb019a5b1fa235f453c340a022b551f3ef6a72 passed all nine core requirements, including quality-gate, both validation platforms, simulator build, AX, mutation, dependency audit and unsigned archive. The quality workflow finished red only from three advisory native jobs:

  • Tablet-10, owned modal and original settle all failed the original 60000 ms reset-reachability assertion.
  • Phone-5, phone-6 and tablet-8 passed. Failure evidence was frozen and uploaded. Full sanitized logs and artifact identities/digests are retained; artifact contents have not been acquired or inferred and native causes remain unknown.

The native restoration streak remains 0 of 3. All restore criteria and original budgets/oracles below remain mandatory. PR126 has merged. PR124, the final dependency PR, is core-qualified on its prior head and now requires the strict-base integration with this verified main, fresh exact-head SFL and normal hosted qualification. PR136 separately fixes the proved export-wrapper alias entry bug under issue134; it makes no native correction or historical timeout claim.

The existing owner retains the native follow-up plan. Dependency completion remains the sequencing hold; once PR124 settles, inspect the actual retained reset AX decisions/ownership/geometry before proposing a bounded correction or identifying an exact missing boundary. No speculative motion, wait, budget, oracle or broader diagnostic change follows from these failures.


The earlier snapshot entries below are historical and apply to their stated revisions.

Latest completed main, November 9 at 13:37 EST

Main 3408f13998f5da1d20f2a4b2c4c02b96677a7723 passed all nine core requirements, including quality-gate, Windows, simulator build, AX and unsigned archive. The quality workflow is terminal red only from three advisory native jobs:

  • Phone-6 reports device-unreachable; its underlying cause is unknown.
  • Tablet-10 and original settle reached the original 60000 ms reset-reachability failure.
  • Phone-5, tablet-8 and owned modal passed. Failure freeze/uploads passed; full job logs and artifact hashes are retained without claiming an inspected artifact payload or native cause.

The restore streak remains 0 of 3 and the restore criteria below remain unchanged. No root-cause pin or native acceptance is established. PR135 has merged and its new main is core-qualified. PR124 and PR126 now integrate this verified main and await their own current-head review and CI. The same owner retains the existing native diagnosis plan and sequencing hold until dependency work settles; no speculative native fix is authorized by these results.


Latest verified main, November 9

Main 07cbd33b9fd485a7d6aefb0d637a34a2f34095dd passed all nine core requirements, including quality-gate, both validation platforms, simulator build, AX, mutation, audit and device archive. The Application quality run is terminal red from four advisory native jobs:

  • Original settle and tablet-10 reached the original 60000 ms reset reachability failure.
  • Phone-5 and tablet-8 report Maestro flow-failed; exact assertions and causes are not established by their retained job logs.
  • Phone-6 and owned modal passed. Every failing job completed evidence freeze/upload. Logs and artifact identities are retained; this summary does not claim an inspected artifact payload, native cause or acceptance.

The fully green native-main streak remains 0 of 3. The restore condition below is unchanged. No environment/root-cause pin is established.

The same owner retains this incident. Required Windows export cancellations on the remaining dependency PRs are tracked separately in issue134. PR135 retains bounded existing-command progress without changing native logic. Its prior head passed all nine core checks; the strict-base combined head now requires its own review and CI. Dependency completion remains the sequencing hold already documented below. After it settles, resume the bounded retained-evidence diagnosis plan without speculative motion, wait or budget changes.


Current incident decision, November 8

Chief request 1569041356578627786 authorised a single advisory policy after three unrelated hosted failures. This supersedes the reset-only quarantine below. PR #131 will restore all original flows and make only the device-group, owned-modal and settle outcomes advisory to quality-gate. They still run automatically on every PR/main update; failed jobs, warnings, summaries and artifacts stay visible. No continue-on-error relabeling or per-flow skip.

Reduced required coverage: UIKit/AX end-to-end gameplay, native durable-save/resume and corruption/reset interaction outcomes no longer block quality-gate during this incident. Required Linux/Windows gameplay and persistence suites, typecheck/lint/builds, simulator build, AX request control, mutation, dependency audit and device archive stay blocking. A green required gate is not native acceptance.

Three observed failure classes

  • Reset reachability, unchanged 60000 ms guard: main 42336675674.
  • Score press touch-cancel, one original Twos tap followed by missing points-recorded assertion: PR131 phone-5. Positive press-in53/out55/cancel56 scoreId53, no saved Twos. Cause UNKNOWN and trace health UNAVAILABLE/143.
  • Launch-time intro assertion before Help/scoring/reset: PR131 tablet-8, first flow's third command after launch/landscape. No original assertion hierarchy retained; no root cause inferred.

Environment comparison A

Last-green main 42126414160 used macos-26-arm64 images 20261026.0455.2/macOS26.6.2 for three groups and 20261102.0473.1/macOS26.7.2 for green phone-6. First-red main also included passing groups on both images. Current failed phone-5/tablet-8 use 20261102.0473.1. Thus host image movement is observed, but the newer image also passed. Xcode26.6/build17F113, iOS26.5, Maestro2.10.0 SHA29b675e10cc12080e445e9bfb2e2b4e4dfb9c0f2e30d5884120d258b5e1cd991 and iPhone17/iPadPro13M5 device types were already pinned/guarded and are unchanged. Full sanitized logs and source checks retained privately. No demonstrated rollback fix. Standard hosted image build pinning is not supported; no new runner or service is introduced.

Restore condition

The first run of PR131 remains historical failure; no advisory pass is retroactive and no cause is assigned from later screenshots or partial traces.

Original reset-only allocation and evidence, preserved

Description

Restore reliable required hosted reset-recovery qualification after a temporary quarantine authorised by Franz on November 8. Main run 42336675674 failed reset reachability after PR #122. Diagnostic PR #129 run 42472464748 still fails the unchanged 60000 ms search. Eight original compact inspections show no watched-label loss during formatting; the final owned target remains below Help. This does not establish a product or platform cause.

Why

An unreliable recovery flow blocks unrelated PRs through quality-gate. The temporary change removes only corruption/reset recovery and its isolated modal/settle replicas from automatic required qualification. Gameplay, scoring, resume, completed-game/final saves, native build, AX control, validation, mutation, audit and archive stay required. This is reduced coverage, not reset acceptance.

Goal

Repair and restore automatic reset qualification without replaying failed inputs, increasing budgets or accepting unowned/clipped targets.

Acceptance Criteria

  • Source-backed correction addresses reset reachability on hosted macOS at largest supported text and preserves the 60000 ms, 30-inspection, 600 ms limits and original waits.
  • Both authored document and database corruption fixtures exercise real Help, Cancel, reopen, destructive confirmation, database removal, relaunch and empty final saves.
  • Demonstrate repeatability of the complete reset route in normal source-bound candidate and post-merge main executions, without retries, empty commits or old-head reruns. Preserve failures, source/build/runtime binding and partial/143 limits.
  • Restore corruption/reset in ordinary tablet-10 qualification and isolated modal/settle jobs in quality-gate in a reviewed PR, with all required checks green.

Definition of Done

Validation

  • Run the explicit Reset recovery diagnostic workflow on the candidate source. A diagnostic success alone does not meet restoration.
  • Inspect current-source receipts for both corruption kinds, Cancel/Delete/removal/relaunch/final-save assertions and no replay.
  • Verify quality-gate again requires reset jobs after restoration and fails when either reset result is not successful.

Owner follow-up plan, November 9

The latest normal main 682adcea application-quality run has all nine required core checks green. Five native advisory jobs failed: modal, ordinary tablet-10 and isolated settle reported the unchanged 60000 ms reset-reachability failure; tablet-8 reported flow-failed and phone-5 device-unreachable. Phone-6 passed. Original logs and artifact identities are retained. Native restoration remains 0 of 3, with no cause inferred or acceptance claimed.

The original owner retains claim chief-dispatch-22b89184-yahtzee109-102-51. Root-cause implementation waits while the remaining dependency PRs are qualified: PR124 and PR126 currently have blocking Windows export timeouts, and no cancelled check will be waived. This is an explicit sequencing hold, not closure of the native incident.

After the dependency work settles, the next native task is to separate the repeated real reset-search failure from activation/assertion and transport failures using their existing source/run/build-bound evidence. First inspect the original retained AX decisions and owned Help/target geometry, including the last actual query before the budget; do not substitute later pixels/native geometry for an unmade AX query. Reuse qualified observation code and evidence from the earlier studies where applicable, preserving their partial, 143, clock, callback and loaded-image limits. If the existing evidence establishes a source defect, reproduce its exact predicate with retained-data controls and make one bounded reviewed correction. If the missing boundary prevents that, state the exact gap before proposing a narrowly scoped diagnostic. No speculative gesture, wait, budget or passing-oracle change, no unchanged rerun or historical input replay.

A standalone diagnostic pass cannot restore the policy. Any candidate must qualify the complete original gameplay/persistence/reset paths, and the restore checklist above still requires three consecutive fully green normal main native runs or a demonstrated root-cause environment pin, followed by a reviewed restoration of the required aggregate dependencies.

Activity

  1. changed the title [-]Restore reliable required hosted reset-recovery qualification[/-] [+]Restore reliable required hosted native qualification[/+] on Nov 8, 2026
  2. HemSoft commented on Nov 8, 2026

    @HemSoft
    CollaboratorAuthor

    Current-main observation after PR #131: phone-5 job 128849401401 on source 5e5e25235d440ee25fb90196c1de3ebe271e0d54 failed with Local JSON-RPC error -32603 during the solo scenario. The generic internal error does not establish an app assertion failure, touch cancellation, or transport/root cause. Full sanitized job log is retained privately and the failed job remains visible under the advisory policy. This is an early outcome, not the main run's conclusion. Required AX/aggregate are still pending; no main-green claim, rerun, input replay or source change follows.

  3. HemSoft commented on Nov 8, 2026

    @HemSoft
    CollaboratorAuthor

    Main 5e5e25235d440ee25fb90196c1de3ebe271e0d54 now has all nine required core contexts green, including quality-gate and the unsigned device archive. The Application quality workflow remains visibly failed because four advisory native jobs failed: phone-5, tablet-10, owned modal and original settle. Phone-6 and tablet-8 passed. This is required-CI recovery only, not native acceptance. The three-consecutive-green native-main restore condition has not been met; the mixed runner-image evidence has not established a root-cause pin.

  4. HemSoft commented on Nov 9, 2026

    @HemSoft
    CollaboratorAuthor

    Current main f7549d1163513d44e4d9799b861970d831bb1e26 has all nine required contexts green, including the quality gate, unsigned archive and audit. The overall Application quality workflow remains red solely because tablet-10 hit the unchanged 60000 ms reset-reachability limit. The other five advisory native contexts passed. The aggregate explicitly reported and warned native=failure modal=success settle=success. This is required-CI recovery, not native acceptance or a historical-cause finding. The consecutive-green native-main restore count remains zero; neither restore condition is met.

  5. HemSoft commented on Nov 11, 2026

    @HemSoft
    CollaboratorAuthor

    First green native main run, November 11 at 14:55 EST

    PR #138 merged as 7e472ffefb467fc610e803c3d37ed16e1d11bc1b. Main's Application quality run 43078072757 passed every job: all four device groups, the owned reset modal, the reset-settle route, AX request, both Validate jobs, mutation and quality-gate. The device archive, dependency security and site preview also passed. Every native manifest records zero system-gesture re-sends, so under the updated policy this run counts.

    Restore streak: 1 of 3. #138's final PR head was also fully green with zero re-sends (run 43063000033), but only main runs count.

    What #138 found and changed, from retained artifacts:

    • Host load. Hosted macOS runners sat at load averages of 160–670 on 3 CPUs with about 150 MB free. Two debug log stream observers and the app's JS trace ran on every job; both are now opt-in through the repository variable NATIVE_LOG_STREAMS=1. Host telemetry now lists the top 8 processes by CPU and memory. Most of the remaining load is the new simulator's own background services.
    • Owned modal "Your saved data has not been reset." The assertion failed while the screenshot showed the text: launch took ~38 s plus 16 s to the first hierarchy read. Every cold launch now waits up to 60 s for its first screen before the original assertion.
    • Reset reachability (tablet-10, modal, settle). The search was converging when its 60 s wall clock expired (target at the viewport edge on scan 6 of ~7, at 8–10 s per cycle). The budget is now 180 s; the 30-inspection cap and all containment checks stay.
    • Start Game after a setup choice (phone-6). A preference save took 9.7 s, and Setup locks its controls while saving, so the tap hit a disabled button. Setup now waits for the app's save indicator to clear.
    • Lost taps (Resume, die hold, AI opponents). The native observer showed UIKit's window-level _UISystemGestureGateGestureRecognizer recognized mid-tap and cancelling the touch before delivery. The flow runner now re-sends such a tap once, only with that proof in the app's native log. Each re-send is reported in the manifest, as a job warning and in the step summary, and a run with any re-send doesn't count toward this streak.
    • Still possible. The XCTest driver can time out requesting a screenshot under extreme load (device-unreachable), as on tablet-8 and phone-6 on two earlier fix(native): repair hosted native qualification races and move node-forge to 1.4.3 #138 heads. It didn't recur on the last two runs.

    The advisory policy and its aggregate stay unchanged until two more consecutive green main runs. Restoring native results as required dependencies still needs its own reviewed PR. One non-blocking SFL Low is open: the reset-settle step doesn't receive NATIVE_LOG_STREAMS, which matters only when that variable is set.

  6. HemSoft commented on Nov 12, 2026

    @HemSoft
    CollaboratorAuthor

    Status at 20:10 EST, November 11: restore streak 0 of 3

    Main runs since the last update:

    Main Application quality Native outcome Counts?
    7e472ffe (#138) 43078072757 green all six jobs passed, 0 re-sends yes (1)
    ba39899f (#140) 43106745608 red tablet-10 lost its XCTest driver ("Timed out while requesting screenshot") in its first scenario no, streak reset
    287da12c (#141) 43124404511 green all six jobs passed; tablet-10 recorded 1 system-gesture re-send no (re-send rule)

    PR #141 addressed the driver-screenshot loss. That was the last failure class without a fix, and it hit three of six complete runs. The 1-minute load had peaked at 490–670 three to seven minutes after simulator boot, and every loss fell in that window. The runner now waits at least 5 minutes after boot, then until load is below 250 (cap 10 minutes), and records hostSettle. On #141's own run and on main 287da12c, every job settled after about 5 minutes at load 82–226, and no driver was lost.

    Next for whoever owns #130: the streak needs three consecutive main runs that are fully green with zero systemCancelReissues, from normal source-bound commits (no empty commits or reruns). Then a reviewed PR restores the native jobs as required aggregate dependencies and removes the advisory policy. If re-sends keep appearing on main, the residual system-gesture rate is the next thing to measure. Each re-send is listed in the manifest, as a job warning and in the step summary.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions