diff --git a/docs/Development-Plan.md b/docs/Development-Plan.md index 02e7f5f..96485f5 100644 --- a/docs/Development-Plan.md +++ b/docs/Development-Plan.md @@ -629,8 +629,10 @@ waits until two exist to compare. Moved, unchanged in behaviour: - **Bring-up:** `scripts/review-bringup.sh`, a transient systemd unit from the exported code; config and secrets in `/root/nisse-review`. - **Tests:** unit tests over a fake Gitea and a scripted model; a live test - (`test_review_live.py`, `NISSE_REVIEW_GITEA_TOKEN`) has the local model - review a PR in a fresh test repository. + (`test_review_live.py`, `NISSE_REVIEW_GITEA_TOKEN`, the test reviewer + account's) has the local model review a PR in a fresh test repository. It is a + smoke test, run by `scripts/e2e.sh` on every PR (until #152 it never ran in CI: + the script ran only the loop's file). **M7.4 `nisse-dev` answers a peer.** *Done.* Anyone's comment but an operator's is a peer's point (D5, L11), not only `nisse-review`'s: settled with the operator, diff --git a/scripts/e2e.sh b/scripts/e2e.sh index d55cce0..fabf51f 100755 --- a/scripts/e2e.sh +++ b/scripts/e2e.sh @@ -53,7 +53,8 @@ print(i["spend"], i.get("max_budget"))' 2>/dev/null) || echo "? ?" } read -r before budget < <(spend) status=0 -uv run pytest -m e2e -rs tests/integration/test_end_to_end_loop.py "$@" || status=$? +# Every e2e-marked test: the agents' loops and nisse-review's live review. +uv run pytest -m e2e -rs tests/integration "$@" || status=$? read -r after _ < <(spend) python3 -c " b, a, cap = '$before', '$after', '$budget' diff --git a/tests/integration/test_review_live.py b/tests/integration/test_review_live.py index 56f05e1..729c6bb 100644 --- a/tests/integration/test_review_live.py +++ b/tests/integration/test_review_live.py @@ -21,7 +21,9 @@ from nisse_review.build import StartupError, build from nisse_review.config import ReviewConfig from nisse_review.review import marker -pytestmark = [pytest.mark.integration, pytest.mark.e2e] +# Smoke: every PR runs it (about a minute on the local model), the only +# check that the review account, its token and its read-only refusal work. +pytestmark = [pytest.mark.integration, pytest.mark.e2e, pytest.mark.smoke] def review_gitea(url: str) -> GiteaClient: