• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

kobotoolbox / kpi / 23601893988
82%
master: 76%

Build:
Build:
LAST BUILD BRANCH: dev-1961-subsequence-mngt-cmd-migration
DEFAULT BRANCH: master
Ran 26 Mar 2026 03:14PM UTC
Jobs 10
Files 887
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

26 Mar 2026 03:10PM UTC coverage: 81.742% (-0.03%) from 81.768%
23601893988

push

github

web-flow
fix(userReport): fix `mfa_is_active` not reflecting correct MFA status in user-reports DEV-1911 (#6861)

### 📣 Summary
Fixes an issue where the `/api/v2/user-reports` API was not correctly
reflecting MFA status for users who had MFA enabled.

### 📖 Description
Users who recently enabled MFA were still showing `mfa_is_active: false`
in the `/api/v2/user-reports` API response and within their underlying
`UserProfile` record.

7437 of 11551 branches covered (64.38%)

1 of 18 new or added lines in 2 files covered. (5.56%)

3251 existing lines in 160 files now uncovered.

28551 of 34928 relevant lines covered (81.74%)

5.81 hits per line

Uncovered Changes

Lines Coverage ∆ File
11
0.0
kobo/apps/long_running_migrations/jobs/0022_sync_mfa_profiles.py
6
57.69
-3.42% kobo/apps/accounts/mfa/models.py

Coverage Regressions

Lines Coverage ∆ File
188
0.0
-93.53% kobo/apps/mass_emails/tasks.py
150
40.73
-54.55% kobo/apps/organizations/serializers.py
126
22.09
-73.26% kobo/apps/subsequences/utils/versioning.py
125
39.47
-46.99% kpi/serializers/v2/asset_permission_assignment.py
91
46.79
-14.99% kpi/deployment_backends/openrosa_backend.py
89
40.81
-39.91% kobo/apps/subsequences/actions/base.py
84
17.43
-77.06% kobo/apps/subsequences/actions/qual.py
76
62.15
-26.39% kpi/views/v2/data.py
70
21.74
-76.09% kobo/apps/subsequences/actions/mixins.py
65
41.03
-41.67% kobo/apps/organizations/admin/organization_user.py
62
27.87
-50.82% kobo/apps/project_ownership/tasks.py
60
34.67
-40.0% kobo/apps/project_ownership/utils.py
60
26.85
-55.56% kpi/serializers/v2/paired_data.py
58
38.79
-50.0% kpi/views/environment.py
57
60.26
-37.75% kobo/apps/organizations/views.py
55
46.97
-41.67% kobo/apps/subsequences/models.py
55
31.62
-47.01% kpi/serializers/v2/export_task.py
52
59.72
-24.64% kpi/utils/xml.py
48
37.96
-44.44% kobo/apps/openrosa/apps/logger/utils/instance.py
44
56.92
-33.85% kobo/apps/trash_bin/utils/trash.py
42
0.0
-79.25% kobo/apps/user_reports/tasks.py
41
32.81
-64.06% kobo/apps/trash_bin/utils/account.py
40
36.11
-55.56% kobo/apps/long_running_migrations/models.py
40
55.49
-23.12% kpi/serializers/current_user.py
38
37.14
-54.29% kobo/apps/organizations/permissions.py
37
59.54
-28.24% kobo/apps/openrosa/apps/logger/signals.py
37
23.29
-50.68% kobo/apps/openrosa/libs/utils/image_tools.py
37
63.03
-22.42% kobo/apps/organizations/models.py
36
32.23
-29.75% kobo/apps/openrosa/apps/api/viewsets/data_viewset.py
35
77.61
-17.41% kobo/apps/project_ownership/models/transfer.py
33
46.96
-28.7% kobo/apps/openrosa/apps/api/viewsets/xform_submission_api.py
33
45.03
-6.19% kobo/apps/openrosa/libs/utils/logger_tools.py
33
42.25
-46.48% kobo/apps/organizations/admin/organization.py
33
70.66
-5.73% kpi/serializers/v2/asset.py
32
70.97
-7.94% kpi/deployment_backends/base_backend.py
31
26.42
-58.49% kobo/apps/trash_bin/utils/project.py
26
63.16
-27.37% kpi/views/v2/asset_permission_assignment.py
25
41.86
-58.14% kobo/apps/subsequences/serializers.py
25
31.11
-55.56% kpi/serializers/v2/data.py
25
74.76
-24.27% kpi/utils/usage_calculator.py
25
70.54
-7.08% kpi/views/v2/asset.py
24
59.72
-33.33% kobo/apps/project_ownership/serializers/invite.py
23
62.82
-29.49% kpi/authentication.py
22
33.96
-13.84% kobo/apps/openrosa/apps/api/permissions.py
22
28.17
-30.99% kobo/apps/trackers/utils.py
21
0.0
-100.0% kobo/apps/long_running_migrations/tasks.py
20
32.56
-23.26% kobo/apps/mass_emails/user_queries.py
20
16.22
-54.05% kobo/apps/openrosa/apps/logger/utils/database_query.py
20
57.45
-21.28% kobo/apps/openrosa/libs/utils/middleware.py
20
42.11
-35.09% kobo/apps/subsequences/actions/automatic_bedrock_qual.py
20
71.43
-23.81% kpi/serializers/v2/service_usage.py
19
26.0
-38.0% kobo/apps/service_health/views.py
19
47.73
-43.18% kobo/apps/trash_bin/models/attachment.py
19
38.24
-55.88% kpi/parsers.py
18
66.4
-14.4% kpi/models/paired_data.py
17
42.5
-42.5% kpi/views/__init__.py
16
0.0
-100.0% kobo/apps/service_health/test_service_health.py
16
31.0
-16.0% kobo/apps/subsequences/integrations/google/google_translate.py
16
39.42
-15.38% kpi/views/v2/paired_data.py
15
48.48
-45.45% kobo/apps/mass_emails/admin.py
15
59.8
-14.71% kobo/apps/mass_emails/models.py
15
40.48
-35.71% kpi/serializers/v2/deployment.py
14
0.0
-100.0% kobo/apps/long_running_migrations/jobs/0017_remove_organizations_of_deleted_users.py
14
45.95
-37.84% kobo/apps/user_reports/seralizers.py
13
33.62
-11.21% kobo/apps/openrosa/libs/filters.py
13
61.11
-36.11% kobo/apps/organizations/tasks.py
13
58.51
-13.83% kobo/apps/stripe/utils/billing_dates.py
13
51.28
-33.33% kobo/apps/trash_bin/tasks/__init__.py
12
48.0
-48.0% kobo/apps/openrosa/apps/logger/utils/attachment.py
12
70.0
-30.0% kobo/apps/openrosa/libs/serializers/user_profile_serializer.py
12
60.61
-18.18% kpi/paginators.py
12
66.04
-22.64% kpi/views/v2/export_task.py
12
51.06
-25.53% kpi/views/v2/import_task.py
11
0.0
-27.5% kobo/apps/openrosa/apps/django_digest_backends/cache.py
11
70.18
-19.3% kpi/utils/mailer.py
11
30.12
-13.25% kpi/utils/storage.py
11
55.56
-8.15% kpi/views/v2/asset_snapshot.py
10
44.9
-20.41% kobo/apps/openrosa/apps/logger/utils/counters.py
10
68.42
-26.32% kobo/apps/organizations/utils.py
10
80.28
-14.08% kobo/apps/project_ownership/models/invite.py
10
44.0
-40.0% kobo/apps/stripe/signals.py
10
75.0
-25.0% kobo/apps/subsequences/views.py
9
16.0
-36.0% kobo/apps/openrosa/apps/api/utils/xml.py
9
57.87
-3.54% kobo/apps/openrosa/apps/viewer/models/parsed_instance.py
9
42.5
-11.25% kobo/apps/subsequences/integrations/google/base.py
9
79.21
-4.46% kpi/filters.py
9
87.79
-4.23% kpi/permissions.py
9
75.12
-4.39% kpi/utils/mongo_helper.py
8
55.46
-6.72% kobo/apps/openrosa/apps/logger/models/attachment.py
8
0.0
-100.0% kobo/apps/service_health/test_service_health_minimal.py
8
77.78
-8.08% kpi/password_validation.py
7
41.94
-22.58% kobo/apps/openrosa/libs/authentication.py
7
50.0
-31.82% kobo/apps/trash_bin/mixins/admin.py
7
53.33
-46.67% kobo/apps/trash_bin/utils/attachment.py
7
87.14
-10.0% kpi/utils/cache.py
6
66.67
-28.57% kobo/apps/openrosa/apps/api/viewsets/connect_viewset.py
6
68.42
-31.58% kobo/apps/subsequences/schemas.py
6
75.0
-21.43% kobo/apps/subsequences/utils/supplement_data.py
6
58.46
-4.62% kobo/apps/trash_bin/admin.py
6
62.96
-22.22% kobo/apps/trash_bin/models/account.py
6
0.0
-100.0% kobo/conftest.py
6
64.29
-14.29% kpi/utils/urls.py
6
75.86
-20.69% kpi/views/v2/tag.py
5
37.5
-62.5% kobo/apps/markdownx_uploader/tasks.py
5
72.22
-27.78% kobo/apps/openrosa/apps/logger/models/daily_xform_submission_counter.py
5
75.0
-25.0% kobo/apps/openrosa/apps/logger/models/monthly_xform_submission_counter.py
5
50.0
-50.0% kobo/apps/openrosa/libs/mixins/openrosa_headers_mixin.py
5
76.47
-4.2% kobo/apps/stripe/utils/subscription_limits.py
5
65.22
-21.74% kobo/apps/trash_bin/tasks/project.py
5
82.35
-14.71% kobo/apps/user_reports/views.py
4
69.57
-17.39% kobo/apps/openrosa/libs/permissions.py
4
55.29
-4.71% kobo/apps/openrosa/libs/renderers/renderers.py
4
30.14
-2.74% kobo/apps/openrosa/libs/utils/viewer_tools.py
4
72.22
-22.22% kobo/apps/subsequences/actions/automatic_google_transcription.py
4
72.22
-22.22% kobo/apps/subsequences/actions/automatic_google_translation.py
4
83.33
-16.67% kobo/apps/trackers/models.py
4
68.18
-18.18% kobo/apps/trash_bin/tasks/account.py
4
37.5
-5.0% kobo/apps/trash_bin/tasks/attachment.py
4
80.95
-19.05% kobo/apps/trash_bin/utils/signals.py
4
20.0
-80.0% kpi/utils/placeholders.py
3
41.27
-4.76% kobo/apps/openrosa/libs/serializers/data_serializer.py
3
42.86
-4.29% kobo/apps/project_ownership/admin.py
3
85.71
-8.57% kobo/apps/project_views/models/assignment.py
3
75.0
-25.0% kobo/apps/superuser_stats/admin.py
3
86.27
-5.88% kpi/context_processors.py
3
85.12
-2.48% kpi/exceptions.py
3
95.1
-2.94% kpi/models/asset_file.py
3
78.57
-10.71% kpi/utils/submission.py
3
30.67
-4.0% kpi/utils/two_database_configuration_checker.py
2
57.69
-3.42% kobo/apps/accounts/mfa/models.py
2
81.18
-0.78% kobo/apps/openrosa/apps/logger/xform_instance_parser.py
2
50.0
-25.0% kobo/apps/openrosa/libs/mixins/anonymous_user_public_forms_mixin.py
2
61.54
-15.38% kobo/apps/openrosa/libs/utils/gravatar.py
2
58.06
-6.45% kobo/apps/organizations/admin/organization_owner.py
2
42.86
-28.57% kobo/apps/subsequences/utils/time.py
2
82.14
-7.14% kobo/urls.py
2
60.26
-2.56% kpi/deployment_backends/kc_access/utils.py
2
80.0
-20.0% kpi/mixins/mfa.py
2
92.35
-0.36% kpi/models/asset.py
2
92.73
-3.64% kpi/signals.py
2
75.0
-12.5% kpi/utils/drf_exceptions.py
2
75.0
-16.67% kpi/views/v2/open_rosa.py
2
88.24
-11.76% kpi/views/v2/service_usage.py
1
85.71
-2.04% kobo/apps/openrosa/apps/logger/exceptions.py
1
75.39
-0.52% kobo/apps/openrosa/apps/logger/models/xform.py
1
63.33
-1.67% kobo/apps/openrosa/apps/main/models/user_profile.py
1
84.27
-1.12% kobo/apps/reports/report_data.py
1
87.5
-12.5% kobo/apps/service_health/middleware.py
1
64.71
-5.88% kpi/admin.py
1
93.02
-2.33% kpi/backends.py
1
96.67
-3.33% kpi/fields/kpi_uid.py
1
82.61
-4.35% kpi/fields/relative_prefix_hyperlinked_related.py
1
94.32
-0.28% kpi/mixins/object_permission.py
1
50.7
-0.47% kpi/renderers.py
1
62.5
-12.5% kpi/utils/datetime.py
1
93.94
-1.01% kpi/utils/django_orm_helper.py
1
78.57
-0.89% kpi/utils/models.py
1
86.67
-0.95% kpi/utils/object_permission.py
1
92.31
-7.69% kpi/versioning.py
1
90.0
-2.5% kpi/views/v1/import_task.py
Jobs
ID Job ID Ran Files Coverage
1 23601893988.1 26 Mar 2026 03:14PM UTC 883
53.23
2 23601893988.2 26 Mar 2026 03:15PM UTC 883
54.71
3 23601893988.3 26 Mar 2026 03:15PM UTC 885
54.49
4 23601893988.4 26 Mar 2026 03:16PM UTC 885
56.0
5 23601893988.5 26 Mar 2026 03:16PM UTC 885
65.38
6 23601893988.6 26 Mar 2026 03:17PM UTC 883
60.47
7 23601893988.7 26 Mar 2026 03:18PM UTC 885
54.95
8 23601893988.8 26 Mar 2026 03:18PM UTC 885
61.64
9 23601893988.9 26 Mar 2026 03:18PM UTC 887
67.69
10 23601893988.10 26 Mar 2026 03:53PM UTC 883
53.56
Source Files on build 23601893988
  • Tree
  • List 887
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 7dd2e50f on github
  • Prev Build on release/2.026.07 (#23500811961)
  • Next Build on release/2.026.07 (#23601954998)
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