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

Fixing the analytics side-channel for curriculum learning. #5586

Merged
merged 4 commits into from
Oct 18, 2021

Conversation

cmard
Copy link
Contributor

@cmard cmard commented Oct 13, 2021

Proposed change(s)

Fixing the bug where curriculum learning would crash because the of the incorrect run_options parsing.

Types of change(s)

  • Bug fix
  • New feature
  • Code refactor
  • Breaking change
  • Documentation update
  • Other (please describe)

Checklist

  • Added tests that prove my fix is effective or that my feature works
  • Updated the changelog (if applicable)
  • Updated the documentation (if applicable)
  • Updated the migration guide (if applicable)

Other comments

@CLAassistant
Copy link

CLAassistant commented Oct 13, 2021

CLA assistant check
All committers have signed the CLA.

Copy link
Contributor

@hvpeteet hvpeteet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Chingiz, really appreciate the quick fix on this 🥇

Approval granted once CLA check is passed and you update the PR description.

Comment on lines 36 to 38
def test_sanitize_run_options():
run_options = RunOptions.from_dict(yaml.safe_load(test_curriculum_config_yaml))
TrainingAnalyticsSideChannel._sanitize_run_options(run_options)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Love more tests, while you are here would you mind adding a couple of checks to see that the fields are actually hashed correctly. Maybe something like:

Suggested change
def test_sanitize_run_options():
run_options = RunOptions.from_dict(yaml.safe_load(test_curriculum_config_yaml))
TrainingAnalyticsSideChannel._sanitize_run_options(run_options)
def test_sanitize_run_options():
run_options = RunOptions.from_dict(yaml.safe_load(test_curriculum_config_yaml))
sanitized = TrainingAnalyticsSideChannel._sanitize_run_options(run_options)
assert 'param_1' not in sanitized['environment_parameters']
assert TrainingAnalyticsSideChannel.hash('param_1') in sanitized['environment_parameters']

(I haven't checked to see if this passes)

Copy link
Contributor

@maryamhonari maryamhonari left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, please add a line in this PR description and changelog under bugfixes for posterity.

Co-authored-by: Maryam Honari <honari.m94@gmail.com>
@cmard cmard merged commit 05c0275 into main Oct 18, 2021
@delete-merged-branch delete-merged-branch bot deleted the fix-curriculum-bugfix branch October 18, 2021 14:06
maryamhonari added a commit that referenced this pull request Nov 4, 2021
* Fixing the analytics side-channel for curriculum learning.

* Made a more robust test.

* Update the changelog.

* Update com.unity.ml-agents/CHANGELOG.md

Co-authored-by: Maryam Honari <honari.m94@gmail.com>

Co-authored-by: Maryam Honari <honari.m94@gmail.com>
maryamhonari added a commit that referenced this pull request Nov 4, 2021
…5512) harden analytics (#5604)

* Harden user PII protection logic and extend TrainingAnalytics to expose detailed configuration parameters. (#5512)

* Hash128 is not a cryptographic hash, replace with HMAC-SHA256.

* Extend TrainingAnalytics side channel to expose configuration details

* Change member function scopes and hash demo_paths

* Extract tbiEvent hashing method and add test coverage

* Fixing the analytics side-channel for curriculum learning. (#5586)

* Fixing the analytics side-channel for curriculum learning.

* Made a more robust test.

* Update the changelog.

* Update com.unity.ml-agents/CHANGELOG.md

Co-authored-by: Maryam Honari <honari.m94@gmail.com>

Co-authored-by: Maryam Honari <honari.m94@gmail.com>

* update CHANGELOG

Co-authored-by: Jason Bowman <jasonb@unity3d.com>
maryamhonari added a commit that referenced this pull request Nov 4, 2021
* update package version from 2.0.0 to 2.0.1

* Update README.md with new survey link(#5500) (#5585)

Co-authored-by: jmercado1985 <75792879+jmercado1985@users.noreply.github.com>

* [Cherry-pick for 2.0.1 verified patch] default analytics channel (#5511) (#5584)

* update changelog from #5511

* set gym=0.20.0 #5540, update changelog

* Cap cattrs version for now(#5397)

* clean up

Co-authored-by: Vincent-Pierre BERGES <vincentpierre@unity3d.com>
Co-authored-by: Ruo-Ping Dong <ruoping.dong@unity3d.com>

* Cherry picking #5283 and #5519 into 2.0.1-verified-patch to fix gRPC for mac m1 (MLA 2259) (#5602)

* Only update the native library and the c# calls that need to be made to clean up channels. (#5283)

* Fix Mac backcompat test (#5519)

Co-authored-by: Chris Goy <christopherg@unity3d.com>

* [Cherry-pick for 2.0.1 verified patch]Harden user PII in analytics (#5512) harden analytics (#5604)

* Harden user PII protection logic and extend TrainingAnalytics to expose detailed configuration parameters. (#5512)

* Hash128 is not a cryptographic hash, replace with HMAC-SHA256.

* Extend TrainingAnalytics side channel to expose configuration details

* Change member function scopes and hash demo_paths

* Extract tbiEvent hashing method and add test coverage

* Fixing the analytics side-channel for curriculum learning. (#5586)

* Fixing the analytics side-channel for curriculum learning.

* Made a more robust test.

* Update the changelog.

* Update com.unity.ml-agents/CHANGELOG.md

Co-authored-by: Maryam Honari <honari.m94@gmail.com>

Co-authored-by: Maryam Honari <honari.m94@gmail.com>

* update CHANGELOG

Co-authored-by: Jason Bowman <jasonb@unity3d.com>

Co-authored-by: jmercado1985 <75792879+jmercado1985@users.noreply.github.com>
Co-authored-by: Vincent-Pierre BERGES <vincentpierre@unity3d.com>
Co-authored-by: Ruo-Ping Dong <ruoping.dong@unity3d.com>
Co-authored-by: Jason Rupert <92821409+jrupert-unity@users.noreply.github.com>
Co-authored-by: Chris Goy <christopherg@unity3d.com>
Co-authored-by: Jason Bowman <jasonb@unity3d.com>
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 18, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants