• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In
Warning: This build has drifted.
The coverage report for this pull request build may be inaccurate because its base commit is no longer the HEAD of its target branch.
This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

    • Learn more: For more information on this, see Tracking coverage changes for pull request builds.
    • Fix now: For a quick fix, rebase this PR at GitHub. Your next report should be accurate.
    • Prevent going forward: To avoid this issue with future PRs, see these Recommended CI Configurations.
New Repo Setting:
INCLUDE COVERAGE % WITH WARNINGS ABOUT DRIFTED BUILDS?

Enabling this setting will include a (potentially inaccurate) coverage % with warning messages in status updates for drifted builds.

Adjust setting

kobotoolbox / kpi / 29313991722
50%
master: 76%

Build:
Build:
LAST BUILD BRANCH: hugo/dev-2094-harden-lrm-0024-qpaths
DEFAULT BRANCH: master
Ran 14 Jul 2026 07:20AM UTC
Jobs 1
Files 889
Run time 2min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

14 Jul 2026 07:16AM UTC coverage: 49.601% (-31.9%) from 81.49%
29313991722

Pull #7238

github

web-flow
Merge af469e7f2 into c014d04db
Pull Request #7238: perf(asset): fetch permissions once in Asset detail endpoint DEV-1833

4421 of 12501 branches covered (35.37%)

1 of 7 new or added lines in 1 file covered. (14.29%)

4525 existing lines in 150 files now uncovered.

18420 of 37136 relevant lines covered (49.6%)

0.5 hits per line

Uncovered Changes

Lines Coverage ∆ File
6
34.68
-29.58% kpi/serializers/v2/asset.py

Coverage Regressions

