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

test-controller activity-hash check is too sensitive #3718

Closed
warner opened this issue Aug 18, 2021 · 0 comments · Fixed by #3719
Closed

test-controller activity-hash check is too sensitive #3718

warner opened this issue Aug 18, 2021 · 0 comments · Fixed by #3719
Assignees
Labels
bug Something isn't working SwingSet package: SwingSet

Comments

@warner
Copy link
Member

warner commented Aug 18, 2021

Describe the bug

@kriskowal made a minor change to some code (probably assert) which gets folded into one of the built-in vats , and found that test-controller.js started to fail.

As part of #3442 , we fold kernel state into this "activity hash", and that state includes the vat bundles for all the built-in vats, such as comms and vatAdmin. These vats, in turn, are built by calling bundleSource on code from the swingset package, but the bundling process pulls in a number of external libraries (including marshal and assert). So any changes in those upstream libraries will cause the initial activity hash to be different.

Basically, the test is too sensitive. The plan is to downgrade it to merely assert that controller.getActivityhash() works at all, and returns a hash-shaped string, but not assert the actual value.

@warner warner added bug Something isn't working SwingSet package: SwingSet labels Aug 18, 2021
@warner warner self-assigned this Aug 18, 2021
warner added a commit that referenced this issue Aug 18, 2021
The kernel "activity hash" is sensitive to everything written into the
kvstore, including the bundled sources of built-in vats (like comms and
vatAdmin), which include upstream libraries like marshal and assert. This
makes the hash sensitive to a significant amount of code, and test-controller
was asserting a specific value. This required updating the test's
expectations on every code changes.

Instead, we now merely check that `controller.getActivityhash()` returns a
correctly-shaped string, instead of examining the actual value.

closes #3718
warner added a commit that referenced this issue Aug 18, 2021
The kernel "activity hash" is sensitive to everything written into the
kvstore, including the bundled sources of built-in vats (like comms and
vatAdmin), which include upstream libraries like marshal and assert. This
makes the hash sensitive to a significant amount of code, and test-controller
was asserting a specific value. This required updating the test's
expectations on every code changes.

Instead, we now merely check that `controller.getActivityhash()` returns a
correctly-shaped string, instead of examining the actual value.

closes #3718
warner added a commit that referenced this issue Aug 18, 2021
The kernel "activity hash" is sensitive to everything written into the
kvstore, including the bundled sources of built-in vats (like comms and
vatAdmin), which include upstream libraries like marshal and assert. This
makes the hash sensitive to a significant amount of code, and test-controller
was asserting a specific value. This required updating the test's
expectations on every code changes.

Instead, we now merely check that `controller.getActivityhash()` returns a
correctly-shaped string, instead of examining the actual value.

closes #3718
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working SwingSet package: SwingSet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant