{
  "repository": "aaif-goose/goose",
  "ref": "bfe8ccd23de1d2c47a4cb2970d522f093ae7f2ba",
  "methods": [
    {
      "slug": "formal",
      "title": "Formal verification and model checking"
    },
    {
      "slug": "static_analysis",
      "title": "Static analysis"
    },
    {
      "slug": "testing",
      "title": "Testing"
    },
    {
      "slug": "formatting",
      "title": "Formatting and hygiene"
    },
    {
      "slug": "supply_chain",
      "title": "Supply chain"
    },
    {
      "slug": "unclassified",
      "title": "Unclassified"
    }
  ],
  "verifications": [
    {
      "tool": "cargo-check",
      "method": "static_analysis",
      "commands": [
        "cargo check --locked --target wasm32-unknown-unknown -p goose-agent -p goose-provider-types",
        "cargo check -p goose-sdk --features uniffi --locked",
        "cargo check --workspace --locked --all-targets"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-check-wasm.steps[3] (Check wasm32 build)"
        },
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.goose-sdk-uniffi.steps[3] (Check UniFFI feature)"
        },
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-msrv.steps[4] (Check with MSRV toolchain)"
        }
      ],
      "upstream": "https://github.com/rust-lang/cargo",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": "clippy",
      "method": "static_analysis",
      "commands": [
        "cargo clippy --workspace --all-targets -- -D warnings",
        "cargo clippy --all-targets -- -D warnings"
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-lint.steps[2] (Lint)"
        },
        {
          "path": "Justfile",
          "locator": "recipe check-everything (line 8)"
        },
        {
          "path": "clippy.toml",
          "locator": "config file"
        }
      ],
      "upstream": "https://github.com/rust-lang/rust-clippy",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": "tsc",
      "method": "static_analysis",
      "commands": [
        "tsc"
      ],
      "triggers": [
        "local"
      ],
      "evidence": [
        {
          "path": "documentation/package.json",
          "locator": "scripts.typecheck"
        },
        {
          "path": "documentation/package.json",
          "locator": "devDependencies: typescript"
        }
      ],
      "upstream": "https://github.com/microsoft/TypeScript",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": "eslint",
      "method": "static_analysis",
      "commands": [],
      "triggers": [],
      "evidence": [
        {
          "path": "ui/desktop/eslint.config.js",
          "locator": "config file"
        }
      ],
      "upstream": "https://github.com/eslint/eslint",
      "docs": "https://eslint.org/docs/latest/use/command-line-interface#exit-codes",
      "exit_codes": {
        "0": "no errors",
        "1": "linting errors found",
        "2": "configuration problem or internal error"
      },
      "autofix": true,
      "declared_only": true
    },
    {
      "tool": "cargo-test",
      "method": "testing",
      "commands": [
        "cargo test --locked",
        "cargo test --locked --target wasm32-unknown-unknown -p goose-agent --test wasm",
        "cargo test -p goose-sdk --features uniffi --locked",
        "cargo test -p goose --no-default-features --features $EXPR,code-mode,tree-sitter,live-voice,scheduler,platform-apps,chat-recall,acp-http",
        "cargo test -p goose-providers --no-default-features --features $EXPR,live-websocket"
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-build-and-test.steps[3] (Build and Test)"
        },
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-check-wasm.steps[4] (Run agent loop on wasm32)"
        },
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.goose-sdk-uniffi.steps[3] (Check UniFFI feature)"
        },
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-build-and-test-tls.steps[4] (Build and Test with ${{ matrix.tls-feature }})"
        },
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-build-and-test-roaming.steps[4] (Build and Test with roaming)"
        },
        {
          "path": "Justfile",
          "locator": "recipe record-mcp-tests (line 498)"
        }
      ],
      "upstream": "https://github.com/rust-lang/cargo",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": "ci-matrix",
      "method": "testing",
      "commands": [
        "rust-build-and-test-tls (tls-feature: 2)",
        "desktop-updater-install (os: 2)"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-build-and-test-tls.strategy.matrix"
        },
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.desktop-updater-install.strategy.matrix"
        }
      ],
      "upstream": "https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/run-job-variations",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": "node-test",
      "method": "testing",
      "commands": [
        "node --test buzz/*.test.mjs",
        "node --test scripts/mac-update-requirements.test.cjs",
        "node --test scripts/*.test.js"
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/buzz-automation.yml",
          "locator": "jobs.test.steps[2] (Test Buzz automation)"
        },
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.desktop-lint.steps[4] (Test macOS update manifests)"
        },
        {
          "path": "Justfile",
          "locator": "recipe test-buzz (line 19)"
        },
        {
          "path": "documentation/package.json",
          "locator": "scripts.test"
        }
      ],
      "upstream": "https://github.com/nodejs/node",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": "vitest",
      "method": "testing",
      "commands": [
        "vitest run src/utils/githubUpdater.install.test.ts",
        "vitest run"
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.desktop-updater-install.steps[4] (Run Updater Install Test)"
        },
        {
          "path": "oidc-proxy/package.json",
          "locator": "scripts.test"
        },
        {
          "path": "oidc-proxy/package.json",
          "locator": "devDependencies: vitest"
        },
        {
          "path": "oidc-proxy/vitest.config.js",
          "locator": "config file"
        },
        {
          "path": "ui/desktop/vitest.config.ts",
          "locator": "config file"
        }
      ],
      "upstream": "https://github.com/vitest-dev/vitest",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": "playwright",
      "method": "testing",
      "commands": [],
      "triggers": [],
      "evidence": [
        {
          "path": "ui/desktop/playwright.config.ts",
          "locator": "config file"
        }
      ],
      "upstream": "https://github.com/microsoft/playwright",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": true
    },
    {
      "tool": "rustfmt",
      "method": "formatting",
      "commands": [
        "cargo fmt --check",
        "cargo fmt --all"
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-format.steps[2] (Run cargo fmt)"
        },
        {
          "path": "Justfile",
          "locator": "recipe check-everything (line 8)"
        }
      ],
      "upstream": "https://github.com/rust-lang/rustfmt",
      "docs": null,
      "exit_codes": {},
      "autofix": true,
      "declared_only": false
    },
    {
      "tool": "prettier",
      "method": "formatting",
      "commands": [],
      "triggers": [],
      "evidence": [
        {
          "path": "ui/desktop/.prettierrc.json",
          "locator": "config file"
        }
      ],
      "upstream": "https://github.com/prettier/prettier",
      "docs": "https://prettier.io/docs/cli#exit-codes",
      "exit_codes": {
        "0": "everything formatted",
        "1": "something was not formatted (--check)",
        "2": "prettier error"
      },
      "autofix": true,
      "declared_only": true
    },
    {
      "tool": "cargo-deny",
      "method": "supply_chain",
      "commands": [
        "uses EmbarkStudios/cargo-deny-action"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/cargo-deny.yml",
          "locator": "jobs.deny.steps[1]"
        },
        {
          "path": "deny.toml",
          "locator": "config file"
        }
      ],
      "upstream": "https://github.com/EmbarkStudios/cargo-deny",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "New-Item -ItemType Directory -Force dist"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/build-acp.yml",
          "locator": "jobs.build-acp.steps[8] (Package ACP binary (Windows))"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "Write-Output Verifying signature: $file"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/bundle-windows.yml",
          "locator": "jobs.sign-desktop-windows.steps[3] (Verify signed executables)"
        },
        {
          "path": ".github/workflows/bundle-windows.yml",
          "locator": "jobs.package-installer-windows.steps[12] (Verify signed installer and uninstaller)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "auditwheel repair --plat manylinux_2_28_x86_64 -w crates/goose-sdk/python/wheelhouse crates/goose-sdk/python/dist/*.whl"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/python-sdk-wheels.yml",
          "locator": "jobs.build-wheels.steps[8] (Repair Linux wheel)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "bash scripts/test_compaction.sh"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/pr-smoke-test.yml",
          "locator": "jobs.compaction-tests.steps[5] (Run Compaction Tests)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "bash scripts/test_mcp.sh"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/pr-smoke-test.yml",
          "locator": "jobs.smoke-tests.steps[9] (Run MCP Tests)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "bash scripts/test_openrouter_toolcalls.sh --count \"${{ inputs.model_count"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/model-toolcall-conformance.yml",
          "locator": "jobs.openrouter-toolcalls.steps[5] (Run OpenRouter Tool Call Sweep)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "bash scripts/test_openrouter_toolcalls.sh --models $EXPR --output-dir openrouter-toolcall-results"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/model-toolcall-conformance.yml",
          "locator": "jobs.openrouter-toolcalls.steps[5] (Run OpenRouter Tool Call Sweep)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "bash scripts/test_subrecipes.sh"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/pr-smoke-test.yml",
          "locator": "jobs.smoke-tests.steps[10] (Run Subrecipe Tests)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "case $(uname -s) in"
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-build-lean.steps[3] (Build lean configuration and check its size budget)"
        },
        {
          "path": "Justfile",
          "locator": "recipe check-lean-size (line 182)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "do node --check $file"
      ],
      "triggers": [
        "local"
      ],
      "evidence": [
        {
          "path": "Justfile",
          "locator": "recipe test-buzz (line 19)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "done"
      ],
      "triggers": [
        "local"
      ],
      "evidence": [
        {
          "path": "Justfile",
          "locator": "recipe test-buzz (line 19)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "esac"
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-build-lean.steps[3] (Build lean configuration and check its size budget)"
        },
        {
          "path": "Justfile",
          "locator": "recipe check-lean-size (line 182)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "for file in buzz/create_github_manager buzz/create_issue_channel buzz/list_issue_work buzz/syncissues buzz/github_manager.mjs"
      ],
      "triggers": [
        "local"
      ],
      "evidence": [
        {
          "path": "Justfile",
          "locator": "recipe test-buzz (line 19)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "metadata --no-deps --format-version 1"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/gdk-release-pr.yml",
          "locator": "jobs.release-pr.steps[4] (Validate package versions)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "node --check $file"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/buzz-automation.yml",
          "locator": "jobs.test.steps[2] (Test Buzz automation)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "node documentation/scripts/generate-acp-docs.js"
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/pr-website-preview.yml",
          "locator": "jobs.build.steps[2] (Generate ACP reference)"
        },
        {
          "path": "Justfile",
          "locator": "recipe generate-acp-docs (line 214)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "node scripts/generate-docs-map.js"
      ],
      "triggers": [
        "local"
      ],
      "evidence": [
        {
          "path": "documentation/package.json",
          "locator": "scripts.build"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "node scripts/verify-mac-update-resources.js $APP_PATH"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/bundle-macos.yml",
          "locator": "jobs.package-desktop.steps[11] (Verify macOS updater resources)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "node ui/scripts/npm-versions.mjs check"
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.goose-acp-npm-packages.steps[2] (Check npm versions)"
        },
        {
          "path": ".github/workflows/create-version-bump-pr.yaml",
          "locator": "jobs.create-version-bump.steps[4] (Compute version and create bump branch)"
        },
        {
          "path": "Justfile",
          "locator": "recipe prepare-release (line 347)"
        },
        {
          "path": "Justfile",
          "locator": "recipe bump-version (line 330)"
        },
        {
          "path": "Justfile",
          "locator": "recipe check-npm-versions (line 339)"
        },
        {
          "path": ".github/workflows/patch-release.yaml",
          "locator": "jobs.create-patch-release.steps[4] (Compute version and create release branch)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "node ui/scripts/npm-versions.mjs check-packed-wrapper $wrapper_pack_dir/package/package.json"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.goose-acp-npm-packages.steps[4] (Pack npm packages)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "python crates/goose-sdk/scripts/gdk-release.py check-config"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.gdk-release-config-check.steps[1] (Check GDK crate membership and publication order)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "python documentation/automation/gdk-api/generate.py --check"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.gdk-api-docs-check.steps[1] (Check generated GDK API reference data)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "security delete-keychain $KEYCHAIN_PATH"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/bundle-macos.yml",
          "locator": "jobs.package-desktop.steps[13] (Clean up signing keychain)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "tr -d [:space:])"
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci.yml",
          "locator": "jobs.rust-build-lean.steps[3] (Build lean configuration and check its size budget)"
        },
        {
          "path": "Justfile",
          "locator": "recipe check-lean-size (line 182)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "tsx generate-schema.ts"
      ],
      "triggers": [
        "local"
      ],
      "evidence": [
        {
          "path": "Justfile",
          "locator": "recipe generate-acp-types (line 208)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "venv .venv-wheel-test"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/python-sdk-wheels.yml",
          "locator": "jobs.build-wheels.steps[9] (Smoke test wheel)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    }
  ]
}
