Skip to main content

LoadCoach

Turns FreeWeight's measurements (or declared capabilities) into routed, queued, validated inference execution with a fully explainable decision for every job.

Status: 1.0.0 — the M5 release, prepared and not yet published. Every phase of the development plan is built: the registry and task profiles; evidence-weighted routing with a readable explanation for every decision; synchronous and streaming generation with validation and corrective retries; a durable priority queue with leases, ageing, cancellation, recovery and a circuit breaker; FreeWeight evidence import; production feedback, reliability and regression detection; a complete operator UI (dashboard, jobs, live queue, models, reliability, system, settings); and the hardening a LAN bind needs — scopes checked at the route and in the service, per-token rate limits, per-source queue caps, CSRF, Host validation, body limits, content retention.

Installable once tagged. Every runtime dependency is on PyPI (weightsdb 0.2.0 and mirrorwall 0.2.0 landed on 2026-08-30); pip install . in a clean virtualenv resolves entirely from the index, requirements/ci.lock is hash-pinned against it, and every CI job installs from that lock. pip install loadcoach itself waits on the v1.0.0 tag — a human decision.

Part of the Local AI Suite.

Install

pip install loadcoach          # once v1.0.0 is tagged and released
loadcoach serve                # web UI + API on http://127.0.0.1:8766, zero configuration
loadcoach doctor               # every documented failure mode, ✓ / ! / ✗, with what to do

No provider, no GPU, no FreeWeight is required to start; each absence is a documented degraded state. Ollama on 127.0.0.1:11434 is the default provider.

What it does

  • Routes explainably. Every decision is persisted in full — candidates, per-capability scores with their source and age, the four adjustment factors with their inputs, every rejection with its numbers — and /jobs/<id> answers why this model? before it shows a table.
  • Learns from production. Attempt outcomes and caller feedback become bounded per-model reliability statistics that deprioritize a failing model, exclude it through a circuit breaker with a re-probe, and flag a regression against the model's own history.
  • Queues durably. Priority classes, ageing with a proven starvation bound, leases, cancellation within a chunk, VRAM-aware admission, residency management, and recovery after a kill that loses and duplicates nothing.
  • Exposes safely. Loopback and open by default; on a LAN, tokens with cumulative scopes checked twice, Host validation before authentication, CSRF on forms, rate limits with Retry-After, and a doctor that names what is wrong.

Documentation

Read this For
docs/quickstart.md The first request, reading a decision, feedback
docs/configuration.md Every key, generated from the settings model
docs/routing.md How a model is chosen and how to change the answer
docs/operations.md Health, queue controls, retention, backups, what to watch
docs/troubleshooting.md Every error code and what to do
docs/upgrading.md Migrations, behaviour changes, the downgrade path
docs/security.md The LAN-exposure path end to end
docs/openapi.json The API, as a committed OpenAPI snapshot
docs/apps/loadcoach/ The specification, routing, queue and API documents (mirrored from the suite)

Development

python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
pre-commit install
ruff format --check . && ruff check . && mypy src tests && lint-imports
pytest -m "not live and not performance"
pytest -m performance            # every spec §15 budget, measured
pytest tests/security            # Security Standards §14, item by item

Licensed under the Apache License 2.0.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

loadcoach-1.0.0.tar.gz (643.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

loadcoach-1.0.0-py3-none-any.whl (387.4 kB view details)

Uploaded Python 3

File details

Details for the file loadcoach-1.0.0.tar.gz.

File metadata

  • Download URL: loadcoach-1.0.0.tar.gz
  • Upload date:
  • Size: 643.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for loadcoach-1.0.0.tar.gz
Algorithm Hash digest
SHA256 b579f72b9a165a985a99e2c5919f2ec8c19392c0579a65915f934ab1d8b3a36b
MD5 b1d77d4727b3dccad937e5efb7474869
BLAKE2b-256 fbce802858ba79ab95b50e259b959e171f04e4411a2508b04b5427e0b82e7647

See more details on using hashes here.

Provenance

The following attestation bundles were made for loadcoach-1.0.0.tar.gz:

Publisher: release.yml on JPKell/LoadCoach

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file loadcoach-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: loadcoach-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 387.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for loadcoach-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 510ba25eafed77c4632daa965248759fcb3cb58cd614701578db229e62e2b288
MD5 5a3e38bd171500f6e0215ba176ec6222
BLAKE2b-256 33d43909c307f7fa5a3bff64eb8d4f5f87eece2894be152c0e3a30e0857ca117

See more details on using hashes here.

Provenance

The following attestation bundles were made for loadcoach-1.0.0-py3-none-any.whl:

Publisher: release.yml on JPKell/LoadCoach

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page