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

No progress indication on Lesson #11879

Closed
marcellamaki opened this issue Feb 15, 2024 · 34 comments
Closed

No progress indication on Lesson #11879

marcellamaki opened this issue Feb 15, 2024 · 34 comments
Assignees
Labels
APP: Learn Re: Learn App (content, quizzes, lessons, etc.) bug Behavior is wrong or broken DEV: frontend help wanted Open source contributors welcome P1 - important Priority: High impact on UX

Comments

@marcellamaki
Copy link
Member

Reported by @nucleogenesis in the 0.16 sync session Feb 14 2024

Observed behavior

I completed a lesson and see no info on the card about it akin to that which I see on the completed quizzes.

This is after going back from viewing the lesson back to the home page. When I navigate away from the Home page and then back to it, the progress indicators are there

Expected behavior

Progress indicators should be visible on the lesson, just like it is with quizzes

Screenshot 2024-02-15 at 8 33 28 AM

Steps to reproduce

  1. Create a learner and coach/admin account
  2. Assign one or more lessons, and make available to the learner
  3. Begin at least one of the lessons
  4. Exit the lesson without completing it (there should likewise be a progress indicator within the lesson content renderer - see below for example)
  5. Return to the lesson page - a progress bar should be missing
  6. Return to the home page
  7. Click back into the lesson in question - see that the progress bar is now visible

(progress indicator in the lesson content renderer)
Screenshot 2024-02-15 at 8 32 20 AM

Context

Kolibri 0.16.x
Note: this is reproducible in 0.15 kolibri demo server, and therefore isn't a 0.16 regression but is likely an earlier regression.

@marcellamaki marcellamaki added bug Behavior is wrong or broken P1 - important Priority: High impact on UX APP: Learn Re: Learn App (content, quizzes, lessons, etc.) DEV: frontend help wanted Open source contributors welcome labels Feb 15, 2024
@Abhishekzod007
Copy link

Hii @marcellamaki , I would like to work on this. Can you assign this issue to me?

@MisRob
Copy link
Member

MisRob commented Feb 19, 2024

Hi @Abhishekzod007, thanks for volunteering, I'm assigning you.

@Abhishekzod007
Copy link

Thanks for assigning @MisRob. I'll give you updates about it.

@himanshuc3
Copy link

@MisRob How is the progress calculated?
Even on a short reading resource, it shows partial progress. Even the folder resources cta shows that single resource, so my expectation is that it should be marked completed.
Screenshot from 2024-03-13 10-29-35
Screenshot from 2024-03-13 10-28-54

@Abhishekzod007
Copy link

Hii @marcellamaki
I am sorry that I was not active on this issue.
But recently I was watching this issue and I have some doubts regarding the issue
When we start a lesson reading or viewing it then ( even it is short or long ) it's progress starts increasing on the indication bar but a very small indication is there even we scrolled out the whole page but as we scrolled the page completely the progress indication should be completed but in place of that it shows some partial amount of progress. That's ok I think.
I tried to do this inother way I stayed at the lesson and waited for some time and keep scrolling up down up down in the same way once I think that it was a problem that we have to keep scrolling on the page so that we can see the progress but I was wrong it is not like that.
Then I tried and think it again other way, if we stayed on that page or lesson for a time period about 4 - 5 minutes then the task will be automatic completed and we will see an acknowledgement like this
image
image

I tried this for 2 - 3 times and I observed the same behaviour every time.
So that's all from my end.
Please tell me more about this , what's the particular issue there beacuse I think there is no problem with the progress indication of a lesson , this behaviour is already set in the backend process.
I think I need more information about this and it will be greatful if you upload an example with video showing the particular problem.

@Abhishekzod007
Copy link

Abhishekzod007 commented Mar 14, 2024

Hii @marcellamaki @MisRob could you please give example about this issue because I trying this for the last 2 days but didn't get the point.
image
When I am returning on the home page it is showing me the progress bar.

@marcellamaki
Copy link
Member Author

