Fix paths in workflow
diff --git a/.github/workflows/ffi.yaml b/.github/workflows/ffi.yaml
index 9020f59..4ecb0ff 100644
--- a/.github/workflows/ffi.yaml
+++ b/.github/workflows/ffi.yaml
@@ -3,9 +3,15 @@
 on:
   # Run on PRs and pushes to the default branch.
   push:
-    branches: [ main ]
+    branches: [main]
+    paths:
+      - '.github/workflows/ffi.yaml'
+      - 'pkgs/ffi/**'
   pull_request:
-    branches: [ main ]
+    branches: [main]
+    paths:
+      - '.github/workflows/ffi.yaml'
+      - 'pkgs/ffi/**'
   schedule:
     - cron: "0 0 * * 0"
 
@@ -17,6 +23,9 @@
   # against Dart dev.
   analyze:
     runs-on: ubuntu-latest
+    defaults:
+      run:
+        working-directory: pkgs/ffi/
     strategy:
       fail-fast: false
       matrix:
@@ -42,6 +51,9 @@
   test:
     needs: analyze
     runs-on: ${{ matrix.os }}
+    defaults:
+      run:
+        working-directory: pkgs/ffi/
     strategy:
       fail-fast: false
       matrix: