CLI command

probierz repair

Dispatch a bounded repair worker for a recorded failed run.

Invocation#

Shell
probierz repair --rounds <ROUNDS> <APP_ID>

Required inputs and options#

  • `<appId>` and `--rounds` are required. `--run` selects a recorded failure; otherwise Probierz selects the newest failed run.
  • `--rounds` is how many repair rounds are allowed, at least 1 (a failed run's automatic repair takes one); `--dry-run` prevents publication of an accepted repair.

Output and state effects#

Drafts each round through the model service `STADO_MODEL_ROUTER_URL` names — Brama on the fleet, or without Brama any service that answers `/v1/chat/completions` over HTTPS (loopback HTTP on this machine) with the bearer `STADO_MODEL_ROUTER_TOKEN` carries; the request is signed with `PROBIERZ_MODEL_AGENT_ID` and `PROBIERZ_MODEL_AGENT_SECRET` only when both are declared, as Brama requires, and goes unsigned to another service. Verifies eligible specification fixes through the real journey, and reports the proposed or published repair as JSON. A patch may change any number of files of any size; only the protected paths (credentials, secrets, deploy and infrastructure trees, test results) are refused.

Exact refusals#

  • Missing application ID or `--rounds` is refused.
  • With no service declared the answer is `ok: false` with the detail `STADO_MODEL_ROUTER_URL is required`; with a service that cannot be reached the detail is the service's own unreachability naming its URL, and a decision the worker returns that is not JSON, carries a verdict it may not give, or omits its reason or explanation is refused as `the repair worker at the model router …`; nothing in the path asks Brama by name.
  • Unavailable failure evidence, unsafe paths, an unverified specification fix, and model or publication failure cannot produce an accepted repair.
  • Real journey `tests/repair/model_service.rs`: a repair sent to a declared service on a name nothing resolves is refused by that service's URL, and one with no service declared is refused naming the setting.

Source snapshot#

Generated from the Rust binaries at https://github.com/wisent-ai/probierz.git revision `f65b755da397f2ec7435eb80ed722aa6017437c1`.

Combined help SHA-256: `4a12655d233812abc29eeebbf3db3065efe3e00288024383f3eef3970d092e94`; binary SHA-256: `d5398832d3ab52c541b1efe979730dea62941ac6197898a20fccfc5d3fca44df`.