Hi @Abhishekzod007 - thanks for working on this and I'm sorry for the confusion. Please double check and make sure you have follow the first few items in the "Steps to reproduce" directions. It looks from the page here that this learner does not have any lessons assigned.

  1. Create a learner and coach/admin account
  2. Assign one or more lessons and make available to the learner. (note: this has to be done in the coach account, then you log out, and then sign in as the learner)
  3. Begin at least one of the lessons

The other important note is that the bug is on the lesson page (see further down in the steps to reproduce), not the home page. Therefore, in order to reproduce, you must take the steps to create the lessons, so that you can access the lesson page when logged in as a learner, rather than just browse resources, as it looks like you are doing in the screenshots you have shared. If more information about these different roles would be helpful, you can take a look at our general user documentation, in addition to the dev docs.

If you have further questions or uncertainties about the steps to reproduce, please ask them here.

@Abhishekzod007
Copy link

Thanks a lot @marcellamaki , I will give updates about this

@Abhishekzod007
Copy link

Hey @marcellamaki , I tried as you said , First I created a learner as a name of Learner itself so now in Admin account I assigned the learner a task or lesson and then I went again in the learner account and without completing it I came outside of the lesson and then the next part as you are mentioning that learner will not be able to view lesson indication progress but I facing issue there , but I am able to see the progress indication every time when I closes it or If I return to home screen then also no issue is there.
I understood the 50-60% part of the problem can you clarify the other 40% part of the problem please.

@AlexVelezLl
Copy link
Member

Hi @Abhishekzod007 I just recorded a Video to make the issue clearer, the problem is that the lesson is not updating its progress state when we return from the resource. In the video you can see that I need to go back to the home page, or reload the page to have the progress state updated.

Compartir.pantalla.-.2024-03-14.11_41_42.mp4

@Abhishekzod007
Copy link

Thanks a lot @AlexVelezLl , now I have a better understanding of this.
But don't you thik that it should be applicable for the lesson 1 which is completed then why this problem is only occurring with lesson 2 not with lesson 1.

@AlexVelezLl
Copy link
Member

Oh Lesson 1 is there only because of previous tests, you can ignore it

@Abhishekzod007
Copy link

That's ok

@Abhishekzod007
Copy link

Hii @marcellamaki is there any problem when we allocate a resource or manage it , then it shows like that
image
this is the first step
if we only select then that lesson will be assigned to the lesson class
But if we click on that lesson itself then
image
this error showed up.
is this an error or something else ?

@Abhishekzod007
Copy link

And you mentioned Kolibri 0.16.x server , what is that ?
Where I have to work in the codebase that is triggering this problem ?

@marcellamaki
Copy link
Member Author

Hi @Abhishekzod007 - it's possible that there is a problem with previewing the resource, although your second question might help us understand if there is a bug there, and whether or not it is related to the issue described here.

In github, for Kolibri, we have many different branches of work. The current issue, as reported, exists in the line of work for the 0.16.x releases, which is the branch release-v0.16.x. This is the branch you should be running locally.

So, the first step would be to make sure then when running your local dev environment, you are running that branch, rather than develop for this particular issue.

If you still encounter this problem with the lessons when running this branch, could you share any error message you see in your terminal and/or in the browser console?

@Abhishekzod007
Copy link

Abhishekzod007 commented Mar 16, 2024

image
@marcellamaki
while trying to run on release-v0.16.x I see this.
I do not encounter this while trying to run develop branch.

@marsian83
Copy link

image

while trying to run on release-v0.16.x I see this. I do not encounter this while trying to run develop branch.

Hi @Abhishekzod007
I encountered same issue when running learningequality/studio a while back
There is a simple fix for this -> check it out here

@Abhishekzod007
Copy link

Abhishekzod007 commented Mar 21, 2024

Hii @marcellamaki @bjester
I am facing the same issue on the Kolibri 0.16.x
image
and I trying to solve this from past few days.
I tried in the same way as @marsian83 did by adding .git as a suffix but it didn't work out.
Could you please help me out with this?

@ozer550
Copy link
Member

ozer550 commented Mar 21, 2024

