Compare commits

...

8 Commits

Author SHA1 Message Date
hector d52d720d17 Merge branch 'main' into ci/validation-sweep-boto3
Keep main's validation sweep workflow where both sides edited the
same steps. The Python 3.12 venv install from
validation_ilm/requirements.txt is already on main and remains in
the sweep job, with the scheduled nightly pin, chain envelope read,
ssh -n, AUTO_TESTING_SHA, and artifact warn/run path.

Co-authored-by: hector <majinghe@users.noreply.github.com>
2026-11-02 12:39:52 +00:00
Hauser Zhi 4572bccea1 Merge branch 'main' into ci/validation-sweep-boto3 2026-11-02 18:07:28 +08:00
hector ccc25bce07 ci(validation): install the validation Python client requirements
The pool runner dies with 'boto3 is required for pool validation'
before its assertions: the managed interpreter alone is not enough.
Mirror the chain validation job exactly - build a venv from
validation_ilm/requirements.txt and put its bin on PATH so every
module runner (pool/ilm/replication) gets its client stack.
2026-11-02 16:38:53 +08:00
hector 6199e30ffc Merge branch 'main' into ci/validation-sweep-schedule-fix 2026-11-02 15:01:41 +08:00
hector 835b84c57a ci(validation): install sweep Python client dependencies
Scheduled sweeps failed pool.status before any assertion because
pool_behavior.py exits when boto3 is missing. Install the auto-testing
validation requirements into a per-run virtualenv and put it on PATH,
matching the functional chain, so case scripts can import the client.

Co-authored-by: hector <majinghe@users.noreply.github.com>
2026-11-02 06:56:18 +00:00
hector 14a2fd9569 ci(validation): sweep harness fixes from the first live run
- ssh -n in the inter-case cleanup loop: plain ssh consumed the case
  list from the loop's stdin, so the first dispatch executed only one
  of the twelve selected cases.
- Provide the managed Python 3.12 runtime for pool/ilm/replication
  cases, mirroring the chain validation job (pool.status reported
  INFRA_ERROR after its assertions passed; the missing runtime is the
  prime suspect).
- Record the auto-testing sha in the report step environment.
- Retain the last case's evidence tree in the sweep artifact so gate
  verdicts like INFRA_ERROR can be diagnosed from the run itself.
2026-11-02 09:27:20 +08:00
hector bf201caf34 ci(validation): read the resolver chain envelope correctly
CHAIN_OUTPUT is the chain envelope {schema, run_id, attempt,
workflow_sha, testing_sha, candidate}; the manifest lives under
candidate.manifest and the testing sha at the top level.
2026-11-02 09:17:09 +08:00
hector 4d81330479 ci(validation): resolve the newest nightly build on scheduled sweeps
The first scheduled sweep failed at candidate resolution: a schedule
carries no workflow inputs and resolve_functional_candidate.py only
derives a build from a workflow_run payload, so the empty
BUILD_RUN_ID crashed int(). Look up the newest successful
nightly-gnu run explicitly when the inputs are empty and feed it to
the resolver. Also downgrade the evidence artifact to
if-no-files-found: warn so an early infra failure does not cascade
into a second red step.
2026-11-02 09:09:20 +08:00

Diff Content Not Available