Skip to content

ci: consolidate hosted gates and exact full qualification - #435

Merged
jonit-dev merged 7 commits into
developfrom
ci/full-candidate-qualification
Oct 5, 2026
Merged

jonit-dev merged 7 commits into
developfrom
ci/full-candidate-qualification

Conversation

@jonit-dev

@jonit-dev jonit-dev commented Oct 4, 2026 •

Copy link
Copy Markdown
Contributor

Merge candidates currently receive reduced native/template coverage, and Integration failures do not independently join the sole required verdict. This change makes queue, main and audit qualification exhaustive at the exact candidate SHA: all 13 templates, both goldens, full supported native coverage and retained Integration. ci-required independently rejects narrowed plans, missing/skipped/cancelled required legs, stale attempts and wrong source/candidate identities.

Ordinary PRs retain affected coverage and Android. The existing iOS advisory policy remains explicit. Full-tree verdict reuse stays disabled. Each hosted template leg proves pristine compiler coverage before its scenarios, with conservative fallback for local or unknown inputs. Producer repairs bind Android compiler objects and effective O2 through merged/stripped/executed APK bytes; Windows source normalization accepts only literal CRLF-to-LF equality with the exact candidate. Measured C++ coverage inputs and floors were not restamped. The absorbed #436 browser gate retirement retains CPU, collision, native and scenario coverage with strict receipts.

The remaining Windows failure was the workload's full warmup advance running before game startup readiness. The shared device/desktop runner now completes its existing startup gate, then executes every scenario warmup tick before sampling. Setup, opt-out/no-startup behavior, readiness requirements, workload/performance assertions and deadlines remain unchanged. A post-readiness timeout still fails. Warmup accounting also uses deadlines established before compiler invocation; it cannot interrupt synchronous work. Failed-host console and bounded pending-request evidence remain available before cleanup.

Validation:

  • Current source: e072c3a65b80fdf2437dc25ef3f7277c60c7d75e, based on current develop 64aed30.
  • Startup ordering: meaningful RED 2 failed/3 passed → GREEN 5 passed; 126 affected desktop/device/iOS/startup/transport controls passed. Playtest and root strict typechecks passed. Fresh scoped review found no P1/P2 issue. Normal commit hooks passed.
  • Earlier proven controls include 96 warmup tests and 31 Android/candidate-chain tests. The unchanged world-GPU target passed its 60-second limit with both 200-frame walks intact.
  • Exact run 37252729340, source 03399e33/candidate f63dbf97, had 62 successes and only Windows workload as a root failure; required joins rejected it correctly. Android, unit3, release packaging and clean-source proof passed. Its failed workload timed out advance3 before startup readiness; the separate startup arm passed after compilation at 33.525s and readiness at 43.814s.
  • Fresh hosted PR qualification passed on the latest sequencing repair. Normal merge-queue qualification remains required for merge.

Published PR qualification 37256579927 passed: 65 successful jobs/one expected policy skip, including ci-required. Windows produced 26 qualified samples over 14.1s with all three required markers and no binding error codes; its declared software performance advisory remains visible. Normal queue enrollment is confirmed, position 1. Queue 37259374897 tests exact candidate c3211d3c on documentation-only updated base 0863d102, with full native/all 13 templates/both goldens/required Integration. Queue qualification and actual merge remain pending.

Original PRD-483 completion: 100% (5/5 phase acceptance criteria verified). Its final unchecked criterion, normal PR CI passing before merge, is proved by run37256579927 attempt1 (65 success/one expected policy skip, ci-required success) on sourcee072. Queue run37259374897 remains active only in Linux native fog correctness; every other retained test/template/native/unit lane has passed. Full native receipts explicitly retain the iOS advisory failure and certify no iOS qualification. Windows production is functional PASS; software performance remains advisory. This evidence does not prove a worst-case genuinely cold queue within the 120-minute response window, defer Android, enable verdict reuse or complete #430’s separate rollout. The canonical PRD checkbox/status will be reconciled immediately after normal merge without invalidating the active candidate.

Merged at 2026-10-05 04:38:29 UTC, commit abaa1f0. The user explicitly authorized dequeue and the existing override after repeated external target advances; the merge used an exact source-head guard on e072. The earlier exhaustive queue run37259374897/c321 passed in66m37s. The latest regenerated candidate4ffade06/run37263424116 had not completed full qualification before override; no green verdict is claimed for that tree. No protection/settings/timeout changes or force push were made.

@jonit-dev jonit-dev added the prd:75% PRD phases in, acceptance open label Oct 4, 2026
@jonit-dev
jonit-dev marked this pull request as ready for review October 4, 2026 21:48
@jonit-dev jonit-dev changed the title ci: enforce exact candidate full queue qualification ci: consolidate hosted gates and exact full qualification Oct 4, 2026
@jonit-dev
jonit-dev added this pull request to the merge queue Oct 5, 2026
@jonit-dev jonit-dev added prd:100% and removed prd:75% PRD phases in, acceptance open labels Oct 5, 2026
@jonit-dev
jonit-dev removed this pull request from the merge queue due to a manual request Oct 5, 2026
@jonit-dev
jonit-dev merged commit abaa1f0 into develop Oct 5, 2026
88 checks passed
jonit-dev added a commit that referenced this pull request Oct 5, 2026
The cleanup PR's qualification is green and #435 merged as abaa1f0: PR run
37256579927 (65 succeeded, 1 expected policy skip, ci-required success) and
merge-group run 37259374897 (66 jobs, 13 template nonvisual legs, 3 golden-path
jobs, 16 Integration jobs, ci-required success) both pass, so the last open
Phase 2 box is ticked with no bypass.

PRD-483 had no Acceptance criteria section, so prd-progress could never report
it ready. Its four outcome criteria are written from the landed evidence and the
six CI-contract specs (282 tests) that guard them.

The file moves to docs/PRDs/done/ per docs/PRDs/AGENTS.md; the AGENTS.md link
follows and CLAUDE.md is regenerated. `pnpm prd:progress` reads prd:100% — ready.

Co-authored-by: Joao Paulo Furtado <jfurtado141@gmail.com>
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