---
type: Reference
title: Quality Checks
description: Documentation of the quality gate scripts that run linting, formatting, type checking, and planned layering and secret checks via `bun run check`.
tags: [quality, checks, linting, formatting, typescript, oxlint, oxfmt, tsc]
verified:
  - by: openwiki/0.7.2
    at: 2026-10-14T20:42:32.326Z
---


# Quality Checks

The `bun run check` command runs a series of quality gates across all workspaces.

## Components

### Linting and Formatting (ultracite)

The `ultracite` tool runs both `oxlint` (for linting) and `oxfmt` (for formatting) in one command.

### Type Checking

The `vp run -r check-types` runs the TypeScript compiler (`tsc`) in each workspace via the `check-types` script defined in each package's `package.json`.

### Planned Checks

Once the `@os/core` package is available, additional checks are planned:
- `check-layering`: to enforce architectural layering.
- `check-secrets`: to prevent accidental committing of secrets.

These will be run as part of the `bun run check` command in the future.

## Usage

Run the quality checks with:

```bash
bun run check
```

This command is also used in the pre-push hook (planned) and in CI.

## Configuration

- Oxlint configuration: see [oxlint.config.ts](../oxlint.config.ts)
- Oxfmt configuration: see [oxfmt.config.ts](../oxfmt.config.ts)
- TypeScript configuration: see [tsconfig.json](../tsconfig.json) and the individual `tsconfig.json` files in each workspace.

## Related Documentation

- [Setup](/operations/setup) - includes instructions on running the checks.
- [Testing Strategy](/testing/strategy) - for broader testing approach.