Lines Coverage ∆ File
667
5.22
-74.11% kpi/utils/query_parser/canopy_autogenerated_parser/__init__.py
382
28.11
-50.18% kpi/models/import_export_task.py
188
58.52
-33.04% kpi/models/asset.py
186
34.68
-29.58% kpi/serializers/v2/asset.py
123
28.65
-33.24% kpi/views/v2/asset.py
110
25.88
-64.71% kpi/utils/query_parser/query_parser.py
97
29.35
-48.26% kobo/apps/project_ownership/models/transfer.py
87
39.5
-43.5% kpi/utils/xml.py
83
70.3
-22.62% kpi/mixins/object_permission.py
81
0.0
-93.1% kobo/apps/stripe/serializers.py
75
0.0
-41.9% kobo/apps/stripe/views.py
71
21.6
-56.8% kobo/apps/stripe/utils/subscription_limits.py
70
23.4
-74.47% kpi/utils/xlsform_preprocessors/kobomatrix_handler.py
67
25.35
-31.46% kpi/filters.py
64
12.36
-71.91% kobo/apps/reports/report_data.py
63
32.52
-51.22% kobo/apps/accounts/forms.py
63
0.0
-51.64% kobo/apps/stripe/models.py
61
38.83
-59.22% kpi/utils/usage_calculator.py
60
37.56
-9.88% kpi/deployment_backends/openrosa_backend.py
58
31.46
-65.17% kpi/deployment_backends/mock_backend.py
55
36.52
-0.69% kpi/serializers/current_user.py
54
35.34
-40.6% kpi/paginators.py
50
78.38
0.0% kobo/settings/base.py
50
54.57
-12.35% kpi/deployment_backends/base_backend.py
49
28.28
-49.49% kpi/password_validation.py
47
19.72
-66.2% kpi/utils/sluggify.py
46
43.91
-10.57% kobo/apps/audit_log/models.py
44
37.07
-37.93% kpi/models/asset_snapshot.py
42
32.54
-33.33% kpi/utils/autoname.py
39
35.2
-31.2% kpi/models/paired_data.py
38
34.52
-45.24% kobo/apps/audit_log/base_views.py
37
51.27
-18.78% kpi/mixins/formpack_xlsform_utils.py
36
20.21
-38.3% kobo/apps/stripe/utils/billing_dates.py
35
18.75
-72.92% kpi/utils/xlsform_preprocessors/koborank_handler.py
34
37.14
-48.57% kpi/utils/cache.py
32
53.92
-31.37% kpi/models/asset_file.py
31
62.63
-31.31% kpi/utils/django_orm_helper.py
29
21.95
-70.73% kpi/utils/xlsform_preprocessors/koboscore_handler.py
27
0.0
-72.97% kobo/apps/accounts/adapter.py
27
16.67
-18.0% kobo/apps/project_ownership/utils.py
26
77.37
-13.68% kobo/apps/openrosa/apps/api/viewsets/xform_list_api.py
26
82.88
-4.68% kobo/apps/openrosa/libs/utils/logger_tools.py
24
40.0
-53.33% kpi/fields/jsonschema_form_field.py
24
54.84
-38.71% kpi/utils/kobo_to_xlsform.py
23
30.77
-29.49% kpi/deployment_backends/kc_access/utils.py
23
51.06
-48.94% kpi/views/v2/authorized_application_user.py
22
44.0
-44.0% kobo/apps/data_collectors/authentication.py
22
79.66
-18.64% kobo/apps/openrosa/apps/api/viewsets/xform_submission_api.py
22
31.58
-38.6% kpi/utils/mailer.py
21
65.45
-9.55% kpi/permissions.py
21
42.79
-9.77% kpi/renderers.py
21
54.55
-38.18% kpi/signals.py
21
23.08
-53.85% kpi/utils/asset_translation_utils.py
21
40.58
-30.43% kpi/utils/data_exports.py
21
26.47
-61.76% kpi/utils/export_cleanup.py
21
66.83
-10.24% kpi/utils/mongo_helper.py
20
52.38
-31.75% hub/models/extra_user_detail.py
20
0.0
-68.97% kobo/apps/audit_log/tasks.py
19
0.0
-65.52% kobo/apps/stripe/admin.py
18
35.56
-40.0% kpi/fields/file.py
18
37.84
-48.65% kpi/serializers/v2/create_user.py
18
37.93
-62.07% kpi/views/token.py
17
46.99
-10.24% kobo/apps/organizations/views.py
17
17.86
-60.71% kpi/utils/submission.py
16
60.0
-11.43% kobo/apps/audit_log/signals.py
16
31.82
-36.36% kobo/apps/stripe/utils/limit_enforcement.py
15
79.31
-17.24% kpi/utils/asset_content_analyzer.py
14
54.55
-8.48% kobo/apps/organizations/models.py
13
37.14
-18.57% hub/utils/i18n.py
13
26.09
-56.52% kpi/fields/relative_prefix_hyperlinked_related.py
13
47.13
-14.94% kpi/tasks.py
12
50.0
-50.0% hub/admin/sitewide_message.py
12
42.11
-31.58% kobo/apps/data_collectors/signals.py
12
43.06
-16.67% kobo/apps/project_ownership/serializers/invite.py
12
35.0
-60.0% kobo/apps/stripe/utils/import_management.py
12
22.73
-54.55% kpi/utils/bugfix.py
11
0.0
-44.0% kobo/apps/stripe/signals.py
11
69.44
-30.56% kpi/models/asset_user_partial_permission.py
11
23.31
-3.09% kpi/serializers/v2/asset_permission_assignment.py
11
55.56
-40.74% kpi/utils/xlsform_preprocessors/base_handlers.py
10
60.71
-35.71% kobo/apps/audit_log/utils.py
10
40.0
-40.0% kobo/apps/openrosa/apps/api/utils/xml.py
10
66.2
-14.08% kobo/apps/project_ownership/models/invite.py
10
14.8
-5.1% kobo/apps/subsequences/utils/versioning.py
10
74.0
-20.0% kpi/models/asset_version.py
10
35.29
-58.82% kpi/utils/strings.py
10
38.1
-23.81% kpi/utils/urls.py
9
47.62
-21.43% kobo/apps/markdownx_uploader/models.py
9
0.0
-29.03% kobo/apps/stripe/utils/manual_subscription.py
9
35.29
-52.94% kpi/serializers/v1/authorized_application_user.py
9
0.0
-90.0% kpi/utils/fuzzy_int.py
8
0.0
-100.0% kobo/apps/stripe/urls.py
7
67.74
-22.58% kobo/apps/data_collectors/models.py
7
50.0
-18.42% kobo/apps/organizations/utils.py
7
61.76
-20.59% kobo/apps/storage_backends/base.py
7
0.0
-100.0% kobo/apps/stripe/apps.py
7
32.14
-25.0% kobo/apps/subsequences/utils/supplement_data.py
7
57.14
-33.33% kpi/fields/paginated_api.py
7
53.33
-46.67% kpi/maintenance_tasks.py
7
70.37
-25.93% kpi/models/extra_project_metadata_field.py
7
72.38
-6.67% kpi/utils/object_permission.py
7
71.43
-20.0% kpi/utils/project_views.py
6
89.02
-7.32% kobo/apps/openrosa/libs/serializers/xform_serializer.py
6
37.5
-37.5% kobo/apps/openrosa/libs/utils/string.py
6
62.5
-37.5% kobo/apps/organizations/signals.py
6
43.75
-37.5% kobo/apps/project_ownership/filters.py
6
72.09
-13.95% kobo/apps/project_ownership/serializers/transfer.py
6
0.0
-100.0% kobo/apps/project_views/tasks.py
6
0.0
-100.0% kobo/apps/stripe/exceptions.py
6
0.0
-37.5% kobo/apps/stripe/utils/view_utils.py
6
74.51
-11.76% kpi/context_processors.py
6
42.86
-42.86% kpi/mixins/asset.py
6
53.85
-46.15% kpi/utils/files.py
6
22.32
-5.36% kpi/utils/models.py
5
89.41
-5.88% kobo/apps/openrosa/libs/renderers/renderers.py
5
30.0
-7.14% kobo/apps/organizations/permissions.py
5
47.22
-13.89% kobo/apps/organizations/tasks.py
5
57.14
-23.81% kpi/fields/writable_json.py
5
75.0
-20.83% kpi/models/authorized_application.py
5
29.41
-14.71% kpi/utils/rename_xls_sheet.py
5
36.14
-6.02% kpi/utils/storage.py
4
53.85
-30.77% kobo/apps/accounts/templatetags/customize_email_content.py
4
77.5
-10.0% kobo/apps/kobo_auth/signals.py
4
62.11
-4.21% kobo/apps/openrosa/libs/utils/middleware.py
4
89.47
-7.02% kpi/deployment_backends/mixin.py
4
33.33
-66.67% kpi/utils/chunked_delete.py
4
80.0
-20.0% kpi/views/v1_api_gone.py
3
67.5
-7.5% kobo/apps/openrosa/apps/django_digest_backends/cache.py
3
31.43
-2.86% kobo/apps/organizations/admin/organization.py
3
89.19
-8.11% kobo/apps/project_views/models/project_view.py
3
76.47
-17.65% kpi/utils/pyxform_compatibility.py
3
61.54
-23.08% kpi/versioning.py
2
81.54
-1.03% kobo/apps/openrosa/apps/logger/models/instance.py
2
87.8
-4.88% kobo/apps/openrosa/libs/filters.py
2
91.3
-8.7% kobo/apps/project_ownership/views/invite.py
2
83.33
-6.67% kobo/urls.py
2
85.84
-1.77% kpi/exceptions.py
2
64.52
-6.45% kpi/mixins/standardize_searchable_field.py
2
82.61
-8.7% kpi/serializers/v2/asset_version.py
2
90.0
-10.0% kpi/utils/absolute_paths.py
2
44.62
-3.08% kpi/utils/hash.py
1
44.44
-5.56% kobo/apps/accounts/templatetags/get_provider_appname.py
1
92.52
-0.93% kobo/apps/openrosa/apps/api/viewsets/briefcase_api.py
1
86.11
-2.78% kobo/apps/openrosa/apps/logger/fields.py
1
87.11
-0.39% kobo/apps/openrosa/apps/logger/xform_instance_parser.py
1
92.31
-7.69% kobo/apps/user_reports/utils/migrations.py
1
67.95
-1.28% kpi/authentication.py
1
57.89
-2.63% kpi/db_routers.py
1
72.73
-4.55% kpi/urls/__init__.py
1
75.0
-6.25% kpi/utils/drf_exceptions.py
Jobs
ID Job ID Ran Files Coverage
1 29313991722.1 14 Jul 2026 07:20AM UTC 889
49.6
Source Files on build 29313991722
  • Tree
  • List 889
  • Changed 92
  • Source Changed 0
  • Coverage Changed 92
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Pull Request #7238
  • PR Base - main (#29108135139)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc