Engineering & roadmap

PB-043: Cancel a Fabric run from Monitor and the tray

A new name. The same foundation. KratosForge is the upcoming name for Fabric Desktop by KratosBI. These guides preserve the app’s current labels and paths.

State: Proposed. Not approved for implementation. Priority: P2. Owner when approved: Master product (unassigned; coordinate with Workload management, which owns the workload actions).

1. PR title and ID#

Cancel a running Fabric job from Monitor > Runs and the activity tray (PB-043)

2. Business problem#

People watch Fabric runs in Monitor > Runs and the tray. When a run is wrong or too expensive, they can't stop it there; capacity keeps burning until it finishes.

3. Current verified behavior#

  • cloud_service.py cancel_fabric_run calls fabric_api.py cancel_job.
  • It is reachable only as the cancel workload action in Monitor > Workloads (Preview), through workload_service.py workload_act; app/ui/workloads.js confirms before cancelling.
  • Monitor > Runs and the tray (app/ui/activity.js trackFabricJobs) show running Fabric jobs with no Cancel. No test calls cancel_fabric_run directly.

4. Desired behavior#

A Cancel button on running Fabric jobs started from this app, in Monitor > Runs and the tray, with a confirmation, after which the run shows Cancelled when Fabric reports it.

5. In scope and out of scope#

In scope: the two UI entry points, a test for cancel_fabric_run. Out of scope: jobs not started from this app; pipelines.

6. Architecture and files#

app/ui/app.js (Monitor runs), app/ui/activity.js, cloud_service.py, sidecar/tests/test_cloud.py.

7. Functional requirements#

  • Cancel only on rows in a running state with a job id.
  • The same confirmation text as the workload action.
  • Policy that turns Fabric runs off doesn't block cancelling.

8. Nonfunctional requirements#

Keyboard reachable and labelled (existing UI tests check icon buttons have names).

9. Dependencies#

None.

10. Security and compatibility#

Cancel acts only on jobs in the run log this app wrote; it never lists or cancels other users' jobs.

11. Acceptance criteria#

  • Test for cancel_fabric_run with a fake client.
  • UI test: running Fabric rows have a named Cancel button; finished rows don't.

12. Unit and integration tests#

As above.

13. Manual verification#

On a tenant: start Run in Fabric, cancel from the tray, confirm Fabric shows the job cancelled.

14. Documentation#

docs/user-guide.md Monitor section.

15. Rollback#

Revert the UI change.

16. Definition of Done#

Merged, tests green, FEAT-FAB-07 limitation removed after review.

Need a hand?

Find a fix in troubleshooting, or share a reproducible issue with the community.

Get support ↗Improve this guide on GitHub ↗

Search documentation

Start typing to search all 105 guides.

Search runs in your browser esc to close