Arc402 on Solana
use anchor_lang::prelude::*;
declare_id!("Arc402Program1111111111111111111111111111111");
#[program]
pub mod arc402_ai {
use super::*;
// Store an AI task on-chain
pub fn submit_task(ctx: Context<SubmitTask>, task_data: String) -> Result<()> {
let task_account = &mut ctx.accounts.task_account;
task_account.data = task_data; // Save AI decision
task_account.timestamp = Clock::get()?.unix_timestamp; // Save timestamp
Ok(())
}
}
#[derive(Accounts)]
pub struct SubmitTask<'info> {
#[account(init, payer = user, space = 1024)]
pub task_account: Account<'info, TaskAccount>,
#[account(mut)]
pub user: Signer<'info>,
pub system_program: Program<'info, System>,
}
#[account]
pub struct TaskAccount {
pub data: String,
pub timestamp: i64,
}
Last updated