V0.13 Scope Freeze#
Summary#
v0.13 is the public orbit and coverage diagnostics release for pdelie.
Stable release theme:
promote the successful
v0.12internal orbit/coverage feasibility into narrow public diagnostics underpdelie.invariants.
Stable path:
canonical periodic 1D FieldBatch + uniform translation action -> grid-point coverage diagnostics + transform-consistency diagnostics -> compact example/release gate
These diagnostics support invariant and finite-transform workflows. In short: diagnostics support invariant/finite-transform workflows but do not construct augmented datasets. They do not construct augmented datasets.
Motivation#
v0.12 showed that paper-agnostic orbit/coverage diagnostics are useful over existing stable Heat and KdV paths:
periodic-window grid coverage can be reported deterministically
uniform translations preserve canonical field structure
inverse and period-wrap consistency are measurable
residual RMS is stable under representative Heat and KdV shifts
provenance from
InvariantAppliercan be checked without requiring full preprocess-log equality
v0.13 promotes only that diagnostic layer.
It does not promote downstream experiment policy, augmentation recipes, or private-paper branch logic.
Stable Scope#
v0.13 adds two runtime public APIs under pdelie.invariants only:
pdelie.invariants.compute_periodic_window_coverage(
*,
x,
windows,
shifts,
domain_length=None,
) -> dict[str, Any]
pdelie.invariants.diagnose_uniform_translation_consistency(
field,
*,
shifts,
residual_evaluator=None,
) -> dict[str, Any]
Both helpers:
return JSON-compatible runtime report dicts
mutate no inputs
create no canonical objects
return no transformed
FieldBatchobjectshave no root
pdelieexportsare supportability diagnostics, not manuscript schemas or sparse-discovery policy
v0.13 also adds:
python -m pdelie.examples.orbit_coverage_diagnosticspdelie.examples.run_orbit_coverage_diagnostics_example(...)compact
v0_13-release-gatecoverage
The example output is a runtime smoke summary, not a canonical artifact schema.
compute_periodic_window_coverage(...) Semantics#
Grid convention:
one-dimensional uniform periodic grid
endpoint excluded
endpoint-duplicated grids are rejected
inferred domain length is
len(x) * dx, notx[-1] - x[0]supplied
domain_lengthmust matchlen(x) * dx
Coverage convention:
coverage_type = "grid_point"coverage_fraction = covered_grid_points / num_grid_pointsthis is not continuous interval measure
windows are half-open:
[start, start + width)coordinates, starts, and shifts are reduced modulo
domain_lengthboundary tolerance is
1e-12 * domain_lengthrepeated windows increase coverage counts but not covered point count
duplicate shifts are allowed and counted
raw and normalized shifts are both reported
max uncovered run is reported in grid points and physical length
Shift convention:
coverage_convention = "preimage_of_fixed_window_under_translation"shift_convention = "field_shift_then_fixed_window"equivalent workflow: translate the field by
shift, then observe a fixed windowpositive shift means original point
x0is covered when(x0 + shift) mod domain_lengthlies inside the fixed windowtherefore the covered preimage region is
[window_start - shift, window_start + width - shift)modulo the domain
Report fields include:
summary_schema_version = "0.1"summary_type = "periodic_window_coverage"domain length, inferred domain length,
dx, and grid point countraw and normalized windows
raw and normalized shifts
coverage counts
covered point count and coverage fraction
min, max, and mean coverage count
max uncovered run in grid points and physical length
diagnose_uniform_translation_consistency(...) Semantics#
Supported inputs:
canonical scalar 1D uniform periodic
FieldBatchshifts as a non-empty finite float sequence
optional
ResidualEvaluator
The helper uses existing InvariantApplier and uniform translation.
It returns a report only and never returns transformed fields.
Structure preservation means:
dims are preserved
shape is preserved
coords are preserved
metadata is preserved
var names are preserved
mask shape/content are preserved
Preprocess logs are not required to be equal. The helper reports the appended provenance entry:
operation == "invariant_apply"construction_method == "uniform_translation"axis
shift
preprocess-log length delta
Error metrics:
inverse error: relative L2 between inverse-transformed values and original values
period-wrap error: relative L2 between
shiftandshift + domain_lengthrelative L2 denominator:
norm(reference) + 1e-12residual RMS:
sqrt(mean(residual**2))residual absolute delta:
abs(after_rms - before_rms)residual relative delta:
abs(after_rms - before_rms) / (abs(before_rms) + 1e-12)residual stability passes if
absolute_delta <= 1e-8 or relative_delta <= 1e-6
Residual evaluator behavior:
if
residual_evaluator is None, residual fields are reported asNoneif a residual evaluator is supplied, evaluator failures are fatal typed validation errors
evaluator failures are not silently converted into per-shift failures
Report fields include:
summary_schema_version = "0.1"summary_type = "uniform_translation_consistency"field dims and shape
equation tag
domain length and
dxraw and normalized shifts
residual evaluator name or
Noneper-shift structure flags, provenance fields, inverse/period-wrap errors, residual metrics, and pass booleans
Non-goals#
v0.13 explicitly does not include:
a new PDE
stable KS generator promotion
stable KS residual evaluator promotion
KS example or imported parity
weak KS
broad adapters
PDEBench or The Well support
multidimensional grids
nonuniform grids
multivariable systems
operator-facing symmetry APIs
public orbit-view builders
stable public augmentation utilities
train-augmentation policy
sparse-discovery branch policy
private-paper experiment logic
manuscript-specific thresholds, tables, figures, or labels
root
pdelieexport expansion
KS remains internal feasibility/no-go evidence from v0.11 plus internal diagnostic evidence from v0.12.
Relationship To Downstream Orbit-augmentation Work#
Downstream orbit-augmentation experiments may use the new diagnostics to measure periodic-window coverage and translation consistency.
Reusable pdelie scope:
grid-point periodic window coverage
finite-transform consistency checks
residual stability under stable translation actions
provenance checks for invariant applications
JSON-compatible runtime summaries
Downstream-only scope:
augmentation policy
train/test branch construction
sparse-regression policy
dataset-specific recovery thresholds
paper-specific labels and plots
Milestones#
Milestone 0 - Scope Freeze#
Freeze v0.13 as public orbit/coverage diagnostics under pdelie.invariants.
Milestone 1 - API Semantics Freeze#
Freeze exact coverage convention, shift sign, domain-length inference, boundary tolerance, duplicate behavior, transform-consistency metrics, provenance policy, and evaluator failure behavior.
Milestone 2 - Periodic Coverage Diagnostic#
Implement pdelie.invariants.compute_periodic_window_coverage(...) and document it in API_STABILITY.md.
Milestone 3 - Translation Consistency Diagnostic#
Implement pdelie.invariants.diagnose_uniform_translation_consistency(...) and document it in API_STABILITY.md.
Milestone 4 - Example and Reporting Alignment#
Add python -m pdelie.examples.orbit_coverage_diagnostics and pdelie.examples.run_orbit_coverage_diagnostics_example(...).
Milestone 5 - API / Public-surface Audit#
Confirm the diagnostics are importable from pdelie.invariants only and that augmentation, KS, weak KS, broad adapters, and root exports remain absent.
Milestone 6 - Release Gate and Readiness#
Add tests/test_v0_13_release_gate.py, update CI, bump package metadata to 0.13.0, and align release-facing docs.
Release-gate Expectations#
The v0_13-release-gate should be compact and representative.
It should not duplicate the full invariant diagnostic, example, public API, or historical release-gate suites.
Expected gate coverage:
new diagnostics exist under
pdelie.invariantsnew diagnostics are absent from root
pdelieAPI_STABILITY.mddocuments the two public diagnosticsrepresentative coverage case has the frozen positive-shift convention
representative transform-consistency case passes structure, provenance, inverse, period-wrap, and residual checks
example module emits JSON only
no public augmentation, orbit-view, KS, weak KS, broad adapter, or operator API lands
Historical release-gate tests remain covered by full editable tests.
Status#
v0.12: COMPLETE as diagnostics/supportability hardeningMilestone 0: COMPLETE
Milestone 1: COMPLETE
Milestone 2: COMPLETE
Milestone 3: COMPLETE
Milestone 4: COMPLETE
Milestone 5: COMPLETE
Milestone 6: COMPLETE