v0.7.0
[0.7.0] - 2026-07-11
Project from the canonical Experience (breaking).
- Remove
ClaimExperience; the projection pipeline consumes
actuarialpy.Experiencedirectly. - Add
project(exp, ...): the single projection entrypoint. Named parameters
are the pipeline phases (completion, seasonality, trend, credibility,
complement); record grain defaults to the Experience's bounddimensions,
and the claim-type dimension is inferred as the grain column absent from
the exposure frame (passclaim_type=when ambiguous). - Add
base_rates(exp, ...)andprepare_experience(exp, ...)as public
steps of the same pipeline;ClaimProjectionis unchanged as the engine
andClaimProjection.from_experienceis removed in favor ofproject. - Requires
actuarialpy>=0.45. project()coerces raw assumption values (scalar trend and credibility,
Series/mapping completion and seasonality) into assumption objects, and
resolves the exposure frame's column from the bound exposure role name.project()consumes widefrom_tablesExperiences directly: the recorded
pivot melts itself into the claim-type dimension, non-pivot expense columns
are announced as excluded, and ambiguity asks forclaim_type=.seasonality="estimate"fits factors from the bound history via
estimate_seasonality;completion="estimate"explains what development
columns estimation needs instead of guessing.