# Integration Verification After Building New Components

## Critical Pitfall

Building new composables, screens, or UI components is not the same as integrating them. After creating new files, they are invisible to the app until explicitly wired.

## Verification Steps

1. **Grep for old component name** — Find every import + call site:
   ```bash
   rg "OldScreenName|OldComponentName" --include='*.kt' app/src/main/java/
   ```

2. **Verify NavHost routes** — Check the route composable calls the NEW screen:
   ```bash
   rg "composable.*route.*Home" --include='*.kt' -A 5 app/src/main/java/
   ```

3. **Verify parent screens** — If a shared component (sidebar, card, scaffold) was rebuilt, check all screens that embed the old version.

4. **Check git diff** — Should show import changes + composable call changes alongside new files:
   ```bash
   git diff --stat HEAD~1 | grep -E "import|call|Screen"
   ```

5. **Build and verify zero errors**:
   ```bash
   cd /path/to/project
   ./gradlew :app:assembleDebug 2>&1 | tail -5
   ```

## Red Flag Pattern

If `git diff --stat` shows ONLY new file additions (no modifications to existing files), the new code is almost certainly dead — nothing is calling it. Every new screen needs a NavHost change; every new shared component needs a caller update.