Hii @marcellamaki @bjester I am facing the same issue on the Kolibri 0.16.x image and I trying to solve this from past few days. I tried in the same way as @marsian83 did by adding .git as a suffix but it didn't work out. Could you please help me out with this?

Hi @Abhishekzod007! did you remove your node_modules folder before doing this? I would recommend deleting the node_modules folder, applying the fix that @marsian83 has mentioned then try running yarn install.

@Abhishekzod007
Copy link

Hii @ozer550 I did what u said
But the same error is there
image

@ozer550
Copy link
Member

ozer550 commented Mar 21, 2024

just to confirm you updated the URL adding .git suffix in the package.json of perseus_viewer?

@Abhishekzod007
Copy link

@ozer550 I didn't understand , what is perseus_viewer ? and where it is in the codebase

@ozer550
Copy link
Member

ozer550 commented Mar 21, 2024

@ozer550 I didn't understand , what is perseus_viewer ? and where it is in the codebase

here

@Abhishekzod007
Copy link

Thanks @ozer550 I solved it

@Abhishekzod007
Copy link

Hey @ozer550 @marcellamaki the issue is there when a learner completes the lesson then "completed" is marked there and then when we return to lesson page then it still shows "in progress" after we refresh then it marks "completed".
I wanna ask , which part of code is triggering this problem

@Abhishekzod007
Copy link

image
My guess is since the computed property depends upon classId and it does not change when coming back a level from within the class, while on the other hand when we visit after refetching the classes it reloads.
I'd love to know your opinions on this
@marcellamaki @bjester @ozer550

The screenshot is from the file \kolibri\plugins\learn\assets\src\views\classes\ClassAssignmentsPage.vue line 61

@MisRob
Copy link
Member

MisRob commented Mar 23, 2024

Hello @Abhishekzod007, sounds you are perhaps onto something. You can try to debug this place in more detail, for example by console logging or some other technique, to confirm that this computed property is indeed causing the issue.

@Abhishekzod007
Copy link

Hii @MisRob , I have tried by all the ways which I can, but I think the issue is associated with the class Id in the computed part
I am pretty sure about this because when we go toh the particular lesson then the class Id remains same so no changes rendered there but when we go to home page and then we return back to the lesson page then the class id changes/refreshes because there could be many classes or lessons so it reloads again. So this is what I am thinking of.
I tried by console logging also but facing problem with this.

@MisRob
Copy link
Member

MisRob commented Mar 29, 2024

Alright, thanks for debugging @Abhishekzod007. You may need to look in more detail at the ways that class ID is updated in the codebase. Also, not sure if this helps but from the issue description it seems that quizzes are working so you could perhaps study that logic and see if you can find some inspiration to resolve lessons issues.

@nathanaelg16
Copy link
Contributor

Hi team, I started looking into this and it seems like the issue is due to a combination of the 30 second delay between polling for updates + the updates not triggering a refresh of the active lessons. If I tweak the delay to 1 second and force a refresh of the active lessons I am able to get the progress indicator to show up. However, there is something funky going on with the way lesson progress is persisted across the different media types, which I would like to look into further. I'd love to hear if you have any thoughts on this and I'd be happy to pick this issue up. @MisRob

@AlexVelezLl
Copy link
Member

Hi @nathanaelg16! Thanks for looking into this :). Reducing polling from 30s to 1s doesn't look like the best option here, we'll probably have to look at reloading the resources or updating the status of lessons. Please fell free to open a PR with with the proposed solution that you have, and we can continue the discussion there. I will assign you this issue.

@nathanaelg16
Copy link
Contributor

Yeah, I figured reducing the polling wasn't desirable, I just wanted to share what I had discovered so far. I'll continue to look into this and keep you updated. Thanks!

@rtibbles
Copy link
Member

Fixed in #12185

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
APP: Learn Re: Learn App (content, quizzes, lessons, etc.) bug Behavior is wrong or broken DEV: frontend help wanted Open source contributors welcome P1 - important Priority: High impact on UX
Projects
None yet
Development

No branches or pull requests

9 participants