Technical Debt List #1410
Replies: 4 comments 4 replies
-
|
@MosCD3 @fc-santos @timbl-ont @jcdrouin21 @thiagoromanos FYI. Feel free to add to or comment on this list |
Beta Was this translation helpful? Give feedback.
-
|
Thanks @bryce-mcmath. I think the list captures much of what we are tracking and have raised in Bifold meetings. A couple of notes:
|
Beta Was this translation helpful? Give feedback.
-
|
@bryce-mcmath not sure if this would be part of the technical debt list, but one problem with the wallet currently is if the user changes phone, they have to go through the whole process again to obtain the credentials from the issuers they had before. |
Beta Was this translation helpful? Give feedback.
-
|
Here is another technical debt: maybe remove any components or views that are not being used anywhere anymore. Here are a few examples:
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
This is an ongoing list of noted technical debt. If you are a Bifold maintainer, feel free to add to this list, if you are not you should still be able to add a comment with your suggestion and one of the maintainers will add it on your behalf.
Refactor✅mainStackinto it's own filePR: #1426
this is a simple one, it is currently unlike all the other stacks and is tightly coupled with its parentRootStackcomponentcurrent approach is at risk of causing re-rendering issuesMerge✅NewQRView.tsxwithQRScanner.tsxPR: #1440
NewQRView.tsxis essentially the scan screen that is gated behind the developer setting, "Use connection inviter capability"Maintaining both views separately requires a bit of doubled effort and they are similar enough that they cause SonarCloud duplication failures.Should be merged and handle the different behaviour as one componentUpgrade React Native version✅PR: #1439
We would like to update to the latest RN versionThe architecture changed so this may be some effort0.73.5 might be a good starting point, lots of improvements + native debuggingFolder structure✅PR: #1487
replace legacy with just coremove app to samples folderrename App to srcState load, onboarding, and initialization logic✅PR: #1464
organize into a customizable sequence of steps, preferably an array, with each entry having a fairly uniform structure including metadata of whether a given step is completedprefer migrations rather than extra checks eg. rather than handle store values being more than one type, migrate existing users to the latest type that is expected as part of the loadState call / storage service fetchsimplify the many effect dependencies and messy functions that determine where to pick up if the user has not finished onboarding (this is mostly a problem in the splash screen)Releases✅PR: #1502
Move to@bifoldnamespaceAdd the ability to publish major, minor, and patch stable releases (currently we only publish alpha releases)Refactor✅useInitializeAgentand use of@credo-ts/react-hookslib so we can remove patchPR: #1512
addwalletSecretas a parameterremove all thewalletSecretdependencies and early returnsplace theAgentProviderat a lower level in the component tree around only the components / stacks that are past authRemove unused / dead components✅PR: #1512
ModularView (components/views/ModularView.tsx)Label (components/texts/Label.tsx)Title (components/texts/Title.tsx)NotificationModal (components/modals/NotificationModal.tsx)Proof request logic
Implement path aliasing for imports
import ThingA from '../../../../../components/misc/ThingA'in favour ofimport ThingA from '@components/misc/ThingA'Componentize and rename
QRScanner.tsxScanScreenContent.tsxor something along those linesSimplify OCA logic
useBrandinghook and maker wider use of itocapackageNavigation structure / componentization
Screensenum should only be for one screen, none used more than once in different stacks. eg.Screens.EnterPINbeing used in two separate stacks for both wallet unlock and biometrics change confirmation would becomeScreens.EnterPINfor the former andScreens.VerifyPINfor the latter, with only components in commonExpo Support
Credential card component should be generalized
Beta Was this translation helpful? Give feedback.
All reactions