Repository navigation
Releases v0.25.0 - #274
Merged
Merged
Releases v0.25.0#274
Conversation
The upgrading page now runs from 0.13 to 0.25.0. A "0.24 to 0.25"
section with a "### 0.25.0" subsection says the statifier floor moves
from ~> 2.9 to ~> 2.15, what a host on statifier 2.9 to 2.14 does, where
the new function_providers: option goes (step/5, initialize: on
create/4, Driver.new/3), the {:function_providers, reason} arm a host
that passes a list may match, and the start_child_at/6 refusal in its
own shape. The intro names the "~> 0.25.0" pin and the floor move, and
the migration sentence runs through 0.25.0.
Documentation only: no gated path changes, so there is no gate to run
and the commit rests on review of the diff.
Refs: sp-ho6v
Version 0.25.0, a minor release: the function_providers: option is new public surface (step/5, initialize: on create/4, Driver.new/3) and the statifier requirement moves from ~> 2.9 to ~> 2.15. Both changelog fragments are promoted into CHANGELOG.md, the README pin moves to ~> 0.25.0, and the changelog header link names v0.25.0. The release commit touches exactly mix.exs, README.md, CHANGELOG.md and the deleted fragments. The full mix quality gate ran green on this tree (1,447 tests, no warnings) with the gate lock and a machine slot held across the commit. The tag is the conductor's, after the merge. Refs: sp-ho6v
johnnyt
force-pushed
the
sp-ho6v-release-0-25-0
branch
from
October 13, 2026 14:42
2a3935f to
7ffb5ef
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The 0.25.0 release prep for statifier_persistence, in two commits.
Carries the upgrading page to 0.25.0(docs only):docs/upgrading.mdgains "0.24 to 0.25" > "0.25.0" (thestatifierfloor move to~> 2.15and what a host on statifier 2.9 to 2.14 does; wherefunction_providers:goes; the{:function_providers, reason}arm a host that passes a list may match; thestart_child_at/6refusal in its own shape). The page title, intro and pin sequence move to 0.25.0, and the schema sentence runs through 0.25.0. This commit is its own, ahead of the release commit (decided by the conductor under a standing consent, 2026-10-13).Releases v0.25.0:mix.exs@version0.24.2 to 0.25.0; README pin~> 0.24.0to~> 0.25.0; the two changelog fragments promoted into a## [0.25.0] 2026-10-13section ofCHANGELOG.md(date from the localdate +%F, a lead paragraph, bullets byte for byte under Added then Changed, no link block, the header link moved tov0.25.0); both fragments deleted (changelog.d/README.mdstays). It touches exactly the four paths.claude/wurk/release.mdlists, and notCLAUDE.md.Version: a minor, because
function_providers:is new public surface and thestatifierrequirement moves. No tag, no publish: the conductor tags the merge SHA and the tag push publishes through the release workflow.Prep checks
git diff v0.24.2..origin/main --stat -- lib priv:lib/statifier_persistence/driver.exandlib/statifier_persistence/executions.exonly;privis untouched. Every hunk belongs to the two fragments' beads (the option threading, the entry refusal, thestart_child_at/6refusal).function_providers:takes the same path (Driver.function_providers/2yieldsnil,initialize_opt/3skips anil, andExecutions.check_function_providers/1resolvesnilto:ok). The one hunk that touches every step is the nil tripwire inExecutionsnow also matchingfunctions: nil, which holds on the statifier 2.15 lock and is exercised by the full suite.t:StatifierPersistence.Executions.error/0gained{:function_providers, function_providers_reason()}.t:StatifierPersistence.Executions.function_providers_reason/0is a new type naming the three reasonsStatifier.Evaluator.Functions.from_providers/1answers; it is a new union, not a grown one.StatifierPersistence.Driver.start_child_at/6's@specrefusal arm is now{:refused, {:function_providers, reason} | term()}; the arm is answered only when the driver carries a list that does not resolve.t:StatifierPersistence.Executions.step_opt/0gained{:function_providers, [module()] | nil}; this is an option union a host builds, not one it matches.start_child_at/6emits no[:statifier_persistence, :child, :refused]event for the new refusal, as documented.Each is a minor-sized addition already named in a fragment.
Gate
Full
mix qualityon the branch tip tree: format, compile with warnings as errors, doc links, deps, credo, docs, tests (1,447 of 1,447 passed), dialyzer. Postgres answered on localhost 5432 before the run. The release commit was cut bare on the byte-identical staged tree, holding the repo gate lock and a machine slot across the run and the commit.Provenance
lib/and the fragments at the base commit.