Skip to main content

max / makenotwork

pom: rename stale run-ci.sh references in the SSH test-runner The astra CI retirement (mnw@de117165) dropped run-ci.sh; the tests check now runs `cargo test --workspace` over SSH for the mt/go/bb/af/sk targets. Reword the parse.rs doc/comment and architecture.md to describe the actual command instead of the deleted script. No behavior change. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Author: Max Johnson <me@maxj.phd> · 2026-07-23 16:00 UTC
Commit: 6fb966cb7433ab970789f76889627ee7f3f9273d
Parent: e494879
2 files changed, +5 insertions, -4 deletions
@@ -174,7 +174,7 @@ Connects to host:port, completes a TLS handshake using the system trust store (w
174 174
175 175 ### SSH Test Runner
176 176
177 - Executes a configured command on a remote host via `ssh -o BatchMode=yes`. The command string comes from config (typically a CI script like `./run-ci.sh`). Supports an optional filter argument (validated to `[a-zA-Z0-9_:-]` to prevent injection). Output is parsed for PASS/FAIL step lines and `test result:` cargo test summary lines.
177 + Executes a configured command on a remote host via `ssh -o BatchMode=yes`. The command string comes from config (today, `cargo test --workspace` run against a staging checkout). Supports an optional filter argument (validated to `[a-zA-Z0-9_:-]` to prevent injection). Output is parsed for PASS/FAIL step lines and `test result:` cargo test summary lines.
178 178
179 179 ## Key Design Decisions
180 180
@@ -3,10 +3,11 @@
3 3
4 4 use crate::types::{StepResult, TestDetail, TestSummary};
5 5
6 - /// Parse run-ci.sh output into a structured TestSummary.
6 + /// Parse remote test-command output into a structured TestSummary.
7 7 ///
8 + /// The command is whatever a target configures (today, `cargo test` over SSH).
8 9 /// Looks for:
9 - /// - `PASS <step name>` / `FAIL <step name>` lines from the CI summary
10 + /// - `PASS <step name>` / `FAIL <step name>` step-summary lines
10 11 /// - `test result: ok. N passed; M failed` lines from cargo test
11 12 /// - `test <name> ... ok` / `test <name> ... FAILED` individual test lines
12 13 pub fn parse_ci_output(output: &str) -> TestSummary {
@@ -18,7 +19,7 @@ pub fn parse_ci_output(output: &str) -> TestSummary {
18 19 for line in output.lines() {
19 20 let trimmed = line.trim();
20 21
21 - // Parse PASS/FAIL lines from run-ci.sh summary
22 + // Parse PASS/FAIL step-summary lines (if the command emits them)
22 23 if let Some(name) = trimmed.strip_prefix("PASS ") {
23 24 steps.push(StepResult {
24 25 name: name.trim().to_string(),