# I4h Catheter Navigation Smoke

> Run CPU-only fluorosim smoke tests (imports, preprocessing, CLI parsers). Use when asked to smoke-test catheter navigation in CI or without a GPU.

- Skill: `nvidia/i4h-catheter-navigation-smoke` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add nvidia/i4h-catheter-navigation-smoke`
- Raw SKILL.md: https://api.skillmd.com/api/skills/nvidia/i4h-catheter-navigation-smoke/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: Apache-2.0
- Author: NVIDIA (https://skillmd.com/u/nvidia), verified publisher
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/nvidia/i4h-catheter-navigation-smoke

---


# i4h Catheter Navigation - Smoke Tests

## Purpose

Run CPU-only unit smoke tests for fluorosim components and entrypoint parsers,
safe for CI without a GPU. Exercises imports, CT->mu preprocessing, parser
sanity, and conditional viewport import checks.

## Base Code

```bash
ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}"
if [ ! -d "$ROOT/workflows/catheter_navigation" ]; then
  ROOT="${I4H_WORKFLOWS:-$HOME/i4h-workflows}"
  [ -d "$ROOT/workflows/catheter_navigation" ] || git clone https://github.com/isaac-for-healthcare/i4h-workflows "$ROOT"
fi
export I4H_WORKFLOWS="$ROOT"; cd "$ROOT"
```

## Run

### Step 1 - run tests

```bash
REPO_ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}"; [ -d "$REPO_ROOT/workflows/catheter_navigation" ] || REPO_ROOT="$HOME/i4h-workflows"
WF_ROOT="${REPO_ROOT}/workflows/catheter_navigation"
RUN_DIR="${WF_ROOT}/runs/smoke_$(date +%Y%m%d_%H%M%S)"
mkdir -p "${RUN_DIR}/logs"
ln -sfn "${RUN_DIR}" "${WF_ROOT}/runs/.latest"

python3 -m unittest workflows/catheter_navigation/tests/test_fluorosim_smoke.py \
  2>&1 | tee "${RUN_DIR}/logs/smoke.log"
```

## Expected Output

```text
Ran N tests in ...s
OK
```

Parser error lines on stderr from negative CLI tests are **expected** - not failures.

## Verify

```bash
grep -E "Ran [0-9]+ tests" "${RUN_DIR}/logs/smoke.log"
grep "OK" "${RUN_DIR}/logs/smoke.log"
```

## Prerequisites

- Python 3 with workflow dependencies installed (for example via
  `workflows/catheter_navigation/requirements.txt`).
- No GPU required.

## Limitations

- Does not exercise GPU Slang rendering or the interactive viewport.
- For GPU validation, use [[i4h-catheter-navigation-render-drr]].

## Troubleshooting

- **Error:** import failures - Fix: run [[i4h-catheter-navigation-setup]] and
  ensure the active venv has catheter workflow dependencies installed.
- **Error:** unexpected test count - Fix: inspect log; this can change when smoke
  coverage is added/removed on a branch.

## Final Response

Report pass/fail, test count, and log path. If passed, note GPU stages still need separate verification.

