Altinn / Altinn/app-lib-dotnet

Moving between two tasks separated by gateway and sequenceflows with different flowtype might lead to unexpected behavior

Open
#61 0 comments 0 reactions 0 assignees View on GitHub
kind/bug
Dominant language
C#
Stars
8
Forks
27
Avg merge
1h 21m
Merged PRs (30d)
7

Description

### Description of the bug

This bug was discovered while refactoring the code for reading and navigating the process and is a hypothetical bug of sorts.
Given this process
```mermaid
stateDiagram
direction LR
state fork <>
[*] --> Data
Data --> fork
fork --> Confirmation: if ammount >= 100
fork --> [*]: if ammount < 100
Confirmation --> [*]
```

If the flow from Data to the exclusiveGateway has flowtype set this will always be chosen regardless og what flowtype the sequence flow out of the gateway has.

### Steps To Reproduce

Create an application with a process where flows on either side of a gateway has different flowtypes.

Write custom code for both flowtypes and run the application

### Additional Information

Not sure if this will be fixed as having state changing logic tied to sequenceflows in BPMN seems like a mistake. ServiceTasks would be a much better fit IMO

Creating the issue to keep track of the bug if discovered in the wild

Contributor guide

Open the contributing guide

Research direction

The issue names no files or tests; start with the described process and custom code for different flowtypes on either side of a gateway. Done is not fully specified: the report tracks possible behavior and questions whether sequence-flow state changes should be fixed or moved to ServiceTasks.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.