CI / checks (push) Skipped
CI / checks (pull_request) Successful in 2m17s
The first live run of the new loop's e2e test found that a fact recorded while start_milestone was in flight landed between the tool call and its result; both API formats reject that, so every later request in the run failed. Views now keep each result right after its call. Scripted test models check the APIs' ordering rules, so this can't pass unit tests again. The e2e tests no longer depend on the sandbox's history: each run asks for a uniquely named function and works against a base branch of its own, deleted afterwards. The review step asks for a change that can't already be there. The scripted operator gives up after five fruitless answers, and each run keeps its state store for inspection. The driver's prompt says review fixes stay in the current milestone. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PPQ14L3LikyefCMFBqEbKE
23 lines
1021 B
Bash
Executable File
23 lines
1021 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# The end-to-end test (Development Plan M1.6): the whole agent against real
|
|
# services, driven by a scripted operator. Run after each milestone; it
|
|
# spends model tokens and takes minutes, so it is not part of check.sh or CI.
|
|
#
|
|
# scripts/e2e.sh on the bring-up build VM (configured below)
|
|
# scripts/e2e.sh --local on a throwaway local sshd instead
|
|
#
|
|
# Uses tests/integration/nisse-test.yaml and its secrets (.env at the repo
|
|
# root), like the integration tests.
|
|
set -euo pipefail
|
|
cd "$(dirname "$0")/.."
|
|
|
|
if [ "${1:-}" = "--local" ]; then
|
|
shift
|
|
else
|
|
export NISSE_E2E_BUILD_HOST=${NISSE_E2E_BUILD_HOST:-nisse-dev.garrett-hall.com}
|
|
export NISSE_E2E_BUILD_KEY=${NISSE_E2E_BUILD_KEY:-/root/nisse-e2e/ssh/id_ed25519}
|
|
fi
|
|
# Each run's state store is kept here, for nisse_dev.dump after a failure.
|
|
export NISSE_E2E_RUNS=${NISSE_E2E_RUNS:-/root/nisse-e2e/test-runs}
|
|
exec uv run pytest -m e2e -rs tests/integration/test_end_to_end.py tests/integration/test_end_to_end_loop.py "$@"
|