codecov.yml 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. # Codecov Configuration
  2. # https://docs.codecov.com/docs/codecov-yaml
  3. # Coverage targets
  4. coverage:
  5. precision: 2
  6. round: down
  7. range: "70...100"
  8. status:
  9. # Overall project coverage
  10. project:
  11. default:
  12. target: 80%
  13. threshold: 2%
  14. base: auto
  15. if_ci_failed: error
  16. # Coverage for changes in PR
  17. patch:
  18. default:
  19. target: 80%
  20. threshold: 5%
  21. base: auto
  22. if_ci_failed: error
  23. # Comment configuration for pull requests
  24. comment:
  25. layout: "reach,diff,flags,tree,files"
  26. behavior: default
  27. require_changes: false
  28. require_base: false
  29. require_head: true
  30. # Ignore paths
  31. ignore:
  32. - "tests/**/*"
  33. - "**/__pycache__/**/*"
  34. - "**/conftest.py"
  35. - "scripts/**/*"
  36. - "docs/**/*"
  37. - "examples/**/*"
  38. - "docker/**/*"
  39. - "**/__init__.py"
  40. # Flag configuration for different test types
  41. flags:
  42. unittests:
  43. paths:
  44. - src/
  45. carryforward: true
  46. integration:
  47. paths:
  48. - src/
  49. carryforward: true
  50. e2e:
  51. paths:
  52. - src/
  53. carryforward: true
  54. # Component configuration for coverage by layer
  55. component_management:
  56. individual_components:
  57. - component_id: domain_layer
  58. name: Domain Layer
  59. paths:
  60. - src/domain/**
  61. - component_id: application_layer
  62. name: Application Layer
  63. paths:
  64. - src/application/**
  65. - component_id: infrastructure_layer
  66. name: Infrastructure Layer
  67. paths:
  68. - src/infrastructure/**
  69. - component_id: presentation_layer
  70. name: Presentation Layer
  71. paths:
  72. - src/presentation/**
  73. - component_id: config
  74. name: Configuration
  75. paths:
  76. - src/config/**
  77. - component_id: shared
  78. name: Shared Utilities
  79. paths:
  80. - src/shared/**
  81. # GitHub checks configuration
  82. github_checks:
  83. annotations: true
  84. # Notification configuration
  85. slack_app: false