Skip to content

8.2.22 Phase 4 amended: the geometry split and WP57 widened, agreed 30 October 2026

8.2.22 Phase 4 amended: the geometry split and WP57 widened, agreed 30 October 2026

Rulings by the author at /np-plan amend 4 on 30 October 2026, taken after WP56's review while its PR was open. The author asked to rule that UT-02's geometry and meshing be split, ideally in WP57, to fold the open review items into that package, and to be asked first. Eleven questions were put through AskUserQuestion in three calls. The author took the recommendation on the open items (adding REV-111 and REV-153), the old commands, REV-144, VER-62, the plan cap and REV-111. The author chose otherwise on the split's level (both, X1), the packaging (all in WP57, X5), the branch (X10), the rectification sentence (X8) and the estimate (X9). The letter series continues at X.

# Decision Consequence Clause changed, and when
X1 An idealised pore is geometry the case declares, and meshing is stage 6's (UT-02). A case declares a cylindrical pore as geometry.pore, its membrane and reservoir taken from geometry.membrane and geometry.reservoir; stage 5 builds the region from it and stage 6 meshes it under numerics.mesh.*, as it meshes a structure's region. Beside it, nanopnp geometry cylinder writes the region as a standalone geometry file, which nanopnp plot draws and nanopnp mesh meshes to an MSH 4.1 file under --maxh-nm and --wall-h-nm Geometry and its discretisation are separate for every pore, and the mesh settings of a cylinder run are read from the case and recorded in its manifest. REV-154's supplied-mesh remedy names nanopnp mesh. The region's interchange document, deferred to FR-28 by T3 (REV-41), comes forward for the geometry file. UT-02 returns from fixed to accepted IF-02's generators NOTE, QR-12's NOTE on the remedy, §5.3.1's NOTE on an idealised pore, VER-32, in this commit; open: WP57
X2 nanopnp mesh cylinder is removed, and Case.cylinder builds a case with geometry.pore and writes no .msh. Examples 01 to 04 and sessions 01 to 03 and 05 move to the case's geometry; nanopnp stage mesh --export writes a mesh where one is wanted One way makes a cylinder. The break is listed in CHANGELOG.md with its migration (F4) IF-02's generators NOTE, VER-32, in this commit; open: WP57
X3 A uniform surface charge on the wall of an idealised pore is a boundary condition (REV-144): boundary_conditions.wall_charge_C_m2, a jump of n·D across the wall, entering Poisson's one weak form as a surface term under the axisymmetric measure. It is an input, not a correction, and 0, the default, adds no term A solid-state pore's charge is exact rather than a smeared layer. A Tier 2 benchmark, VER-77, checks it against Grahame's relation and Gauss's law. V3's deferral is spent PHY-09 and its NOTE, VER-77, in this commit; open: WP57
X4 VER-62's golden may be re-pinned in WP57, gated. Where examples 01 to 04 meshing their cylinder through stage 6 moves a golden mesh hash, WP57 re-pins only if the new mesh has the same element count and each golden quantity agrees with its old pin within the walk's mesh-moved tolerance, the PR reporting both. A larger drift stops the package for investigation G10's ruling for this move is taken in advance and bounded; any other move is still G10's VER-62, in this commit; open: WP57
X5 Its cap is superseded by Y11. WP57 is one package: the geometry split (X1 to X4), the Python interface of W7 (UT-10, MOD-11, REV-145) and the folded items (X6). Its plan is exempt from the size cap of §8.4.4: at most 6,000 words outside its Outcomes, 2,500 of them outside its Grounding and its Implementation details, and ten decisions. It keeps its compaction checkpoints One plan, one PR and one review; no WP58 for the interface §8.4.4, in this commit; the Phase 4 plan
X6 The open review items fold into WP57: REV-157 (the last rung's time, a second run reader, the manifest read twice, an unreachable branch); REV-155's tagged-block parser, shared by the example and session checks; REV-122, a correction file read by a case-relative or absolute path, its content hash in the stage-8 key and the manifest and the file listed as a deviation; REV-120, a force surface refused unless one pair of materials lies on its two sides all along it; REV-111 (X7); and REV-153's four couplings, each fixed. REV-121 stays open; REV-116 stays with the close (§8.2.12) No open review row is left without a package, except REV-121 and the author's question in REV-156 §5.3.1's NOTE on electrolyte.parameters (REV-122) and NUM-29's NOTE on the force surface (REV-120), in this commit; open: WP57
X7 REV-111's claim is narrowed to what is tested: mpi4py is not a locked package and NGSolve's configuration flags show no MPI. No binary is scanned The knowledge base claims no more than a test shows None; open: WP57
X8 REV-155's rectification sentence is softened to session 05's observation, with no general claim, and needs no source or test The knowledge base carries no unsourced claim None; open: WP57
X9 The Phase 4 estimate stays 4–6 weeks (I5); WP57's size is reported at the close The open decision on the estimate is closed The Phase 4 plan, in this commit
X10 This amendment rides WP56's PR, as W1's rulings did, and the PR is gated again One merge brings WP56 and the amended plan together None