From b240bd942f90097ecf1a5a518d843b881cf8d163 Mon Sep 17 00:00:00 2001 From: Swung0x48 Date: Thu, 24 Sep 2026 14:03:48 +0000 Subject: [PATCH] [Docs] (P12 review): the review round's host gate log and the container variant of the gate script gate/gate-review-3c342c97.log: the P12 gate at head 3c342c97 (dirty=0) in a 4-core container with clang-19, lavapipe (mesa 25.2) and ctest 4.4.3 - unit 2605/2605 (the four new review cases included), integration-spawn/tcp and the three Magma two-process lanes green, hygiene 12/12, fatal census 79 / link ratchet 171 unchanged, protocol revision 3 holds. Still being attributed: SplitLogPaths and spawn_lane_parity (the container's ctest tooling; no CMake file changed since cb0404f2), four PersistentCoherentMapScenario and three F1WireScenario cases in integration-gpu (being run at base cb0404f2 with the same flags), and IterationRPProgram203Scenario (out of scope, ID-P12-12). gate-container.sh is gate.sh with the host paths removed and G1 run separately. --- .../Disaggregated/notes/p12/gate-container.sh | 47 +++++++++++++++++++ .../notes/p12/gate/gate-review-3c342c97.log | 42 +++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100755 docs/Disaggregated/notes/p12/gate-container.sh create mode 100644 docs/Disaggregated/notes/p12/gate/gate-review-3c342c97.log diff --git a/docs/Disaggregated/notes/p12/gate-container.sh b/docs/Disaggregated/notes/p12/gate-container.sh new file mode 100755 index 00000000..0d47eb77 --- /dev/null +++ b/docs/Disaggregated/notes/p12/gate-container.sh @@ -0,0 +1,47 @@ +#!/usr/bin/env bash +# gate.sh : the P7 v2 local gate (logs/p7-gate-template2.sh) for a P12 package tree, minus +# build-verify and the retrace leg (both run at integration). G1 compares against the p12 base +# (9f669e52: .text a52203, symbols in logs/p12/pull-syms-base.txt). +TREE=${1:?tree}; TAG=${2:?tag} +T=/tmp/p12gate-$TAG; mkdir -p "$T" +cd "$TREE" || exit 1 +unset MOBILEGL_FLATC_EXECUTABLE +unset DISPLAY WAYLAND_DISPLAY +echo "=== START $(date) head=$(git rev-parse --short HEAD) dirty=$(git status --porcelain --untracked-files=no | wc -l) ===" +ninja -C build-split -j 5 2>&1 | tail -1; echo "=== split build rc=${PIPESTATUS[0]} ===" +echo "(pull build and G1 run separately)"; lrc=0 +python3 scripts/ci/fatal_census.py 2>&1 | tail -1 +python3 scripts/link_ratchet.py --build-dir build-split --baseline scripts/data/link_ratchet_baseline.txt --assert-monotone 2>&1 | tail -1 +python3 scripts/ci/spawn_lane_parity.py build-split 2>&1 | grep -c -i error | sed 's/^/parity errors: /' +python3 scripts/ci/protocol_revision_pin.py 2>&1 | tail -1 +python3 scripts/ci/wire_declines_audit.py . 2>&1 | tail -1 + +echo "=== HYGIENE ===" +hyg() { local name=$1; shift; if "$@" > "$T/hyg-$name.log" 2>&1; then echo "hygiene $name OK"; else echo "hygiene $name RED"; tail -5 "$T/hyg-$name.log" | sed 's/^/ /'; fi; } +hyg gen_pipe bash -c 'python3 scripts/gen_pipe.py && git diff --exit-code' +hyg gen_pipe_self python3 scripts/gen_pipe.py --self-test +hyg link_seam python3 scripts/ci/link_seam_purity.py --self-test +hyg memo_purity python3 scripts/ci/espryt_memo_purity.py --self-test +hyg symbol_report python3 scripts/symbol_report.py --self-test +hyg stdio bash -c "! grep -rnE 'fprintf[[:space:]]*\((stderr|stdout)|(^|[^[:alnum:]_>.])printf[[:space:]]*\(|(^|[^[:alnum:]_>.:])puts[[:space:]]*\(|std::(cout|cerr)' MobileGL/MG_Backend MobileGL/MG_State" +hyg dirty_surface bash -c 'python3 scripts/gen_pipe_dirty_surface.py --check && python3 scripts/gen_pipe_dirty_surface.py --self-test' +hyg field_ownership bash -c 'python3 scripts/gen_pipe_field_ownership.py --check && python3 scripts/gen_pipe_field_ownership.py --self-test' +hyg r16 bash -c 'bash scripts/ci/control_smoke_test.sh && python3 scripts/ci/test_trace_infrastructure.py && python3 scripts/ci/tcp_lane_tools_test.py && python3 tools/trace_replay/test_run_tcp_matrix.py && python3 tools/trace_replay/test_compare_actuals.py' +hyg g5_p3a bash scripts/p3a_untouched_regions.sh 37da3c3a HEAD +hyg g5_p4a bash scripts/p4a_untouched_regions.sh 37da3c3a HEAD +hyg doc_citations python3 scripts/check_doc_citations.py --rev HEAD --strict docs/Disaggregated/*.md docs/Disaggregated/notes/p7/INTEGRATOR-DECISIONS-P7.md MobileGL/MG_Remote/CONTRACT-P7.md + +cd build-split +for L in unit integration-split integration-spawn integration-tcp integration-magma-split integration-magma-spawn integration-magma-tcp integration-magma-full-split; do + printf "lane %-28s " "$L"; ctest -L "^$L\$" -j 4 2>&1 | grep -E 'tests passed|tests failed|No tests' | head -1 | tee "$T/lane-$L.txt" + if grep -qE "[1-9][0-9]* tests failed" "$T/lane-$L.txt" 2>/dev/null; then sed 's/^/ FAILED: /' Testing/Temporary/LastTestsFailed.log | head -8; fi +done +for M in monolith inproc; do + printf "lane %-28s " "integration-gpu[$M]" + MOBILEGL_TRANSPORT=$M MOBILEGL_IPC_ROLE_SPLIT_STATE=1 MOBILEGL_IPC_STRICT_ERRORS=1 MOBILEGL_IPC_RUN_AHEAD=1 \ + MOBILEGL_ITEST_REQUIRE_GPU=1 MOBILEGL_MAGMA_FIX_ITERATIONRP_SUBGROUP_SCRATCH=1 \ + MOBILEGL_MAGMA_DERIVE_NUM_SUBGROUPS=1 MOBILEGL_MAGMA_ITERATIONRP_FIX_BARRIER=1 \ + ctest -L integration-gpu -j 4 2>&1 | grep -E 'tests passed|tests failed|No tests' | head -1 | tee "$T/lane-gpu-$M.txt" + if grep -qE "[1-9][0-9]* tests failed" "$T/lane-gpu-$M.txt" 2>/dev/null; then sed 's/^/ FAILED: /' Testing/Temporary/LastTestsFailed.log | grep -v Skipped | head -8; fi +done +echo "=== DONE $(date) ===" diff --git a/docs/Disaggregated/notes/p12/gate/gate-review-3c342c97.log b/docs/Disaggregated/notes/p12/gate/gate-review-3c342c97.log new file mode 100644 index 00000000..66ce00a6 --- /dev/null +++ b/docs/Disaggregated/notes/p12/gate/gate-review-3c342c97.log @@ -0,0 +1,42 @@ +=== START Thu Sep 24 12:31:49 UTC 2026 head=3c342c97 dirty=0 === +ninja: no work to do. +=== split build rc=0 === +(pull build and G1 run separately) +fatal census: 79 abort sites over 20 files of the split server image, 45 distinct family words, 3 refusal words, 0 unmarked +link-ratchet: ratchet: unchanged at 171 symbol(s) +parity errors: 1 +protocol revision pin: revision 3 holds (sha256 da09f0acb48cf245..., 3 revision(s) pinned) +wire-declines: 53 rows, 53 with sites, 53 site(s) total, 0 unlogged, 0 unknown +=== HYGIENE === +hygiene gen_pipe OK +hygiene gen_pipe_self OK +hygiene link_seam OK +hygiene memo_purity OK +hygiene symbol_report OK +hygiene stdio OK +hygiene dirty_surface OK +hygiene field_ownership OK +hygiene r16 OK +hygiene g5_p3a OK +hygiene g5_p4a OK +hygiene doc_citations OK +lane unit 100% tests passed out of 2605 +lane integration-split 88% tests passed, 1 tests failed out of 8 + FAILED: 7464:SplitLogPaths.PrivateAndDistinct +lane integration-spawn 100% tests passed out of 1 +lane integration-tcp 100% tests passed out of 3 +lane integration-magma-split 100% tests passed out of 125 +lane integration-magma-spawn 100% tests passed out of 104 +lane integration-magma-tcp 100% tests passed out of 89 +lane integration-magma-full-split 99% tests passed, 1 tests failed out of 558 + FAILED: 5979:DirectVulkan.Split.Full.IterationRPProgram203Scenario.FixedCompleteInputProducesFixedCompleteGoldenOutput +lane integration-gpu[monolith] 99% tests passed, 4 tests failed out of 2188 + FAILED: 4024:DirectGLES.Split.PersistentCoherentMapScenario.TheMapLandsInTheArmItsLaneDeclares + FAILED: 4027:DirectGLES.Spawn.PersistentCoherentMapScenario.TheMapLandsInTheArmItsLaneDeclares + FAILED: 4030:DirectGLES.Tcp.PersistentCoherentMapScenario.TheMapLandsInTheArmItsLaneDeclares + FAILED: 4728:DirectGLES.Split.SmallRing.PersistentCoherentMapScenario.TheMapLandsInTheArmItsLaneDeclares +lane integration-gpu[inproc] 99% tests passed, 3 tests failed out of 2188 + FAILED: 3783:DirectGLES.F1WireScenario.GenerateMipmapThroughViewKeepsOwnerLevelsAndLayersOutsideItsWindow + FAILED: 3784:DirectGLES.F1WireScenario.ComputeImageStoreThroughViewPreservesOtherRootLayer + FAILED: 3785:DirectGLES.F1WireScenario.TextureViewClearTargetsItsRootMipAndLayer +=== DONE Thu Sep 24 12:46:07 UTC 2026 ===