106 lines
5.2 KiB
Markdown
106 lines
5.2 KiB
Markdown
# Deferred Removal Registry
|
|
|
|
This registry records migration-era code that may become removable after the
|
|
physics-facing `StellarModel` and `StellarEquilibriumProblem` APIs have replaced
|
|
all legacy construction paths. Nothing listed here is currently approved for
|
|
removal, and no listed code was removed during the migration.
|
|
|
|
## `mean_field::models::Model<...>`
|
|
|
|
- Location: `libmeanfield/interface/models/specifications.cppm`
|
|
- Current status: required compatibility storage
|
|
- Current consumers: root-manifest tests and the implementation of
|
|
`mean_field::model::StellarModel`
|
|
- Removal gate: migrate remaining direct consumers to the public
|
|
`mean_field::model::StellarModel` type, then move the canonical storage into
|
|
an implementation namespace
|
|
- Evidence required before removal: no direct consumers found by repository
|
|
search and the complete specification/type-contract suite passes
|
|
|
|
## Legacy structure-based `mean_field::models::StellarModel`
|
|
|
|
- Location: `libmeanfield/interface/models/stellar_model.cppm`
|
|
- Current status: retained legacy API, but no longer used by the authoritative
|
|
`StellarEquilibriumProblem` construction path
|
|
- Current consumers: direct prepared-operator tests, experiments, and
|
|
heterogeneous runtime-model views. Its polytropic initial-seed method now
|
|
delegates to the physics-facing Lane-Emden seed generator.
|
|
- Removal gate: numerical operators consume compiled specification
|
|
contributions directly, initial-seed generation has a physics-facing owner,
|
|
and deformation policies have migrated into the typed model
|
|
- Evidence required before removal: legacy-adapter equivalence tests pass for
|
|
all supported formulations and repository search finds no direct consumers
|
|
|
|
## `PolytropicStructure` as a mass-owning adapter
|
|
|
|
- Location: `libmeanfield/interface/models/structure/polytropic.cppm`
|
|
- Current status: compatibility adapter for remaining legacy API consumers; it
|
|
no longer owns Lane-Emden integration and is not constructed by
|
|
`StellarEquilibriumProblem`
|
|
- Potentially obsolete responsibility: ownership of the fixed-total-mass
|
|
target, which now belongs to `FixedTotalMass`
|
|
- Removal gate: migrate remaining callers to `seed::LaneEmden` and the typed
|
|
model. Lane-Emden generation is now separate from invariant ownership.
|
|
- Evidence required before removal: initial-seed regression tests and
|
|
model-driven equilibrium equivalence tests pass
|
|
|
|
## Legacy combined prepared operators
|
|
|
|
- Locations:
|
|
`libmeanfield/interface/operators/prepared_fixed_angular_momentum_stellar_equilibrium.cppm`
|
|
and
|
|
`libmeanfield/interface/operators/prepared_central_density_stellar_equilibrium.cppm`
|
|
- Current status: retained as migration-era source references, but removed from
|
|
the build graph and no longer re-exported by the public `mean_field` module
|
|
- Physics-facing replacement:
|
|
`PreparedVariadicStellarEquilibriumOperator<Model>`, selected solely by
|
|
`StellarEquilibriumProblem<Model, Discretization>`
|
|
- Reactivation gate: migrate the source snapshots to the model-driven manifest
|
|
constructor; they intentionally do not compile against the authoritative API
|
|
- Removal gate: delete the source snapshots after the historical comparison
|
|
window closes
|
|
- Evidence required before removal: the full variadic residual/Jacobian
|
|
equivalence suite and distributed tests pass without either partition being
|
|
imported by a user translation unit
|
|
|
|
## Completed: typed equilibrium-problem adapter removal
|
|
|
|
- Removed the former typed system's `NumericalModelAdapter`, its
|
|
`PolytropicStructure`, and the corresponding legacy model storage.
|
|
- The typed problem now owns its compiled surface constraint and constructs the
|
|
prepared operator directly from specification-generated contributions.
|
|
- Default radial deformation is compiled at the numerical equilibrium-problem
|
|
boundary rather than being smuggled through a legacy stellar model.
|
|
|
|
## `StellarEquilibriumSystem` compatibility vocabulary
|
|
|
|
- Location: `libmeanfield/interface/operators/stellar_equilibrium_system.cppm`
|
|
- Current status: source-compatible aliases and factory forwarding to
|
|
`StellarEquilibriumProblem` and `equilibrium::discretize`
|
|
- Removal gate: migrate remaining external consumers and provide a documented
|
|
deprecation interval
|
|
- Evidence required before removal: repository search finds only the explicit
|
|
compatibility type-contract test
|
|
|
|
## Root-oriented public aliases and accessors
|
|
|
|
- Locations:
|
|
`libmeanfield/interface/operators/root_manifest.cppm`,
|
|
`libmeanfield/interface/operators/prepared_stellar_equilibrium.cppm`, and
|
|
`libmeanfield/interface/operators/prepared_central_density_stellar_equilibrium.cppm`
|
|
- Current status: retained for source compatibility
|
|
- Physics-facing replacements: `EquilibriumSystemManifest`,
|
|
`EquilibriumStateView`, `EquilibriumResidualView`, and
|
|
`StellarEquilibriumProblem::GetManifest()`
|
|
- Removal gate: all solver and test consumers use equilibrium-system
|
|
terminology
|
|
- Evidence required before removal: repository search finds no uses of the old
|
|
aliases/accessors and all manifest/type-contract tests pass
|
|
|
|
## Conclusion for this phase
|
|
|
|
No code examined during this migration is presently truly dead. Each candidate
|
|
still has active consumers or carries a compatibility/lifetime responsibility.
|
|
The entries above are therefore deferred migration candidates, not deletion
|
|
recommendations.
|