Skip to content

Feature/preamble and output#5

Merged
TheGr3atJosh merged 9 commits into
mainfrom
feature/preamble-and-output
May 15, 2026
Merged

Feature/preamble and output#5
TheGr3atJosh merged 9 commits into
mainfrom
feature/preamble-and-output

Conversation

@TheGr3atJosh
Copy link
Copy Markdown
Owner

No description provided.

TheGr3atJosh and others added 9 commits May 15, 2026 08:57
Preamble: add optional ssh.preamble list (or single string) of PowerShell
commands that run after SSH connects but before the agent is uploaded/started.
Each command is sent via -EncodedCommand for safe quoting. Non-zero exit aborts
the run immediately. Purpose: set up the test environment (create dirs, disable
Defender, etc.) using native Windows commands.

Output flag: add -o/--output FILE. Silences all stdout during the run; writes
only the results summary (and failure details on failure) to the specified file.
Useful for CI artefacts where interleaved progress output is unwanted.

Also extracts _render_summary() helper and adds 15 unit tests covering both
features including edge cases (preamble failure, string vs list, xfail counts,
file content on pass vs fail).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Remove pytest dev dependency and tests/ directory
- Move C:\ci creation, Defender disable, and firewall rule from workflow
  PowerShell steps into ssh.preamble of the CI config (run post-SSH-connect
  as the admin ci_runner user)
- Trim "Create agent drop directory" step to only C:\tmp (needed before SSH
  key copy); remove "Disable Defender and open callback port" step entirely
- Add feature validation inside the docker container: --help grep for -o
  flag (no server needed), integration test runs with -o /tmp/ci-results.txt
  and verifies the output file contains the expected summary on success

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The prebuilt container image has a pinned version of adaptix-testing baked in.
Add uv tool install --force /workspace at the top of the container script to
overwrite it with the current branch's code before any tests run.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
uv is not on PATH inside the Docker container's bash -c context.
pip3 install --break-system-packages is reliable and drops adaptix-testing
into /usr/local/bin which is prepended to PATH immediately after.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
uv is not on PATH when the container runs at runtime; pip3 installs
the editable package directly to /usr/local/bin which is always available.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
pip3 and uv are not reliably on PATH in the pre-built container because
apt-get autoremove stripped python3-pip during image build. The uv venv
created at image-build time already has all dependencies; pointing its
Python directly at /workspace/run.py tests the current branch without
needing any install step.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Hardcoding the venv path assumed 'python' binary name and exact tool
directory name. Reading the shebang of the pre-baked adaptix-testing
entry point gives the correct interpreter path directly.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The adaptix-container image now preserves pip3 (autoremove removed),
so uv is available. PATH is set before the uv call so the reinstall
and the adaptix-testing entry point are both found.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@TheGr3atJosh TheGr3atJosh merged commit b935706 into main May 15, 2026
5 checks passed
@TheGr3atJosh TheGr3atJosh deleted the feature/preamble-and-output branch May 15, 2026 07:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant