Skip to content

feat: swap 4949 workflow overhaul#1297

Open
jekabs-karklins wants to merge 115 commits intodevelopfrom
SWAP-4949-workflow-overhaul
Open

feat: swap 4949 workflow overhaul#1297
jekabs-karklins wants to merge 115 commits intodevelopfrom
SWAP-4949-workflow-overhaul

Conversation

@jekabs-karklins
Copy link
Contributor

@jekabs-karklins jekabs-karklins commented Jan 6, 2026

Description

This PR introduces new database structures to improve the workflow management system.

Motivation and Context

The current workflow management system has limitations and inefficiencies that are addressed by the introduction of new database structures. This change is required to enhance the system's performance and user experience.

Changes

  1. Addition of new tables "workflow_has_statuses" and "workflow_status_connections" to manage workflow statuses and their connections.
  2. Introduction of composite keys and constraints to enforce data integrity and consistency.
  3. Removal of the "workflow_status_changing_events" table and moving events to the codebase.
  4. Renaming of the existing "status_actions" table to "workflow_status_actions".
  5. Linking proposals to the new workflow graph by adding a new column "workflow_status_id" to the "proposals" table.
  6. Migration script to transition existing data to new structures.

How Has This Been Tested?

Fixes Jira Issue

https://jira.esss.lu.se/browse/SWAP-4949

Depends On

Tests included/Docs Updated?

  • I have added tests to cover my changes.
  • All relevant doc has been updated

jekabskarklins added 30 commits December 22, 2025 14:13
…ntroducing CreateWorkflowConnection mutation
…vents table and updating related references
…tatusConnectionId and refactor related properties
…authorization checks for proposal assignments
@jekabs-karklins jekabs-karklins changed the title feat: swap 4949 workflow overhaul [WIP] feat: swap 4949 workflow overhaul Feb 9, 2026
@jekabs-karklins jekabs-karklins marked this pull request as ready for review February 9, 2026 10:14
@jekabs-karklins jekabs-karklins requested a review from a team as a code owner February 9, 2026 10:14
@jekabs-karklins jekabs-karklins requested review from ACLay and removed request for a team February 9, 2026 10:14
@ACLay
Copy link
Contributor

ACLay commented Feb 11, 2026

What is this PR actually trying to do? The body mentions "limitations and inefficiencies" but it seems so vague I have no idea, and I don't have access to the linked ESS jira item. If this is for the "allowing a status to be on a workflow multiple times" thing mentioned at sprint planning, I thought that was going to go to a discussion thread so we could figure out what the approach to take should be?

And from a review standpoint, I don't see how I'm practically going to be able to review 10k lines of code changes.

@jekabs-karklins
Copy link
Contributor Author

What is this PR actually trying to do? The body mentions "limitations and inefficiencies" but it seems so vague I have no idea, and I don't have access to the linked ESS jira item. If this is for the "allowing a status to be on a workflow multiple times" thing mentioned at sprint planning, I thought that was going to go to a discussion thread so we could figure out what the approach to take should be?

And from a review standpoint, I don't see how I'm practically going to be able to review 10k lines of code changes.

Hi @ACLay ,

All valid points, and I have therefore not marked this as review:please just yet.

Side note: When started on this overhaul I did not realize that workflow touches so many things in the application, and this turned out the be the biggest PR I have made.
This PR is a bit of a special case and I was hoping we could set up the meeting as there are number of important things to talk about what this PR affects, as well get feedback from you guys on the topic.

Meanwhile I will try to improve the description of the PR to give high level overview.

Thanks for the proactive comment

jekabs-karklins and others added 22 commits February 13, 2026 14:26
…tInitialStatus' and 'getInitialWorkflowStatus' for consistency
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants