code-qa.yml 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. name: Code QA Roo Code
  2. on:
  3. workflow_dispatch:
  4. push:
  5. branches: [main]
  6. pull_request:
  7. types: [opened, reopened, ready_for_review, synchronize]
  8. branches: [main]
  9. jobs:
  10. check-translations:
  11. runs-on: ubuntu-latest
  12. steps:
  13. - name: Checkout code
  14. uses: actions/checkout@v4
  15. - name: Setup Node.js and pnpm
  16. uses: ./.github/actions/setup-node-pnpm
  17. - name: Verify all translations are complete
  18. run: node scripts/find-missing-translations.js
  19. knip:
  20. runs-on: ubuntu-latest
  21. steps:
  22. - name: Checkout code
  23. uses: actions/checkout@v4
  24. - name: Setup Node.js and pnpm
  25. uses: ./.github/actions/setup-node-pnpm
  26. - name: Run knip checks
  27. run: pnpm knip
  28. compile:
  29. runs-on: ubuntu-latest
  30. steps:
  31. - name: Checkout code
  32. uses: actions/checkout@v4
  33. - name: Setup Node.js and pnpm
  34. uses: ./.github/actions/setup-node-pnpm
  35. - name: Lint
  36. run: pnpm lint
  37. - name: Check types
  38. run: pnpm check-types
  39. unit-test:
  40. name: platform-unit-test (${{ matrix.name }})
  41. runs-on: ${{ matrix.os }}
  42. strategy:
  43. matrix:
  44. include:
  45. - os: ubuntu-latest
  46. name: ubuntu-latest
  47. - os: windows-latest
  48. name: windows-latest
  49. steps:
  50. - name: Checkout code
  51. uses: actions/checkout@v4
  52. - name: Setup Node.js and pnpm
  53. uses: ./.github/actions/setup-node-pnpm
  54. - name: Run unit tests
  55. run: pnpm test