- bankml: the verified CPU engine as backend, serve target and imprint probe (76258e9d418a26673ed98b7bf7e46f73068e2576)
- serve --to vllm|sglang: real deploy targets (launch detached, readiness, stop) (0ed5275469ee98736a40a3711d06304a79f3b703)
- bankml 0.3.6 on PR #1: penalties, byte-identical pins, a bankml node's own chat and judge models, and the VPS install guide (437dccc7e5e8ee222093163ed387dc2ac52d608a)
30 days ago
v1.0.4 — close the limitations 1.0.3 listed, and correct the ones it overstated
Correction first: 1.0.3 called every write endpoint and SSE-under-a-real-producer untested. True of its probes, not of the project — the suite already covers both (test_runs_sse.py and a dozen test_coach_*_api.py), and it passed on the refreshed lock. A new module written for those endpoints was deleted once that was checked, rather than shipped as duplicate coverage.
Real gaps closed: the Gradio surface is tested (Blocks tree built, rooms and version parity checked, launched for real under gradio 6.27) and had no coverage at all; the Hub tests no longer trust the environment for the missing-dependency path (they inverted silently once the ui extra brought huggingface-hub in); httpx2 joins the dev group so starlette 1.6 stops deprecating TestClient.
Training path verified under the refreshed lock: dream corpus tokenized, SFT run on CPU (loss 3.938, 512 tokens), a real 22 MB LoRA checkpoint written. 767 pass with the ml extra. ROCm/MI300X, multi-GPU, vLLM serving, full-length runs and…
v1.0.3 — refresh uv.lock, and say exactly what that was tested against
The lock had drifted from pyproject, so every `uv run` re-resolved first (~2.5 min a call). Refreshed: 296 -> 306 packages, 23 changed — starlette 0.52.1 -> 1.6.0 (major), huggingface-hub 1.14.0 -> 1.31.0, gradio 6.27.0 new via all->ui, and three moving BACKWARDS (pydantic 2.13.3 -> 2.12.5, pydantic-core, inspect-ai) by resolver choice rather than any declared constraint.
Tested in a separate environment against both stacks: 765 pass on each; the coach booted under real uvicorn and 37 read-only probes returned identical status codes and identical response sizes — pages, JSON API, static mount, OpenAPI (64 paths), diagnostics, the traversal guard at 400, and SSE. Zero server errors either side.
Not tested, and written into the changelog rather than implied: every write endpoint, SSE under a real producer, the training path (no ml extra on that box), the Gradio UI. `uv run` syncs the environment, so moving a node to this commit rewrites its venv on the next call — the production node i…
v1.0.2 — the Hub is reachable from the command line, and is not a chain
The hf/ extension existed and was complete, but nothing outside a Python import could reach it. New `mindxtrain hf` group: whoami / pull / warm / publish / lineage / dataset / space, each exiting nonzero when the result says ok:false so the ascent loop can warm a base and check $?.
huggingface-hub moves out of the `chain` extra into its own `hf` extra — reaching the Hub no longer means installing web3 and the Algorand SDK. `chain` pulls `mindxtrain[hf]` so existing installs keep working.
push_space dropped its commit receipt; it reports it now. First tests for the module.
765 tests pass (was 750).
v1.0.1 — a failed attempt no longer strands HEAD on a loser
An attempt that raised after its edit was committed left the branch on a commit the loop never scored, so the next baseline read the loser. The champion is restored on the way out — and the restore declines when the tree is dirty outside the editable allowlist, because a `reset --hard` that discards somebody else's work to tidy up after ourselves is worse than the mess.
Also: ui/metrics.py brought in line with the house lint, version bumped in all three places it is declared, NAV points at the new entry, and the accumulated [Unreleased] changelog block is released as part of 1.0.1.
750 tests pass (was 748).
autoresearch: the keep/reset search, and the UI modules that were never shipped
The `research` CLI command shipped without the package it imports; this lands the whole feature (contract, git fence, attempt runner, durable ledger, keep/reset search, Base anchor + registry, coach observer, k8s job, Ollama console + reasoning pass).
Audit fixes: the default editor no longer corrupts a non-flat TOML; mindxtrain.ui resolves its Gradio-backed exports lazily so console/reasoning/parse_log stay base-install importable; the contradiction check is symmetric; new files are ruff clean.
748 tests pass (was 728).
mindXtrain continues on Hugging Face; the GitHub original is archived for posterity