Skip to content

v0.6.0

@tlamadon tlamadon tagged this 03 Jun 16:53
Sources have been the recommended task-generator since dfb897c and the
web UI was already source-first. `projects:` was a parallel, narrower
mechanism — a git repo on a backend with sflow.json files — that
duplicated PathSourceConfig minus a few cosmetic fields. This rip-out:

- Schema: deletes ProjectConfig, ScriptHutConfig.projects, get_project.
  GitSourceConfig / PathSourceConfig gain `max_concurrent` and
  `description` to absorb the only fields projects had that sources
  lacked.
- API: drops /api/v1/projects, /api/v1/projects/{name}{,/run,/workflows}.
  Adds /api/v1/sources, /api/v1/sources/{name}{,/run,/workflows} that
  mirror the same shapes — list, view, submit a workflow (refreshing
  git sources first), list discovered workflows.
- Web: drops the duplicate /projects/{name}/workflows and
  /projects/{name}/run HTML routes; the sources page no longer mixes in
  legacy project blocks.
- Runtime/run-manager: removes create_run_from_project and the
  project-flavored discover_workflows; the source-side equivalents
  already exist and are now the sole path.
- CLI: renames `scripthut project list/view` → `scripthut source
  list/view` and `--project` → `--source` on `workflow run`. `status`
  now probes /api/v1/sources for the authorization check and reports
  configured sources instead of projects.
- Migration: ScriptHutConfig's model_validator raises a clear error
  with a concrete sources: example when `projects:` appears in YAML,
  so the breakage is loud (silent ignore would lose workflows
  unnoticed).
- Tests: deletes test_projects.py; rewrites the project surface of
  test_api_v1.py and test_cli.py around sources; adds
  TestLegacyProjectsRejection in test_layered_config.py.
- Docs: removes the projects section from
  docs/configuration/workflows.md and the projects mentions in
  docs/configuration/index.md; adds a one-line note on the removal.
- Cleanup: removes dead `cli.CLI_SUBCOMMANDS` (defined, never used)
  that pre-dated main._CLI_SUBCOMMANDS.

Breaking change → bumping to 0.6.0.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Assets 2
Loading