Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IOS-8229 [Staking] Skip updating staking manager after approve #4045

Merged
merged 6 commits into from
Oct 15, 2024

Conversation

fedorov-d
Copy link
Contributor

Пока не финальное решение, скорее на обсудить. Проблема в следующем: вызов updateAfterSendingTransaction после исполнения транзакции на approve по длинной цепочке приводит к вызову CommonStakingManager -> updateState() в результате этого стейкинг менеджер оказывается в состоянии loading. В этот же момент после завершения approve вызывается updateState уже внутри StakingModel что приводит к вызову CommonStakingManager -> estimateFee(action:) в котором происходит падение в дефолтный ошибочный кейс из-за состояния loading в менеджере. Пока закрыл костылем, вроде работает, но решение сомнительное как по мне.

Podfile.lock Outdated Show resolved Hide resolved
Balashov152
Balashov152 previously approved these changes Oct 14, 2024
Copy link
Collaborator

@tureck1y tureck1y left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Либо давайте сделаем отдельный менеджер, либо обсудим

@tureck1y
Copy link
Collaborator

может это получится на уровне моделей стейкинг/анстейкинг/сенд разруливать?

@fedorov-d
Copy link
Contributor Author

может это получится на уровне моделей стейкинг/анстейкинг/сенд разруливать?

там тоже не очень удобно, помимо моделей этот код еще вызывается в ExpressInteractor-е и WalletConnectV2SendTransactionHandler, в 8 мест придется добавлять вызов. Сергей предложил еще один вариант как пофиксить, сейчас потестирую его.

@fedorov-d
Copy link
Contributor Author

в общем-то решение Сергея тоже работает https://github.com/tangem/tangem-app-ios/compare/releases/5.17...temp/Wait-when-CommonStakingManager-did-load?expand=1

@Balashov152
Copy link
Contributor

в общем-то решение Сергея тоже работает https://github.com/tangem/tangem-app-ios/compare/releases/5.17...temp/Wait-when-CommonStakingManager-did-load?expand=1

Его бы тоже залить надо, так как не обязательно при approve кейсе это стрельнет, у меня было еще и в других местах раньше. Например на StakingDetails дернуть PTR, и сразу же пока loading открыть unstaking flow

@fedorov-d fedorov-d changed the base branch from develop to releases/5.17 October 15, 2024 09:53
@fedorov-d
Copy link
Contributor Author

в общем-то решение Сергея тоже работает https://github.com/tangem/tangem-app-ios/compare/releases/5.17...temp/Wait-when-CommonStakingManager-did-load?expand=1

Его бы тоже залить надо, так как не обязательно при approve кейсе это стрельнет, у меня было еще и в других местах раньше. Например на StakingDetails дернуть PTR, и сразу же пока loading открыть unstaking flow

использовал его

@tureck1y tureck1y merged commit 65a9d82 into releases/5.17 Oct 15, 2024
4 checks passed
@tureck1y tureck1y deleted the bugfix/IOS-8229_error_during_approve branch October 15, 2024 11:34
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