800db360b3
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
3.3 KiB
3.3 KiB
Harness Control Plane Hardening
- Status:
in-progress - Owner:
sisyphus - Date:
2026-03-24
Goal
Finish the next harness-engineering hardening slice by making changed-suite selection authoritative in CI, promoting harness artifacts to first-class debugging outputs, centralizing browser and a11y coverage under one explicit contract, and turning orchestration from a thin wrapper into a safer repo capability with its own tests and docs.
Scope
- In scope:
- broaden harness selection so high-risk control-plane and release changes escalate to the right validation gate
- make CI run the selected harness suites instead of always forcing the PR gate
- upload harness, a11y, and browser test artifacts from CI
- replace duplicated story coverage lists with one shared harness coverage contract
- improve orchestration binary discovery, preflight checks, and plan-linked dispatch support
- add tests for harness control-plane helpers and update docs to match the implementation
- Out of scope:
- redesigning the component library or Storybook content beyond harness metadata needs
- replacing the external orchestration engine itself
- introducing visual snapshot infrastructure or hosted browser grids
Constraints
- Preserve the existing
pnpm harness:*commands as the main public interface. - Keep package-first release validation as the canonical release path.
- Reuse execution plans as the source of orchestration intent instead of creating a parallel plan format.
- Keep new harness checks targeted so CI cost stays proportional to risk.
Affected Surfaces
scripts/harness/*tests/e2e/*.github/workflows/harness-validate.ymlpackage.jsonvitest.config.tsdocs/harness-engineering.mddocs/orchestration.mdREADME.mdCONTRIBUTING.md
Plan
- Refactor harness suite selection so release-risk and harness-risk changes escalate beyond
static checks and let
changedexecution become the CI entrypoint. - Promote
.artifacts/*outputs into uploaded CI artifacts and make changed-suite execution log its selected suites clearly. - Introduce one shared harness coverage contract for Storybook browser smoke and a11y checks, then move both runners onto it.
- Add orchestration preflight and plan-linked dispatch helpers so execution plans directly support orchestration runs.
- Add control-plane tests plus doc updates so harness behavior, workflow guidance, and public commands stay aligned.
Validation
pnpm exec vitest run scripts/harness/**/*.test.tspnpm harness:suitespnpm harness:select -- --json --changed-file scripts/harness/core.mjspnpm harness:validate:changed -- --dry-run --changed-file scripts/harness/core.mjspnpm test:e2e:a11ypnpm test:e2e:smokepnpm harness:validate:pr
Orchestration Task Sketch
T1: harden suite selection and CI execution flowT2: centralize browser and a11y coverage contractT3: improve orchestration preflight and plan-linked dispatchT4: add harness tests and reconcile docs
Status Log
2026-03-24 18:40reviewed harness docs, scripts, CI wiring, and recent release hardening work; confirmed the main gaps are authoritative suite selection, CI artifact visibility, explicit browser coverage ownership, orchestration preflight, and missing control-plane tests