From a64c16b8c9cfe3955faf42bca56767c95133e3c6 Mon Sep 17 00:00:00 2001 From: Sergio Chouhy Date: Tue, 24 Feb 2026 10:31:18 -0300 Subject: [PATCH 01/14] compress proofs --- nssa/src/privacy_preserving_transaction/circuit.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/nssa/src/privacy_preserving_transaction/circuit.rs b/nssa/src/privacy_preserving_transaction/circuit.rs index 9a28badd..98e0be24 100644 --- a/nssa/src/privacy_preserving_transaction/circuit.rs +++ b/nssa/src/privacy_preserving_transaction/circuit.rs @@ -7,7 +7,7 @@ use nssa_core::{ account::AccountWithMetadata, program::{ChainedCall, InstructionData, ProgramId, ProgramOutput}, }; -use risc0_zkvm::{ExecutorEnv, InnerReceipt, Receipt, default_prover}; +use risc0_zkvm::{ExecutorEnv, InnerReceipt, ProverOpts, Receipt, default_prover}; use crate::{ error::NssaError, @@ -126,8 +126,9 @@ pub fn execute_and_prove( env_builder.write(&circuit_input).unwrap(); let env = env_builder.build().unwrap(); let prover = default_prover(); + let opts = ProverOpts::succinct(); let prove_info = prover - .prove(env, PRIVACY_PRESERVING_CIRCUIT_ELF) + .prove_with_opts(env, PRIVACY_PRESERVING_CIRCUIT_ELF, &opts) .map_err(|e| NssaError::CircuitProvingError(e.to_string()))?; let proof = Proof(borsh::to_vec(&prove_info.receipt.inner)?); From 818eebb99f69a41920d4c9ddb637c1e7c76d76ad Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Wed, 25 Feb 2026 14:19:51 +0200 Subject: [PATCH 02/14] fix: recent blocks fix --- explorer_service/src/api.rs | 11 +++++++++++ explorer_service/src/pages/main_page.rs | 18 +++++++++++++++++- 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/explorer_service/src/api.rs b/explorer_service/src/api.rs index d0785949..4dfd75cd 100644 --- a/explorer_service/src/api.rs +++ b/explorer_service/src/api.rs @@ -83,6 +83,17 @@ pub async fn get_block_by_id(block_id: BlockId) -> Result .map_err(|e| ServerFnError::ServerError(format!("RPC error: {}", e))) } +/// Get latest block ID +#[server] +pub async fn get_latest_block_id() -> Result { + use indexer_service_rpc::RpcClient as _; + let client = expect_context::(); + client + .get_last_finalized_block_id() + .await + .map_err(|e| ServerFnError::ServerError(format!("RPC error: {}", e))) +} + /// Get block by hash #[server] pub async fn get_block_by_hash(block_hash: HashType) -> Result { diff --git a/explorer_service/src/pages/main_page.rs b/explorer_service/src/pages/main_page.rs index ffd625c8..4a47536d 100644 --- a/explorer_service/src/pages/main_page.rs +++ b/explorer_service/src/pages/main_page.rs @@ -7,6 +7,8 @@ use crate::{ components::{AccountPreview, BlockPreview, TransactionPreview}, }; +const RECENT_BLOCKS_LIMIT: u64 = 10; + /// Main page component #[component] pub fn MainPage() -> impl IntoView { @@ -38,7 +40,21 @@ pub fn MainPage() -> impl IntoView { }); // Load recent blocks on mount - let recent_blocks_resource = Resource::new(|| (), |_| async { api::get_blocks(0, 10).await }); + let recent_blocks_resource = Resource::new( + || (), + |_| async { + match api::get_latest_block_id().await { + Ok(last_id) => { + api::get_blocks( + std::cmp::max(last_id.saturating_sub(RECENT_BLOCKS_LIMIT) as u32, 1), + RECENT_BLOCKS_LIMIT as u32, + ) + .await + } + Err(err) => Err(err), + } + }, + ); // Handle search - update URL parameter let on_search = move |ev: SubmitEvent| { From 24271b398e993dae459f3169b4f280c088f181af Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Wed, 25 Feb 2026 17:13:48 +0200 Subject: [PATCH 03/14] fix: possibly fixed tx accounts --- Cargo.lock | 2 + bedrock/docker-compose.yml | 2 +- explorer_service/Cargo.toml | 3 + .../src/components/transaction_preview.rs | 14 ++-- .../src/pages/transaction_page.rs | 44 +++++++++-- indexer/service/protocol/Cargo.toml | 1 + indexer/service/protocol/src/lib.rs | 78 ++++++++++++++++++- indexer/service/rpc/Cargo.toml | 2 +- 8 files changed, 129 insertions(+), 17 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5543243a..7d240a64 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2721,6 +2721,7 @@ dependencies = [ "env_logger", "indexer_service_protocol", "indexer_service_rpc", + "itertools 0.14.0", "jsonrpsee", "leptos", "leptos_axum", @@ -3769,6 +3770,7 @@ dependencies = [ "schemars 1.2.1", "serde", "serde_with", + "sha2", ] [[package]] diff --git a/bedrock/docker-compose.yml b/bedrock/docker-compose.yml index cb93a624..93f5d485 100644 --- a/bedrock/docker-compose.yml +++ b/bedrock/docker-compose.yml @@ -11,7 +11,7 @@ services: image: ghcr.io/logos-blockchain/logos-blockchain@sha256:000982e751dfd346ca5346b8025c685fc3abc585079c59cde3bde7fd63100657 ports: # Map 0 port so that multiple instances can run on the same host - - "0:18080/tcp" + - "8080:18080/tcp" volumes: - ./scripts:/etc/logos-blockchain/scripts - ./kzgrs_test_params:/kzgrs_test_params:z diff --git a/explorer_service/Cargo.toml b/explorer_service/Cargo.toml index 219f2bc0..1dc989d0 100644 --- a/explorer_service/Cargo.toml +++ b/explorer_service/Cargo.toml @@ -50,6 +50,9 @@ clap = { workspace = true, features = ["derive"], optional = true } url = { workspace = true, optional = true } env_logger = { workspace = true, optional = true } +# Mandatory server side dependencies +itertools.workspace = true + [features] hydrate = ["leptos/hydrate"] ssr = [ diff --git a/explorer_service/src/components/transaction_preview.rs b/explorer_service/src/components/transaction_preview.rs index 68c1e86e..7fc98e77 100644 --- a/explorer_service/src/components/transaction_preview.rs +++ b/explorer_service/src/components/transaction_preview.rs @@ -19,14 +19,12 @@ pub fn TransactionPreview(transaction: Transaction) -> impl IntoView { let (type_name, type_class) = transaction_type_info(&transaction); // Get additional metadata based on transaction type + let affected_pub_account_ids = transaction + .affected_public_account_ids(); + let metadata = match &transaction { - Transaction::Public(tx) => { - let indexer_service_protocol::PublicTransaction { - hash: _, - message, - witness_set: _, - } = tx; - format!("{} accounts involved", message.account_ids.len()) + Transaction::Public(_) => { + format!("{} accounts involved", affected_pub_account_ids.len()) } Transaction::PrivacyPreserving(tx) => { let indexer_service_protocol::PrivacyPreservingTransaction { @@ -36,7 +34,7 @@ pub fn TransactionPreview(transaction: Transaction) -> impl IntoView { } = tx; format!( "{} public accounts, {} commitments", - message.public_account_ids.len(), + affected_pub_account_ids.len(), message.new_commitments.len() ) } diff --git a/explorer_service/src/pages/transaction_page.rs b/explorer_service/src/pages/transaction_page.rs index d0f1b4da..8ab33ff9 100644 --- a/explorer_service/src/pages/transaction_page.rs +++ b/explorer_service/src/pages/transaction_page.rs @@ -4,6 +4,7 @@ use indexer_service_protocol::{ HashType, PrivacyPreservingMessage, PrivacyPreservingTransaction, ProgramDeploymentMessage, ProgramDeploymentTransaction, PublicMessage, PublicTransaction, Transaction, WitnessSet, }; +use itertools::{EitherOrBoth, Itertools}; use leptos::prelude::*; use leptos_router::{components::A, hooks::use_params_map}; @@ -65,7 +66,9 @@ pub fn TransactionPage() -> impl IntoView { - {match tx { + { + let affected_pub_acc_ids = tx.affected_public_account_ids(); + match tx { Transaction::Public(ptx) => { let PublicTransaction { hash: _, @@ -74,7 +77,7 @@ pub fn TransactionPage() -> impl IntoView { } = ptx; let PublicMessage { program_id, - account_ids, + account_ids: _, nonces, instruction_data, } = message; @@ -113,11 +116,13 @@ pub fn TransactionPage() -> impl IntoView {

"Accounts"

- {account_ids + {affected_pub_acc_ids .into_iter() - .zip(nonces.into_iter()) - .map(|(account_id, nonce)| { - let account_id_str = account_id.to_string(); + .zip_longest(nonces.into_iter()) + .map(|maybe_pair| { + match maybe_pair { + EitherOrBoth::Both(account_id, nonce) => { + let account_id_str = account_id.to_string(); view! { } + } + EitherOrBoth::Left(account_id) => { + let account_id_str = account_id.to_string(); + view! { + + } + } + EitherOrBoth::Right(_) => { + view! { + + } + } + } }) .collect::>()}
diff --git a/indexer/service/protocol/Cargo.toml b/indexer/service/protocol/Cargo.toml index f9a3c2ad..2f787d2d 100644 --- a/indexer/service/protocol/Cargo.toml +++ b/indexer/service/protocol/Cargo.toml @@ -16,6 +16,7 @@ base64.workspace = true base58.workspace = true hex.workspace = true anyhow.workspace = true +sha2.workspace = true [features] # Enable conversion to/from NSSA core types diff --git a/indexer/service/protocol/src/lib.rs b/indexer/service/protocol/src/lib.rs index 8fdd3289..f13a51c5 100644 --- a/indexer/service/protocol/src/lib.rs +++ b/indexer/service/protocol/src/lib.rs @@ -3,13 +3,14 @@ //! Currently it mostly mimics types from `nssa_core`, but it's important to have a separate crate //! to define a stable interface for the indexer service RPCs which evolves in its own way. -use std::{fmt::Display, str::FromStr}; +use std::{collections::HashSet, fmt::Display, str::FromStr}; use anyhow::anyhow; use base58::{FromBase58 as _, ToBase58 as _}; use schemars::JsonSchema; use serde::{Deserialize, Serialize}; use serde_with::{DeserializeFromStr, SerializeDisplay}; +use sha2::{Digest, Sha256}; #[cfg(feature = "convert")] mod convert; @@ -53,6 +54,18 @@ pub struct AccountId { pub value: [u8; 32], } +impl From<&PublicKey> for AccountId { + fn from(key: &PublicKey) -> Self { + const PUBLIC_ACCOUNT_ID_PREFIX: &[u8; 32] = + b"/LEE/v0.3/AccountId/Public/\x00\x00\x00\x00\x00"; + + let mut hasher = Sha256::new(); + hasher.update(PUBLIC_ACCOUNT_ID_PREFIX); + hasher.update(key.0); + Self{ value: hasher.finalize().into()} + } +} + impl Display for AccountId { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { write!(f, "{}", self.value.to_base58()) @@ -148,6 +161,15 @@ impl Transaction { Transaction::ProgramDeployment(tx) => &tx.hash, } } + + /// Get affected public account ids + pub fn affected_public_account_ids(&self) -> Vec { + match self { + Transaction::Public(tx) => tx.affected_public_account_ids(), + Transaction::PrivacyPreserving(tx) => tx.affected_public_account_ids(), + Transaction::ProgramDeployment(tx) => tx.affected_public_account_ids(), + } + } } #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize, JsonSchema)] @@ -157,6 +179,28 @@ pub struct PublicTransaction { pub witness_set: WitnessSet, } +impl PublicTransaction { + + + pub(crate) fn signer_account_ids(&self) -> Vec { + self.witness_set + .signatures_and_public_keys() + .iter() + .map(|(_, public_key)| AccountId::from(public_key)) + .collect() + } + + pub fn affected_public_account_ids(&self) -> Vec { + let mut acc_set = self + .signer_account_ids() + .into_iter() + .collect::>(); + acc_set.extend(&self.message.account_ids); + + acc_set.into_iter().collect() + } +} + #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize, JsonSchema)] pub struct PrivacyPreservingTransaction { pub hash: HashType, @@ -164,6 +208,26 @@ pub struct PrivacyPreservingTransaction { pub witness_set: WitnessSet, } +impl PrivacyPreservingTransaction { + pub(crate) fn signer_account_ids(&self) -> Vec { + self.witness_set + .signatures_and_public_keys() + .iter() + .map(|(_, public_key)| AccountId::from(public_key)) + .collect() + } + + pub fn affected_public_account_ids(&self) -> Vec { + let mut acc_set = self + .signer_account_ids() + .into_iter() + .collect::>(); + acc_set.extend(&self.message.public_account_ids); + + acc_set.into_iter().collect() + } +} + #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize, JsonSchema)] pub struct PublicMessage { pub program_id: ProgramId, @@ -190,6 +254,12 @@ pub struct WitnessSet { pub proof: Proof, } +impl WitnessSet { + pub fn signatures_and_public_keys(&self) -> &[(Signature, PublicKey)] { + &self.signatures_and_public_keys + } +} + #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize, JsonSchema)] pub struct Proof( #[serde(with = "base64")] @@ -210,6 +280,12 @@ pub struct ProgramDeploymentTransaction { pub message: ProgramDeploymentMessage, } +impl ProgramDeploymentTransaction { + pub fn affected_public_account_ids(&self) -> Vec { + vec![] + } +} + pub type ViewTag = u8; #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize, JsonSchema)] diff --git a/indexer/service/rpc/Cargo.toml b/indexer/service/rpc/Cargo.toml index 2bed63ae..b2194882 100644 --- a/indexer/service/rpc/Cargo.toml +++ b/indexer/service/rpc/Cargo.toml @@ -5,7 +5,7 @@ edition = "2024" license = { workspace = true } [dependencies] -indexer_service_protocol = { workspace = true } +indexer_service_protocol = { workspace = true, features = ["convert"] } jsonrpsee = { workspace = true, features = ["macros"] } serde_json.workspace = true From fb2709f96c80c7213566b9cd86cb994c8214fd41 Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Wed, 25 Feb 2026 17:14:42 +0200 Subject: [PATCH 04/14] fix: docker fix --- bedrock/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bedrock/docker-compose.yml b/bedrock/docker-compose.yml index 93f5d485..cb93a624 100644 --- a/bedrock/docker-compose.yml +++ b/bedrock/docker-compose.yml @@ -11,7 +11,7 @@ services: image: ghcr.io/logos-blockchain/logos-blockchain@sha256:000982e751dfd346ca5346b8025c685fc3abc585079c59cde3bde7fd63100657 ports: # Map 0 port so that multiple instances can run on the same host - - "8080:18080/tcp" + - "0:18080/tcp" volumes: - ./scripts:/etc/logos-blockchain/scripts - ./kzgrs_test_params:/kzgrs_test_params:z From b2ae6317d2a2083144159369c61e3cbf97347c8f Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Thu, 26 Feb 2026 09:40:31 +0200 Subject: [PATCH 05/14] fix: naming changes --- explorer_service/src/lib.rs | 6 +++--- explorer_service/src/main.rs | 2 +- explorer_service/src/pages/main_page.rs | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/explorer_service/src/lib.rs b/explorer_service/src/lib.rs index 489636fd..e2b2291e 100644 --- a/explorer_service/src/lib.rs +++ b/explorer_service/src/lib.rs @@ -28,7 +28,7 @@ pub fn App() -> impl IntoView { view! { - + <Title text="LEZ Block Explorer" /> <Meta name="description" content="Explore the blockchain - view blocks, transactions, and accounts" /> <Router> @@ -36,7 +36,7 @@ pub fn App() -> impl IntoView { <header class="app-header"> <nav class="app-nav"> <a href="/" class="nav-logo"> - "LEE Blockchain Explorer" + "LEZ Block Explorer" </a> </nav> </header> @@ -69,7 +69,7 @@ pub fn App() -> impl IntoView { </main> <footer class="app-footer"> - <p>"LEE Blockchain Explorer © 2026"</p> + <p>"LEZ Block Explorer © 2026"</p> </footer> </div> </Router> diff --git a/explorer_service/src/main.rs b/explorer_service/src/main.rs index 63d54d70..6cc4a9a4 100644 --- a/explorer_service/src/main.rs +++ b/explorer_service/src/main.rs @@ -10,7 +10,7 @@ async fn main() { env_logger::init(); - /// LEE Blockchain Explorer Server CLI arguments. + /// LEZ Block Explorer Server CLI arguments. #[derive(Parser, Debug)] #[command(version, about, long_about = None)] struct Args { diff --git a/explorer_service/src/pages/main_page.rs b/explorer_service/src/pages/main_page.rs index 4a47536d..3f6ec808 100644 --- a/explorer_service/src/pages/main_page.rs +++ b/explorer_service/src/pages/main_page.rs @@ -74,7 +74,7 @@ pub fn MainPage() -> impl IntoView { view! { <div class="main-page"> <div class="page-header"> - <h1>"LEE Blockchain Explorer"</h1> + <h1>"LEZ Block Explorer"</h1> </div> <div class="search-section"> From 6e61698ff835b7404e2ebaa496beca23850938ac Mon Sep 17 00:00:00 2001 From: Pravdyvy <awxrvtb@gmail.com> Date: Thu, 26 Feb 2026 13:46:38 +0200 Subject: [PATCH 06/14] fix: complete fixes --- .github/workflows/ci.yml | 2 +- Cargo.lock | 1 - .../src/components/transaction_preview.rs | 14 ++-- explorer_service/src/pages/main_page.rs | 2 +- .../src/pages/transaction_page.rs | 40 +++++++++-- indexer/core/src/block_store.rs | 12 +++- indexer/core/src/lib.rs | 1 - indexer/core/src/state.rs | 9 --- indexer/service/protocol/Cargo.toml | 1 - indexer/service/protocol/src/lib.rs | 72 +------------------ 10 files changed, 55 insertions(+), 99 deletions(-) delete mode 100644 indexer/core/src/state.rs diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ce9903b5..990ccdef 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -158,7 +158,7 @@ jobs: valid-proof-test: runs-on: ubuntu-latest - timeout-minutes: 60 + timeout-minutes: 90 steps: - uses: actions/checkout@v5 with: diff --git a/Cargo.lock b/Cargo.lock index 7d240a64..1baf7d84 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3770,7 +3770,6 @@ dependencies = [ "schemars 1.2.1", "serde", "serde_with", - "sha2", ] [[package]] diff --git a/explorer_service/src/components/transaction_preview.rs b/explorer_service/src/components/transaction_preview.rs index 7fc98e77..68c1e86e 100644 --- a/explorer_service/src/components/transaction_preview.rs +++ b/explorer_service/src/components/transaction_preview.rs @@ -19,12 +19,14 @@ pub fn TransactionPreview(transaction: Transaction) -> impl IntoView { let (type_name, type_class) = transaction_type_info(&transaction); // Get additional metadata based on transaction type - let affected_pub_account_ids = transaction - .affected_public_account_ids(); - let metadata = match &transaction { - Transaction::Public(_) => { - format!("{} accounts involved", affected_pub_account_ids.len()) + Transaction::Public(tx) => { + let indexer_service_protocol::PublicTransaction { + hash: _, + message, + witness_set: _, + } = tx; + format!("{} accounts involved", message.account_ids.len()) } Transaction::PrivacyPreserving(tx) => { let indexer_service_protocol::PrivacyPreservingTransaction { @@ -34,7 +36,7 @@ pub fn TransactionPreview(transaction: Transaction) -> impl IntoView { } = tx; format!( "{} public accounts, {} commitments", - affected_pub_account_ids.len(), + message.public_account_ids.len(), message.new_commitments.len() ) } diff --git a/explorer_service/src/pages/main_page.rs b/explorer_service/src/pages/main_page.rs index 3f6ec808..3cfb832d 100644 --- a/explorer_service/src/pages/main_page.rs +++ b/explorer_service/src/pages/main_page.rs @@ -47,7 +47,7 @@ pub fn MainPage() -> impl IntoView { Ok(last_id) => { api::get_blocks( std::cmp::max(last_id.saturating_sub(RECENT_BLOCKS_LIMIT) as u32, 1), - RECENT_BLOCKS_LIMIT as u32, + (RECENT_BLOCKS_LIMIT + 1) as u32, ) .await } diff --git a/explorer_service/src/pages/transaction_page.rs b/explorer_service/src/pages/transaction_page.rs index 8ab33ff9..2859719f 100644 --- a/explorer_service/src/pages/transaction_page.rs +++ b/explorer_service/src/pages/transaction_page.rs @@ -67,7 +67,6 @@ pub fn TransactionPage() -> impl IntoView { </div> { - let affected_pub_acc_ids = tx.affected_public_account_ids(); match tx { Transaction::Public(ptx) => { let PublicTransaction { @@ -77,7 +76,7 @@ pub fn TransactionPage() -> impl IntoView { } = ptx; let PublicMessage { program_id, - account_ids: _, + account_ids, nonces, instruction_data, } = message; @@ -116,7 +115,7 @@ pub fn TransactionPage() -> impl IntoView { <h3>"Accounts"</h3> <div class="accounts-list"> - {affected_pub_acc_ids + {account_ids .into_iter() .zip_longest(nonces.into_iter()) .map(|maybe_pair| { @@ -221,9 +220,11 @@ pub fn TransactionPage() -> impl IntoView { <div class="accounts-list"> {public_account_ids .into_iter() - .zip(nonces.into_iter()) - .map(|(account_id, nonce)| { - let account_id_str = account_id.to_string(); + .zip_longest(nonces.into_iter()) + .map(|maybe_pair| { + match maybe_pair { + EitherOrBoth::Both(account_id, nonce) => { + let account_id_str = account_id.to_string(); view! { <div class="account-item"> <A href=format!("/account/{}", account_id_str)> @@ -234,6 +235,33 @@ pub fn TransactionPage() -> impl IntoView { </span> </div> } + } + EitherOrBoth::Left(account_id) => { + let account_id_str = account_id.to_string(); + view! { + <div class="account-item"> + <A href=format!("/account/{}", account_id_str)> + <span class="hash">{account_id_str}</span> + </A> + <span class="nonce"> + " (nonce: "{"Not affected by this transaction".to_string()}" )" + </span> + </div> + } + } + EitherOrBoth::Right(_) => { + view! { + <div class="account-item"> + <A href=format!("/account/{}", "Account not found")> + <span class="hash">{"Account not found"}</span> + </A> + <span class="nonce"> + " (nonce: "{"Account not found".to_string()}" )" + </span> + </div> + } + } + } }) .collect::<Vec<_>>()} </div> diff --git a/indexer/core/src/block_store.rs b/indexer/core/src/block_store.rs index 496d0bf3..2c1e960c 100644 --- a/indexer/core/src/block_store.rs +++ b/indexer/core/src/block_store.rs @@ -1,7 +1,10 @@ use std::{path::Path, sync::Arc}; use anyhow::Result; -use common::{block::Block, transaction::NSSATransaction}; +use common::{ + block::{BedrockStatus, Block}, + transaction::NSSATransaction, +}; use nssa::{Account, AccountId, V02State}; use storage::indexer::RocksDBIO; @@ -92,7 +95,7 @@ impl IndexerStore { Ok(self.final_state()?.get_account_by_id(*account_id)) } - pub fn put_block(&self, block: Block) -> Result<()> { + pub fn put_block(&self, mut block: Block) -> Result<()> { let mut final_state = self.dbio.final_state()?; for transaction in &block.body.transactions { @@ -102,6 +105,11 @@ impl IndexerStore { .execute_check_on_state(&mut final_state)?; } + // ToDo: Currently we are fetching only finalized blocks + // if it changes, the following lines need to be updated + // to represent correct block finality + block.bedrock_status = BedrockStatus::Finalized; + Ok(self.dbio.put_block(block)?) } } diff --git a/indexer/core/src/lib.rs b/indexer/core/src/lib.rs index 0497e68a..3111be6d 100644 --- a/indexer/core/src/lib.rs +++ b/indexer/core/src/lib.rs @@ -14,7 +14,6 @@ use crate::{block_store::IndexerStore, config::IndexerConfig}; pub mod block_store; pub mod config; -pub mod state; #[derive(Clone)] pub struct IndexerCore { diff --git a/indexer/core/src/state.rs b/indexer/core/src/state.rs deleted file mode 100644 index bd05971f..00000000 --- a/indexer/core/src/state.rs +++ /dev/null @@ -1,9 +0,0 @@ -use std::sync::Arc; - -use tokio::sync::RwLock; - -#[derive(Debug, Clone)] -pub struct IndexerState { - // Only one field for now, for testing. - pub latest_seen_block: Arc<RwLock<u64>>, -} diff --git a/indexer/service/protocol/Cargo.toml b/indexer/service/protocol/Cargo.toml index 2f787d2d..f9a3c2ad 100644 --- a/indexer/service/protocol/Cargo.toml +++ b/indexer/service/protocol/Cargo.toml @@ -16,7 +16,6 @@ base64.workspace = true base58.workspace = true hex.workspace = true anyhow.workspace = true -sha2.workspace = true [features] # Enable conversion to/from NSSA core types diff --git a/indexer/service/protocol/src/lib.rs b/indexer/service/protocol/src/lib.rs index f13a51c5..47dc20cc 100644 --- a/indexer/service/protocol/src/lib.rs +++ b/indexer/service/protocol/src/lib.rs @@ -3,14 +3,13 @@ //! Currently it mostly mimics types from `nssa_core`, but it's important to have a separate crate //! to define a stable interface for the indexer service RPCs which evolves in its own way. -use std::{collections::HashSet, fmt::Display, str::FromStr}; +use std::{fmt::Display, str::FromStr}; use anyhow::anyhow; use base58::{FromBase58 as _, ToBase58 as _}; use schemars::JsonSchema; use serde::{Deserialize, Serialize}; use serde_with::{DeserializeFromStr, SerializeDisplay}; -use sha2::{Digest, Sha256}; #[cfg(feature = "convert")] mod convert; @@ -54,18 +53,6 @@ pub struct AccountId { pub value: [u8; 32], } -impl From<&PublicKey> for AccountId { - fn from(key: &PublicKey) -> Self { - const PUBLIC_ACCOUNT_ID_PREFIX: &[u8; 32] = - b"/LEE/v0.3/AccountId/Public/\x00\x00\x00\x00\x00"; - - let mut hasher = Sha256::new(); - hasher.update(PUBLIC_ACCOUNT_ID_PREFIX); - hasher.update(key.0); - Self{ value: hasher.finalize().into()} - } -} - impl Display for AccountId { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { write!(f, "{}", self.value.to_base58()) @@ -161,15 +148,6 @@ impl Transaction { Transaction::ProgramDeployment(tx) => &tx.hash, } } - - /// Get affected public account ids - pub fn affected_public_account_ids(&self) -> Vec<AccountId> { - match self { - Transaction::Public(tx) => tx.affected_public_account_ids(), - Transaction::PrivacyPreserving(tx) => tx.affected_public_account_ids(), - Transaction::ProgramDeployment(tx) => tx.affected_public_account_ids(), - } - } } #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize, JsonSchema)] @@ -179,28 +157,6 @@ pub struct PublicTransaction { pub witness_set: WitnessSet, } -impl PublicTransaction { - - - pub(crate) fn signer_account_ids(&self) -> Vec<AccountId> { - self.witness_set - .signatures_and_public_keys() - .iter() - .map(|(_, public_key)| AccountId::from(public_key)) - .collect() - } - - pub fn affected_public_account_ids(&self) -> Vec<AccountId> { - let mut acc_set = self - .signer_account_ids() - .into_iter() - .collect::<HashSet<_>>(); - acc_set.extend(&self.message.account_ids); - - acc_set.into_iter().collect() - } -} - #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize, JsonSchema)] pub struct PrivacyPreservingTransaction { pub hash: HashType, @@ -208,26 +164,6 @@ pub struct PrivacyPreservingTransaction { pub witness_set: WitnessSet, } -impl PrivacyPreservingTransaction { - pub(crate) fn signer_account_ids(&self) -> Vec<AccountId> { - self.witness_set - .signatures_and_public_keys() - .iter() - .map(|(_, public_key)| AccountId::from(public_key)) - .collect() - } - - pub fn affected_public_account_ids(&self) -> Vec<AccountId> { - let mut acc_set = self - .signer_account_ids() - .into_iter() - .collect::<HashSet<_>>(); - acc_set.extend(&self.message.public_account_ids); - - acc_set.into_iter().collect() - } -} - #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize, JsonSchema)] pub struct PublicMessage { pub program_id: ProgramId, @@ -280,12 +216,6 @@ pub struct ProgramDeploymentTransaction { pub message: ProgramDeploymentMessage, } -impl ProgramDeploymentTransaction { - pub fn affected_public_account_ids(&self) -> Vec<AccountId> { - vec![] - } -} - pub type ViewTag = u8; #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize, JsonSchema)] From 5eb4e0af1fc8079b4ca8169de3ad3836ce9267ee Mon Sep 17 00:00:00 2001 From: Pravdyvy <awxrvtb@gmail.com> Date: Thu, 26 Feb 2026 19:18:41 +0200 Subject: [PATCH 07/14] fix: downgrades of logs --- .github/workflows/ci.yml | 2 +- indexer/service/protocol/src/lib.rs | 6 ------ sequencer_core/src/block_settlement_client.rs | 4 ++-- sequencer_runner/src/lib.rs | 2 +- 4 files changed, 4 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5515da9c..eb4cc791 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -186,7 +186,7 @@ jobs: valid-proof-test: runs-on: ubuntu-latest - timeout-minutes: 90 + timeout-minutes: 60 steps: - uses: actions/checkout@v5 with: diff --git a/indexer/service/protocol/src/lib.rs b/indexer/service/protocol/src/lib.rs index 47dc20cc..8fdd3289 100644 --- a/indexer/service/protocol/src/lib.rs +++ b/indexer/service/protocol/src/lib.rs @@ -190,12 +190,6 @@ pub struct WitnessSet { pub proof: Proof, } -impl WitnessSet { - pub fn signatures_and_public_keys(&self) -> &[(Signature, PublicKey)] { - &self.signatures_and_public_keys - } -} - #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize, JsonSchema)] pub struct Proof( #[serde(with = "base64")] diff --git a/sequencer_core/src/block_settlement_client.rs b/sequencer_core/src/block_settlement_client.rs index 075ebd11..15612835 100644 --- a/sequencer_core/src/block_settlement_client.rs +++ b/sequencer_core/src/block_settlement_client.rs @@ -28,7 +28,7 @@ pub trait BlockSettlementClientTrait: Clone { /// Create and sign a transaction for inscribing data. fn create_inscribe_tx(&self, block: &Block) -> Result<(SignedMantleTx, MsgId)> { let inscription_data = borsh::to_vec(block)?; - log::info!( + log::debug!( "The size of the block {} is {} bytes", block.header.block_id, inscription_data.len() @@ -104,7 +104,7 @@ impl BlockSettlementClientTrait for BlockSettlementClient { .await .context("Failed to post transaction to Bedrock")?; - log::info!("Posted block to Bedrock with parent id {parent_id:?} and msg id: {msg_id:?}"); + log::debug!("Posted block to Bedrock with parent id {parent_id:?} and msg id: {msg_id:?}"); Ok(()) } diff --git a/sequencer_runner/src/lib.rs b/sequencer_runner/src/lib.rs index 7a02bfc3..8bef705e 100644 --- a/sequencer_runner/src/lib.rs +++ b/sequencer_runner/src/lib.rs @@ -183,7 +183,7 @@ async fn retry_pending_blocks(seq_core: &Arc<Mutex<SequencerCore>>) -> Result<() }; for block in pending_blocks.iter() { - info!( + debug!( "Resubmitting pending block with id {}", block.header.block_id ); From c622f3540aadc4742f8f42cb59c207da91e464f2 Mon Sep 17 00:00:00 2001 From: Pravdyvy <awxrvtb@gmail.com> Date: Thu, 26 Feb 2026 20:05:16 +0200 Subject: [PATCH 08/14] fix: logging, config --- indexer/core/src/lib.rs | 3 +++ indexer/service/configs/indexer_config.json | 2 +- sequencer_runner/src/lib.rs | 8 ++++++++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/indexer/core/src/lib.rs b/indexer/core/src/lib.rs index 8d34ede0..0959249b 100644 --- a/indexer/core/src/lib.rs +++ b/indexer/core/src/lib.rs @@ -139,6 +139,9 @@ impl IndexerCore { info!("Searching for initial header finished"); + info!("Moving one block into future in case if channel start was on first L1 block"); + prev_last_l1_lib_header = self.get_next_lib(prev_last_l1_lib_header).await?; + info!("Starting backfilling from {prev_last_l1_lib_header}"); loop { diff --git a/indexer/service/configs/indexer_config.json b/indexer/service/configs/indexer_config.json index 7d7a317c..247caa8e 100644 --- a/indexer/service/configs/indexer_config.json +++ b/indexer/service/configs/indexer_config.json @@ -1,6 +1,6 @@ { "home": "./indexer/service", - "consensus_info_polling_interval": "1s", + "consensus_info_polling_interval": "60s", "bedrock_client_config": { "addr": "http://localhost:8080", "backoff": { diff --git a/sequencer_runner/src/lib.rs b/sequencer_runner/src/lib.rs index 8bef705e..d74792c8 100644 --- a/sequencer_runner/src/lib.rs +++ b/sequencer_runner/src/lib.rs @@ -182,6 +182,14 @@ async fn retry_pending_blocks(seq_core: &Arc<Mutex<SequencerCore>>) -> Result<() (pending_blocks, client) }; + if !pending_blocks.is_empty() { + info!( + "Resubmitting blocks from {} to {}", + pending_blocks.first().unwrap().header.block_id, + pending_blocks.last().unwrap().header.block_id + ); + } + for block in pending_blocks.iter() { debug!( "Resubmitting pending block with id {}", From 1f01f7c06afae156f0baa25b5741a1fbdefb5bf8 Mon Sep 17 00:00:00 2001 From: Daniil Polyakov <arjentix@gmail.com> Date: Thu, 26 Feb 2026 21:06:39 +0300 Subject: [PATCH 09/14] fix: add r0vm and logos circuits in indexer image --- indexer/service/Dockerfile | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/indexer/service/Dockerfile b/indexer/service/Dockerfile index 081e8b06..bf77ffd2 100644 --- a/indexer/service/Dockerfile +++ b/indexer/service/Dockerfile @@ -3,13 +3,43 @@ FROM lukemathwalker/cargo-chef:latest-rust-1.91.1-slim-trixie AS chef # Install build dependencies RUN apt-get update && apt-get install -y \ + build-essential \ pkg-config \ libssl-dev \ libclang-dev \ clang \ + cmake \ + ninja-build \ curl \ + git \ && rm -rf /var/lib/apt/lists/* +# Install r0vm +# Use quick install for x86-64 (risczero provides binaries only for this linux platform) +# Manual build for other platforms (including arm64 Linux) +RUN ARCH=$(uname -m); \ + if [ "$ARCH" = "x86_64" ]; then \ + echo "Using quick install for $ARCH"; \ + curl -L https://risczero.com/install | bash; \ + export PATH="/root/.cargo/bin:/root/.risc0/bin:${PATH}"; \ + rzup install; \ + else \ + echo "Using manual build for $ARCH"; \ + git clone --depth 1 --branch release-3.0 https://github.com/risc0/risc0.git; \ + git clone --depth 1 --branch r0.1.91.1 https://github.com/risc0/rust.git; \ + cd /risc0; \ + cargo install --path rzup; \ + rzup build --path /rust rust --verbose; \ + cargo install --path risc0/cargo-risczero; \ + fi +ENV PATH="/root/.cargo/bin:/root/.risc0/bin:${PATH}" +RUN cp "$(which r0vm)" /usr/local/bin/r0vm +RUN test -x /usr/local/bin/r0vm +RUN r0vm --version + +# Install logos blockchain circuits +RUN curl -sSL https://raw.githubusercontent.com/logos-blockchain/logos-blockchain/main/scripts/setup-logos-blockchain-circuits.sh | bash + WORKDIR /indexer_service # Planner stage - generates dependency recipe @@ -48,6 +78,12 @@ RUN useradd -m -u 1000 -s /bin/bash indexer_service_user && \ # Copy binary from builder COPY --from=builder --chown=indexer_service_user:indexer_service_user /indexer_service/target/release/indexer_service /usr/local/bin/indexer_service +# Copy r0vm binary from builder +COPY --from=builder --chown=indexer_service_user:indexer_service_user /usr/local/bin/r0vm /usr/local/bin/r0vm + +# Copy logos blockchain circuits from builder +COPY --from=builder --chown=indexer_service_user:indexer_service_user /root/.logos-blockchain-circuits /home/indexer_service_user/.logos-blockchain-circuits + # Copy entrypoint script COPY indexer/service/docker-entrypoint.sh /docker-entrypoint.sh RUN chmod +x /docker-entrypoint.sh From 1ea3aab3f12683ae7c5bab4155d4fc3d3dba6102 Mon Sep 17 00:00:00 2001 From: Pravdyvy <awxrvtb@gmail.com> Date: Thu, 26 Feb 2026 20:42:39 +0200 Subject: [PATCH 10/14] fix: limts fix --- indexer/core/src/lib.rs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/indexer/core/src/lib.rs b/indexer/core/src/lib.rs index 0959249b..6d56eb18 100644 --- a/indexer/core/src/lib.rs +++ b/indexer/core/src/lib.rs @@ -139,9 +139,6 @@ impl IndexerCore { info!("Searching for initial header finished"); - info!("Moving one block into future in case if channel start was on first L1 block"); - prev_last_l1_lib_header = self.get_next_lib(prev_last_l1_lib_header).await?; - info!("Starting backfilling from {prev_last_l1_lib_header}"); loop { @@ -270,7 +267,7 @@ impl IndexerCore { Ok(BackfillData { block_data: block_buffer, - curr_fin_l1_lib_header: backfill_limit, + curr_fin_l1_lib_header: curr_last_l1_lib_header, }) } From fee1ab30e94c99931b1dbd4305e97dc1d1fdf551 Mon Sep 17 00:00:00 2001 From: Andrea Franz <andrea@gravityblast.com> Date: Tue, 24 Feb 2026 16:24:36 +0100 Subject: [PATCH 11/14] chore(programs/amm): fix initial LP supply calculations ift-ts:sc:logos:2026q1-amm-core-improvements:fix-initial-lp-calc --- artifacts/program_methods/amm.bin | Bin 531248 -> 534992 bytes nssa/src/state.rs | 14 ++-- programs/amm/src/new_definition.rs | 8 +-- programs/amm/src/tests.rs | 111 ++++++++++++++++++++++++----- 4 files changed, 107 insertions(+), 26 deletions(-) diff --git a/artifacts/program_methods/amm.bin b/artifacts/program_methods/amm.bin index 45e28420be5562aa8f1510e38ba8e659889cf60c..359d062a73b757d0d95fb5c7303809f28a5efe68 100644 GIT binary patch delta 143609 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�x#9M!)# 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 Q?cc|gQ~LJZYTdg304R9@z5oCK delta 139997 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 diff --git a/nssa/src/state.rs b/nssa/src/state.rs index 1e347552..4c9a79b8 100644 --- a/nssa/src/state.rs +++ b/nssa/src/state.rs @@ -2504,6 +2504,12 @@ pub mod tests { fn user_token_b_holding_new_definition() -> u128 { 7_500 } + + fn lp_supply_init() -> u128 { + // isqrt(vault_a_balance_init * vault_b_balance_init) = isqrt(5_000 * 2_500) = 3535 + (BalanceForTests::vault_a_balance_init() * BalanceForTests::vault_b_balance_init()) + .isqrt() + } } struct IdForTests; @@ -3098,7 +3104,7 @@ pub mod tests { balance: 0u128, data: Data::from(&TokenHolding::Fungible { definition_id: IdForTests::token_lp_definition_id(), - balance: BalanceForTests::user_token_a_holding_new_definition(), + balance: BalanceForTests::lp_supply_init(), }), nonce: 0, } @@ -3110,7 +3116,7 @@ pub mod tests { balance: 0u128, data: Data::from(&TokenDefinition::Fungible { name: String::from("LP Token"), - total_supply: BalanceForTests::vault_a_balance_init(), + total_supply: BalanceForTests::lp_supply_init(), metadata_id: None, }), nonce: 0, @@ -3127,7 +3133,7 @@ pub mod tests { vault_a_id: IdForTests::vault_a_id(), vault_b_id: IdForTests::vault_b_id(), liquidity_pool_id: IdForTests::token_lp_definition_id(), - liquidity_pool_supply: BalanceForTests::user_token_a_holding_new_definition(), + liquidity_pool_supply: BalanceForTests::lp_supply_init(), reserve_a: BalanceForTests::vault_a_balance_init(), reserve_b: BalanceForTests::vault_b_balance_init(), fees: 0u128, @@ -3417,7 +3423,7 @@ pub mod tests { let user_token_b_post = state.get_account_by_id(IdForTests::user_token_b_id()); let user_token_lp_post = state.get_account_by_id(IdForTests::user_token_lp_id()); - let expected_pool = AccountForTests::pool_definition_init(); + let expected_pool = AccountForTests::pool_definition_new_init(); let expected_vault_a = AccountForTests::vault_a_init(); let expected_vault_b = AccountForTests::vault_b_init(); let expected_token_lp = AccountForTests::token_lp_definition_new_init(); diff --git a/programs/amm/src/new_definition.rs b/programs/amm/src/new_definition.rs index ab0b241a..af54adce 100644 --- a/programs/amm/src/new_definition.rs +++ b/programs/amm/src/new_definition.rs @@ -77,7 +77,7 @@ pub fn new_definition( ); // LP Token minting calculation - // We assume LP is based on the initial deposit amount for Token_A. + let initial_lp = (token_a_amount.get() * token_b_amount.get()).isqrt(); // Update pool account let mut pool_post = pool.account.clone(); @@ -87,7 +87,7 @@ pub fn new_definition( vault_a_id: vault_a.account_id, vault_b_id: vault_b.account_id, liquidity_pool_id: pool_definition_lp.account_id, - liquidity_pool_supply: token_a_amount.into(), + liquidity_pool_supply: initial_lp, reserve_a: token_a_amount.into(), reserve_b: token_b_amount.into(), fees: 0u128, // TODO: we assume all fees are 0 for now. @@ -124,11 +124,11 @@ pub fn new_definition( let instruction = if pool.account == Account::default() { token_core::Instruction::NewFungibleDefinition { name: String::from("LP Token"), - total_supply: token_a_amount.into(), + total_supply: initial_lp, } } else { token_core::Instruction::Mint { - amount_to_mint: token_a_amount.into(), + amount_to_mint: initial_lp, } }; diff --git a/programs/amm/src/tests.rs b/programs/amm/src/tests.rs index 021e32b2..203e3284 100644 --- a/programs/amm/src/tests.rs +++ b/programs/amm/src/tests.rs @@ -70,7 +70,7 @@ impl BalanceForTests { } fn remove_actual_a_successful() -> u128 { - 100 + 141 } fn remove_min_amount_b_low() -> u128 { @@ -105,6 +105,11 @@ impl BalanceForTests { 20 } + fn lp_supply_init() -> u128 { + // sqrt(vault_a_reserve_init * vault_b_reserve_init) = sqrt(1000 * 500) = 707 + (BalanceForTests::vault_a_reserve_init() * BalanceForTests::vault_b_reserve_init()).isqrt() + } + fn vault_a_swap_test_1() -> u128 { 1_500 } @@ -142,11 +147,11 @@ impl BalanceForTests { } fn vault_a_remove_successful() -> u128 { - 900 + 859 } fn vault_b_remove_successful() -> u128 { - 450 + 430 } } @@ -249,7 +254,7 @@ impl ChainedCallForTests { TOKEN_PROGRAM_ID, vec![pool_lp_auth, AccountForTests::user_holding_lp_init()], &token_core::Instruction::Mint { - amount_to_mint: BalanceForTests::add_successful_amount_a(), + amount_to_mint: 282, }, ) .with_pda_seeds(vec![compute_liquidity_token_pda_seed( @@ -282,7 +287,7 @@ impl ChainedCallForTests { TOKEN_PROGRAM_ID, vec![vault_b_auth, AccountForTests::user_holding_b()], &token_core::Instruction::Transfer { - amount_to_transfer: BalanceForTests::remove_min_amount_b_low(), + amount_to_transfer: 70, }, ) .with_pda_seeds(vec![compute_vault_pda_seed( @@ -341,7 +346,7 @@ impl ChainedCallForTests { AccountForTests::user_holding_lp_uninit(), ], &token_core::Instruction::Mint { - amount_to_mint: BalanceForTests::add_successful_amount_a(), + amount_to_mint: BalanceForTests::lp_supply_init(), }, ) .with_pda_seeds(vec![compute_liquidity_token_pda_seed( @@ -568,7 +573,7 @@ impl AccountForTests { balance: 0u128, data: Data::from(&TokenDefinition::Fungible { name: String::from("test"), - total_supply: BalanceForTests::vault_a_reserve_init(), + total_supply: BalanceForTests::lp_supply_init(), metadata_id: None, }), nonce: 0, @@ -585,7 +590,7 @@ impl AccountForTests { balance: 0u128, data: Data::from(&TokenDefinition::Fungible { name: String::from("test"), - total_supply: BalanceForTests::vault_a_reserve_init(), + total_supply: BalanceForTests::lp_supply_init(), metadata_id: None, }), nonce: 0, @@ -638,7 +643,7 @@ impl AccountForTests { vault_a_id: IdForTests::vault_a_id(), vault_b_id: IdForTests::vault_b_id(), liquidity_pool_id: IdForTests::token_lp_definition_id(), - liquidity_pool_supply: BalanceForTests::vault_a_reserve_init(), + liquidity_pool_supply: BalanceForTests::lp_supply_init(), reserve_a: BalanceForTests::vault_a_reserve_init(), reserve_b: BalanceForTests::vault_b_reserve_init(), fees: 0u128, @@ -662,7 +667,7 @@ impl AccountForTests { vault_a_id: IdForTests::vault_a_id(), vault_b_id: IdForTests::vault_b_id(), liquidity_pool_id: IdForTests::token_lp_definition_id(), - liquidity_pool_supply: BalanceForTests::vault_a_reserve_init(), + liquidity_pool_supply: BalanceForTests::lp_supply_init(), reserve_a: 0, reserve_b: BalanceForTests::vault_b_reserve_init(), fees: 0u128, @@ -686,7 +691,7 @@ impl AccountForTests { vault_a_id: IdForTests::vault_a_id(), vault_b_id: IdForTests::vault_b_id(), liquidity_pool_id: IdForTests::token_lp_definition_id(), - liquidity_pool_supply: BalanceForTests::vault_a_reserve_init(), + liquidity_pool_supply: BalanceForTests::lp_supply_init(), reserve_a: BalanceForTests::vault_a_reserve_init(), reserve_b: 0, fees: 0u128, @@ -758,7 +763,7 @@ impl AccountForTests { vault_a_id: IdForTests::vault_a_id(), vault_b_id: IdForTests::vault_b_id(), liquidity_pool_id: IdForTests::token_lp_definition_id(), - liquidity_pool_supply: BalanceForTests::vault_a_reserve_init(), + liquidity_pool_supply: BalanceForTests::lp_supply_init(), reserve_a: BalanceForTests::vault_a_swap_test_1(), reserve_b: BalanceForTests::vault_b_swap_test_1(), fees: 0u128, @@ -782,7 +787,7 @@ impl AccountForTests { vault_a_id: IdForTests::vault_a_id(), vault_b_id: IdForTests::vault_b_id(), liquidity_pool_id: IdForTests::token_lp_definition_id(), - liquidity_pool_supply: BalanceForTests::vault_a_reserve_init(), + liquidity_pool_supply: BalanceForTests::lp_supply_init(), reserve_a: BalanceForTests::vault_a_swap_test_2(), reserve_b: BalanceForTests::vault_b_swap_test_2(), fees: 0u128, @@ -830,7 +835,7 @@ impl AccountForTests { vault_a_id: IdForTests::vault_a_id(), vault_b_id: IdForTests::vault_b_id(), liquidity_pool_id: IdForTests::token_lp_definition_id(), - liquidity_pool_supply: BalanceForTests::vault_a_add_successful(), + liquidity_pool_supply: 989, reserve_a: BalanceForTests::vault_a_add_successful(), reserve_b: BalanceForTests::vault_b_add_successful(), fees: 0u128, @@ -854,7 +859,7 @@ impl AccountForTests { vault_a_id: IdForTests::vault_a_id(), vault_b_id: IdForTests::vault_b_id(), liquidity_pool_id: IdForTests::token_lp_definition_id(), - liquidity_pool_supply: BalanceForTests::vault_a_remove_successful(), + liquidity_pool_supply: 607, reserve_a: BalanceForTests::vault_a_remove_successful(), reserve_b: BalanceForTests::vault_b_remove_successful(), fees: 0u128, @@ -878,7 +883,7 @@ impl AccountForTests { vault_a_id: IdForTests::vault_a_id(), vault_b_id: IdForTests::vault_b_id(), liquidity_pool_id: IdForTests::token_lp_definition_id(), - liquidity_pool_supply: BalanceForTests::vault_a_reserve_init(), + liquidity_pool_supply: BalanceForTests::lp_supply_init(), reserve_a: BalanceForTests::vault_a_reserve_init(), reserve_b: BalanceForTests::vault_b_reserve_init(), fees: 0u128, @@ -902,7 +907,7 @@ impl AccountForTests { vault_a_id: IdForTests::vault_a_id(), vault_b_id: IdForTests::vault_b_id(), liquidity_pool_id: IdForTests::token_lp_definition_id(), - liquidity_pool_supply: BalanceForTests::vault_a_reserve_init(), + liquidity_pool_supply: BalanceForTests::lp_supply_init(), reserve_a: BalanceForTests::vault_a_reserve_init(), reserve_b: BalanceForTests::vault_b_reserve_init(), fees: 0u128, @@ -958,7 +963,7 @@ impl AccountForTests { vault_a_id: IdForTests::vault_a_id(), vault_b_id: IdForTests::vault_b_id(), liquidity_pool_id: IdForTests::token_lp_definition_id(), - liquidity_pool_supply: BalanceForTests::vault_a_reserve_init(), + liquidity_pool_supply: BalanceForTests::lp_supply_init(), reserve_a: BalanceForTests::vault_a_reserve_init(), reserve_b: BalanceForTests::vault_b_reserve_init(), fees: 0u128, @@ -1717,3 +1722,73 @@ fn test_call_swap_chained_call_successful_2() { ChainedCallForTests::cc_swap_token_b_test_2() ); } + +#[test] +fn test_new_definition_lp_asymmetric_amounts() { + let (post_states, chained_calls) = new_definition( + AccountForTests::pool_definition_inactive(), + AccountForTests::vault_a_init(), + AccountForTests::vault_b_init(), + AccountForTests::pool_lp_init(), + AccountForTests::user_holding_a(), + AccountForTests::user_holding_b(), + AccountForTests::user_holding_lp_uninit(), + NonZero::new(BalanceForTests::vault_a_reserve_init()).unwrap(), + NonZero::new(BalanceForTests::vault_b_reserve_init()).unwrap(), + AMM_PROGRAM_ID, + ); + + // check the minted LP amount + let pool_post = post_states[0].clone(); + let pool_def = PoolDefinition::try_from(&pool_post.account().data).unwrap(); + assert_eq!( + pool_def.liquidity_pool_supply, + BalanceForTests::lp_supply_init() + ); + + let chained_call_lp = chained_calls[0].clone(); + assert!(chained_call_lp == ChainedCallForTests::cc_new_definition_token_lp()); +} + +#[test] +fn test_new_definition_lp_symmetric_amounts() { + // token_a=100, token_b=100 → LP=sqrt(10_000)=100 + let token_a_amount = 100u128; + let token_b_amount = 100u128; + let expected_lp = (token_a_amount * token_b_amount).isqrt(); + assert_eq!(expected_lp, 100); + + let (post_states, chained_calls) = new_definition( + AccountForTests::pool_definition_inactive(), + AccountForTests::vault_a_init(), + AccountForTests::vault_b_init(), + AccountForTests::pool_lp_init(), + AccountForTests::user_holding_a(), + AccountForTests::user_holding_b(), + AccountForTests::user_holding_lp_uninit(), + NonZero::new(token_a_amount).unwrap(), + NonZero::new(token_b_amount).unwrap(), + AMM_PROGRAM_ID, + ); + + let pool_post = post_states[0].clone(); + let pool_def = PoolDefinition::try_from(&pool_post.account().data).unwrap(); + assert_eq!(pool_def.liquidity_pool_supply, expected_lp); + + let chained_call_lp = chained_calls[0].clone(); + let expected_lp_call = ChainedCall::new( + TOKEN_PROGRAM_ID, + vec![ + AccountForTests::pool_lp_init(), + AccountForTests::user_holding_lp_uninit(), + ], + &token_core::Instruction::Mint { + amount_to_mint: expected_lp, + }, + ) + .with_pda_seeds(vec![compute_liquidity_token_pda_seed( + IdForTests::pool_definition_id(), + )]); + + assert_eq!(chained_call_lp, expected_lp_call); +} From 6887131364739363f0e48fb7afc6381f2d015b44 Mon Sep 17 00:00:00 2001 From: danielSanchezQ <3danimanimal@gmail.com> Date: Fri, 27 Feb 2026 12:13:25 +0000 Subject: [PATCH 12/14] Add circuits dependency --- flake.lock | 37 ++++++++++++++++++++++++++++++++++++- flake.nix | 6 ++++++ 2 files changed, 42 insertions(+), 1 deletion(-) diff --git a/flake.lock b/flake.lock index a12fbc85..d0df80e3 100644 --- a/flake.lock +++ b/flake.lock @@ -15,7 +15,41 @@ "type": "github" } }, + "logos-blockchain-circuits": { + "inputs": { + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1770979891, + "narHash": "sha256-cvkVnE7btuFLzv70ORAZve9K1Huiplq0iECgXSXb0ZY=", + "owner": "logos-blockchain", + "repo": "logos-blockchain-circuits", + "rev": "ec7d298e5a3a0507bb8570df86cdf78dc452d024", + "type": "github" + }, + "original": { + "owner": "logos-blockchain", + "repo": "logos-blockchain-circuits", + "type": "github" + } + }, "nixpkgs": { + "locked": { + "lastModified": 1769461804, + "narHash": "sha256-msG8SU5WsBUfVVa/9RPLaymvi5bI8edTavbIq3vRlhI=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "bfc1b8a4574108ceef22f02bafcf6611380c100d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { "locked": { "lastModified": 1770019141, "narHash": "sha256-VKS4ZLNx4PNrABoB0L8KUpc1fE7CLpQXQs985tGfaCU=", @@ -34,7 +68,8 @@ "root": { "inputs": { "crane": "crane", - "nixpkgs": "nixpkgs", + "logos-blockchain-circuits": "logos-blockchain-circuits", + "nixpkgs": "nixpkgs_2", "rust-overlay": "rust-overlay" } }, diff --git a/flake.nix b/flake.nix index a9751f5a..be20b56b 100644 --- a/flake.nix +++ b/flake.nix @@ -10,6 +10,10 @@ }; crane.url = "github:ipetkov/crane"; + + logos-blockchain-circuits = { + url = "github:logos-blockchain/logos-blockchain-circuits"; + }; }; outputs = @@ -18,6 +22,7 @@ nixpkgs, rust-overlay, crane, + logos-blockchain-circuits, ... }: let @@ -107,6 +112,7 @@ '' + pkgs.lib.optionalString pkgs.stdenv.isDarwin '' export PATH="$PATH:/usr/bin" ''; + LOGOS_BLOCKCHAIN_CIRCUITS = logos-blockchain-circuits.packages.${system}.default; }; walletFfiPackage = craneLib.buildPackage ( From 99069c84b1b9c31580e024adda12c4f3de5a0f4b Mon Sep 17 00:00:00 2001 From: Sergio Chouhy <sergio.chouhy@gmail.com> Date: Fri, 27 Feb 2026 10:06:54 -0300 Subject: [PATCH 13/14] update sequencer config npks --- .../configs/debug/sequencer_config.json | 120 +++++++++--------- 1 file changed, 60 insertions(+), 60 deletions(-) diff --git a/sequencer_runner/configs/debug/sequencer_config.json b/sequencer_runner/configs/debug/sequencer_config.json index 002228f4..9fd80dc2 100644 --- a/sequencer_runner/configs/debug/sequencer_config.json +++ b/sequencer_runner/configs/debug/sequencer_config.json @@ -30,40 +30,40 @@ ], "initial_commitments": [ { - "npk": [ - 63, - 202, - 178, - 231, - 183, - 82, - 237, - 212, - 216, - 221, - 215, - 255, - 153, - 101, + "npk":[ 177, - 161, - 254, - 210, - 128, - 122, - 54, - 190, - 230, - 151, - 183, 64, - 225, - 229, - 113, 1, - 228, - 97 - ], + 11, + 87, + 38, + 254, + 159, + 231, + 165, + 1, + 94, + 64, + 137, + 243, + 76, + 249, + 101, + 251, + 129, + 33, + 101, + 189, + 30, + 42, + 11, + 191, + 34, + 103, + 186, + 227, + 230 + ] , "account": { "program_owner": [ 0, @@ -82,38 +82,38 @@ }, { "npk": [ - 192, - 251, - 166, - 243, - 167, - 236, - 84, - 249, - 35, + 32, + 67, + 72, + 164, + 106, + 53, + 66, + 239, + 141, + 15, + 52, + 230, 136, - 130, - 172, - 219, - 225, - 161, - 139, - 229, - 89, + 177, + 2, + 236, + 207, 243, - 125, + 134, + 135, + 210, + 143, + 87, + 232, + 215, + 128, 194, - 213, - 209, - 30, - 23, - 174, - 100, - 244, - 124, - 74, - 140, - 47 + 120, + 113, + 224, + 4, + 165 ], "account": { "program_owner": [ From d5c75cbd98e465d7da19209c3c8cb8183013f2e3 Mon Sep 17 00:00:00 2001 From: Sergio Chouhy <sergio.chouhy@gmail.com> Date: Fri, 27 Feb 2026 10:25:07 -0300 Subject: [PATCH 14/14] update public account ids --- sequencer_runner/configs/debug/sequencer_config.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sequencer_runner/configs/debug/sequencer_config.json b/sequencer_runner/configs/debug/sequencer_config.json index 9fd80dc2..b53124c2 100644 --- a/sequencer_runner/configs/debug/sequencer_config.json +++ b/sequencer_runner/configs/debug/sequencer_config.json @@ -20,11 +20,11 @@ "indexer_rpc_url": "ws://localhost:8779", "initial_accounts": [ { - "account_id": "BLgCRDXYdQPMMWVHYRFGQZbgeHx9frkipa8GtpG2Syqy", + "account_id": "6iArKUXxhUJqS7kCaPNhwMWt3ro71PDyBj7jwAyE2VQV", "balance": 10000 }, { - "account_id": "Gj1mJy5W7J5pfmLRujmQaLfLMWidNxQ6uwnhb666ZwHw", + "account_id": "7wHg9sbJwc6h3NP1S9bekfAzB8CHifEcxKswCKUt3YQo", "balance": 20000 } ],