Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 34 additions & 54 deletions deployments/base-sepolia.contracts-manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -56,53 +56,29 @@
"constructorArgs": []
},
"AssuranceContractFactory": {
"contractName": "AssuranceContractFactory",
"address": "0x8028C5575089f21e9C6C56f78749BCa22b964Cb2",
"fingerprint": "1401a71f791b49e70d6db2a99b7c9aa6a0599ad530bfeabc01af229579372568",
"address": "0x630020DEE94ce77D40A992fA64C1f995Fa9D3e61",
"reused": false,
"constructorArgs": [],
"blockNumber": 46352245,
"tx": "0xebae0b671d47d4e147196f64ad60bda466344d8202257a9dc7a3a70d1776ec44"
"deployedAt": "2026-09-11T22:13:46.553Z"
},
"PremintingERC1155Factory": {
"contractName": "PremintingERC1155Factory",
"address": "0x65dB7FD2009341bDB5ACCC5E7cE02a0e1493Dfe8",
"fingerprint": "ec0c5feb1f2ddd3eb30ee05c4729c9e21890d50e5caa438d5f93654db290010b",
"address": "0xc39e4e53241F1a3a016a7D2ab78eB1B09d1705e4",
"reused": false,
"constructorArgs": [],
"blockNumber": 46352246,
"tx": "0x65084c0828caeab93cff7b854a845d74579f4c8c7d54b52649fa0dd9dbb90516"
"deployedAt": "2026-09-11T22:13:46.553Z"
},
"DelegatableNotes": {
"contractName": "DelegatableNotes",
"address": "0xD43b1b8AD24EaDc21AC419180b9FfB700FB62Ba6",
"fingerprint": "dd91f3f7d4ccd966ccc7a195c0921d7962801e9f0947053c3d31ddc793b4e901",
"address": "0xE86202BA10176301138326Af8E1033aee7841B6E",
"reused": false,
"constructorArgs": [
"0x8028C5575089f21e9C6C56f78749BCa22b964Cb2"
],
"blockNumber": 46352247,
"tx": "0x8d87e361f7e7b1a1e46ceafdae2d3e4cf15e9e60a2da4c65ecffffbfac107b57"
"deployedAt": "2026-09-11T22:13:46.553Z"
},
"RecurringPledges": {
"contractName": "RecurringPledges",
"address": "0x215e3Db0A81eE92d2E79666caC726411632a1a62",
"fingerprint": "59b5d953dde9dff48a41178f614c2e1cc67fdfbdab384712d5a391aaa83512c2",
"address": "0xE06af886A533a266547CA8D14c62aa7C33244033",
"reused": false,
"constructorArgs": [
"0xD43b1b8AD24EaDc21AC419180b9FfB700FB62Ba6"
],
"blockNumber": 46352247,
"tx": "0xaf067ca8536e57ed8204275dfb0c63ed7e5519ee0e2e036edf50a893842a7650"
"deployedAt": "2026-09-11T22:13:46.553Z"
},
"ValueThresholdConditionFactory": {
"contractName": "ValueThresholdConditionFactory",
"address": "0x7ab6E30e014a661Cc552B6ba0080F7e63ff12769",
"fingerprint": "9bc3b678a4af017d290d8f1c2e226f5bda9f7da3339a8f906b9082d4691da459",
"address": "0xd7cA820ceb3a8dEAc2a59db8F837874a3543ecac",
"reused": false,
"constructorArgs": [],
"blockNumber": 46352248,
"tx": "0x27cd6dced3f864b111d17e8aeed19c2fec3a2cbb708c7b3513eb9106702b67d6"
"deployedAt": "2026-09-11T22:13:46.553Z"
},
"FreeERC20": {
"contractName": "FreeERC20",
Expand All @@ -127,13 +103,9 @@
"tx": "0x56cc94a67dbc8aa7fb897148bff95b58b2e2baa663f5977468eda1d8814c925f"
},
"ContentRegistry": {
"contractName": "ContentRegistry",
"address": "0x09786e4F2423b92FA2af4C82A49ff9d3394E6759",
"fingerprint": "04f831c65b9599c46e437d8f0ab858b1f5dc2a540dee3c9b9135842e795e3363",
"address": "0x957fA3C1e87ec389657C59D44982092930DAeA23",
"reused": false,
"constructorArgs": [],
"blockNumber": 46352249,
"tx": "0xda94e95f1cd994786edf82aa4fedce0d79b2c593b398dcfba300f3d69357b1b0"
"deployedAt": "2026-09-11T22:13:46.553Z"
},
"ChannelRegistry": {
"contractName": "ChannelRegistry",
Expand All @@ -159,21 +131,9 @@
"tx": "0x6f3f5b1ed2e250756b5c5742282cc88accb19f36c01614db6888a7a163fce80c"
},
"CreatorAssuranceContractFactory": {
"contractName": "CreatorAssuranceContractFactory",
"address": "0xC079f714228233A2b2dD6fB67451034a70819466",
"fingerprint": "47a00da5dcefcc0a2b47a6144b24d4f8c575879fc2d8789be04575b8d4375479",
"address": "0x45a6E285F904615e4e8B6d57b8452dFC41f3412f",
"reused": false,
"constructorArgs": [
"0x09786e4F2423b92FA2af4C82A49ff9d3394E6759",
"0x751DD0d32cBC4DbAB51491305a710ca0ef581002",
"0x30758d0b85CB9c98aFE4E9c23F5ADe70A0EeF7A0",
"0x65dB7FD2009341bDB5ACCC5E7cE02a0e1493Dfe8",
"0x7ab6E30e014a661Cc552B6ba0080F7e63ff12769",
"0x35849b41E015FBa6Eba4002444C2984333B5dE38",
":"
],
"blockNumber": 46352252,
"tx": "0x883aa0c23ad53af4f0c79f346303c619c9608714365ad0a690c656fb49170bf1"
"deployedAt": "2026-09-11T22:13:46.553Z"
},
"ProspectiveRoundDeploymentHelper": {
"contractName": "ProspectiveRoundDeploymentHelper",
Expand Down Expand Up @@ -254,6 +214,26 @@
3600,
"1000000"
]
},
"BeneficiaryVerifier": {
"address": "0xB3CE99996a3B72A79c90cF5BFE9f9545F51A8717",
"reused": false,
"deployedAt": "2026-09-11T22:13:46.553Z"
},
"BeneficiaryRegistry": {
"address": "0x1b0aD5c99846F0C58F66D04dE4d6010f73811c00",
"reused": false,
"deployedAt": "2026-09-11T22:13:46.553Z"
},
"BeneficiaryEscrow": {
"address": "0xd80d864f9caDACDd5955653D7e0f9795eefBfbCd",
"reused": false,
"deployedAt": "2026-09-11T22:13:46.553Z"
},
"CreatorAssuranceVeto": {
"address": "0x30Ae4d162fDd8C281d1F5bb7ca1Bf4f0c28793BF",
"reused": false,
"deployedAt": "2026-09-11T22:13:46.553Z"
}
},
"needsAdminAcceptance": true
Expand Down
22 changes: 13 additions & 9 deletions deployments/base-sepolia.env
Original file line number Diff line number Diff line change
Expand Up @@ -87,31 +87,31 @@ ALIGNMENT_ATTESTATIONS_CONTRACT_ADDRESS=0xAc19417eE26f7795AEeAD374911932b412Ef80
ALIGNMENT_ATTESTATIONS_ADDRESS=0xAc19417eE26f7795AEeAD374911932b412Ef808d
PROJECT_ALIGNMENT_CONTRACT_ADDRESS=0xAc19417eE26f7795AEeAD374911932b412Ef808d
NOTE_INTENT_ADDRESS=0x8665DD3Fc75240D99066A768C227aA5Cf5179E2a
DELEGATABLE_NOTES_CONTRACT_ADDRESS=0xD43b1b8AD24EaDc21AC419180b9FfB700FB62Ba6
DELEGATABLE_NOTES_ADDRESS=0xD43b1b8AD24EaDc21AC419180b9FfB700FB62Ba6
DELEGATABLE_NOTES_CONTRACT_ADDRESS=0x91eB29B5A32D637bEe056b251d77aeC56e229Eb8
DELEGATABLE_NOTES_ADDRESS=0x91eB29B5A32D637bEe056b251d77aeC56e229Eb8
MUTABLE_REF_UPDATER_CONTRACT_ADDRESS=0x472f9A996546bcc7572692B002B63483F3cDB70e
MUTABLE_REF_UPDATER_ADDRESS=0x472f9A996546bcc7572692B002B63483F3cDB70e
ASSURANCE_CONTRACT_FACTORY_ADDRESS=0x8028C5575089f21e9C6C56f78749BCa22b964Cb2
ERC1155_FACTORY_ADDRESS=0x65dB7FD2009341bDB5ACCC5E7cE02a0e1493Dfe8
ETH_THRESHOLD_CONDITION_FACTORY_ADDRESS=0x7ab6E30e014a661Cc552B6ba0080F7e63ff12769
ASSURANCE_CONTRACT_FACTORY_ADDRESS=0x13939ECA44E853984300909Fd1de93A0D94bDf3e
ERC1155_FACTORY_ADDRESS=0x39b964804630079d530B33614DDC63b48a4241aa
ETH_THRESHOLD_CONDITION_FACTORY_ADDRESS=0xE832022450160E7FF6bb5d2EfB81A3B9967e6aa8
PAYMENT_TOKEN_ADDRESS=0x35849b41E015FBa6Eba4002444C2984333B5dE38
PAYMENT_TOKEN_SYMBOL=USDZZZ
PAYMENT_TOKEN_DECIMALS=6
PROJECT_FACTORY_ADDRESS=0x19455B64944882c15121EA9B88Da8A40b17efED7
CHANNEL_VERIFIER_ADDRESS=0x89597b2d9198aA401Ba54a884180546c03AD756a
CONTENT_REGISTRY_ADDRESS=0x09786e4F2423b92FA2af4C82A49ff9d3394E6759
CONTENT_REGISTRY_ADDRESS=0xf5553C6C0C99B58a96920b9176Df77807A2A65DF
CHANNEL_REGISTRY_ADDRESS=0x751DD0d32cBC4DbAB51491305a710ca0ef581002
CHANNEL_ESCROW_ADDRESS=0x30758d0b85CB9c98aFE4E9c23F5ADe70A0EeF7A0
CREATOR_CONTRACT_FACTORY_ADDRESS=0xC079f714228233A2b2dD6fB67451034a70819466
CREATOR_CONTRACT_FACTORY_ADDRESS=0xBA3f946b783c5f3ADbb2846cc0cBB7D76E64341F
NUDGE_PUBLICATIONS_CONTRACT_ADDRESS=0x94b76d80D7c837588299BDf1c29F5D46362e3427
# Render indexer currently starts near the first successful service deployment to
# avoid Alchemy free-tier rate limits during historical backfill. If the RPC plan
# is upgraded or stale history is needed, lower these and use a fresh Ponder schema.
CONTENT_FUNDING_START_BLOCK=42768673
START_BLOCK=42768673

