{"$schema":"https://developers.programmable.family/schemas/v2/manifest.schema.json","schemaVersion":"2.0.0","platformId":"programmable","manifestVersion":"2","generatedAt":"2026-08-09T15:03:37Z","chainId":1,"chains":[{"chainId":1,"caip2":"eip155:1","name":"Ethereum Mainnet","status":"live","manifestUrl":"https://developers.programmable.family/api/v2/manifest"}],"network":{"name":"Ethereum Mainnet","caip2":"eip155:1","explorerUrl":"https://etherscan.io"},"publicCategories":{"classic":{"discoveryStatus":"live","publicSubmissionStatus":"not-applicable"},"custom":{"discoveryStatus":"live","publicSubmissionStatus":"prelaunch","note":"Finalized approved Custom Registry launches are discoverable. General public submissions remain prelaunch."}},"deployments":[{"deploymentId":"ethereum-classic-v1","category":"classic","modelId":"classic","modelVersion":"1","origin":"first-party","publicSubmission":false,"lifecycle":"retired","discovery":"enabled","startBlock":"25622048","endBlock":null,"contracts":{"launcher":"0x51d702731db281EE223904A4663E05BfCA26C775"},"evidence":{"sourceRepository":"https://github.com/0xprogrammable/programmable","sourceCommit":"cab072627be0bbacd582f7278e1c6339a9185e52","sourcePath":"contracts/src/MemeLaunchV1.sol","sourceCommitment":"0x34dba63453f487b6bd3365da526326a0c3f8c7f6c7c1d96756f1dc993623cea3","launcherRuntimeCodeHash":"0xa459ee6574d8bbd40ddcf9737dc5d1063adb3abbc11d9f367350c7f2a3cf738b","launcherDeploymentTransaction":"0x4d55e0ccfcbb9f450ab57b3460ac5a0950226c92fcaae4ec6ba6da7a888a30ae"}},{"deploymentId":"ethereum-classic-v2","category":"classic","modelId":"classic","modelVersion":"2","origin":"first-party","publicSubmission":false,"lifecycle":"legacy","discovery":"enabled","startBlock":"25624131","endBlock":null,"contracts":{"launcher":"0xD240D06f8586eB799f20056054e5b527405E6bAd"},"evidence":{"sourceRepository":"https://github.com/0xprogrammable/programmable","sourceCommit":"d0bec0a681b6ba4a25b42a4fe9d29ed2d3a783d2","sourcePath":"contracts/src/MemeLaunchV1.sol","sourceCommitment":"0x6bf2c70c5ab2a64a62f2c27e6be859e3428f2c35e6e2db5255b569b9f9eb1287","launcherRuntimeCodeHash":"0xd229555c79c61874549a1991c43df172104e1db3087ba8fca8804675b7440d36","launcherDeploymentTransaction":"0x86a6f1b3992ed8ad6d450970b78e94b29f298afd048a6a0cfa0cf253e9e98fdc","explorerUrl":"https://etherscan.io/address/0xD240D06f8586eB799f20056054e5b527405E6bAd#code"}},{"deploymentId":"ethereum-classic-v3","category":"classic","modelId":"classic","modelVersion":"3","origin":"first-party","publicSubmission":false,"lifecycle":"current","discovery":"enabled","startBlock":"25639596","endBlock":null,"contracts":{"launcher":"0xC3bd04aAc2fb2ba58efD7Eb673E544E0B80De770","hook":"0x35Fe236EA82F7cF525c9719d7df8F49F94D720CC"},"evidence":{"sourceRepository":"https://github.com/0xprogrammable/programmable","sourceCommit":"a117139b24041e87ccc318c6106f5aeb415b8128","sourcePath":"contracts/src/MemeLaunchV2.sol","sourceCommitment":"0x58991ed1743aaba5f1988a4576d36eb10af70b96bdb61661ba96e1f80acc9800","launcherRuntimeCodeHash":"0x9cc9723456c471d90ac838c02fa4fc47ed4b7e82c85358e71deec978c48d2dc8","launcherDeploymentTransaction":"0xc25f6a3b13b0789b4f69e28229b0b969184dbc3682555ea7e15bf731f5b1a150","explorerUrl":"https://etherscan.io/address/0xC3bd04aAc2fb2ba58efD7Eb673E544E0B80De770#code"}}],"customRegistry":{"category":"custom","modelId":"open-custom","status":"live","publicSubmissionsEnabled":false,"address":"0x17e18c88bda9bfb73924cdc989c07b0707e72671","startBlock":"25701139","generation":"1","eventSignature":"CustomLaunchRegisteredV1(bytes32,bytes32,address,uint64,uint256,uint64,bytes32,bytes32,address,bytes32,bytes32,uint64)","eventTopic":"0x8ee074138114415a92a0797b4f1f4c6353f8bd15d8031433abf0cc42c2dc274a","abiUrl":"https://developers.programmable.family/abis/ethereum/programmable-custom-registry-v1.json","finalityConfirmations":64,"note":"Registry discovery is live for finalized approved launches. General public submissions remain prelaunch."},"launchStampRouter":{"version":"1","generation":"1","status":"live","scope":"future-launches-only","supportsFutureClassic":true,"supportsFutureCustom":true,"supportsHistoricalLaunches":false,"provenanceClaim":"launched-on-programmable","provenanceOnly":true,"verificationMode":"canonical-router","launchIdentityScope":"chain-id+router-address+launch-id","address":"0x8622DD5bAb44185f2A458ac90384Ac99248f8d56","startBlock":"25717612","endBlock":null,"runtimeCodeHash":"0x40e27ecf201761d5eb66bc4f2d5c6124831ef078d7baf458ca5f41b1a8108546","abiUrl":"https://developers.programmable.family/abis/ethereum/programmable-launch-stamp-router-v1.json","abiSha256":"sha256:bb4e728e9f9c850eb01f928e8a798ac206a82e241a8d93b3b3c686635c88ed86","contractName":"ProgrammableLaunchStampRouterV1","artifact":{"sourceRepository":"https://github.com/0xprogrammable/programmable","sourceCommit":"0a7134bbb912222639627fb9078df2f8dd3a6c38","sourceTree":"24ffb0c6b04af7993254560b4f03608de8f52231","sourcePath":"src/ProgrammableLaunchStampRouterV1.sol","artifactPath":"out/ProgrammableLaunchStampRouterV1.sol/ProgrammableLaunchStampRouterV1.json"},"deploymentEvidence":{"verificationStatus":"finalized-verified","address":"0x8622DD5bAb44185f2A458ac90384Ac99248f8d56","deploymentTransactionHash":"0x3bc086661555c10040feb3fceb23d33003e22ca033e65cfae72592119ee8d486","deploymentBlockNumber":"25717612","deploymentBlockHash":"0x8e4512193217c2171624657717d32dbfe9896455e553cadc192fbfe32d3278bc","finalizedBlockNumber":"25717634","finalizedBlockHash":"0x4177a280cd7e43da181bf1d73900eb2431c26d5fe933a5ed0e583370064cbd6e","finalityDepth":22,"runtimeCodeBytes":23013,"runtimeCodeKeccak256":"0x40e27ecf201761d5eb66bc4f2d5c6124831ef078d7baf458ca5f41b1a8108546","runtimeCodeSha256":"sha256:0b0e89074bff270bd5bf80ca9642f748dca1857d1ab643cbce65f4f663937ec7","observedBindings":{"chainId":1,"permitAuthority":"0x755509eA6e3F5Ec1aA2E797bb68f1B87DD8b886b","permitAuthorityRuntimeCodeHash":"0xd7d408ebcd99b2b70be43e20253d6d92a8ea8fab29bd3be7f55b10032331fb4c","graphFactory":"0xB012e4A8F2c5FC4E8E4faCA9D5Ad6FfF13FBA887","graphFactoryRuntimeCodeHash":"0xd23692fae59331592048e71a96d4963e170ee56e449683dc9f7fa3f9470018b8","poolManager":"0x000000000004444c5dc75cB358380D2e3dE08A90","poolManagerRuntimeCodeHash":"0x785f1014552b7ce7d5fb7d0c970ca60edee94fd00425d7ca21609acac7ce1293"},"getterBundleSha256":"sha256:6e6e8a93193bbe2f79f98594a1af32c27bae0746f8297dd13592d9608e2feb20","evidenceSha256":"sha256:f9786ebfb74c96a3c225567ad324f0fbecfd8520b8d8addec85ba58cd67e19ff"},"canaryEvidence":{"finality":"finalized","routeCoverage":{"customGraphOnchainCanary":true,"classicOnchainCanary":false},"source":{"sourceRepository":"https://github.com/0xprogrammable/programmable","sourceCommit":"b3cfed41bb841ae8d6188dbb815eddb5e1440218","commitSubject":"Add graph launch stamp canary"},"transactionHash":"0xc07b4e70233534a1d4f435ffc9a636ed5f542f4aedcde35052c58224f378b612","blockNumber":"25717953","blockHash":"0x97827b6586f0dca00e44801acc529c3961b4c693988dfc9f4b2bb4c3d94632ba","launchId":"0x5a52180427785716bff0a36218dde89f0459db265d0c2bdfcfde81a8fe733c92","stampHash":"0x06cb71b38d9b8b1dd1ffcdb00f31c774be36f5473979c3831d5fd0c96cdaa579","launchKind":1,"components":{"initializer":"0x87B108848B444bC44A01734D62C7be4a2fA64983","token":"0x9DEeB39D2590b0cAD5fc473F755C5F97Dcc8f7cE","hook":"0xEBa46f25DfF528141dE5317109Acb5A989296044"},"pool":{"poolManager":"0x000000000004444c5dc75cB358380D2e3dE08A90","poolId":"0x5c5a3ebee6840640642ba2bea526621a4962d2c89c388c36a2edb4725802a229","activeLiquidity":"31618002430832353916"},"lpPosition":{"positionManager":"0xbD216513d74C8cf14cf4747E6AaA6420FF64ee9e","tokenId":"367610","owner":"0x2Bb333d48DFAF1596D9036671d2E43168994249E"},"platformFee":{"feePips":1000,"recipient":"0x4957f49620AFf3Adbbe8195a4f633E49cc93376c"},"tokenTotalSupply":"1000000000000000000000000","stampProofs":[{"component":"0x87B108848B444bC44A01734D62C7be4a2fA64983","launchId":"0x5a52180427785716bff0a36218dde89f0459db265d0c2bdfcfde81a8fe733c92","stampHash":"0x06cb71b38d9b8b1dd1ffcdb00f31c774be36f5473979c3831d5fd0c96cdaa579"},{"component":"0x9DEeB39D2590b0cAD5fc473F755C5F97Dcc8f7cE","launchId":"0x5a52180427785716bff0a36218dde89f0459db265d0c2bdfcfde81a8fe733c92","stampHash":"0x06cb71b38d9b8b1dd1ffcdb00f31c774be36f5473979c3831d5fd0c96cdaa579"},{"component":"0xEBa46f25DfF528141dE5317109Acb5A989296044","launchId":"0x5a52180427785716bff0a36218dde89f0459db265d0c2bdfcfde81a8fe733c92","stampHash":"0x06cb71b38d9b8b1dd1ffcdb00f31c774be36f5473979c3831d5fd0c96cdaa579"}],"evidenceFileSha256":"sha256:1325d1333b6df9545cb87048e2b8d1c57a63af5b6790c329c0e95157a0d16d2c","evidenceLineSha256":"sha256:615a20b31f454afb020a8fa83653c7685328e3f12ad58d3ac11ddab2d02968b5"},"finalityConfirmations":64,"canonicalReadBlock":"finalized-or-explicit-canonical-block","authorityMode":"eip-1271-contract-only","enumValues":{"launchKind":{"invalid":0,"customGraph":1,"classic":2},"componentKind":{"other":0,"token":1,"hook":2},"componentScope":{"invalid":0,"exclusive":1,"sharedInfrastructure":2}},"eip712":{"name":"ProgrammableLaunchStampRouter","version":"1","primaryType":"ProgrammableLaunchPermitV1","permitType":"ProgrammableLaunchPermitV1(uint256 chainId,address router,address launchWallet,uint8 kind,bytes32 routePayloadHash,bytes32 expectedResultHash,bytes32 stampRequestHash,bytes32 nonce,uint64 validAfter,uint64 deadline,uint256 value)","permitTypeHash":"0x5147473bd302ad67f9ef14ef9262d1b0f8d4f7155081bc8c508195b647413761"},"bindings":{"permitAuthority":"0x755509eA6e3F5Ec1aA2E797bb68f1B87DD8b886b","permitAuthorityRuntimeCodeHash":"0xd7d408ebcd99b2b70be43e20253d6d92a8ea8fab29bd3be7f55b10032331fb4c","graphFactory":"0xB012e4A8F2c5FC4E8E4faCA9D5Ad6FfF13FBA887","graphFactoryRuntimeCodeHash":"0xd23692fae59331592048e71a96d4963e170ee56e449683dc9f7fa3f9470018b8","poolManager":"0x000000000004444c5dc75cB358380D2e3dE08A90","poolManagerRuntimeCodeHash":"0x785f1014552b7ce7d5fb7d0c970ca60edee94fd00425d7ca21609acac7ce1293"},"atomicSignature":"launchAndStampV1((uint256,address,address,uint8,bytes32,bytes32,bytes32,bytes32,uint64,uint64,uint256),(bytes32,address,bytes32,(address,address,uint24,int24,address),bytes32,(uint8,address,bytes32,uint8,uint8)[]),bytes,bytes)","atomicSelector":"0xe5f6b8cd","events":{"launchStamped":{"name":"ProgrammableLaunchStampedV1","signature":"ProgrammableLaunchStampedV1(bytes32,address,address,address,bytes32,bytes32)","topic0":"0x6cf479a102f1eebc9244f48f8d68f6aa52b4c5a4516318df58ba46614a5b14f2","indexedInputs":["launchId","token","hook"]},"launchRouteStamped":{"name":"ProgrammableLaunchRouteStampedV1","signature":"ProgrammableLaunchRouteStampedV1(bytes32,uint8,bytes32,bytes32,bytes32)","topic0":"0x45e7cc355b63ca67d6278a0d8d23470ce2a0741a9c60283d7dee712df7a877a5","indexedInputs":["launchId","kind","routePayloadHash"]},"componentStamped":{"name":"ProgrammableComponentStampedV1","signature":"ProgrammableComponentStampedV1(bytes32,address,uint8,bytes32)","topic0":"0x8147265e7396d6400cee8d049456a1f7438fdfbe2a7c81c976d51ba67e52ff4b","indexedInputs":["launchId","component","kind"]}},"getters":{"chainId":{"signature":"CHAIN_ID()","selector":"0x85e1f4d0","result":"chain-id"},"permitAuthority":{"signature":"PERMIT_AUTHORITY()","selector":"0xc3a3d03c","result":"address"},"permitAuthorityRuntimeCodeHash":{"signature":"PERMIT_AUTHORITY_RUNTIME_CODE_HASH()","selector":"0xa497c61c","result":"runtime-code-hash"},"graphFactory":{"signature":"GRAPH_FACTORY()","selector":"0x1cc9e5ce","result":"address"},"graphFactoryRuntimeCodeHash":{"signature":"GRAPH_FACTORY_RUNTIME_CODE_HASH()","selector":"0x92989a00","result":"runtime-code-hash"},"poolManager":{"signature":"POOL_MANAGER()","selector":"0x62308e85","result":"address"},"poolManagerRuntimeCodeHash":{"signature":"POOL_MANAGER_RUNTIME_CODE_HASH()","selector":"0x38d831c4","result":"runtime-code-hash"},"token":{"signature":"launchIdByToken(address)","selector":"0x1dad847c","result":"launch-id"},"pool":{"signature":"launchIdByPool(address,bytes32)","selector":"0x361df6f3","result":"launch-id"},"component":{"signature":"launchIdByComponent(address)","selector":"0x58c5e373","result":"launch-id"},"componentRuntimeCodeHash":{"signature":"componentRuntimeCodeHash(address)","selector":"0xc892d353","result":"runtime-code-hash"},"record":{"signature":"launchStamp(bytes32)","selector":"0x4c9e4764","result":"stamp-record"},"stampProof":{"signature":"stampProof(address)","selector":"0x174b9f9d","result":"stamp-proof"}}},"registryGenerations":[{"chainId":1,"caip2":"eip155:1","generation":"1","status":"live","address":"0x17e18c88bda9bfb73924cdc989c07b0707e72671","runtimeCodeKeccak256":"0xa3276868befc509594adea6c5bd81c3c1bd013686f03fd57914fd39c917185f7","startBlock":"25701139","endBlock":null,"authorizedWriters":["0xcc916e5200d2626edfd918dc219bc4296629e997"],"registryEventSetHash":"sha256:8df340512445931e96838244207940ce9ca631b48c905bda78d5f4f5bcee1c0a","events":{"registered":{"signature":"CustomLaunchRegisteredV1(bytes32,bytes32,address,uint64,uint256,uint64,bytes32,bytes32,address,bytes32,bytes32,uint64)","topic0":"0x8ee074138114415a92a0797b4f1f4c6353f8bd15d8031433abf0cc42c2dc274a"},"approvalAuthorized":{"signature":"CustomLaunchApprovalAuthorizedV1(bytes32,bytes32,bytes32,bytes32,uint64,uint64,uint64,bytes32)","topic0":"0xb4fff32917416e7b84b1f40456921599cddfdcc057c9ad278706c5828b18c50b"},"provenance":{"signature":"CustomLaunchProvenanceBoundV1(bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32)","topic0":"0x9593acf43b1c8e03c6742d49b67008f3c05841d3cfa43389d12f98e8b9c66cb9"},"review":{"signature":"CustomLaunchReviewBoundV1(bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32)","topic0":"0xb5db50dfea0e7ff29b1ddee247a008e857b05d2b4bc2b780de5717b7f1881b63"},"attribution":{"signature":"CustomLaunchAttributionBoundV1(bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32)","topic0":"0x3608f2041bbe91aa3792101210bc2e29c23543fb4e0206daa2b1a99e7235c182"},"feePolicy":{"signature":"CustomLaunchFeePolicyBoundV1(bytes32,bytes32,bytes32,uint8,uint16,uint16,uint16,uint16,address,address)","topic0":"0xb889df8572071d751e87d3e2a46c54093a55a9bc5a4697440cd29c90255dc5bf"},"feeScope":{"signature":"CustomLaunchFeeScopeBoundV1(bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32)","topic0":"0xfb69ef55bd117e822ea39d795bd1506dc489a1ce2c1ccd3ad4c781ef04598336"},"feeEvidence":{"signature":"CustomLaunchFeeEvidenceBoundV1(bytes32,bytes32,bytes32,address,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32,bytes32)","topic0":"0xe647c474a92f722808930d32d310f47d0e3a4faf393255e0dea4b272588babb0"},"finalized":{"signature":"CustomLaunchFinalizedV1(bytes32,bytes32,bytes32,uint64,uint64,bytes32,uint32,uint32,uint64,bytes32,bytes32,uint64,uint64)","topic0":"0xab930c1c165bba36257b8079ae38b6869f604910f6ffa40c956e31eb1b8ce38f"},"corrected":{"signature":"CustomLaunchRecordCorrectedV1(bytes32,uint64,bytes32,uint64,bytes32,bytes32,bytes32)","topic0":"0xa13c4392e0c64159cee078ced2b7157bc99993da4517b87fd0bd26b137600b78"},"revoked":{"signature":"CustomLaunchRevokedV1(bytes32,bytes32,bytes32,uint64,uint64,bytes32,uint64,uint64)","topic0":"0x195a188d2c49d5e643afbcfd959edbf2ed1d6cd9216c5d99f3ad08c1010a9744"}},"abiUrl":"https://developers.programmable.family/abis/ethereum/programmable-custom-registry-v1.json","finalityConfirmations":64}],"partnerTemplates":[],"platformFee":{"ratePpm":"1000","rateBps":"10","recipient":"0x4957f49620AFf3Adbbe8195a4f633E49cc93376c","scope":"official-programmable-market-path","classic":{"status":"verified","chargeMode":"included"},"customPublicSubmissions":{"status":"prelaunch","chargeMode":"policy-specific-no-overlay"},"nativeCustom":{"totalFeeBps":10,"programmableShareBps":10,"scope":"verified-official-market-path-only"},"partnerTemplate":{"totalFeeBps":20,"partnerShareBps":15,"programmableShareBps":5,"programmableRecipient":"0x4957f49620AFf3Adbbe8195a4f633E49cc93376c","chargeMode":"partner-template-enforced","additionalNativeFeeBps":0}},"endpoints":{"wellKnown":"https://developers.programmable.family/.well-known/programmable.json","status":"https://developers.programmable.family/api/v2/status","manifest":"https://developers.programmable.family/api/v2/manifest","launches":"https://developers.programmable.family/api/v2/launches","tokenList":"https://developers.programmable.family/api/v2/token-list","openApi":"https://developers.programmable.family/openapi/programmable-v2.yaml"},"compatibility":{"majorVersion":2,"additiveChangesOnly":true,"noMandatoryClientChangesWithinMajorVersion":true,"unknownFields":"ignore","unknownCapabilities":"preserve","unknownMarketKinds":"display-as-unsupported","deploymentDiscovery":"refresh-manifest","hardcodeDeploymentAddresses":false}}