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

kobotoolbox / kpi / 27608652545
82%
master: 76%

Build:
Build:
LAST BUILD BRANCH: dev-2271-inactive-users-filter-timesout
DEFAULT BRANCH: master
Ran 16 Jun 2026 09:45AM UTC
Jobs 10
Files 883
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

16 Jun 2026 09:41AM UTC coverage: 81.585%. Remained the same
27608652545

push

github

web-flow
fix(editableForm): stale closure and cache mutability issues DEV-2260 (#7139)

### 📣 Summary

Fixed two bugs in Form Builder: event listeners weren't cleaning up on
unmount (memory leak), and the react-query cache was exposed to direct
mutation from Backbone code.

### 💭 Notes

Changes here:

**jsapp/js/editorMixins/EditableForm.tsx**
- Added `appRef` to hold the SurveyApp instance
- The cleanup function was closing over `app=undefined` from the initial
render, so all the `.off()` calls were no-ops on unmount
- The ref gives cleanup access to whatever app instance is actually
alive when it runs
- Deep clone the asset from react-query before storing it in state
- The old stores.allAssets code had an explicit warning comment about
this: "Form Builder code is already changing the content of the object"
- After the refactor, we were handing the cache reference straight to
Backbone, which meant any push/splice on `survey.availableFiles` would
corrupt the cache
  - Restored the clone that was there before
- Updated cleanup to read from the ref
- Store the app in both state and ref when creating it

Joke from AI: The cleanup function was like trying to turn off lights in
a room after the door's been closed - it couldn't see in anymore. The
ref is the window.

### 👀 Preview steps

The bugs are not really testable/reproducible. We are making the code
more robust (to avoid hard to debug bugs in future) based on analysis
from greptile and verifying its findings by looking at the code.

9034 of 12268 branches covered (73.64%)

29662 of 36357 relevant lines covered (81.59%)

5.56 hits per line

Jobs
ID Job ID Ran Files Coverage
1 27608652545.1 16 Jun 2026 09:45AM UTC 879
44.89
2 27608652545.2 16 Jun 2026 09:46AM UTC 879
53.54
3 27608652545.3 16 Jun 2026 09:46AM UTC 879
50.17
4 27608652545.4 16 Jun 2026 09:47AM UTC 881
46.29
5 27608652545.5 16 Jun 2026 09:47AM UTC 881
51.53
6 27608652545.6 16 Jun 2026 09:47AM UTC 881
54.84
7 27608652545.7 16 Jun 2026 09:48AM UTC 879
59.45
8 27608652545.8 16 Jun 2026 09:48AM UTC 881
66.51
9 27608652545.9 16 Jun 2026 09:50AM UTC 883
68.86
10 27608652545.10 16 Jun 2026 09:50AM UTC 881
60.63
Source Files on build 27608652545
  • Tree
  • List 883
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 5608a784 on github
  • Prev Build on main (#27608641316)
  • Next Build on main (#27623220260)
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