1111 AgentBase ,
1212 QueueMessage ,
1313 QueueMessageBase ,
14- QueueMessageCreate ,
1514 QueueMessageFilter ,
1615 QueueMessageType ,
1716 WalletFilter ,
@@ -36,7 +35,6 @@ class AgentAccountDeployResult(RunnerResult):
3635
3736 accounts_processed : int = 0
3837 accounts_deployed : int = 0
39- funding_messages_created : int = 0
4038 errors : List [str ] = None
4139
4240 def __post_init__ (self ):
@@ -62,10 +60,6 @@ class AgentAccountDeployerTask(BaseTask[AgentAccountDeployResult]):
6260
6361 QUEUE_TYPE = QueueMessageType .get_or_create ("agent_account_deploy" )
6462
65- # Configuration for initial agent funding
66- DEFAULT_AGENT_FUNDING_AMOUNT = 1 # STX to send to newly deployed agent accounts
67- DEFAULT_AGENT_FUNDING_FEE = 200 # microSTX transaction fee
68-
6963 def __init__ (self , config : Optional [RunnerConfig ] = None ):
7064 super ().__init__ (config )
7165
@@ -167,58 +161,13 @@ def _parse_deployment_output(self, output: str) -> Optional[Dict[str, Any]]:
167161 logger .error (f"Failed to parse deployment output: { str (e )} " )
168162 return None
169163
170- def _create_agent_funding_message (
171- self , contract_principal : str , dao_id : str = None
172- ) -> bool :
173- """Create an STX transfer queue message to fund the newly deployed agent account.
174-
175- Args:
176- contract_principal: The deployed agent contract address (recipient)
177- dao_id: Optional DAO ID for tracking
178-
179- Returns:
180- bool: True if message was created successfully, False otherwise
181- """
182- try :
183- # Create STX transfer message to fund the agent account
184- # Use None for wallet_id so STX transfer task will use the backend wallet
185- funding_message = QueueMessageCreate (
186- type = QueueMessageType .get_or_create ("stx_transfer" ),
187- wallet_id = None , # STX transfer task will use backend wallet when None
188- dao_id = dao_id ,
189- message = {
190- "recipient" : contract_principal ,
191- "amount" : self .DEFAULT_AGENT_FUNDING_AMOUNT ,
192- "fee" : self .DEFAULT_AGENT_FUNDING_FEE ,
193- "memo" : f"Initial funding for deployed agent account: { contract_principal } " ,
194- },
195- )
196-
197- # Queue the transfer message
198- created_message = backend .create_queue_message (funding_message )
199- logger .info (
200- f"Created STX funding message { created_message .id } to send { self .DEFAULT_AGENT_FUNDING_AMOUNT } STX "
201- f"to agent contract { contract_principal } "
202- )
203- return True
204-
205- except Exception as e :
206- logger .error (
207- f"Failed to create agent funding message for { contract_principal } : { str (e )} " ,
208- exc_info = True ,
209- )
210- return False
211-
212164 async def process_message (self , message : QueueMessage ) -> Dict [str , Any ]:
213165 """Process a single agent account deployment message."""
214166 message_id = message .id
215167 message_data = self ._parse_message_data (message .message )
216168
217169 logger .debug (f"Processing agent account deployment message { message_id } " )
218170
219- # Track whether funding was successfully queued
220- funding_queued = False
221-
222171 try :
223172 # Validate message data
224173 if not self ._validate_message_data (message_data ):
@@ -401,24 +350,6 @@ async def process_message(self, message: QueueMessage) -> Dict[str, Any]:
401350 f"Updated agent { wallet .agent_id } with contract address: { full_contract_principal } "
402351 )
403352
404- # Create funding message for the newly deployed agent account
405- # Uses backend wallet automatically (wallet_id=None)
406- funding_success = self ._create_agent_funding_message (
407- contract_principal = full_contract_principal ,
408- dao_id = str (message .dao_id )
409- if message .dao_id
410- else None ,
411- )
412- if funding_success :
413- funding_queued = True
414- logger .info (
415- f"Queued initial funding for agent contract: { full_contract_principal } "
416- )
417- else :
418- logger .warning (
419- f"Failed to queue funding for agent contract: { full_contract_principal } "
420- )
421-
422353 else :
423354 logger .warning (
424355 f"Wallet { wallet .id } found for address { agent_address } but no associated agent_id"
@@ -624,26 +555,6 @@ async def process_message(self, message: QueueMessage) -> Dict[str, Any]:
624555 f"Updated agent { wallet .agent_id } with existing contract: { full_contract_principal } "
625556 )
626557
627- # Create funding message for the existing agent account
628- # Uses backend wallet automatically (wallet_id=None)
629- funding_success = (
630- self ._create_agent_funding_message (
631- contract_principal = full_contract_principal ,
632- dao_id = str (message .dao_id )
633- if message .dao_id
634- else None ,
635- )
636- )
637- if funding_success :
638- funding_queued = True
639- logger .info (
640- f"Queued initial funding for existing agent contract: { full_contract_principal } "
641- )
642- else :
643- logger .warning (
644- f"Failed to queue funding for existing agent contract: { full_contract_principal } "
645- )
646-
647558 else :
648559 logger .warning (
649560 f"Wallet { wallet .id } found for address { agent_address } but no associated agent_id"
@@ -677,7 +588,6 @@ async def process_message(self, message: QueueMessage) -> Dict[str, Any]:
677588 "success" : True ,
678589 "deployed" : deployed ,
679590 "result" : deployment_result ,
680- "funding_queued" : funding_queued ,
681591 }
682592
683593 # Store result and mark as processed
@@ -768,14 +678,12 @@ async def _execute_impl(
768678 message = "No pending messages found" ,
769679 accounts_processed = 0 ,
770680 accounts_deployed = 0 ,
771- funding_messages_created = 0 ,
772681 )
773682 ]
774683
775684 # Process each message in batches
776685 processed_count = 0
777686 deployed_count = 0
778- funding_messages_created = 0
779687 errors = []
780688 batch_size = getattr (context , "batch_size" , 5 )
781689
@@ -793,8 +701,6 @@ async def _execute_impl(
793701 if result .get ("success" ):
794702 if result .get ("deployed" , False ):
795703 deployed_count += 1
796- if result .get ("funding_queued" , False ):
797- funding_messages_created += 1
798704 else :
799705 errors .append (result .get ("error" , "Unknown error" ))
800706
@@ -807,17 +713,15 @@ async def _execute_impl(
807713
808714 logger .info (
809715 f"Agent account deployment completed - Processed: { processed_count } , "
810- f"Deployed: { deployed_count } , Funding messages created: { funding_messages_created } , "
811- f"Errors: { len (errors )} "
716+ f"Deployed: { deployed_count } , Errors: { len (errors )} "
812717 )
813718
814719 return [
815720 AgentAccountDeployResult (
816721 success = True ,
817- message = f"Processed { processed_count } account(s), deployed { deployed_count } account(s), created { funding_messages_created } funding message(s) " ,
722+ message = f"Processed { processed_count } account(s), deployed { deployed_count } account(s)" ,
818723 accounts_processed = processed_count ,
819724 accounts_deployed = deployed_count ,
820- funding_messages_created = funding_messages_created ,
821725 errors = errors ,
822726 )
823727 ]
0 commit comments