-
Notifications
You must be signed in to change notification settings - Fork 39
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
Improvements to Orchestration Key-Concepts Page #1201
Conversation
Deploying documentation with Cloudflare Pages
|
Cloudflare deployment logs are available here |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I defer to @mitdralla and @Jovonni
Example: "Creating your Dapp from a Template" -> "Creating from a Template"
or visit https://classic.yarnpkg.com/en/docs/install for more information -> or visit the official yarn package
|
@mitdralla thanks for your comments. They are very helpful and I or @mujahidkay will create a separate issue based on your feedback. My current PR is about a (key concepts and APIs) page in our new orchestration section. If you can also provide feedback on that it would be great. Below is a direct link to the updated page that needs to be reviewed: Sorry for the confusion - I should have been clearer when I requested feedback. Looking forward. |
``` | ||
|
||
### ChainHub | ||
## ChainHub |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please make this section (ChainHub) consistent with previous two sections with regard to listing different APIs separately. For example I think you can add two sub-headings for registerChain and registerConnection in this section.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i agree, and take the opportunity to explain each. This is a good set of api functions though
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@amessbee i'd say its good this is prob the only comment to address before merging.
|
||
### Orchestration Account | ||
## Interchain Account (ICA) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, please maket his section consistent by adding APIs subsections. Also currently it seems to be vague and marketing speak. For example, it is not clear to me at first what is ICA after all in the code example bellow.
Are omniAccount and localAccount ICA objects? If yes, then can you add getAddress, delegate, and transferSteps as API subsections in this ICA section?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was thinking of removing this subsection but kept it for now. I don't understand it well enough to be certain, but I believe we do not use the ICA in the code that is externally accessible to the developers. Rather we use the orchestration account that I already explain above.
410ad28
to
1b0bf9c
Compare
d90ef38
to
9550bc3
Compare
ea29202
to
d80469b
Compare
Removing myself. This is DevRel purview. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks very good. Thanks for updating this page. I am approving from the editorial side. From the technical side, @Jovonni can have a quick look. If there are any minor technical issues, I would request to make subsequent PRs after merging this.
### Registration APIs | ||
|
||
- `registerChain` register a new chain with `chainHub`. The name will override a name in well known chain names. If a | ||
durable zone was not provided, registration will not survive a reincarnation of the vat, and will have to be |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was able to follow the flow of these docs up until i read reincarnation of the vat especially since we haven't discussed it in orchestration docs before. What exactly is it? I think everything after the first sentence should be additional info presented in a tip
section
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IIRC "incarnation" represents before & after an upgrade.
After an upgrade you have a new incarnation. Maybe think of "version" when you see this.
Before an upgrade, the vat may be incarnation # 1, and then after an upgrade, the vat may be incarnation # 2
d0ba308
to
3b38b50
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work! Please consider squashing the recent commits into an appropriate parent commit
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
left a few comments, its coming together nicely
|
||
### Interchain Account (ICA) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is there a reason why we are removing all education on interchain accounts? would like to understand this decision. If the team supports it then so be it, but I've found developers usually don't have an understanding on what an ICA is.
Although it can still be debated whether or not its useful, we have found it useful to explain it to them, and why its important. Other than that, orchestration accounts seem like magic.
|
||
A key advantage of ICAs is that they make accounts on other chains look like any other (remotable) object. When a contract creates an ICA, it has sole access to and control over the account but can delegate certain forms of access to its clients. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
any reason we are removing this?
|
||
Orchestration accounts are a key concept in the Agoric Orchestration API, represented by the [`OrchestrationAccountI`](https://agoric-sdk.pages.dev/interfaces/_agoric_orchestration.OrchestrationAccountI) interface. These accounts provide high-level operations for managing accounts on remote chains, allowing seamless interaction and management of interchain accounts. The orchestration accounts abstract the complexity of interchain interactions, providing a unified and simplified interface for developers. | ||
```javascript | ||
const [agoric, remoteChain] = await Promise.all([ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not sure its helpful, but I find myself being asked, "what does promise.all do?" more often that I expected when showing this 👀
|
||
- `getAddress` retrieves the address of the account on the remote chain. | ||
|
||
```javascript | ||
const address = await orchestrationAccount.getAddress() | ||
``` | ||
|
||
**2. Balance Management** | ||
### Balance Management |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is happening under the hood here, is IF we invoke getBalance
on an remote account, this is actually an Interchain Query (ICQ). We can probably take the opportunity to briefly explain this here if this is the first time they see it.
Example from orch dapp contract:
const remoteChainBalance = await remoteAccount.getBalance('uosmo');
``` | ||
|
||
### ChainHub | ||
## ChainHub |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i agree, and take the opportunity to explain each. This is a good set of api functions though
@Jovonni thanks a lot for detailed review and comments. In essence, what we are doing here, everything that is not absolutely necessary for devs and posting it in a separate page: PR #1209. WDYT? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 🚀 , this is the only thing to address:
https://github.com/Agoric/documentation/pull/1201/files#r1755891367
``` | ||
|
||
### ChainHub | ||
## ChainHub |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@amessbee i'd say its good this is prob the only comment to address before merging.
@Jovonni this comment by @toliaqat has already been addressed - if you look at the file |
5ac83ac
to
6914698
Compare
6914698
to
f4e2d72
Compare
Co-authored-by: Mujahid Khan <[email protected]> Co-authored-by: Mujahid Khan <[email protected]> Co-authored-by: Mujahid Khan <[email protected]>
f4e2d72
to
ecb07fb
Compare
Here is a list of changes:
Orchestration Key Concept Page Rendered
Refs: