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

kobotoolbox / kpi / 26039046825
82%
master: 76%

Build:
Build:
LAST BUILD BRANCH: dev-1494-execution-and-polling-for-bulk-actions
DEFAULT BRANCH: master
Ran 18 May 2026 02:18PM UTC
Jobs 10
Files 913
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

18 May 2026 02:13PM UTC coverage: 81.716% (-0.01%) from 81.73%
26039046825

push

github

web-flow
feat(bulkProcessing): update google transcription and translation flow to accept `bulk_action_uid` DEV-1422 DEV-1499 (#7058)

### 💭 Notes
- `bulk_action_uid` is stored within the `action _data` payload rather
than as top-level version metadata
- `bulk_action_uid` is passed into `process_data()` instead of the NLP
service constructor to minimize changes to existing initialization flows
- Automatic transcription and automatic translation result schemas
inherit support for `bulk_action_uid` through `external_data_schema`, so
no separate result schema modification was required.
- Translation also needs the updated process_data(...,
bulk_action_uid=None) signature because run_external_process() is shared
by all automatic NLP actions.

### 👀 Preview steps
There are no ways to preview this except through unit tests and
validating in the django shell

1. â„šī¸ Start the django shell 
2. Create an `AutomaticGoogleTranscriptionAction`
3. Confirm the incoming action payload accepts `bulk_action_uid`:
```
action.validate_data({
    'language': 'en',
    'bulk_action_uid': 'bulk-action-uid',
})
```
4. 🔴 [on main] this should raise a jsonschema.exceptions.ValidationError
5. đŸŸĸ [on PR] this should run without a validation error
6. Confirm the automatic/result payload accepts `bulk_action_uid`:
```
action.validate_external_data({
    'language': 'en',
    'status': 'complete',
    'value': 'Hello world',
    'bulk_action_uid': 'bulk-action-uid',
})
```
7. Confirm the automatic transcription flow passes `bulk_action_uid` to
the NLP service:
```
mock_service = MagicMock()
mock_service.process_data.return_value = {
    'status': 'complete',
    'value': 'Hello world',
}

with patch(
    'kobo.apps.subsequences.actions.automatic_google_transcription.GoogleTranscriptionService',
    return_value=mock_service,
):
    result = action.run_external_process(
        EMPTY_SUBMISSION,
        {},
        {
            'language': 'en',
            'bulk_action_uid': 'bulk-action-ui... (continued)

9155 of 12374 branches covered (73.99%)

3 of 5 new or added lines in 4 files covered. (60.0%)

1 existing line in 1 file now uncovered.

30171 of 36922 relevant lines covered (81.72%)

5.74 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
40.33
-0.17% kobo/apps/subsequences/actions/base.py

Coverage Regressions

Lines Coverage ∆ File
1
42.5
0.0% kobo/apps/subsequences/integrations/google/base.py
Jobs
ID Job ID Ran Files Coverage
1 26039046825.1 18 May 2026 02:18PM UTC 909
53.79
2 26039046825.2 18 May 2026 02:18PM UTC 909
52.14
3 26039046825.3 18 May 2026 02:20PM UTC 911
55.01
4 26039046825.4 18 May 2026 02:20PM UTC 911
53.33
5 26039046825.5 18 May 2026 02:20PM UTC 909
52.44
6 26039046825.6 18 May 2026 02:21PM UTC 911
65.79
7 26039046825.7 18 May 2026 02:21PM UTC 909
59.66
8 26039046825.8 18 May 2026 02:23PM UTC 911
60.76
9 26039046825.9 18 May 2026 02:24PM UTC 911
53.74
10 26039046825.10 18 May 2026 02:25PM UTC 913
67.97
Source Files on build 26039046825
  • Tree
  • List 913
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 4db6727d on github
  • Prev Build on main (#26038604283)
  • Next Build on main (#26080797899)
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