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

kobotoolbox / kpi / 36748844994
83%
master: 76%

Build:
Build:
LAST BUILD BRANCH: dev-3004-allow-managed-domains-on-sso-signup
DEFAULT BRANCH: master
Ran 30 Sep 2026 05:09PM UTC
Jobs 10
Files 920
Run time 4min
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

30 Sep 2026 05:04PM UTC coverage: 83.075% (+0.02%) from 83.06%
36748844994

push

github

web-flow
feat(qual): enable AI answer feature for text questions DEV-2939 (#7643)

### đŸ“Ŗ Summary

The "Generate with AI" button is now available in the Analysis tab for
text questions.

### 💭 Notes

Automatic qualitative analysis can already run on text questions,
reading the typed answer directly instead of a transcript. However, the
"Generate with AI" button in the Analysis tab was still only shown once
a transcript existed, so it never appeared for text questions. It now
appears for text questions right away, while audio and video questions
still need a transcript first.

- The visibility check is extracted to `hasAnalysisSource` in
`processing/common/utils.ts`, mirroring the back end's
`RequiresTranscriptionMixin.attach_action_dependency`: text questions
are analyzed from the submission, everything else needs a transcript. It
resolves the question type itself, keeping `AnalysisQuestionListItem`
free of extra imports.
- `ResponseForm`'s `hasTranscript` prop is renamed to
`hasAnalysisSource`, since a transcript is no longer the only possible
source.
- Unit tests added for `hasAnalysisSource`.
- Text questions only reach the Analysis tab while the
`nlpTextActionsEnabled` feature flag is on.

### 👀 Preview steps

1. â„šī¸ have an account and a project with a text question and at least
one submission
2. enable the `nlpTextActionsEnabled` feature flag
3. open the text question's answer in processing and go to the Analysis
tab
4. add an analysis question (e.g. Text, Number, or Single choice)
5. 🔴 [on main] notice that there is no "Generate with AI" button
6. đŸŸĸ [on PR] notice that the "Generate with AI" button is shown
7. click it
8. đŸŸĸ notice that an AI-generated answer based on the typed response
appears
9. open a submission where the text question has an empty answer, in the
Analysis tab
10. đŸŸĸ notice that the "Generate with AI" button is hidden

10449 of 13813 branches covered (75.65%)

33352 of 40147 relevant lines covered (83.07%)

5.5 hits per line

Coverage Regressions

Lines Coverage ∆ File
26
81.58
-9.47% kobo/apps/openrosa/apps/api/viewsets/xform_list_api.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
12
86.85
-1.49% kobo/apps/openrosa/libs/utils/logger_tools.py
10
40.0
-40.0% kobo/apps/openrosa/apps/api/utils/xml.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
5
89.41
-5.88% kobo/apps/openrosa/libs/renderers/renderers.py
4
82.02
26.52% kobo/apps/audit_log/models.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
70.83
-1.67% kobo/apps/openrosa/libs/utils/middleware.py
1
92.52
-0.93% kobo/apps/openrosa/apps/api/viewsets/briefcase_api.py
1
88.85
0.0% kobo/apps/openrosa/apps/logger/xform_instance_parser.py
Jobs
ID Job ID Ran Files Coverage
1 36748844994.1 30 Sep 2026 05:09PM UTC 915
52.67
2 36748844994.2 30 Sep 2026 05:10PM UTC 915
58.47
3 36748844994.3 30 Sep 2026 05:10PM UTC 915
49.63
4 36748844994.4 30 Sep 2026 05:11PM UTC 917
53.91
5 36748844994.5 30 Sep 2026 05:12PM UTC 917
59.55
6 36748844994.6 30 Sep 2026 05:17PM UTC 917
50.88
7 36748844994.7 30 Sep 2026 05:23PM UTC 918
67.97
8 36748844994.8 30 Sep 2026 05:31PM UTC 920
70.32
9 36748844994.9 30 Sep 2026 05:32PM UTC 917
44.86
10 36748844994.10 30 Sep 2026 05:35PM UTC 915
43.58
Source Files on build 36748844994
  • Tree
  • List 920
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 66b1df21 on github
  • Prev Build on main (#36737726384)
  • Next Build on main (#36751137891)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc