Challenge Overview
Kindly note - the code base has changed. We now use webviews instead of markdown.
Challenge Objectives
-
To display a challenge details page through our Topcoder Workflow extension
-
To fix a couple of minor issues with the extension.
Project Background
-
Topcoder is aiming to create an extension in Visual Studio Code and package in Atom
-
The extension / package is meant to closely integrate the Topcoder platform with the text editors, to allow the user to perform actions from within the editor, without having to open a browser.
Technology Stack
-
Typescript
Code access
You can find the code here. Use the develop branch as your base branch. Kindly note - the code base has changed. We now use webviews instead of markdown.
Individual requirements
To display a challenge details page through our Topcoder Workflow extension (Major Requirement)
-
Currently, we display the list of open challenges. We would like to extend this functionality to display the details about a challenge.
-
Turn all text in the Challenge Name column into links. Clicking on any of them will open another tab that displays the details about that challenge.
-
Display the details in the webview in a new tab, just as the currently displayed tab of open challenges.
-
Show a loading message to the user, letting them know that the extension is attempting to load the details, just as we do currently when loading the open challenges.
-
We will share the details of the api that you need to call to get the details of a challenge.
Fix multiple issues with the existing extension (Minor requirement)
-
When the token gets deactivated, ensure that we also clean up any auth tokens that we may have stored globally
-
Currently, for the feature that allows users to upload the current workspace to a contest as a submission, they need to specify the topcoder challenge id in a .topcoderrc file. Now, if the user specifies an invalid value as the challenge id, the error message isn’t helpful. Thus, before we proceed to upload the submission, check if the challenge id is valid. Validity here refers to the challenge existing and the submission phase of the challenge still being open. Additionally, verify that the user has registered for the contest. If any of these conditions fail, respond with the corresponding error message in the notification.
Deployment guide and validation document
Update the existing deployment guide as needed based on the changes carried out for this contest.
Important Notes
-
Kindly follow existing conventions used in the extension
-
Update the tests and add new tests for the extension as relevant for this contest. Reviewers need to use the dedicated section on tests in the review scorecard to consider issues related to tests.
-
Ensure there are no typescript lint errors in your code.
Final Submission Guidelines
Kindly upload a git patch of your changes. Please ensure that the patch can be applied using the git apply patch command on the develop branch.