{
  "repository": "serverless/serverless",
  "ref": "e6a53f2252fb55a9812cde36d340022571a962c5",
  "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": "eslint",
      "method": "static_analysis",
      "commands": [
        "eslint",
        "eslint --fix",
        "eslint ."
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci-framework.yml",
          "locator": "jobs.lint.steps[4] (Lint: ESLint)"
        },
        {
          "path": "package.json",
          "locator": "scripts.lint"
        },
        {
          "path": "package.json",
          "locator": "scripts.lint:fix"
        },
        {
          "path": "release-scripts/package.json",
          "locator": "scripts.lint"
        },
        {
          "path": "package.json",
          "locator": "devDependencies: eslint"
        },
        {
          "path": "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": false
    },
    {
      "tool": "go-vet",
      "method": "static_analysis",
      "commands": [
        "go vet ./..."
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci-dev-mode-bridge.yml",
          "locator": "jobs.test-dev-mode-bridge.steps[2] (Test: Unit)"
        },
        {
          "path": "dev-mode-bridge/Makefile",
          "locator": "target test (line 5)"
        }
      ],
      "upstream": "https://github.com/golang/go",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": "ci-matrix",
      "method": "testing",
      "commands": [
        "test-binary-installer (os: 3)",
        "e2e-binary-installer (os: 3)"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci-binary-installer.yml",
          "locator": "jobs.test-binary-installer.strategy.matrix"
        },
        {
          "path": ".github/workflows/ci-binary-installer.yml",
          "locator": "jobs.e2e-binary-installer.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": "go-test",
      "method": "testing",
      "commands": [
        "go test ./... -v -timeout 15m",
        "go test -tags e2e ./e2e/ -v -count=1 -timeout 45m",
        "go test -race ./...",
        "go test ./..."
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci-binary-installer.yml",
          "locator": "jobs.test-binary-installer.steps[2] (Test: Unit)"
        },
        {
          "path": ".github/workflows/ci-binary-installer.yml",
          "locator": "jobs.e2e-binary-installer.steps[6] (Test: E2E)"
        },
        {
          "path": ".github/workflows/ci-dev-mode-bridge.yml",
          "locator": "jobs.test-dev-mode-bridge.steps[2] (Test: Unit)"
        },
        {
          "path": "binary-installer/Makefile",
          "locator": "target test (line 25)"
        },
        {
          "path": "binary-installer/Makefile",
          "locator": "target test-e2e (line 30)"
        },
        {
          "path": "dev-mode-bridge/Makefile",
          "locator": "target test (line 5)"
        }
      ],
      "upstream": "https://github.com/golang/go",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": "jest",
      "method": "testing",
      "commands": [],
      "triggers": [],
      "evidence": [
        {
          "path": "packages/engine/jest.config.js",
          "locator": "config file"
        },
        {
          "path": "packages/mcp/jest.config.js",
          "locator": "config file"
        },
        {
          "path": "packages/sf-core/jest.config.cjs",
          "locator": "config file"
        }
      ],
      "upstream": "https://github.com/jestjs/jest",
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": true
    },
    {
      "tool": "prettier",
      "method": "formatting",
      "commands": [
        "prettier -c .",
        "prettier -w .",
        "prettier -c . --ignore-path ../.prettierignore",
        "prettier -w . --ignore-path ../.prettierignore"
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci-framework.yml",
          "locator": "jobs.lint.steps[5] (Lint: Prettier)"
        },
        {
          "path": "package.json",
          "locator": "scripts.prettier"
        },
        {
          "path": "package.json",
          "locator": "scripts.prettier:fix"
        },
        {
          "path": "release-scripts/package.json",
          "locator": "scripts.prettier"
        },
        {
          "path": "release-scripts/package.json",
          "locator": "scripts.prettier:fix"
        },
        {
          "path": "package.json",
          "locator": "devDependencies: prettier"
        },
        {
          "path": "prettier.config.js",
          "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": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "bash ../sf-core/scripts/verify-release-package.sh ${verify_dir}/package"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci-framework.yml",
          "locator": "jobs.test-release-package.steps[10] (Test: Release Package)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "go run golang.org/x/vuln/cmd/govulncheck@v1.8.0 ./..."
      ],
      "triggers": [
        "ci",
        "local"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci-dev-mode-bridge.yml",
          "locator": "jobs.test-dev-mode-bridge.steps[3] (Test: Vulnerabilities)"
        },
        {
          "path": "dev-mode-bridge/Makefile",
          "locator": "target vuln (line 9)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "lint-staged --concurrent true"
      ],
      "triggers": [
        "pre_commit"
      ],
      "evidence": [
        {
          "path": ".husky/pre-commit",
          "locator": "line 1"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "node packages/sf-core/scripts/lint-skills.js"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/ci-framework.yml",
          "locator": "jobs.lint.steps[6] (Lint: Agent Skills)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    },
    {
      "tool": null,
      "method": "unclassified",
      "commands": [
        "node scripts/test-account-cleanup/report.js --regions us-east-1,us-east-2,us-west-2,eu-west-1"
      ],
      "triggers": [
        "ci"
      ],
      "evidence": [
        {
          "path": ".github/workflows/cleanup-test-accounts.yml",
          "locator": "jobs.report.steps[5] (Report: Leftovers)"
        }
      ],
      "upstream": null,
      "docs": null,
      "exit_codes": {},
      "autofix": false,
      "declared_only": false
    }
  ]
}
