Extra work and potential future problems resulting from choosing an easy or limited solution now instead of using a better approach that might take longer or be more costly. Similar to financial debt, technical debt incurs "interest" that can make future changes more difficult and costly if not managed or "paid off."
Issue | Description | Priority | Impact | Estimated Effort | Notes |
---|
Migration outside of Loopback V3
Medium
Epic
Task | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Feature flag internal tool | Ability to see feature flags that are on for a tenant from the Play interface | Medium | Low | Low |
| |||||||||
Use SonarQube / SonarCloud | Sonar will generate reports of vulnerabilities | Medium | Low | Low | https://docs.sonarsource.com/sonarcloud/getting-started/github/ | |||||||||
Global - Project structure | Project need to create a simple structure. Like simplify some API | Very High | Possible regression | Very High | When this work will be done, the project will be more simple | |||||||||
Move business logic out of API into libraries | This includes potentially simplifying code | |||||||||||||
API - Unit tests | Two things - We need to simplify code and create unit tests on business code | High | Possible regression | Very high | ||||||||||
Global - Add jsdoc and comment | High | No impact | Very High | |||||||||||
Remove legacy “drafts” code | Remove anything related to the legacy drafts (Draft model) | Medium |
Possible regression | ~8 points | ||||||
Lint - semi colon required | Add rule on linter configuration and add semi when is missing | Low | No impact | Easy | This issue can create some execution error like
This code provide an error |
Upgrade React- |
Create file for express routes. Currently, routes are on multiple files and create complex comprehension of routes
Medium
Possible regression
High
Need reverse engineering to get routes
API - Separate handler
When routes will be create with express routes, we need to separate handler to simplify code and review
Medium
Possible regression
High
Admin | Move out of version 3.19 to 5 | Medium | High | Medium | ||
Admin - Remove deprecated props on react | Some props are deprecated and will be deleted on future versions | Medium | Medium | Medium | ||
Remove browser log | When you show debugger on your browser, lot of error log spawn | Medium | High | High | ||
Check validity email | We need to check validity of email when user log in on Play | Very high | Very low | Low | ||
|
|
|
|
|
|
API - Unit tests
Two things - We need to simplify code and create unit tests on business code
High
File with certificate key | This file should be delete and not push on repository. We can ignore this file on gitignore and generate new pem file if isn’t here | Very high | Low | Low | ||
Increase versions | Update node version, and libraries version to increase security | Very High | Big impact, need to retest all project | Very high | ||
Global - using ecmascript version | Unify javascript code for using module | High | Possible low regression, but if the code run, we have no impact | High |
Global - Add jsdoc and comment
High
No impact
Very High
Admin - add context on react | We need to add react context to pass object through components | High | Very high | High | Need to restructure the code | |
Migration outside of Loopback V3 | Medium | Possible regression | Epic | Authorization might be one of the biggest challenge during the migration. | ||
API - Routes | Create file for express routes. Currently, routes are on multiple files and create complex comprehension of routes | Medium | Possible regression | High | Need reverse engineering to get routes | |
API - Separate handler | When routes will be create with express routes, we need to separate handler to simplify code and review | Medium | Possible regression | High | Same as routes. We can do this work by route. Once at a time | |
Global - babel and jest | Remove jest and babel from global workspace. Place it on each project | Medium | Low | Medium |
Global - Project structure
Project need to create a simple structure. Like simplify some API
Very High
Possible regression
Very High
TODO | Remove TODO and do TODO | Medium | Medium | High | ||
Replace webpack by vite | Vite build fast and the bundle generated is light | Medium | Low | Medium | ||
Export scoresheet, reports on another repository | Each project should have own project. This task will simplify maintenance | Low | Low | High |
Increase versions
Update node version, and libraries version to increase security
Very High
Big impact, need to retest all project
Python script to node script | Transform and export on another project python scripts on scripts/release_production.py by node script | Low | Low | Low | AWS lambda ? | |
False imports | Some imports couldn |
't be importable. This issue should be done after restructuring | Very low | Depends of structure | Depends of structure | Ex :
|
File with certificate key
This file should be delete and not push on repository. We can ignore this file on gitignore and generate new pem file if isn’t here
Very high
Low
Low
TODO
Remove TODO and do TODO
Medium
Medium
High
Replace webpack by vite
Vite build fast and the bundle generated is light
Medium
Low
Replace MUI | Replace MUI and create our own ui kit | Very low | High | High |
Check validity email
We need to check validity of email when user log in on Play
Very high
Very low
Low
Admin - add context on react
Admin - Remove deprecated props on react
Some props are deprecated and will be delete
Medium
Medium
Medium
Remove browser log
Split modules in React | try to split modules on react project to create multiple sub bundles and minimize size. Using lazy routes | Medium | Very High | Very High | Objective : limit bundle size | |
Charge test | Charge test and limit test of endpoints on api | High | High | High | Need restructure | |
Change angular to React | Merge bundle angular and react to react only | High | High | Very high |
High
Need to restructure the code
Objective : limit bundle size | ||||||
Rendering component | Lot of components rendering without display changing. We need to limit rendering components | Medium | High | High | ||
Do magic things | Limit code in react is essential to limit bundle size. So we can do magic who do everything. And refactor as maximum possible. With lot of doc | Medium | High | High |
Use SonarQube / SonarCloud
Objective : limit bundle size | |||
Fix UI/UX | We should fix some ui components like header. ex : When scrollbar is present, the header resize them. He should be fixed and not influence by the scrollbar | Medium | Low |
Medium |