Skip to content
PawOS Docs

Testing & Validation

The real syntax → build → test pipeline that runs after an edit batch.

After a multi-file edit, PawOS can run a real validation pipeline: syntax → imports → typecheck → lint → build → tests, each step reporting a genuine passed/failed/skipped result.

A step with nothing to check (no lint config, no test script) is honestly reported as skipped with a real reason — never fabricated as passed.

Self-healing

On a validation failure, PawOS can propose a targeted follow-up fix and re-validate, bounded to 3 attempts before honestly reporting the remaining failure.

Not implemented

There is no visual/browser verification step in this pipeline yet — a change that breaks how a page renders without breaking a build or a test would not be caught here. See Visual Verification.

Product disclosure

Implemented

This page documents the current PawOS behavior for Testing & Validation. It is intended to disclose what users can see and use, what permissions are required, what evidence is recorded, and what limitations remain.

This disclosure is part of the PawOS documentation for Testing & Validation. It is written to make the product behavior understandable before a user relies on it, pays for it, connects an account, approves a plan, or authorizes a machine-affecting action.

What users see

  • The Coding Workspace, Task Card, Plan Review card, affected files, status pills, proposed changes, permission summary, command output, diff surfaces, validation results, preview state, and final Work Record.
  • For multi-file work, users should see the plan title, scope summary, per-step rationale, affected area, proposed diff when hunk data exists, and Approve, Reject, and Revise controls.
  • During execution, users may also see terminal output, running processes, build/test evidence, browser preview state, screenshots, and real file-change summaries.

What PawOS does

  • PawOS may inspect project structure, dependencies, import graphs, feature groupings, domain concepts, affected files, and coding memory before proposing work.
  • Code edits use structured action requests such as applyCodeEdit and writeFile; applyCodeEdit uses context-anchored hunks against current on-disk content.
  • Validation can include syntax checks, import checks, typecheck, lint, build, tests, process health, browser console/network checks, and visual evidence when those tools are available.

Permissions and boundaries

  • Plan approval records intent only. It does not bypass applyCodeEdit confirmation, writeFile overwrite checks, command confirmation, git write confirmation, install confirmation, PATH/system confirmation, connector authorization, or deploy authorization.
  • Commands are governed by allowlists and execution rules; PawOS is not a raw arbitrary shell.
  • A generated diff is only authoritative when it comes from actual hunk data or a real git/file diff. The UI must not invent a diff for a step that has no patch.

Evidence and records

  • A real coding completion should show file paths, changed content or diff stats, commands executed, exit codes, relevant output, validation results, and any screenshots or browser evidence used to confirm UI behavior.
  • If validation was skipped because a script or config was absent, that skipped state should be disclosed.
  • If a plan was rejected, there should be no planned mutation from that rejected plan.

Limitations and user responsibility

  • Live Plan Review visual QA, real Pro/Pro Max account execution, and plan-to-execution lifecycle visualization may require an eligible running app/account environment.
  • Some non-TypeScript projects remain editable but may not receive the same deep structural analysis as TypeScript/JavaScript projects.
  • Whole-file writes can describe intended content, while fine-grained View Changes requires concrete patch hunk data or an actual diff source.

Warning

PawOS can assist with planning, coding, automation, connectors, billing flows, and system operations, but the user remains responsible for reviewing plans, confirmations, diffs, command effects, connector side effects, billing actions, and final outputs before relying on them.