-
Notifications
You must be signed in to change notification settings - Fork 28
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
Empty directory page after logged in for the first time #47
Comments
This is a cache issue. This is hard to dev and test for but I'm glad that you were able to confirm this as a newcomer! The problem is that the cache system is complex, as there are issues pointing to other issues (nested issues) which makes the data structure more complex. |
/start |
Tips:
|
This looks like something i am interested actually. Problem reproducibility is a priority IMO. This week i am a bit busy but i will try to get involved with this issue next week if its ok. |
You can try submitting after jordan-ae if they don't have it done by then. |
@0x4007 @gentlementlegen I think we should consider using indexedDb rather than Local Storage for caching. My main reasons for thinking IndexedDB will be better than Local Storage for caching in our case is: IndexedDB typically offers better performance for complex data caching, especially when dealing with large datasets or performing complex queries. IndexedDB operations are asynchronous, allowing for non-blocking I/O operations while localStorage doesnt. IndexedDB supports transactions, which ensure data integrity and consistency during read and write operations. Transactions allow for atomicity, consistency, isolation, and durability, making IndexedDB more suitable for applications that require robust data management and concurrency control . Local Storage does not support transactions, which can make it more prone to data corruption in certain scenarios. As in the case of the bug we are currently experiencing. Both IndexedDB and Local Storage provide persistent storage, but IndexedDB offers more control over data persistence and eviction policies. IndexedDB and will allow us to define custom caching and eviction strategies, while Local Storage provides simple persistent storage without advanced caching options. Also IndexedDB is a another web API like Local Storage so it's 100% fully compatible with every browser. Viewing how evasive caching has been so far, I think we should go robust and eliminate the caching problems once and for all by using indexedDB |
Using a more performant and more complex system isn't going to solve this problem. We are far from the localStorage limits so we don't need to switch. |
@jordan-ae I have nothing against using IndexedDb but I am not sure this solves the problem either. The sole purpose of that cache is to lower the amount of requests done against GitHub API because when you are logged out, quotas are quite low. We are not manipulating large amounts of data, so performance is not a requirement. I've not seen anything about eviction or custom caching however, if you can point out where are these capabilities I would be interested. It's been a while that I didn't dive into that code, but I believe that's because the cache already contains a value which should be an empty array, so no fetch is done, and no data is displayed (or rather it thinks there is no item). I think what should be changed is the logic on "when is data fetched", "when is it refreshed", because currently there is basically one API call per item on the list, to get the details (no call is made during sorting, only the present data is showed in a different order). We could think of something like a time base refresh, or if there is a way to check if the amount of items changed, then refresh. And I agree with @alkimake first action should be to define proper repro steps. |
Hey @0x4007 & @gentlementlegen, Happy New Week! After a challenging week attempting to reproduce the bug in development, I opted to debug directly in production and have pinpointed the issue that’s preventing the page from loading correctly. As @alkimake noted, when logging in as a collaborator—regardless of whether they’re new—the issues fail to display, leaving the page blank. Given our codebase is in raw TypeScript, it's easier to track and debug the event flow. Contrary to our initial suspicion, caching is not the culprit. The error occurs within Subsequently, the code sets This bug was introduced in PR #20. I’ve located the bug and am preparing a PR to resolve it promptly. Does this approach sound good to you guys? |
@jordan-ae Thanks for your investigation. If this is the sole source of the issue then it most likely is fixed within https://github.com/ubiquity/work.ubq.fi/pull/48/files#diff-a526a47f6685dd952321fd365cea2c75b28fb920d5d3f46f3dedb61d0ebed95bR27 |
I've already worked on a PR 😄 |
! action has an uncaught error |
@molecula451 this issue was closed as complete but no permits were generated for it! Think the bot didnt generate them because there was a PR linked to this that wasn't closed. Now that all PR's related to this are resolved I think reopening and closing the PR will make the bot generate the permits |
but your PR made it? @jordan-ae looks like your PR was closed? |
@molecula451 PR didnt make it! @gentlementlegen beat me to it |
+ Evaluating results. Please wait... |
|
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 3 | 9.8 |
Review | Comment | 4 | 15.2 |
Conversation Incentives
@jordan-ae the deadline is at 2024-05-25T11:38:12.134Z |
|
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 3 | 9.8 |
Review | Comment | 4 | 15.2 |
Conversation Incentives
@0x4007 dont think this generated correctly 🤔 |
/query @jordan-ae |
|
+ Evaluating results. Please wait... |
|
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 3 | 9.8 |
Review | Comment | 4 | 15.2 |
Conversation Incentives
{
permit: {
permitted: {
token: '0xe91D153E0b41518A2Ce8Dd3D7944Fa863463a97d',
amount: '838800000000000000000'
},
nonce: '51326910327906309883188819007812311989963322456571322321343357623203337777012',
deadline: '115792089237316195423570985008687907853269984665640564039457584007913129639935'
},
transferDetails: {
to: '0x2F05fD58023B0a95d1866aa0A3b672cEf05945c5',
requestedAmount: '838800000000000000000'
},
owner: '0x44Ca15Db101fD1c194467Db6AF0c67C6BbF4AB51',
signature: '0x72bd76f2887061c65c28616efedb7a2a003157e973b2ab24bda262c856d0baa318003668a92b6177f5b9b60159a87a31da6dba8f346199540cbb0392c22d546a1b',
networkId: 100
} |
@ubiquity/software-development can you guys help me generate a payment link? For some reason its not posting. |
@gentlementlegen you made changes in the UbiquiBot repo, perhaps it affected the permit generation because in the GitHub Actions logs it showed seven permits generated but now its only generating mine. |
|
@jordan-ae did not completed this task, it wass @gentlementlegen, are we grating the permit to @jordan-ae @0x4007 ? |
Well @molecula451, I was investigating bug and decided to share the root cause of the issue I found (the mistake I should probably not have made). I've talked to @gentlementlegen and even though his fix was "incidental", the findings I posted pushed him to link his PR to this issue. In the bug report I made it clear I've found the root cause and I have a PR coming! My intention was to let you guys know we've finally been able to find out what went wrong. I indeed already had a PR waiting but I'd worked into the night and decided to take a nap and send it in first thing in the morning (on second thought I shouldn't have done this too) Contrary to @rndquu observations, at no point was I unassigned or looked to have given up working on the task. It was definitely as pesky bug to reproduce and debug, and through it all I did my best to keep @0x4007 & @gentlementlegen in the loop to re-assure them progress was being made and to get insight from them through the whole process. At first I really felt I hurt due to all the time and effort I had put into this task just to get it snatched at the very tail end. But then our objective was to get the platform working normally again, which we archived. Not getting the bounty definitely hurts but at this point in time I'm trying to pay my fee so I dont get kicked out of school and every penny counts to me. I'm still very grateful for what the comment incentives will provide. Even though not close to the bounty, but it will help. Think it's all up to @0x4007. But whatever the outcome is I've definitely learned my lessons. I'm happy we were able to get thinks fixed and I'm grateful for the opportunity to be able to work with all of you guys. Thanks a lot |
Whoever provided the accepted deliverable should earn the task reward, however, everyone who contributed comments should receive their comment rewards. The first problem we need to diagnose here is why are the permits not posting for everybody's contributions? This isn't a political debate, we have rules for handling this situation described in code. |
We understand the concern, everyone who contribute directly and indirectly gets rewarded, stay tuned |
@0x4007 Is this one deployed, or do you have to deploy manually? ubiquity/ubiquibot#929 |
The revision of the bot that posted the reward is The netlify UI is trash from mobile so I can't tell much but it says it was updated about 11 days ago which checks out. |
@0x4007 Job run reference: https://github.com/ubiquibot/comment-incentives/actions/runs/9228516676/job/25392684815 Logs don't help much, except they confirm all the comments got parsed properly, but in the end only one permit got generated. After some research it seems that actually everything works normally, the culprit being the HTML interpreted with a comment breaking all the following content. Quick fix done: ubiquibot/comment-incentives#37 |
@gentlementlegen the deadline is at 2024-05-28T04:11:31.509Z |
# These linked pull requests are closed: <a href="https://github.com/ubiquity/work.ubq.fi/pull/48">#48</a> <a href="https://github.com/ubiquity/work.ubq.fi/pull/49">#49</a> |
+ Evaluating results. Please wait... |
|
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 9 | 43.7 |
Review | Comment | 4 | 15.2 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
This is a cache issue. This is hard to dev and test for but I'm ... | 5.3 | - | 5.3 |
> This looks like something i am interested actually. Problem... | 1.6 | - | 1.6 |
Using a more performant and more complex system isn't going to s... | 2.9 | - | 2.9 |
```js { permit: { permitted: { token: '0xe91D153... | 3.1code: count: 1 score: "1" words: 0 | - | 3.1 |
@ubiquity/software-development can you guys help me generate a p... | 1.8 | - | 1.8 |
@gentlementlegen you made changes in the UbiquiBot repo, perhaps... | 3.1 | - | 3.1 |
```permit: { | 15.7code: count: 1 score: "1" words: 0 | - | 15.7 |
Whoever provided the accepted deliverable should earn the task r... | 5.5 | - | 5.5 |
The revision of the bot that posted the reward is `a3e647e`The... | 4.7code: count: 1 score: "1" words: 1 | - | 4.7 |
I think it's a great proposal thanks for figuring this out. I am... | 5.4 | 0.78 | 5.4 |
I think you should also set a time estimate. ... | 0.9 | 0.59 | 0.9 |
Oh I just realized this is a pull sorry!... | 0.9 | 0.61 | 0.9 |
> Resolves #41 > > Resolves #47 > > <!-- &... | 8li: count: 2 score: "2" words: 0 | 0.66 | 8 |
[ 1224.3 WXDAI ]
@gentlementlegen
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Task | 1 | 800 |
Issue | Comment | 5 | 0 |
Issue | Comment | 5 | 326.5 |
Review | Comment | 5 | 48.9 |
Review | Comment | 5 | 48.9 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
@jordan-ae I have nothing against using IndexedDb but I am not s... | - | - | - |
@jordan-ae Thanks for your investigation. If this is the sole so... | - | - | - |
@0x4007 Is this one deployed, or do you have to deploy manually?... | - | - | - |
@0x4007 Job run reference: https://github.com/ubiquibot/comment-... | -hr: count: 1 score: "0" words: 0 | - | - |
| ❗ This is fake and the wallet has no funds. Ran f... | -code: count: 2 score: "0" words: 234 | - | - |
@jordan-ae I have nothing against using IndexedDb but I am not s... | 22.3 | - | 22.3 |
@jordan-ae Thanks for your investigation. If this is the sole so... | 3.4 | - | 3.4 |
@0x4007 Is this one deployed, or do you have to deploy manually?... | 1.9 | - | 1.9 |
@0x4007 Job run reference: https://github.com/ubiquibot/comment-... | 12.6hr: count: 1 score: "1" words: 0 | - | 12.6 |
| ❗ This is fake and the wallet has no funds. Ran f... | 286.3code: count: 2 score: "2" words: 234 | - | 286.3 |
This is a proposal to fix the permissions requested for newcomer... | 26.1li: count: 2 score: "2" words: 29 code: count: 1 score: "1" words: 3 | 0.78 | 26.1 |
@0x4007 Thanks for the feedback. Seems that Ubiquibot still does... | 8.5a: count: 1 score: "1" words: 3 | 0.65 | 8.5 |
Current looks of the button in the navbar: <img width="590" ... | 2.8 | 0.64 | 2.8 |
@0x4007 Yep makes sense, very accidentally fixed two by doing th... | 4.3 | 0.55 | 4.3 |
@rndquu This PR (#47) coincidentally solved the issue because I ... | 7.2a: count: 1 score: "1" words: 6 | 0.61 | 7.2 |
This is a proposal to fix the permissions requested for newcomer... | 26.1li: count: 2 score: "2" words: 29 code: count: 1 score: "1" words: 3 | 0.78 | 26.1 |
@0x4007 Thanks for the feedback. Seems that Ubiquibot still does... | 8.5a: count: 1 score: "1" words: 3 | 0.65 | 8.5 |
Current looks of the button in the navbar: <img width="590" ... | 2.8 | 0.64 | 2.8 |
@0x4007 Yep makes sense, very accidentally fixed two by doing th... | 4.3 | 0.55 | 4.3 |
@rndquu This PR (#47) coincidentally solved the issue because I ... | 7.2a: count: 1 score: "1" words: 6 | 0.61 | 7.2 |
[ 122.3 WXDAI ]
@jordan-ae
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 7 | 85 |
Review | Comment | 4 | 37.3 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
@0x4007 @gentlementlegen I think we should consider using indexe... | 21.8 | - | 21.8 |
Hey @0x4007 & @gentlementlegen, Happy New Week!After a chall... | 21.2code: count: 6 score: "1.5" words: 14 | - | 21.2 |
> @jordan-ae Thanks for your investigation. If this is the so... | 0.7 | - | 0.7 |
@molecula451 this issue was closed as complete but no permits we... | 5.6 | - | 5.6 |
@molecula451 PR didnt make it! @gentlementlegen beat me to it ... | 1 | - | 1 |
@0x4007 dont think this generated correctly 🤔... | 0.6 | - | 0.6 |
> @jordan-ae did not completed this task, it wass @gentlement... | 34.1 | - | 34.1 |
Hey @0x4007 I took a lot of time out to debug #49 I posted my fi... | 8.7 | 0.59 | 8.7 |
@rndquu Well this PR contains a cache related fix that we'll pot... | 3.1 | 0.65 | 3.1 |
Yes it's related to this issue ... | 0.7 | 0.76 | 0.7 |
> @jordan-ae I can't reproduce the initial issue with empty p... | 24.8a: count: 2 score: "0.5" words: 3 | 0.72 | 24.8 |
[ 4.6 WXDAI ]
@molecula451
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 3 | 4.6 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
but your PR made it? @jordan-ae looks like your PR was closed?... | 1.3 | - | 1.3 |
@jordan-ae did not completed this task, it wass @gentlementlegen... | 1.9 | - | 1.9 |
> > @jordan-ae did not completed this task, it wass @gentl... | 1.4 | - | 1.4 |
[ 0.8 WXDAI ]
@gitcoindev
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Review | Comment | 1 | 0.8 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
Looks good! I also reviewed from my side.... | 0.8 | 0.57 | 0.8 |
[ 18.6 WXDAI ]
@Keyrxng
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Review | Comment | 2 | 18.6 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
- https://github.com/ubiquity/work.ubq.fi/blob/fed9bac6ab18303f... | 12.2a: count: 1 score: "0.25" words: 1 li: count: 1 score: "0.25" words: 18 code: count: 4 score: "1" words: 8 | 0.75 | 12.2 |
> but for collaborators, the line hasPrivateRepoAccess = awai... | 6.4 | 0.77 | 6.4 |
[ 82.4 WXDAI ]
@rndquu
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Review | Comment | 5 | 82.4 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
TBH I don't fully understand what to do with this PRTimeline... | 12.5a: count: 1 score: "1" words: 1 li: count: 3 score: "3" words: 44 | 0.52 | 12.5 |
> @rndquu Well this PR contains a cache related fix that we'l... | 2.9 | 0.63 | 2.9 |
> * https://github.com/ubiquity/work.ubq.fi/blob/fed9bac6ab18... | 9.8a: count: 2 score: "2" words: 2 li: count: 1 score: "1" words: 18 code: count: 5 score: "5" words: 9 | 0.73 | 9.8 |
@jordan-ae I can't reproduce the initial issue with empty page ... | 12.5a: count: 3 score: "3" words: 3 | 0.72 | 12.5 |
> This error impacted everyone except core membersYes, I ... | 44.7a: count: 6 score: "6" words: 6 li: count: 8 score: "8" words: 194 code: count: 8 score: "8" words: 12 | 0.68 | 44.7 |
…--development--components--ts-template chore(development): release 1.0.0
Summary: When a newcomer logs in with GitHub authentication, the directory pool appears as an empty page. A screenshot is attached for reference:
Description: Upon login, it seems that the page requests collaborator information for the logged-in user from the repository by calling
/repos/ubiquity/devpool-directory-private/collaborators/{username}
and receives a 404 NotFound result.Expected Behavior: Even if the user is not a collaborator, the devpool listing should still be accessible on the listing page, similar to when the user is not logged in.
The text was updated successfully, but these errors were encountered: