Repository navigation
Description
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
What performance issue do we need to solve?
e.g. memory consumption, storage read/write times, React native bridge concerns, inefficient React component rendering, etc.
When your mobile client's Onyx state falls out of sync with web, it is hard to diagnose which value has been missed or has been incorrectly inserted, especially when a refresh, sign in, or reload of the app on the client can solve the issue.
What is the impact of this on end-users?
List specific user experiences that will be improved by solving this problem e.g. app boot time, time to for some interaction to complete, etc.
This is more of a debugging tool, since Onyx impacts on pretty much everything you see in app, it can impact on a multitude of end user functionality.
The most important end user impact of a debugging tool which exports the Onyx state is around privacy. We need to sanitize the authToken, emails and messages of the data since those are private and shouldn't be shared with anyone.
List any benchmarks that show the severity of the issue
Please also provide exact steps taken to collect metrics above if any so we can independently verify the results.
This is more of a debugging tool, so this isn't something that will show benchmarks.
Proposed solution (if any)
Please list out the steps you think we should take to solve this issue.
Add a "Export Onyx State" option to the Troubleshoot menu.
This downloads the values in the Onyx keyvaluepairs table to a txt file.
The authTokens, emails and messages in the file are redacted
List any benchmarks after implementing the changes to show impacts of the proposed solution (if any)
Note: These should be the same as the benchmarks collected before any changes.
Platforms:
Which of our officially supported platforms is this issue occurring on?
- Android: Native
- Android: mWeb Chrome
- iOS: Native
- iOS: mWeb Safari
- MacOS: Chrome / Safari
- MacOS: Desktop
Version Number:
Reproducible in staging?:
Reproducible in production?:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
Expensify/Expensify Issue URL:
Issue reported by:
Slack conversation:
Upwork Automation - Do Not Edit
- Upwork Job URL: https://www.upwork.com/jobs/~014fd561267f73f88e
- Upwork Job ID: 1803048668106098615
- Last Price Increase: 2024-06-18
Issue Owner
Current Issue Owner: @muttmuureMetadata
Metadata
Labels
Type
Projects
- StatusShow more project fieldsDone
Activity
melvin-bot commentedon Jun 5, 2024
Auto-assigning issues to engineers is no longer supported. If you think this issue should receive engineering attention, please raise it in #whatsnext.
melvin-bot commentedon Jun 10, 2024
Huh... This is 4 days overdue. Who can take care of this?
burczu commentedon Jun 11, 2024
Hi, I am Bartek from Callstack - expert contributor group. I would like to work on this issue.
burczu commentedon Jun 12, 2024
Daily update: I’ve been working on the proposal for this issue today, mostly on finding the way to collect the whole onyx snapshot as a string (to be able to save it as a txt file later), I hope I’ll be able to post something by the end of tomorrow - I’ll keep you posted. I’ve also created a draft PR in GH.
burczu commentedon Jun 13, 2024
Daily update: I think I’ve found the way to collect all the Onyx data for web environment and already tested it; for native I think I’ve also find the way but it still needs testing. I believe the proposal is behind the corner and I’ll be able to post it tomorrow.
burczu commentedon Jun 14, 2024
Daily update: the solution for collecting the Onyx data and saving as a text file is done and can be checked in the draft PR. I've forgotten that we also need to mask data such as authToken, emails etc, so this is the last thing I need to sort out.
melvin-bot commentedon Jun 17, 2024
@burczu Whoops! This issue is 2 days overdue. Let's get this updated quick!
44 remaining items
ZhenjaHorbach commentedon Jul 22, 2024
Not overdue
Waiting for payment !
melvin-bot commentedon Jul 22, 2024
Payment Summary
Upwork Job
BugZero Checklist (@muttmuure)
melvin-bot commentedon Jul 23, 2024
@burczu, @muttmuure, @ZhenjaHorbach, @hayata-suenaga 6 days overdue. This is scarier than being forced to listen to Vogon poetry!
muttmuure commentedon Jul 25, 2024
Handling
muttmuure commentedon Jul 25, 2024
Invited @ZhenjaHorbach
ZhenjaHorbach commentedon Jul 25, 2024
Done !
Christinadobrzyn commentedon Jul 25, 2024
hey I have this GH #44841 that's also ready for payment.
The PRs are different but is this the same job? I've already paid out @etCoderDysto in this GH for this PR.
Should we pay @ZhenjaHorbach once for both jobs or are these separate jobs?
@burczu @hayata-suenaga
hayata-suenaga commentedon Jul 26, 2024
@burczu ?
muttmuure commentedon Jul 29, 2024
It should be one payment since this was the original issue and the linked issue is a follow-up/polish issue caught in testing
muttmuure commentedon Jul 29, 2024
Paid