Skip to main content
reopt Handbook
reopt Handbook
Harness Engineering

Problem and Structure

Foundations of Harness EngineeringRepo-Readable SystemsThe Five Elements of a HarnessEngineering Mechanics

Evaluation and Interpretation

Evaluation Loop DesignExternal Case Comparison

Case Studies

Case: OpenAICase: AnthropicCase: TossCase: gstackCase: revfactory/harness

Domain Playbooks

Domain PlaybooksScenario: Frontend TeamScenario: Platform TeamScenario: Payments and Settlement TeamScenario: AI Product TeamWhy You Eventually Need Your Own Harness

Rollout and Operations

Team Harness Rollout StrategyTeam Harness Design ChecklistOperations: Entropy and Garbage Collection

Appendix

Verification ReportUpdates
Handbook›Harness Engineering›Scenario: Frontend Team
한국어English

Scenario: Frontend Team

Design a harness where browser QA, accessibility, visual state, and design rules are load-bearing.

Key takeaways

  • Frontend harnesses must verify rendered behavior, not just compilation: browser QA, accessibility, design rules, and a QA report are the load-bearing elements.
  • The recommended loop runs typecheck/lint, then browser QA, then an accessibility check, and only produces a PR once those pass.
  • Make the task contract enumerate loading, empty, and error states so missing UI states are caught before review.
  • Require both desktop and mobile browser QA plus keyboard navigation in done criteria, with screenshots when visual behavior changes.
  • Start by templating a short UI task contract, making browser QA mandatory for user-facing changes, and moving repeated review comments into docs/design-rules.md.

Frontend teams often fail after the code compiles. The risk is not only TypeScript or tests. It is real rendered behavior.

Problem Structure

  • The component compiles but the screen is broken.
  • Loading, empty, and error states are missing.
  • Keyboard and screen-reader behavior regress.
  • Responsive layout breaks on mobile.
  • Design-system rules are remembered by humans, not enforced by the harness.

Load-Bearing Elements

ElementWhy it matters
Browser QAVerifies rendered behavior
A11y gateCatches keyboard and semantic regressions
Design rulesKeeps UI consistent
Screenshot or QA reportPreserves evidence for review

Recommended Loop

Artifact Structure

design-rules.md
interaction-patterns.md
a11y-gates.md
ui-task-contract.yaml
browser-qa-report.md

Example Done Criteria

frontend_done:
  must_pass:
    - "typecheck"
    - "lint"
    - "desktop browser QA"
    - "mobile browser QA"
    - "keyboard navigation"
  evidence:
    - "qa-report.md"
    - "screenshots when visual behavior changed"

Common Failures

FailureHarness response
Looks fine in code, broken in browserBrowser QA required
Missing empty/error stateTask contract lists states
A11y regressionKeyboard and semantic gate
Design inconsistencyDesign rules loaded before implementation

First 30 Days

  1. Create a short UI task contract template.
  2. Make browser QA mandatory for user-facing UI changes.
  3. Move repeated design review comments into docs/design-rules.md.

Read Next

  • /en/books/harness-engineering/case-openai
  • /en/books/harness-engineering/case-anthropic
  • /en/books/harness-engineering/evaluation-loops

Related docs

Domain Playbooks

Translate harness principles into frontend, platform, payments, and AI product teams.

Built-in Accessibility

Design Systems for the AI Era · Design components so AI automatically generates accessible UI.

Scenario: Platform Team

Design a harness around invariants, impact analysis, shared modules, release gates, and migration discipline.

MCP Command and Integration Guide

Codex Command Master · How to operate MCP servers and tools safely from Codex.

Forms and Data Input

Design Systems for the AI Era · Standardize validation, errors, and complex form composition.

Domain Playbooks

Translate harness principles into frontend, platform, payments, and AI product teams.

Scenario: Platform Team

Design a harness around invariants, impact analysis, shared modules, release gates, and migration discipline.

On this page

Problem StructureLoad-Bearing ElementsRecommended LoopArtifact StructureExample Done CriteriaCommon FailuresFirst 30 DaysRead Next