このプラグインは、Diamond Standard準拠のコントラクトのネイティブサポートを提供しますが、Diamondとそのファセットの手動展開とセットアップを許可していないようです。 より正確には、次のコードを使用します。https :
ただし、サポートされているアプローチを使用して蛇口を使用してダイヤモンドをデプロイすると、プラグインはread()/ execute()を使用してダイヤモンドと正しく対話できます(例:https://github.com/ARM-Finance/kingmaker/blob/1e7bb406e99108e8a87076d6fcc33d13be59df58 /protocol/deploy/01B_kingmaker_cowl.ts#L19)。 コードでこの動作を指摘できますか?
私のアプローチの理論的根拠は、既存のファセットを追跡することに縛られず、DiamantaireコードとプラグインAPIから判断して、異なるファセットを持つ新しいDiamondを一見再デプロイすることを強制されたくないという願望です(例:
await diamond.deploy('ADiamondContract', {
from: deployer,
owner: diamondAdmin,
facets: ['Facet1', 'Facet2', 'Facet3'],
});
await diamond.deploy('ADiamondContract', {
from: diamondAdmin, // this need to be the diamondAdmin for upgrade
owner: diamondAdmin,
facets: ['NewFacet', 'Facet2', 'Facet3'],
});
ちょっと@lepidotteriは、Diamondの作業はまだベータ版であり、しばらくの間、私はそれを処理する時間がなかったことに注意してください。 すぐにそれを見るリソースがあるとは思えません。 混乱を避けるため、当面はドキュメントから削除する予定です。
ただし、問題に関しては、Diamondのどの実装を使用していますか?
ちょっと@lepidotteriは、Diamondの作業はまだベータ版であり、しばらくの間、私はそれを処理する時間がなかったことに注意してください。 すぐにそれを見るリソースがあるとは思えません。 混乱を避けるため、当面はドキュメントから削除する予定です。
こんにちは、説明をありがとうございます。プラグインは価値が高すぎて信頼できないので、同意する場合は、現在のDiamond Standardサポートを更新して改善することを唯一の目的として、私たち自身の組織のためにフォークします。
ただし、問題に関しては、Diamondのどの実装を使用していますか?
私はここで3番目のものを使用しています: https : ください(例: //github.com/ARM -Finance / kingmaker / blob /59dac1fb94f6aa3cb84dc4d84a536c9acedfe9ea/protocol/deploy/governance/02_kingmaker_governance_facet.ts#L32execute ()はここで失敗します。 '、「カスタム」ダイヤモンドABIに対して)。
また、私にとても早く返事をくれてありがとう、とても感謝しています
それで、ABIのチェックを実行するときにethers.jsが問題を引き起こすのを回避する方法はありますか? https://github.com/wighawag/hardhat-deploy/blob/a842674b5a5a47ad2ee5b91c2fae1d3e1840e9b6/src/helpers.ts#L48 -L56
@lepidotteriはい、あなたが見るようにABIにdiamondCutFactが含まれているので、なぜそれがあなたのケースで機能しないのか
deployments/<network name>/Crown.json
ファイルに表示されます。
フォークに関しては、PRしていただければ幸いです。 含まれることを目標に、レビューさせていただきます。
ありがとう
最新のhardhat-deployは、ダイヤモンドのサポートを刷新しました。 問題がある場合は再開します
最も参考になるコメント
最新のhardhat-deployは、ダイヤモンドのサポートを刷新しました。 問題がある場合は再開します