learningequality / learningequality/studio
Visibility and management of sync and publishing channel operations in UI
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 191
- Forks
- 307
- Avg merge
- 5d 6h
- Merged PRs (30d)
- 10
Description
Background
We recently introduced a new change event architecture in Studio. The architecture allowed us to process channel modifications and operations sequentially, and we incorporated channel syncing and publishing into the architecture. As a result, the following things came about:
- We were no longer required to block the user from making edits to a channel during a sync or publishing, through the use of modals. The modals were removed and status tracking of syncing and publishing was integrated into the header
- We no longer had a straightforward technical capability to cancel syncing and publishing operations, nor a place in the UI to surface that capability. The ability to stop those operations was removed.
| Before | After |
|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
No equivalent state |
Potential issues/questions
- Is it valuable to allow stopping these operations, even though the user isn't blocked from making further changes?
- When publishing completes, the header will show "Published X minutes ago", but there isn't such information for the sync operation.
Considerations
- We could likely allow the stopping of these operations with some backend work, if it's highly valuable to support it.
- Would some sort of task manager design tracking the history of these operations make sense?
- Would adding snackbars that appear on complete of at least the syncing operation satisfy the missing equivalent state?
References
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading issue 3710 and reviewing the before-and-after UI states linked here. The issue names no files or tests, so first determine whether cancellation, operation history, or completion feedback is in scope and locate the relevant Studio UI and backend entry points. Done requires an agreed behavior and implementation scope.
Written by the indexing model from the issue text.
Assessment
- Domain
- design, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100






