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

Update agoric-sdk #40

Open
anilhelvaci opened this issue Oct 21, 2022 · 5 comments
Open

Update agoric-sdk #40

anilhelvaci opened this issue Oct 21, 2022 · 5 comments
Assignees

Comments

@anilhelvaci
Copy link
Owner

anilhelvaci commented Oct 21, 2022

  • Update the agoric-sdk to the commit hash fedf049435d7307311219fbab1b2b342ec6acce8
  • Take into consideration this issue when updating ava from version 3 to 4.
@anilhelvaci anilhelvaci self-assigned this Oct 21, 2022
@anilhelvaci anilhelvaci added this to the Update agoric-sdk milestone Oct 21, 2022
anilhelvaci added a commit that referenced this issue Oct 21, 2022
anilhelvaci added a commit that referenced this issue Oct 24, 2022
…amm from the econ-behaviors.js, started updating params.js
@anilhelvaci
Copy link
Owner Author

anilhelvaci commented Oct 24, 2022

Note on ParamManager

Methods makeParamManagerSync and makeParamManager are now expecting an argument names publisherKit which requires a storageNode and marshaller object as dependencies. There are sample usages in startVaultFactory, params.js. Since we need to build some paramManagers inside our LendingPool contract, I'm a little fuzzy about how to do that. Currently vaultManager.js expects the dependencies for publisherKit from the privateArgs. I can see how to replicate this approach when working with unit tests but I cannot project how to retrieve storageNode and marshaller objects when I actually deploy the contract.

Update

In the Office Hours on 2022-10-26, I've been told that there's no way for an arbitrary contract to get their hands on the storageNode object during an actual deploy. For demonstration, we've came up with two possible workarounds;

  • Pass a regular subscription object to the ParamManager instead of the one using a storageNode. The downside of that users will have to pay for transactions to get state updates.
  • Who's going to have access to storageNode is determined on bootstrap statically. If the demonstration is going to be on the local chain we can tweak the bootstrap mechanism to give our LendingPool contract access to the storageNode.

anilhelvaci added a commit that referenced this issue Oct 25, 2022
…mported ones instead, should update timer.tick() and test numbers
@anilhelvaci
Copy link
Owner Author

Work Report

  • Should update timer.tick() to timer.advanceTo(bigint=) in all tests
  • Since the quantize method of ratio.js uses banker's divide approach instead of directly ceiling up the numerators as a rounding strategy, I should update all the tests where I use quantize for calculation, e.g borrowingRate

@anilhelvaci
Copy link
Owner Author

Work above is done

@anilhelvaci
Copy link
Owner Author

Update to community-dev branch upon @dckc 's advice on discord

after some testing, community-dev = master = 65d3f14c8102993168d2568eed5e6acbcba0c48a
@anil.helvaci | GMT +3 note update to community-dev branch

@dckc
Copy link

dckc commented Dec 21, 2022

Note on ParamManager

... on 2022-10-26, I've been told that there's no way for an arbitrary contract to get their hands on the storageNode object during an actual deploy. For demonstration, we've came up with two possible workarounds;

...

  • Who's going to have access to storageNode is determined on bootstrap statically. If the demonstration is going to be on the local chain we can tweak the bootstrap mechanism to give our LendingPool contract access to the storageNode.

We discussed another approach to this issue last week:

Until we have a lower threshold, for local development, devs have all the BLD in the world, so they can grant chainStorage powers to their contracts using swingset.CoreEval governance.

The Dec 14 office hours notes include a zoom recording of the discussion.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants