Journal

Blog

Release notes, technical articles, and product direction updates from SolverForge.

Releases

Release notes are grouped by product major/minor line. Patch releases are folded into the matching line note, such as 0.9.x, 0.10.x, or 2.0.x, instead of receiving separate posts.

solverforge 0.22.x: The Canonical Grouping Kernel

The 0.22.x line routes every grouped stream through one accumulator kernel, retracts group and hash memberships by position, owns each grouping key once, and drops stale key Clone bounds in complement weights.

solverforge 0.21.x: Joined-Tuple Grouping and Live-Solution Lending

The 0.21.x line adds fluent group_by on Tri, Quad, and Penta joins, lends the live working solution through custom cursor pulls, moves search state to single ownership, fixes selector-subgraph merging, and preserves net route deltas through deferred precedence retractions in 0.21.3.

solverforge-py 0.6.x: The Python Binding Runtime Bases

solverforge-py 0.6.7 through 0.6.15 move the Python binding onto published SolverForge Rust runtimes — 0.19.7 through 0.6.10, then 0.21.0 through 0.6.13, 0.21.3, and 0.22.0 — keeping the 0.6 Python authoring surface unchanged.

SolverForge Use Cases: Four Repository-Only Apps on the 0.19.7 Line

The solverforge-usecases bundle now ships eight runnable apps. Heat-treatment scheduling, warehouse order picking, fleet readiness, and flight-crew assignment join the four published use cases, all on solverforge 0.19.7 with solverforge-ui 0.9.0.

solverforge 0.19.6 and 0.19.7: Planning Pin Enforcement and One Version Surface

solverforge 0.19.6 adds the typed planning pin predicate and enforces pinned entities across construction, local search, exhaustive search, and list-owner dispatch, while skipping pin scanning for models without pins. solverforge 0.19.7 moves every workspace version surface under the release tooling.

SolverForge 0.19.x: One Sequence Model

SolverForge 0.19.x makes planning list variables the sole model for routes and ordered assignments, keeps the full list-shadow system, and leaves ordinary scalar search on direct single-slot mutation. Patch releases through 0.19.5 tighten mandatory construction, control, telemetry, cancellation, and assignment batching.

SolverForge 0.18.x: One Compiled Search Runtime

SolverForge 0.18.x compiles native and dynamic models into one immutable search graph, adds resolved selector policy and qualified candidate traces, and hardens retained lifecycle control.

SolverForge Python 0.6.x: One Compiled Runtime

SolverForge Python 0.6.x moves dynamic Python models onto the SolverForge compiled runtime, makes model metadata explicit, adds qualified retained candidate diagnostics, and aligns 0.6.6 with SolverForge 0.19.4 plus native scalar-domain enforcement.

SolverForge 0.17.x: CVRP Domain Profile

SolverForge 0.17.x adds the stock CVRP list-variable domain profile, hardens route-distance handling, and exposes dynamic construction primitives.

SolverForge 0.16.x: Route and Savings Hooks

SolverForge 0.16.0 publishes the route/savings hook split for list variables, completes unmatched Clarke-Wright routes, and ships the 0.16 workspace crate line on crates.io.

SolverForge 0.8.x: CLI and Runtime Convergence

SolverForge 0.7.0 through 0.8.2 bring CLI scaffolding, config-driven runtime, and a retained SolverManager lifecycle—one coherent toolchain from first install to production operations.

Planner123 1.0.x: Your Week, Optimized

Planner123 1.0.x is a personal task scheduler that models your week as a constraint satisfaction problem and solves it with SolverForge. Native Rust. Tauri desktop app. One binary.

Technical

How We Benchmark SolverForge

SolverForge benchmarks are built as reproducible engineering evidence: shared harness, explicit model parity, independent validation, scoped comparisons, and cataloged result artifacts.

Historical: From Quickstarts to Scaffolds

Archived transition note. The current SolverForge onboarding model is CLI-first: one neutral solverforge-cli project shell, generator-driven model growth, and scalar/list planning variables.

Public Means Public

In SolverForge, visibility is a contract enforced by the compiler. What's public is public. What's internal is internal. This will never change.

Essays