Estou enfrentando um problema em que o ID de assinatura retornado pelo meu script é diferente daquele mostrado em vrf.chain.link para a rede Sepolia, o que quando tento financiar o subid do meu script resulta em InvalidSubscriptionId.
Testcreatesubscription.s.sol:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;
import {Script} from "forge-std/Script.sol";
import {CodeConstants} from "script/HelperConfig.s.sol";
import {IVRFCoordinatorV2Plus} from "@chainlink/contracts/src/v0.8/vrf/dev/interfaces/IVRFCoordinatorV2Plus.sol";
import {console} from "forge-std/console.sol";
contract CreateSubscription is Script,CodeConstants{
function run() public{
createsubscription_onsepolia();
}
function createsubscription_onsepolia() public {
if(block.chainid == ETH_SEPOLIA_CHAN_ID){
vm.startBroadcast(0x57099326F00d72E00dc4416FF638136853E5330e);
uint256 subid = IVRFCoordinatorV2Plus(0x9DdfaCa8183c41ad55329BdeeD9F6A8d53168B1B).createSubscription();
vm.stopBroadcast();
console.log("subid on sepolia: ",subid);
}
}
}
quando executo o script forge script/Testcreatesubscription.s.sol:CreateSubscription --rpc-url $SEPOLIA_RPC_URL --account sepolia_testing_account --broadcast -vvvv
sepolia_testing_account é minha conta metamask, que armazenei no keystore.
resultado dos logs:
== Logs == subsídio em sepolia: 1756636573672805867076888413.....
Configurando 1 EVM.
Rastros simulados na cadeia:
[88720] VRFCoordinatorV2_5::createSubscription() ├─ emitir SubscriptionCreated(subId: 175663657367280586707688841388762055..... [1.756e76], proprietário: 0x57099....) └─ ← [Retornar] 1756636573672805867076888413887... [1.756e76]
==========================
Corrente 11155111
Preço estimado do gás: 0,724514652 gwei
Total estimado de gás usado para script: 151638
Quantidade estimada necessária: 0,000109863952799976 ETH
=========================== Insira a senha do keystore:⠂ Sequência nº 1 em sepolia
sepolia ✅ [Sucesso] Hash: 0x93a569514837d5d7dd8f525e1fdf105b541fde506522cf9c6b7d0173779c0da7 Bloco: 8028451 Pago: 0,000043162465117744 ETH (109784 gás * 0,393158066 gwei)
✅ Sequência nº 1 em sepolia | Total pago: 0,000043162465117744 ETH (109784 gás * média de 0,393158066 gwei)
Embora os logs do script mostrem que meu ID de assinatura é 175663657367280586707688841388762055..., quando verifico vrf.chain.link na rede Sepolia, vejo um ID de assinatura completamente diferente: 426994294831235659204431318963817900788974...
Estou lutando com isso há horas, e nem o ChatGPT conseguiu descobrir. Alguém sabe o que posso estar fazendo errado? Qualquer ajuda seria muito apreciada!