Skip to content

Commit b2e51d1

Browse files
committed
update ADRs
1 parent 1099065 commit b2e51d1

File tree

4 files changed

+55
-11
lines changed

4 files changed

+55
-11
lines changed

docs/decisions/0001-use-atlassian-forge.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Atlassian Marketplace.
1010
## Decision Drivers
1111

1212
- Overall requirement to quickly tick the box that Flagsmith has a Jira integration and offer MVP functionality which
13-
can be iterated on later.
13+
can be iterated on later
1414

1515
## Considered Options
1616

@@ -37,4 +37,4 @@ capacity to scale to meet future requirements.
3737

3838
## Links
3939

40-
- https://developer.atlassian.com/developer-guide/cloud-development-options/
40+
- <https://developer.atlassian.com/developer-guide/cloud-development-options/>

docs/decisions/0002-use-current-forge-runtime.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Use Current Forge Runtime
22

3-
- Status: Accepted
3+
- Status: Superseded by [Use UI Kit 2](0004-use-ui-kit-2.md)
44

55
## Context and Problem Statement
66

@@ -10,7 +10,7 @@ calls, storage, authorisation, etc.
1010
## Decision Drivers
1111

1212
- Overall requirement to quickly tick the box that Flagsmith has a Jira integration and offer MVP functionality which
13-
can be iterated on later.
13+
can be iterated on later
1414

1515
## Considered Options
1616

@@ -38,4 +38,4 @@ reliable, development without ruling out a future change of runtime.
3838

3939
## Links
4040

41-
- https://developer.atlassian.com/platform/forge/runtime-reference/native-nodejs-runtime/
41+
- <https://developer.atlassian.com/platform/forge/runtime-reference/native-nodejs-runtime/>

docs/decisions/0003-use-ui-kit.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Use UI Kit
22

3-
- Status: Accepted
3+
- Status: Superseded by [Use UI Kit 2](0004-use-ui-kit-2.md)
44

55
## Context and Problem Statement
66

@@ -10,7 +10,7 @@ project settings, issue panel, menus, modals, etc).
1010
## Decision Drivers
1111

1212
- Overall requirement to quickly tick the box that Flagsmith has a Jira integration and offer MVP functionality which
13-
can be iterated on later.
13+
can be iterated on later
1414

1515
## Considered Options
1616

@@ -39,7 +39,7 @@ transition.
3939

4040
## Links
4141

42-
- https://developer.atlassian.com/platform/forge/ui-kit-components/
43-
- https://developer.atlassian.com/platform/forge/ui-kit-2/
44-
- https://developer.atlassian.com/platform/forge/custom-ui/iframe/
45-
- https://trello.com/b/z2GIJ3xD/forge-roadmap-for-developers
42+
- <https://developer.atlassian.com/platform/forge/ui-kit-components/>
43+
- <https://developer.atlassian.com/platform/forge/ui-kit-2/>
44+
- <https://developer.atlassian.com/platform/forge/custom-ui/iframe/>
45+
- <https://trello.com/b/z2GIJ3xD/forge-roadmap-for-developers>
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# Use UI Kit 2 (and Node 22 Runtime)
2+
3+
- Status: Accepted
4+
5+
## Context and Problem Statement
6+
7+
Need to choose a new JavaScript runtime that provides libraries for Jira and Flagsmith REST API
8+
calls, storage, authorisation, etc.
9+
10+
Need to choose a new JavaScript library for UI components (text, tables, inputs, buttons, etc) and Jira UI (app settings,
11+
project settings, issue panel, etc).
12+
13+
## Decision Drivers
14+
15+
- Forge Legacy Runtime reached end-of-life in Feb 2024
16+
- UI Kit 1 reached end-of-life in Feb 2024
17+
- Overall requirement for fastest route to maintain service
18+
19+
## Considered Options
20+
21+
- Forge Node Runtime 20 and 22 (generally available)
22+
- UI Kit 2 (updated library, generally available)
23+
- Custom UI (provide own UI components, use bridge to Jira components)
24+
25+
## Decision Outcome
26+
27+
Chosen option: "UI Kit 2", because it offers the least worst route to upgrading the existing UI. "Node 22 Runtime" because it is the current LTS, probably supported by Forge (documentation is contradictory but intention is there), and found to work in testing.
28+
29+
### Positive Consequences
30+
31+
- Reduced effort compared to Custom UI as UI Kit 2 provides pre-built UI components, similar to those currently used, styled to fit with Jira
32+
- Greater compatibility as UI Kit 2 is expected to work well with Jira styling features such as dark mode, while providing finer style control than UI Kit 1
33+
- UI Kit 2 uses real React (16) rather than React-like hooks, so can use more standard techniques
34+
35+
### Negative Consequences
36+
37+
- Some quite painful changes from UI Kit 1 in terms of component changes, React hook changes, and bridging between frontend and backend execution, but this is unavoidable
38+
39+
## Links
40+
41+
- <https://developer.atlassian.com/platform/forge/function-reference/nodejs-runtime/>
42+
- <https://developer.atlassian.com/platform/forge/ui-kit/components/>
43+
- <https://developer.atlassian.com/platform/forge/custom-ui/iframe/>
44+
- <https://ecosystem.atlassian.net/jira/polaris/projects/ROADMAP/ideas>

0 commit comments

Comments
 (0)