RECURRING_PLEDGES_CONTRACT_ADDRESS=0x215e3Db0A81eE92d2E79666caC726411632a1a62
RECURRING_PLEDGES_ADDRESS=0x215e3Db0A81eE92d2E79666caC726411632a1a62
RECURRING_PLEDGES_CONTRACT_ADDRESS=0x422aBbCd22E3C4360540B7149015e83fd199D33c
RECURRING_PLEDGES_ADDRESS=0x422aBbCd22E3C4360540B7149015e83fd199D33c
CONTRACT_ADMIN_ADDRESS=0xAf4919660180Bff3D47c9A63230Fb437F8C9a0B5
# Canonical ERC-4337 EntryPoint v0.7 (same address across chains; verified deployed on Base Sepolia).
SPONSORED_GAS_ENTRY_POINT_ADDRESS=0x0000000071727De22E5E9d8BAf0edAc6f37da032
Expand All @@ -130,3 +130,7 @@ PROSPECTIVE_CONTENT_ROUND_FACTORY_ADDRESS=0x87965136DB0051214F1BB5E725787dA68C62
VITE_CAUSE_ASSIST_URL=https://commonality-cause-assist.onrender.com
VITE_IMPLICATION_ATTESTER_URL=https://commonality-service-host-attesters.onrender.com/implication-attester
CAUSE_ASSIST_COHERENCE_ATTESTER_ADDRESS=0x39e477B6D9776244849eea9f79FC890ADB25cCbA
BENEFICIARY_VERIFIER_ADDRESS=0xeF49EAc84fEC4C91de987f945FF327F07004840E
BENEFICIARY_REGISTRY_ADDRESS=0xF7eB805CE93F73DF3cCc8C80A32bD2F41026AE24
BENEFICIARY_ESCROW_ADDRESS=0x782957A09A3c4495f0F438653B120b2A7f64168a
CREATOR_ASSURANCE_VETO_ADDRESS=0x943d24348BB53197500E3Fc4BdB3B2b16aEFE7b7
32 changes: 25 additions & 7 deletions hardhat/scripts/deploy-incremental.js
Original file line number Diff line number Diff line change
Expand Up @@ -233,13 +233,31 @@ async function main() {
await deployOrReuse('BeneficiaryEscrow', 'BeneficiaryEscrow', [addresses.BeneficiaryRegistry, addresses.FreeERC20]);
await deployOrReuse('CreatorAssuranceContractFactory', 'CreatorAssuranceContractFactory', [addresses.ContentRegistry, addresses.BeneficiaryRegistry, addresses.BeneficiaryEscrow, addresses.PremintingERC1155Factory, addresses.ValueThresholdConditionFactory, addresses.FreeERC20, ':']);
if (addresses.CreatorAssuranceContractFactory) {
const factory = await ethers.getContractAt('CreatorAssuranceContractFactory', addresses.CreatorAssuranceContractFactory);
addresses.CreatorAssuranceVeto = await factory.contentVeto();
manifest.contracts.CreatorAssuranceVeto = {
contractName: 'CreatorAssuranceVeto',
address: addresses.CreatorAssuranceVeto,
reused: !freshlyDeployed.has('CreatorAssuranceContractFactory'),
};
try {
const factory = await ethers.getContractAt('CreatorAssuranceContractFactory', addresses.CreatorAssuranceContractFactory);
addresses.CreatorAssuranceVeto = await factory.contentVeto();
} catch (err) {
// Fallback: manually query using raw call with correct function selector
console.log('Warning: contentVeto() call failed, trying manual query...');
const provider = ethers.provider;
const result = await provider.call({
to: addresses.CreatorAssuranceContractFactory,
data: '0x49e689d5' // contentVeto() selector
});
if (result && result !== '0x') {
addresses.CreatorAssuranceVeto = ethers.getAddress('0x' + result.slice(-40));
console.log(`Successfully queried CreatorAssuranceVeto: ${addresses.CreatorAssuranceVeto}`);
} else {
console.error('Failed to query CreatorAssuranceVeto address');
}
}
if (addresses.CreatorAssuranceVeto) {
manifest.contracts.CreatorAssuranceVeto = {
contractName: 'CreatorAssuranceVeto',
address: addresses.CreatorAssuranceVeto,
reused: !freshlyDeployed.has('CreatorAssuranceContractFactory'),
};
}
}
await deployOrReuse('ProspectiveRoundDeploymentHelper', 'ProspectiveRoundDeploymentHelper');
await deployOrReuse('MaterializedContentDeploymentHelper', 'MaterializedContentDeploymentHelper');
Expand Down
16 changes: 7 additions & 9 deletions indexer/ponder.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ import { ContentRegistryAbi } from "./abis/ContentRegistryAbi";
import { BeneficiaryRegistryAbi } from "./abis/BeneficiaryRegistryAbi";
import { BeneficiaryEscrowAbi } from "./abis/BeneficiaryEscrowAbi";
import { CreatorAssuranceContractFactoryAbi } from "./abis/CreatorAssuranceContractFactoryAbi";
// import { CreatorAssuranceVetoAbi } from "./abis/CreatorAssuranceVetoAbi"; // TODO: Uncomment after redeploying contracts
import { CreatorAssuranceVetoAbi } from "./abis/CreatorAssuranceVetoAbi";
import { ProspectiveContentRoundFactoryAbi } from "./abis/ProspectiveContentRoundFactoryAbi";
import { MaterializedContentTokensAbi } from "./abis/MaterializedContentTokensAbi";

Expand Down Expand Up @@ -216,7 +216,7 @@ const CONTENT_REGISTRY_DEPLOYMENTS = getDeployments("ContentRegistry", "CONTENT_
const BENEFICIARY_REGISTRY_DEPLOYMENTS = getDeployments("BeneficiaryRegistry", "BENEFICIARY_REGISTRY_ADDRESS", CONTENT_FUNDING_START_BLOCK);
const BENEFICIARY_ESCROW_DEPLOYMENTS = getDeployments("BeneficiaryEscrow", "BENEFICIARY_ESCROW_ADDRESS", CONTENT_FUNDING_START_BLOCK);
const CREATOR_CONTRACT_FACTORY_DEPLOYMENTS = getDeployments("CreatorAssuranceContractFactory", "CREATOR_CONTRACT_FACTORY_ADDRESS", CONTENT_FUNDING_START_BLOCK);
// const CREATOR_ASSURANCE_VETO_DEPLOYMENTS = getDeployments("CreatorAssuranceVeto", "CREATOR_ASSURANCE_VETO_ADDRESS", CONTENT_FUNDING_START_BLOCK); // TODO: Uncomment after redeploying contracts
const CREATOR_ASSURANCE_VETO_DEPLOYMENTS = getDeployments("CreatorAssuranceVeto", "CREATOR_ASSURANCE_VETO_ADDRESS", CONTENT_FUNDING_START_BLOCK);
const PROSPECTIVE_FACTORY_DEPLOYMENTS = getDeployments("ProspectiveContentRoundFactory", "PROSPECTIVE_CONTENT_ROUND_FACTORY_ADDRESS", CONTENT_FUNDING_START_BLOCK);

const ETH_GET_LOGS_BLOCK_RANGE = process.env.PONDER_ETH_GET_LOGS_BLOCK_RANGE
Expand Down Expand Up @@ -421,13 +421,11 @@ const contracts = {
...deploymentConfig(CREATOR_CONTRACT_FACTORY_DEPLOYMENTS, CONTENT_FUNDING_START_BLOCK),
},

// TODO: CreatorAssuranceVeto not yet deployed to Base Sepolia (extracted Sep 10)
// Uncomment after redeploying contracts
// CreatorAssuranceVeto: {
// abi: CreatorAssuranceVetoAbi,
// chain: INDEXER_CHAIN,
// ...deploymentConfig(CREATOR_ASSURANCE_VETO_DEPLOYMENTS, CONTENT_FUNDING_START_BLOCK),
// },
CreatorAssuranceVeto: {
abi: CreatorAssuranceVetoAbi,
chain: INDEXER_CHAIN,
...deploymentConfig(CREATOR_ASSURANCE_VETO_DEPLOYMENTS, CONTENT_FUNDING_START_BLOCK),
},

ProspectiveContentRoundFactory: {
abi: ProspectiveContentRoundFactoryAbi,
Expand Down
Loading