PSPSO 1.0
Major update in progress
Version 1.0 remains under active development. These notes describe the planned next PyPI release and may change until final publication.
PSPSO 1.0 establishes one modern contract across Python, notebooks, CLI, FastAPI, workers, and the React dashboard.
Added
- An opening overview page and three numbered sections inside Data Setup.
- A six-dataset offline example catalogue with source and license attribution, standard tasks, targets, and default metrics.
- Evaluation selection in Data Setup: cross-validation, ordinary holdout, chronological holdout and expanding-window CV, with optional time gaps.
-
Training-only outlier clipping, nominal/ordinal feature roles and explicit category ordering, shared by dashboard, CLI, workers and saved predictions.
-
Notebook-first
optimize()and optionalTrackingConfig. - Rich
OptimizationResultsummaries, trial tables, predictions, and evaluation. - Typed search-space serialization and grid sizing.
- Public estimator discovery and capability metadata.
- Versioned
/api/v1REST, OpenAPI, and SSE interfaces. - Isolated
.pspso/v1/experiment workspace. - Canonical task and model identifiers.
- A packaged six-stage dashboard and CLI using one durable local service.
- Atomic leases, persisted queue recovery, supervised cancellation and linked retries.
- Immediate cancellation feedback and batched worker-log persistence during cleanup.
- CV with independent fold preprocessing, saved row indices and explicit final refit.
- Saved winning-fold ensembles when cross-validation final refitting is disabled.
- Positive-class and probability-threshold controls, plus bounded candidate concurrency.
- Frozen multi-model tournaments, full prediction/artifact downloads and visible warnings.
- Typed OpenAPI contracts and generated TypeScript, resumable SSE and incremental history.
- Candidate-based convergence charts with explicit PSO and cross-validation fit counts.
- Numbered workspace migrations, source/dependency/device/seed provenance and
py.typed. - Lifecycle, CLI, all-model, frontend and browser verification with CI release gates.
- Versioned
pspsoandpspso-dashboardcommands with a complete CLI reference. - Package-name installation through uv or pip, public MkDocs deployment and protected PyPI Trusted Publishing from GitHub Releases.
Removed
- The old
pspsoclass and tuple-returning fit methods. - List-based search spaces and silent conversions.
- Compatibility metric/model aliases and the
pspso-runexecutable. - Unversioned REST routes and pre-1.0 history loading.
Review the migration guide before upgrading existing scripts or scenario files.