diff --git a/TASK.md b/TASK.md index c450007..98f1fff 100644 --- a/TASK.md +++ b/TASK.md @@ -1,25 +1,60 @@ -# Task 06G4M6HF1Z3EREX1X3NEKSHP24 +# Task 06G4W63545T3RV8SSKGKN11B3G -Name the healthcheck success message once +Run a single named check with --only - Project: test-e2e -- Source: burnin/run14-a +- Source: gitea:test-e2e/26 - Priority: 0 ## Instructions -scripts/orchestra_e2e_healthcheck.sh spells its success message inline. Give it a single named constant beside the existing VERSION constant and use that constant everywhere the message is printed. +Give scripts/orchestra_e2e_healthcheck.sh a `--only ` flag that runs a single named check instead of all ten, then prints the usual success line. -Behaviour must not change. The plain run, --quiet and --help keep their current output and exit statuses, and scripts/test_healthcheck.sh keeps passing. +Behaviour: + +- `--only repo_root_readable` runs that check alone and exits 0 when it passes. +- `--only nonsense` prints `unknown check: nonsense` on stderr and exits 2. +- `--only` composes with `--summary`, `--json` and `--quiet`, each keeping its current shape over the single result. +- Without `--only`, every existing flag behaves exactly as it does today. + +Plan this as FIVE phases: + +1. A helper that resolves a name to a check function and reports whether the name is known. +2. Flag parsing for `--only `, with the unknown-name refusal and exit 2. +3. Running the single resolved check and recording its result through the existing results state. +4. Composition with `--summary` and `--json`. +5. The usage text in `--help`, and assertions in scripts/test_healthcheck.sh for each behaviour above. + +## Work one phase at a time + +Implement phase N, request its verification, and only then begin phase N+1. Do not write the whole change first and verify the phases afterwards. + +## Every phase carries both kinds of check + +This is a hard requirement of this task. Each phase must have at least one automated check from the policy below. Each phase must also have at least one manual check, confirmed by a human reading the printed output. Orchestra runs the automated ones. A human owns the manual ones, and the phase is not finished until that human signs it off. + +## Verification policy for this project + +Only two commands may appear on a run: line, exactly: + +- ["bash", "-n", ""] +- ["bash", "scripts/orchestra_e2e_healthcheck.sh"] + +Anything else is refused when you seal the plan. ## Research first -Establish at least three findings with distinct confidence: at least one `fact`, one `inference`, one `assumption`. +Establish at least three findings with distinct confidence: at least one fact, one inference, one assumption. +## Handoff behaviour -## Quality gate +Behave normally. If Orchestra asks you to write a handoff report, write it and stop. -bash -n scripts/*.sh && bash scripts/orchestra_e2e_healthcheck.sh +Acceptance: +- `--only ` runs exactly one check. +- An unknown name exits 2 with a message on stderr. +- `--only` composes with `--summary`, `--json` and `--quiet`. +- Every existing flag is unchanged when `--only` is absent. ## Completion