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 Python 0.4.x: Python Models on the Native SolverForge Engine
SolverForge Python 0.4.0 publishes the solverforge PyPI package for CPython 3.14, with Python model decorators, callback constraints, direct solves, retained jobs, and the hospital FastAPI example.
solverforge-cli 2.2.x: Current Runtime Scaffolds and Model Resources
solverforge-cli 2.2.0 retargets generated apps to solverforge 0.15.0, keeps the UI and maps scaffold targets current, and documents the model resource commands for scalar groups and conflict repairs.
SolverForge 0.15.x: Constraint Node Sharing and Assignment Search Diagnostics
SolverForge 0.15.0 publishes the solverforge_constraints compiler boundary, shared grouped constraint-stream nodes, richer assignment-backed scalar neighborhoods, and move-level runtime telemetry.
SolverForge 0.14.x: Complemented Cross-Join Groups and Metric-Class Routes
SolverForge 0.14.x publishes direct complemented cross-join grouping, fixes filtered keyed join retention, unifies owner-aware route hooks, and adds route metric classes for Clarke-Wright construction.
SolverForge 0.13.x: Streaming Defaults, Typed Search, and Explicit Scoring
SolverForge 0.13.x publishes streaming model-aware search defaults, typed custom search registration, match-shape collectors, direct cross-join grouping, and the explicit scoring terminal surface.
SolverForge 0.12.x: Assignment-Backed Scalar Construction
SolverForge 0.12.x publishes assignment-backed grouped scalar construction, consecutive run collectors, cleaner generated stream sources, and renamed direct runtime assembly contracts.
SolverForge 0.11.x: Clone-Free Projected Scoring and Facade Exports
SolverForge 0.11.x publishes clone-free projected scoring rows, joined-pair projection, borrowed constraint metadata, and facade-level configuration exports while keeping generated CLI scaffold targets explicit.
solverforge-maps 2.1.x: Matrix Route Distances
solverforge-maps 2.1.x stores same-path route distances next to travel-time matrix data for routing and delivery applications.
SolverForge 0.10.x: Coupled Scalar Search and Zero-Erasure Scoring
SolverForge 0.10.x publishes the grouped-scalar runtime line: atomic coupled scalar construction, conflict-directed repair, level-aware simulated annealing, and coordinate-stable projected scoring rows.
solverforge-ui 0.6.x: Retained Job UI, Maps, and Scheduling Views
solverforge-ui 0.6.x carries the retained job frontend contract, map helper fixes, exact rail timeline geometry, current dependency baseline, and create-job identifier normalization.
SolverForge 0.9.x: Manifest-Owned Models and Runtime Tightening
SolverForge 0.9.x makes the scalar/list architecture explicit: planning_model! is the canonical model manifest, scalar metadata is descriptor-addressed, and the patch line tightens scoring and local search.
solverforge-cli 2.0.x: One Entry Point and Explicit Scaffold Targets
solverforge-cli 2.0.x introduced the one neutral scaffold entry point, generator-driven model growth, and explicit scaffold-target reporting for the CLI-owned runtime, UI, and maps targets.
solverforge-cli 1.1.x: Stabilized Scaffolding for the Converged Runtime
solverforge-cli 1.1.x polishes the CLI/runtime integration introduced in SolverForge 0.8.x, with aligned scaffold targets and improved test reliability for the retained lifecycle workflow.
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.
SolverForge 0.6.x: Scaffolding and Codegen
SolverForge 0.6.x is now available with first-class project scaffolding and generated domain accessors for cleaner constraint code.
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.
solverforge-maps 1.0.x: Routing Infrastructure for VRP Solvers
solverforge-maps 1.0.x provides zero-erasure road network and routing infrastructure for VRP solvers, with OSM data, R-tree indexing, and 3-tier caching.
SolverForge 0.5.x: Zero-Erasure Constraint Solving
Introducing the SolverForge 0.5.x line: a general-purpose constraint solver written in native Rust with zero-erasure architecture and the SERIO incremental scoring engine.
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.
The Current SolverForge Architecture: CLI-First, Rust-Native, Explicit
SolverForge's current architecture is CLI-first without being opaque: one neutral project shell, generator-driven model growth, scalar and list planning variables, retained jobs, and explicit Rust code.
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.
Historical: How We Built Quickstart Frontends with jQuery
Archived context for the old quickstart frontend architecture. Current SolverForge apps are generated by solverforge-cli and compose solverforge-ui.
Why Java Interop is Difficult in SolverForge Core
Reflections on the challenges of bridging Rust and Java in constraint solving, and the hard lessons learned along the way.
Order Picking Quickstart: JPype Bridge Overhead in Constraint Solving
Building an order picking quickstart with real-time 3D visualization deepened our understanding of JPype's performance characteristics in constraint-heavy workloads.
Dataclasses vs Pydantic in Constraint Solvers
Architectural guidance for Python constraint solvers: when to use dataclasses vs Pydantic for optimal performance.
Essays
Historical: Rust Constraint Solving Notes from the 0.5.0 Era
Archived context for early SolverForge design thinking. The current architecture is CLI-first, Rust-native, and centered on the current SolverForge runtime.