-
Notifications
You must be signed in to change notification settings - Fork 206
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
Mysterious SES_ALREADY_LOCKED_DOWN failure when using @endo/init/debug.js #5570
Comments
I’ve isolated the root cause. If the test imports We can fix this immediately by changing both to |
Does this mean that |
I believe the correct solution is to introduce state in the |
We do unconditionally reject calling lockdown again, and this issue illustrates that failure mode. I’m weary of accidentally downgrading lockdown in an import-order dependent way and I do think this error has guided us to improve the software. I agree that the error, as presented here, is a bad developer experience. The underlying error reveals the stack at both points at lockdown, and ava occluded the stacks, even with verbose stack filtering. To debug this, I instrumented a log with both the stack and PID into the SES version in the working copy, which is not something I’d expect a downstream developer to be able to do. However, we could include instructions in the error message or linked error code documentation to use another lockdown option to unconditionally log the stack and PID at lockdown. |
I think I have a recommendation. The current behaviour (fail fast if already locked down by anything else) should be implemented by |
agoric-sdk/packages/cosmic-swingset/test/test-clean-core-eval.js
Line 1 in 09b239d
Changing this to '@endo/init/debug.js' but that fails with SES_ALREADY_LOCKED_DOWN for reasons we have not yet diagnosed.
See #5567
The text was updated successfully, but these errors were encountered: