# `mix snakebridge.verify`
[🔗](https://github.com/nshkrdotcom/snakebridge/blob/v0.14.0/lib/mix/tasks/snakebridge.verify.ex#L1)

Verifies the lock file against the current hardware environment.

This task checks that the hardware environment where the lock file was created
is compatible with the current system. It detects:

- Platform mismatches (OS, architecture)
- CUDA version differences
- Missing GPU capabilities
- CPU feature mismatches

## Usage

    mix snakebridge.verify           # Verify with warnings
    mix snakebridge.verify --strict  # Fail on any mismatch
    mix snakebridge.verify --verbose # Show detailed info

## Options

- `--strict` - Treat warnings as errors and fail
- `--verbose` - Print detailed hardware information
- `--file PATH` - Use a specific lock file (default: snakebridge.lock)

## Exit Codes

- 0 - Compatible environment
- 1 - Incompatible environment (or warnings in strict mode)

## Examples

    # Standard verification
    $ mix snakebridge.verify
    ✓ Lock file compatible with current environment

    # Strict mode (CI)
    $ mix snakebridge.verify --strict
    ✗ CUDA version mismatch: lock has 12.1, current has 11.8

    # Verbose output
    $ mix snakebridge.verify --verbose
    Current hardware:
      Platform: linux-x86_64
      Accelerator: cuda
      CUDA version: 12.1
      GPU count: 2

    Lock file:
      Platform: linux-x86_64
      Accelerator: cuda
      CUDA version: 12.1
      GPU count: 2

    ✓ Lock file compatible

---

*Consult [api-reference.md](api-reference.md) for complete listing*
