Challenge Overview
Topcoder tries hard to wrap up the new Challenge Details page, and one of the problematic pieces is the challenge terms functionality, which still demands further fixes. Thus, three parallel F2F challenges that address different aspects to be fixed. You will work from the latest commit in the develop branch of Community App (72752055c6e8a17f4de3dbd366bd68c2e4c7167a at the moment of writing); you should follow our Coding Standards; you should be careful not to do any unnecessary changes that will complicate the merge of results from these three parallel challenges, and, probably, you will be asked to help in resolultion of any merge conflicts.
Notes:
1. For a very basic testing you can run the app locally using the mock challenge terms service.
2. In dev environment you can test almost everything related to challenge terms, but it seems that agreement with DocuSign terms does not work with dev backend.
3. Thus, as an exception, you can do some testing in prod environment, using this test challenge.
The author of the current logic behind this told that backend does not saves immediately that DocuSign term has been agreed, thus we should make this double-checking, because if we try to register before backend knows that all terms have been agreed, it will cause an error. In anyway, it looks that his solution to this problem does not quite work. So, whether it is an API problem, or some bug in the Community App code, we should find some solution, and ensure that this part of the terms agreement flow works smoothly: once, during registration flow, all terms have been agreed, the user should be automatically registered to the challenge. It is fine to wait for some time, probably repeating some requests to the backend, and showing LoadingIndicator; but it is defintely wrong to wait, and then bring the user back to DocuSign agreement, despite the fact that it has been agreed already.
Notes:
1. For a very basic testing you can run the app locally using the mock challenge terms service.
2. In dev environment you can test almost everything related to challenge terms, but it seems that agreement with DocuSign terms does not work with dev backend.
3. Thus, as an exception, you can do some testing in prod environment, using this test challenge.
Challenge Scope
Right now, if you try to complete challenge terms, including DocuSign term, in many cases after the last term is agreed, the modal waits for some time (double-checking in the backend that all terms have been agreed), and decides that DocuSign term has not been agreed, thus returns to the DocuSign agreement. If you just reload the page, you'll see that all terms are agreed and you can register for the challenge.The author of the current logic behind this told that backend does not saves immediately that DocuSign term has been agreed, thus we should make this double-checking, because if we try to register before backend knows that all terms have been agreed, it will cause an error. In anyway, it looks that his solution to this problem does not quite work. So, whether it is an API problem, or some bug in the Community App code, we should find some solution, and ensure that this part of the terms agreement flow works smoothly: once, during registration flow, all terms have been agreed, the user should be automatically registered to the challenge. It is fine to wait for some time, probably repeating some requests to the backend, and showing LoadingIndicator; but it is defintely wrong to wait, and then bring the user back to DocuSign agreement, despite the fact that it has been agreed already.