tests/parallel/test_1063_constrained_freeslip_parallel.py::test_constrained_freeslip_partition_independent[ti] fails its accuracy anchor on the host that recorded it (mesh fingerprint matches: 434 cells, vol 2.35568541253):
|
recorded 2026-08-15 (#568) |
now |
| velocity L2 |
0.3925981604039 |
0.3925981604143 |
| mean-stripped topography |
37.07799837159 |
37.75254788367 |
Velocity agrees to 3e-11. Topography is 1.8% higher. The np=1 and np=2 runs agree with each other, so this is not a partition effect. The iso anchor and the gauge anchor still pass.
It is not new. The same 37.75254788 comes from the main checkout's build of development at 1391e4a (built 2026-10-06), and from bugfix/unwrap-memoised-823 with its unwrap and realness changes switched on and off (four combinations, identical to 12 digits).
CI cannot see it. CI's gmsh builds 430 cells, so the anchor skips there (run 37431877336: "accuracy anchor was recorded on a different mesh"). The anchor is a live gate only on one machine, and only in the parallel pass.
Likely mechanism, not yet confirmed. The test's own comment says the topography is read off the multiplier, whose [p, λ] Schur sub-block runs into its 200-iteration cap ("a converged SNES over a capped inner block"). A topography that is not converged moves with anything that changes the inner solve's iteration path: KSP or PC defaults, restart length, or tolerance. The velocity does not move. If so, the 37.08 anchor is also an unconverged number, and the question is what the converged topography is, rather than which of the two values is right.
To do:
- Converge the multiplier block on this fixture (raise the cap, or tighten it and read the true value).
- Bisect development between 2026-08-15 and 1391e4a if the converged value differs from both numbers.
- Re-record the anchor at a converged state, and give it a fingerprint CI also matches, or anchor something CI can reach.
Underworld development team with AI support from Claude Code
tests/parallel/test_1063_constrained_freeslip_parallel.py::test_constrained_freeslip_partition_independent[ti]fails its accuracy anchor on the host that recorded it (mesh fingerprint matches: 434 cells, vol 2.35568541253):Velocity agrees to 3e-11. Topography is 1.8% higher. The np=1 and np=2 runs agree with each other, so this is not a partition effect. The
isoanchor and the gauge anchor still pass.It is not new. The same 37.75254788 comes from the main checkout's build of
developmentat 1391e4a (built 2026-10-06), and frombugfix/unwrap-memoised-823with its unwrap and realness changes switched on and off (four combinations, identical to 12 digits).CI cannot see it. CI's gmsh builds 430 cells, so the anchor skips there (run 37431877336: "accuracy anchor was recorded on a different mesh"). The anchor is a live gate only on one machine, and only in the parallel pass.
Likely mechanism, not yet confirmed. The test's own comment says the topography is read off the multiplier, whose [p, λ] Schur sub-block runs into its 200-iteration cap ("a converged SNES over a capped inner block"). A topography that is not converged moves with anything that changes the inner solve's iteration path: KSP or PC defaults, restart length, or tolerance. The velocity does not move. If so, the 37.08 anchor is also an unconverged number, and the question is what the converged topography is, rather than which of the two values is right.
To do:
Underworld development team with AI support from Claude Code