Add workplan, update migration-gaps delivered table, and extend sand-boxer e2e.yml with health check for validate run self-smoke.
2.7 KiB
id, type, title, domain, repo, status, owner, topic_slug, created, updated
| id | type | title | domain | repo | status | owner | topic_slug | created | updated |
|---|---|---|---|---|---|---|---|---|---|
| SAND-WP-0003 | workplan | wise-validator extraction from e2e-framework | infotech | sand-boxer | finished | codex | custodian | 2026-06-23 | 2026-06-23 |
wise-validator extraction from e2e-framework
Extract the validation half of the-custodian/e2e-framework/ into the
wise-validator repo. sand-boxer (SAND-WP-0002) already owns provision/teardown
via ext.compose-ssh; this workplan delivers health polling, test execution,
pass/fail reporting, and the validate run CLI.
Charter: wise-validator/INTENT.md
Predecessor: SAND-WP-0002 (finished)
Follow-on: SAND-WP-0004 (the-custodian make e2e shim)
Scaffold wise-validator package
id: SAND-WP-0003-T01
status: done
priority: high
Python 3.11+ package in ~/wise-validator: pyproject.toml, src/wisevalidator/,
tests/, Makefile (setup, install, check, test, lint).
Extract e2e.yml schema
id: SAND-WP-0003-T02
status: done
priority: high
Port e2e-framework/schema.py as wisevalidator/schema.py — E2EConfig,
HealthCheck, v1 e2e/e2e.yml contract (CUST-WP-0028 compatible).
sand-boxer client integration
id: SAND-WP-0003-T03
status: done
priority: high
wisevalidator/sandbox_client.py — call sandboxer create / destroy (CLI v0),
parse SandboxStatus JSON, no embedded provisioners.
Validation runner
id: SAND-WP-0003-T04
status: done
priority: high
wisevalidator/runner.py — load contract, request sandbox, HTTP health-wait on
remote host, run test_command, apply cleanup policy (always / on_success /
never).
State Hub reporter
id: SAND-WP-0003-T05
status: done
priority: medium
Port e2e-framework/reporter.py — event_type: e2e_result progress events
(backward compatible with legacy framework).
validate run CLI
id: SAND-WP-0003-T06
status: done
priority: high
Typer CLI validate run <repo> with --host, --keep, --workstream-id,
--no-report. Entry point: validate.
Tests
id: SAND-WP-0003-T07
status: done
priority: high
Unit tests for schema, runner (mocked sandbox + SSH), reporter. Fixture repo with
minimal e2e/e2e.yml.
Registry and docs
id: SAND-WP-0003-T08
status: done
priority: medium
registry/capabilities/validation.compose-e2e.md, docs/integrations/sand-boxer.md,
docs/runbooks/validate-compose-e2e.md. Updated sand-boxer/docs/migration-gaps.md.
Remote smoke (optional)
id: SAND-WP-0003-T09
status: wait
priority: low
scripts/smoke-validate-run.sh against CoulombCore when SANDBOXER_HOST set;
operator verification (same host requirements as SAND-WP-0002-T10).