Skip to content

Commit

Permalink
Merge branch 'dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
mir-am committed Jul 21, 2021
2 parents e9ef35c + b334f02 commit 92d6edd
Show file tree
Hide file tree
Showing 8 changed files with 7,327 additions and 290 deletions.
4 changes: 3 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@ All notable changes to the [Type4Py's VSCode extension](https://github.com/saltu

## [Unreleased]
### Added
- A `devMode` setting for testing and development using the local server (ONLY FOR THE EXTENSION'S DEVELOPERS).
- Detecting `ExtensionMode` for testing and development using the local server (**ONLY FOR THE EXTENSION'S DEVELOPERS**).
- Submitting the canceled/rejected type predictions based on the user's consent.
- Sending the hash of files' absolute path, the extension's version, and activation ID along with the prediction request (**ONLY FOR RESEARCH PURPOSE**).

## [0.1.3] - 2021-07-17
### Added
Expand Down
6 changes: 5 additions & 1 deletion PRIVACY.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,13 @@ With regards to the above-defined statements, to improve our Type4Py model and c
# Telemetry
## Prediction requests:
- **Hashed IP addresses**: Helps to uniquely identify prediction requests and active users. Note that a hashed IP cannot be decoded and makes users anonymous. E.g. `8a0872388f0f1...`
- **Session ID**: Helps to relate prediction requests to the accepted types if shared. E.g. `OTDw5LGgL1BE...`
- **Activation ID**: A random unique string that is generated upon the installation of the extension. It helps us to identify users at the same organization while keeping them anonymous. E.g. `31ea3e5...`
- **Session ID**: A random unique string that is generated by our server. It helps to relate prediction requests to the accepted types if shared. E.g. `OTDw5LGgL1BE...`
- **File hash**: The hash of files' absolute path, which allows us to identify prediction requests for different Python files. E.g. `8dc18307...`
- **Start and finish time** for prediction requests which help us measure the performance of the Type4Py model and its pipeline for future improvements. E.g. `2021-07-14 15:50:58`
- **Errors/Exceptions** that occur at the server-side. It helps to solve issues related to our pipeline and deliver a better user experience. E.g. `Syntax or parse errors`
- **Extracted features**: This is a JSON object containing type hints that are used for querying the Type4Py model. Note that the JSON object does NOT contain complete source code that can be run or re-used. The extracted features are stored solely for research and improving the model's prediction quality. See a test JSON file [here](https://github.com/saltudelft/type4py/blob/server/type4py/server/tests/resources/test_file1_exp.json) as an example.
- **Extension version**: The version of the extension a user has installed. It allows us to ignore certain records after/before a certain version. E.g. `0.1.3`

## Accepted type predictions:
**NOTE: We gather the following data if the VSCode telemetry is enabled. If not, we explicitly ask users whether they want to share the below data.**
Expand All @@ -20,5 +23,6 @@ With regards to the above-defined statements, to improve our Type4Py model and c
- **Type slot**: The accepted type belongs to one of these: `Parameter`, `ReturnType`, or `Variable`.
- **Identifier names** for which a predicted type is accepted. In the future, they might be used to improve the model's predictions based on accepted types. E.g. `path_name`
- **Identifiers' line number**: It can be used to locate identifiers in the JSON object of extracted features. E.g. `17`
- **Canceled prediction**: Whether type predictions for a particular type slot are canceled or rejected by the user. It aids us to identify Type4Py's incorrect predictions for research. E.g., `FALSE`
- **Filtered predictions**: Whether the predictions filtering setting is enabled. E.g. `TRUE`
- **Timestamp**: The date of inserted records. E.g. `2021-07-14 15:51:04`
Loading

0 comments on commit 92d6edd

Please sign in to comment.