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

RoundingWell / care-ops-frontend / c8db7f44-c7fd-4a3e-8b98-d394b6031a7d

21 May 2026 06:16PM UTC coverage: 80.537% (-19.4%) from 99.963%
c8db7f44-c7fd-4a3e-8b98-d394b6031a7d

Pull #1697

circleci

paulfalgout
fix(work): include program chain on action and flow fetches that honor it

Centralize ACTION_INCLUDE / FLOW_INCLUDE in the entity service and apply
them everywhere the backend actually reads the include parameter:

- /actions/{id} (fetchAction, fetchActionWithResponses, manage:add refetch)
- /flows/{id} (fetchFlow, manage:add refetch)
- /flows/{id}/relationships/actions (fetchActionsByFlow on the flow page)

The patient-relationship list endpoints
(/patients/{id}/relationships/actions, /patients/{id}/relationships/flows)
silently drop include today, so fetchActionsByPatient and
fetchFlowsByPatient keep their original data shape. Once the backend's
ListPatientActionsResponder / ListPatientFlowsResponder learn to honor
Includes::fromRequest, those call sites can pass ACTION_INCLUDE /
FLOW_INCLUDE the same way.
Pull Request #1697: fix(work): include program relationships on action and flow fetches

1394 of 1875 branches covered (74.35%)

Branch coverage included in aggregate %.

11 of 11 new or added lines in 5 files covered. (100.0%)

1071 existing lines in 100 files now uncovered.

5028 of 6099 relevant lines covered (82.44%)

139.21 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

41.67
/src/js/apps/programs/programs-all_app.js
1
import Radio from 'backbone.radio';
2

3
import App from 'js/base/app';
4

5
import ProgramSidebarApp from 'js/apps/programs/sidebar/program-sidebar_app';
6

7
import { ListView, LayoutView } from 'js/views/programs/programs-all_views';
8

9
export default App.extend({
10
  childApps: {
11
    programSidebar: ProgramSidebarApp,
12
  },
13
  viewTriggers: {
14
    'click:add': 'click:add',
15
  },
16
  onBeforeStart() {
17
    this.showView(new LayoutView());
9✔
18
    this.getRegion('list').startPreloader();
9✔
19
  },
20
  beforeStart() {
21
    return Radio.request('entities', 'fetch:programs:collection');
9✔
22
  },
23
  onStart(options, collection) {
24
    this.programs = collection;
8✔
25
    this.showChildView('list', new ListView({ collection }));
8✔
26
  },
27
  onClickAdd() {
UNCOV
28
    const programSidebar = this.getChildApp('programSidebar');
×
UNCOV
29
    const program = Radio.request('entities', 'programs:model', {});
×
UNCOV
30
    const sidebar = Radio.request('sidebar', 'start', programSidebar, { program });
×
31

UNCOV
32
    this.listenTo(sidebar, 'stop', () => {
×
UNCOV
33
      if (!program.isNew()) this.programs.add(program);
×
34
    });
35
  },
36
});
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