[Linux] --calibrate combined with --model silently falls through to plain re-setup (setup.py:4958)
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 75/100
Research direction
Start in setup.py around line 4958, where the calibration guard checks the command-line options; trace how --calibrate and --model are parsed and how the plain setup path is reached. Reproduce with the two commands in the issue, then verify that --calibrate --model X either calibrates that model or exits with a clear error and never falls through to plain setup.
Written by the indexing model from the issue text.
Description
Problem
./setup.sh --calibrate --model IQ3_XXS --yes does not calibrate. setup.py:4958:
if have and a.calibrate and not (a.setup or a.model or a.family or a.check):
The calibrate branch is skipped whenever --model is also present; execution falls through to the plain setup path, which re-runs setup and then idles waiting for a browser. No warning is printed that --calibrate was ignored.
Reproduction (Linux, RTX 3060 12G, build 7695859)
./setup.sh --calibrate --model IQ3_XXS --yes </dev/null-> no calibration runs; setup re-runs (and silently rewrites the engine config, see #388) and idles with a validation server on :8080../setup.sh --calibrate --yes </dev/null(no--model) -> calibration runs normally (15-45 min), writes tuned args into the model config, then serves the model on :8080 as its own validation step - that idle IS the finished state.
Impact
The natural invocation (--calibrate --model <name>, "calibrate this specific model") silently does a different thing: a full re-setup that also rewrites engine config. In an unattended/systemd bootstrap this burns 10+ minutes, occupies the serving port, and the operator believes calibration happened. It cost a full calibration cycle during our switchover before we found the guard clause.
Expected
Either accept --model as the calibration target, or fail fast with an explicit message: --calibrate cannot be combined with --model; run bare --calibrate.
Acceptance criteria
--calibrate --model Xeither calibrates model X or exits with a clear error.- No silent fall-through to plain setup when
--calibratewas requested.
- Dominant language
- C++
- Stars
- 11.6k
- Forks
- 1k
- PR merge metrics
- No merged PRs in 30d
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Niko1221/Strata
-
Difficulty 1/5 Under an hour Newbie friendliness 65/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
Niko1221/Strata#2137 · 1 comment ·
Maintainers usually reply within 1 day
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 4 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
scanaislop/aislop#482 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
EchoTools/nevr-runtime#547 ·
Maintainers usually reply within 1 day
-
1 type: problem 2 scope: firmware 3 good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
SpaceTeam/STS1_COBC_SW#511 ·