Repository navigation
BUG FIX - Preserve complete field-line integration failure diagnostics - #354
Conversation
Keep the field-line diagnostic fix but defer the new source-extracting test architecture until after the v1.6 release. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
logan-nc
left a comment
There was a problem hiding this comment.
Approving the field-line diagnostic fix. The old CHARACTER(64) buffer was one character too short for the 65-character message from FORMAT(a,i4,a,es10.3,a,i3), so the step-limit error path crashed with a runtime I/O error instead of reporting the failure. The CHARACTER(128) + i0 change fixes this without touching the solver.
I pushed 7bb7ef6 removing regression/test/test_direct_error_message.py. As with recent PRs, we're not bringing in new test architecture (here, a test that regex-extracts and recompiles Fortran source) right before the v1.6 release. We're happy to revisit testing approaches after the release.
logan-nc
left a comment
There was a problem hiding this comment.
Small and correct so lets get it in now.
I removed the big test for this minor detail.
Preserve the field-line integration failure diagnostic when a step count exceeds its old fixed-width field. The existing64-character internal buffer could itself overflow while reporting a solver failure.
This layer changes only the message capacity/format and adds a native formatter regression. Retains the accepted personal GPEC PR1 repair.
Native qualification used the complete production union: focused checks passed in3361934 (2/2 in8.253s), followed by full native Make with the owning GNU debug flags. Continuation3361977 completed fresh ideal/kinetic and the remaining resistive/reconstruction stages under53 pinned runtime libraries. Reconstruction relative error0.006969 is below the unchanged0.02 tolerance and curl passed. Independent source/binary/compiler/runtime pre/post checks passed. The original3361934 wrapper status remains failed because RMATCH deliberately emits RPEC termination and closes globalsol.bin; this native product contract was verified rather than relabelled generic normal termination. Exact union tree equals qualified543b87f0; no private inputs or weakened gates.
The focused native driver compiles the production declaration, FORMAT and WRITE and checks the full10000-step/512-surface diagnostic. The code path was separately qualified without changing the field-line solver.
This draft targets the external Fortran GPEC upstream develop branch. Qualification receipts above refer to the complete maintained-fork union, which also includes independent message/output-state fixes, rather than claiming an independent full-stage run of this upstream-only branch. Public analytic input only; no private campaign fixture. Chris retains upstream review and promotion.
Chris&AI