| 72 | |
| 73 | #[derive(Accounts)] |
| 74 | pub struct Initialize<'info> { |
| 75 | /// The Clockwork thread program. |
| 76 | #[account(address = clockwork_sdk::ID)] |
| 77 | pub clockwork_program: Program<'info, clockwork_sdk::ThreadProgram>, |
| 78 | |
| 79 | /// The signer who will pay to initialize the program. |
| 80 | /// (not to be confused with the thread executions). |
| 81 | #[account(mut)] |
| 82 | pub payer: Signer<'info>, |
| 83 | |
| 84 | /// The Solana system program. |
| 85 | #[account(address = system_program::ID)] |
| 86 | pub system_program: Program<'info, System>, |
| 87 | |
| 88 | /// Address to assign to the newly created thread. |
| 89 | #[account(mut, address = Thread::pubkey(thread_authority.key(), "".as_bytes().to_vec()))] |
| 90 | pub thread: SystemAccount<'info>, |
| 91 | |
| 92 | /// The pda that will own and manage the thread. |
| 93 | #[account(seeds = [THREAD_AUTHORITY_SEED], bump)] |
| 94 | pub thread_authority: SystemAccount<'info>, |
| 95 | } |
| 96 | |
| 97 | #[derive(Accounts)] |
| 98 | pub struct Memo<'info> { |
nothing calls this directly
no outgoing calls
no test coverage detected