Flagsmith / Flagsmith/flagsmith

Reducer side effects trigger Redux errors #3 and #9 on the features page

Open
#8,226 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
6.6k
Forks
567
Avg merge
1d 13h
Merged PRs (30d)
121

Description

**Sentry:** [FLAGSMITH-FRONTEND-58P](https://flagsmith.sentry.io/issues/7649064048/) (also
[58Q](https://flagsmith.sentry.io/issues/7649064084/) and
[58R](https://flagsmith.sentry.io/issues/7649064106/) — same root cause)

Three Sentry issues, one underlying bug: **a reducer performing side effects.**

| Sentry | Redux code | Meaning |
|---|---|---|
| 58P | #3 | "You may not call `store.getState()` while the reducer is executing." |
| 58Q | #3 | same |
| 58R | #9 | "Reducers may not dispatch actions." |

### Impact
1 event each, 1 user. All three fired 2026-08-03T07:23Z — same session, same
release `1785435093938`, Firefox 152, production.
URL: https://app.flagsmith.com/project/12461/environment/DVMZZNZ6SVofMfkffi8rn5/features

### Why grouped
Calling `getState()` inside a reducer (#3) and dispatching from inside a reducer
(#9) are the same class of defect: a reducer that isn't a pure function of
`(state, action)`. All three landed in the same minute on the same page, so
they're near-certainly one code path.

### Note on stack traces
There are **no in-app frames** — all frames sit inside
`./node_modules/redux/dist/redux.mjs`, because Redux throws from its own
internals once the invariant is broken. Reproducing on the features page with a
non-minified dev build will name the offending reducer (the dev build gives the
full message instead of a minified error code).

### Caveat
Only 58P carries the Sentry↔GitHub link for this issue. 58Q and 58R are
triaged but not individually linked; consider `sentry issue merge` if you want
them consolidated in Sentry.

---
[Slack alert](https://flagsmith.slack.com/archives/C05GSDTULDB/p1785741851554429) · filed by the `sentry-triage` skill

Contributor guide

Open the contributing guide

Research direction

Reproduce the issue on the features page using a non-minified development build; Redux reports the failures from node_modules/redux/dist/redux.mjs but the offending application reducer is not named. Trace the full development stack to identify the reducer and verify that the page no longer produces Redux errors #3 or #9.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, redux
Domain
frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.