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

kobotoolbox / kpi / 21875655700
82%
master: 76%

Build:
Build:
LAST BUILD BRANCH: main
DEFAULT BRANCH: master
Ran 10 Feb 2026 06:08PM UTC
Jobs 2
Files 881
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

10 Feb 2026 05:34PM UTC coverage: 82.015% (+0.07%) from 81.95%
21875655700

push

github

web-flow
feat(qual): enable LLMs to answer QA questions  (#6707)

### 📣 Summary
This PR allows users to use an LLM to answer QA questions via the API.


### 📖 Description
Users can use the API to request LLM responses to QA questions, using
OpenAI as the primary LLM and defaulting to Claude if the request to
OpenAI fails. LLM requests can be limited by subscription tier.


### 💭 Notes
This PR includes:
1. Creating the prompt for the LLM (separated into its own file for
easier tweaking)
2. Sending the prompt to the LLM and parsing the response
3. Using Claude if the request to OpenAI fails
4. Saving the answers to the submission 
5. Project history logs
6. Ensuring LLM usage is tracked for billing purposes

This PR does not include:
1. Any frontend work
2. Verification of LLM responses
3. Any indication in exports or the data table that a response was LLM
generated
4. The most up to date documentation/schemas

Risks:
1. The new project history action shows up funny in the history table
(`x did action modify-automatic-qa-data`) and causes the page to toast
`TypeError`
2. LLM responses are not labeled as such in the data table, so could end
up in data sets without people realizing they are LLM-generated
3. Columns for qual questions may be filled without showing up in the
analysis tab if a user uses the new functionality

These are not major risks to functionality, and since there is no
ability to request LLM answers via the UI, there is a very low chance
users will even use the new feature at all.

All PRs that were merged into this branch were reviewed and tested
independently, so the risk of major issues slipping through is also
mitigated.

7386 of 11409 branches covered (64.74%)

158 of 179 new or added lines in 10 files covered. (88.27%)

28429 of 34663 relevant lines covered (82.02%)

1.62 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
93.69
-0.8% kobo/apps/subsequences/actions/qual.py
1
58.9
-0.25% kobo/apps/trackers/utils.py
1
76.34
-0.19% kobo/settings/base.py
5
96.0
18.81% kobo/apps/subsequences/actions/automatic_bedrock_qual.py
13
67.5
kobo/apps/subsequences/prompts.py
Jobs
ID Job ID Ran Files Coverage
1 21875655700.1 10 Feb 2026 06:08PM UTC 879
79.67
2 21875655700.2 10 Feb 2026 06:11PM UTC 881
81.98
Source Files on build 21875655700
  • Tree
  • List 881
  • Changed 9
  • Source Changed 0
  • Coverage Changed 9
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 934ab3f8 on github
  • Prev Build on main (#21869992480)
  • Next Build on main (#21879693416)
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