Skip to content

[ADC-681] Execute prepared Reflux components in AMR transitions - #638

Draft
wolf75222 wants to merge 6 commits into
codex/adc681-reflux-interface-20260729from
codex/adc681-prepared-native-reflux-20260730
Draft

[ADC-681] Execute prepared Reflux components in AMR transitions#638
wolf75222 wants to merge 6 commits into
codex/adc681-reflux-interface-20260729from
codex/adc681-prepared-native-reflux-20260730

Conversation

@wolf75222

@wolf75222 wolf75222 commented Jul 30, 2026

Copy link
Copy Markdown
Owner

Summary

  • route each prepared parent/child Reflux transition through the typed Reflux v1 component callback when an internal provider is installed
  • keep topology canonicalization, coverage masking, flux-register ownership, MPI reduction, transaction, and state publication inside PoPS
  • poison persistent face outputs and reject unwritten/non-finite corrections before any gather or parent-state mutation
  • require exact optional-provider consensus between ranks and route the accepted logical clock into the ABI request
  • preserve the builtin kernel unchanged when no external provider is configured
  • execute the prepared local-kernel route in native Kokkos/OpenMP tests, including exact four-face correction routing and atomic failure

Stack and history

This PR is stacked on #617, which defines the generated Reflux v1 ABI. The refreshed ABI head and current master are merged explicitly into this branch. Implementation, compile correction, native tests, and integration merges remain distinct commits; no squash/rebase/amend/force-push was used.

Additional review commits:

  • df044958: include the exact logical-clock contract required by the public Reflux request (found by native compilation)
  • e5ef1033: execute a real prepared local kernel and prove unwritten output publishes no correction

Validation

Exact current head fd77a355:

  • Kokkos OpenMP native configure/build: passed
  • test_program_reflux_ledger + test_amr_multiblock_substeps: 23/23 passed
  • two new prepared-kernel tests: exact face corrections and atomic unwritten-output rejection
  • prior source/architecture: 52 targeted tests plus complete architecture suite
  • Ruff, docs, generated catalog, clang-format, and git diff --check: passed
  • current-head GitHub CI: pending

Deliberate boundary

  • no real external shared-library Reflux component has yet executed under multi-rank MPI
  • conservation/equivalence across periodic boundaries, coverage masks, regrid generations, and rank counts remains to be proved numerically
  • GPU/device storage is not supported; the adapter fails closed outside the qualified 2D float64 host path
  • public normalized AMR provider resolution still exposes only Tagger and Clustering; Reflux installation remains an internal seam

Linear: ADC-681

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