From 90a1ee994f295d796371597ef7880aba4aecbbf8 Mon Sep 17 00:00:00 2001 From: Daniil Polyakov Date: Tue, 16 Dec 2025 16:22:35 +0300 Subject: [PATCH] refactor: move program_methods to the root of repo --- nssa/Cargo.toml | 4 ++-- nssa/build.rs | 11 ++++++----- nssa/test_program_methods/guest/src/bin/noop.rs | 12 ------------ .../program_methods => program_methods}/Cargo.toml | 0 {nssa/program_methods => program_methods}/build.rs | 0 .../guest/Cargo.lock | 0 .../guest/Cargo.toml | 2 +- .../guest/src/bin/authenticated_transfer.rs | 0 .../guest/src/bin/pinata.rs | 0 .../guest/src/bin/pinata_token.rs | 0 .../guest/src/bin/privacy_preserving_circuit.rs | 0 .../guest/src/bin/token.rs | 0 .../program_methods => program_methods}/src/lib.rs | 0 .../Cargo.toml | 0 .../build.rs | 0 .../guest/Cargo.lock | 0 .../guest/Cargo.toml | 2 +- .../guest/src/bin/burner.rs | 0 .../guest/src/bin/chain_caller.rs | 0 .../guest/src/bin/claimer.rs | 0 .../guest/src/bin/data_changer.rs | 0 .../guest/src/bin/extra_output.rs | 0 .../guest/src/bin/minter.rs | 0 .../guest/src/bin/missing_output.rs | 0 .../guest/src/bin/modified_transfer.rs | 0 .../guest/src/bin/nonce_changer.rs | 0 test_program_methods/guest/src/bin/noop.rs | 13 +++++++++++++ .../guest/src/bin/program_owner_changer.rs | 0 .../guest/src/bin/simple_balance_transfer.rs | 0 .../src/lib.rs | 0 30 files changed, 23 insertions(+), 21 deletions(-) delete mode 100644 nssa/test_program_methods/guest/src/bin/noop.rs rename {nssa/program_methods => program_methods}/Cargo.toml (100%) rename {nssa/program_methods => program_methods}/build.rs (100%) rename {nssa/program_methods => program_methods}/guest/Cargo.lock (100%) rename {nssa/program_methods => program_methods}/guest/Cargo.toml (83%) rename {nssa/program_methods => program_methods}/guest/src/bin/authenticated_transfer.rs (100%) rename {nssa/program_methods => program_methods}/guest/src/bin/pinata.rs (100%) rename {nssa/program_methods => program_methods}/guest/src/bin/pinata_token.rs (100%) rename {nssa/program_methods => program_methods}/guest/src/bin/privacy_preserving_circuit.rs (100%) rename {nssa/program_methods => program_methods}/guest/src/bin/token.rs (100%) rename {nssa/program_methods => program_methods}/src/lib.rs (100%) rename {nssa/test_program_methods => test_program_methods}/Cargo.toml (100%) rename {nssa/test_program_methods => test_program_methods}/build.rs (100%) rename {nssa/test_program_methods => test_program_methods}/guest/Cargo.lock (100%) rename {nssa/test_program_methods => test_program_methods}/guest/Cargo.toml (83%) rename {nssa/test_program_methods => test_program_methods}/guest/src/bin/burner.rs (100%) rename {nssa/test_program_methods => test_program_methods}/guest/src/bin/chain_caller.rs (100%) rename {nssa/test_program_methods => test_program_methods}/guest/src/bin/claimer.rs (100%) rename {nssa/test_program_methods => test_program_methods}/guest/src/bin/data_changer.rs (100%) rename {nssa/test_program_methods => test_program_methods}/guest/src/bin/extra_output.rs (100%) rename {nssa/test_program_methods => test_program_methods}/guest/src/bin/minter.rs (100%) rename {nssa/test_program_methods => test_program_methods}/guest/src/bin/missing_output.rs (100%) rename {nssa/test_program_methods => test_program_methods}/guest/src/bin/modified_transfer.rs (100%) rename {nssa/test_program_methods => test_program_methods}/guest/src/bin/nonce_changer.rs (100%) create mode 100644 test_program_methods/guest/src/bin/noop.rs rename {nssa/test_program_methods => test_program_methods}/guest/src/bin/program_owner_changer.rs (100%) rename {nssa/test_program_methods => test_program_methods}/guest/src/bin/simple_balance_transfer.rs (100%) rename {nssa/test_program_methods => test_program_methods}/src/lib.rs (100%) diff --git a/nssa/Cargo.toml b/nssa/Cargo.toml index 915212c..19e70dd 100644 --- a/nssa/Cargo.toml +++ b/nssa/Cargo.toml @@ -7,7 +7,7 @@ edition = "2024" thiserror = "2.0.12" risc0-zkvm = { version = "3.0.3", features = ['std'] } nssa-core = { path = "core", features = ["host"] } -program-methods = { path = "program_methods", optional = true } +program-methods = { path = "../program_methods", optional = true } serde = "1.0.219" sha2 = "0.10.9" secp256k1 = "0.31.1" @@ -21,7 +21,7 @@ risc0-build = "3.0.3" risc0-binfmt = "3.0.2" [dev-dependencies] -test-program-methods = { path = "test_program_methods" } +test-program-methods = { path = "../test_program_methods" } hex-literal = "1.0.0" [features] diff --git a/nssa/build.rs b/nssa/build.rs index cc4608e..8fe6dbe 100644 --- a/nssa/build.rs +++ b/nssa/build.rs @@ -15,12 +15,13 @@ fn build_deterministic() -> Result<(), Box> { let mod_dir = out_dir.join("program_methods"); let mod_file = mod_dir.join("mod.rs"); - println!("cargo:rerun-if-changed=program_methods/guest/src"); - println!("cargo:rerun-if-changed=program_methods/guest/Cargo.toml"); - - let guest_manifest = manifest_dir.join("program_methods/guest/Cargo.toml"); + println!("cargo:rerun-if-changed=../program_methods/guest/src"); + println!("cargo:rerun-if-changed=../program_methods/guest/Cargo.toml"); + let build_cur_dir = manifest_dir.join("..").canonicalize()?; + let guest_manifest = build_cur_dir.join("program_methods/guest/Cargo.toml"); let status = Command::new("cargo") + .current_dir(build_cur_dir) .args(["risczero", "build", "--manifest-path"]) .arg(&guest_manifest) .status()?; @@ -29,7 +30,7 @@ fn build_deterministic() -> Result<(), Box> { } let target_dir = - manifest_dir.join("program_methods/guest/target/riscv32im-risc0-zkvm-elf/docker/"); + manifest_dir.join("../program_methods/guest/target/riscv32im-risc0-zkvm-elf/docker/"); let bins = fs::read_dir(&target_dir)? .filter_map(Result::ok) diff --git a/nssa/test_program_methods/guest/src/bin/noop.rs b/nssa/test_program_methods/guest/src/bin/noop.rs deleted file mode 100644 index fb02389..0000000 --- a/nssa/test_program_methods/guest/src/bin/noop.rs +++ /dev/null @@ -1,12 +0,0 @@ -use nssa_core::program::{read_nssa_inputs, write_nssa_outputs, ProgramInput, AccountPostState}; - -type Instruction = (); - -fn main() { - let (ProgramInput { pre_states, .. }, instruction_words) = read_nssa_inputs::(); - - let post_states = pre_states.iter().map(|account| { - AccountPostState::new(account.account.clone()) - }).collect(); - write_nssa_outputs(instruction_words, pre_states, post_states); -} diff --git a/nssa/program_methods/Cargo.toml b/program_methods/Cargo.toml similarity index 100% rename from nssa/program_methods/Cargo.toml rename to program_methods/Cargo.toml diff --git a/nssa/program_methods/build.rs b/program_methods/build.rs similarity index 100% rename from nssa/program_methods/build.rs rename to program_methods/build.rs diff --git a/nssa/program_methods/guest/Cargo.lock b/program_methods/guest/Cargo.lock similarity index 100% rename from nssa/program_methods/guest/Cargo.lock rename to program_methods/guest/Cargo.lock diff --git a/nssa/program_methods/guest/Cargo.toml b/program_methods/guest/Cargo.toml similarity index 83% rename from nssa/program_methods/guest/Cargo.toml rename to program_methods/guest/Cargo.toml index 9e5f543..cf60940 100644 --- a/nssa/program_methods/guest/Cargo.toml +++ b/program_methods/guest/Cargo.toml @@ -7,5 +7,5 @@ edition = "2024" [dependencies] risc0-zkvm = { version = "3.0.3", features = ['std'] } -nssa-core = { path = "../../core" } +nssa-core = { path = "../../nssa/core" } serde = { version = "1.0.219", default-features = false } diff --git a/nssa/program_methods/guest/src/bin/authenticated_transfer.rs b/program_methods/guest/src/bin/authenticated_transfer.rs similarity index 100% rename from nssa/program_methods/guest/src/bin/authenticated_transfer.rs rename to program_methods/guest/src/bin/authenticated_transfer.rs diff --git a/nssa/program_methods/guest/src/bin/pinata.rs b/program_methods/guest/src/bin/pinata.rs similarity index 100% rename from nssa/program_methods/guest/src/bin/pinata.rs rename to program_methods/guest/src/bin/pinata.rs diff --git a/nssa/program_methods/guest/src/bin/pinata_token.rs b/program_methods/guest/src/bin/pinata_token.rs similarity index 100% rename from nssa/program_methods/guest/src/bin/pinata_token.rs rename to program_methods/guest/src/bin/pinata_token.rs diff --git a/nssa/program_methods/guest/src/bin/privacy_preserving_circuit.rs b/program_methods/guest/src/bin/privacy_preserving_circuit.rs similarity index 100% rename from nssa/program_methods/guest/src/bin/privacy_preserving_circuit.rs rename to program_methods/guest/src/bin/privacy_preserving_circuit.rs diff --git a/nssa/program_methods/guest/src/bin/token.rs b/program_methods/guest/src/bin/token.rs similarity index 100% rename from nssa/program_methods/guest/src/bin/token.rs rename to program_methods/guest/src/bin/token.rs diff --git a/nssa/program_methods/src/lib.rs b/program_methods/src/lib.rs similarity index 100% rename from nssa/program_methods/src/lib.rs rename to program_methods/src/lib.rs diff --git a/nssa/test_program_methods/Cargo.toml b/test_program_methods/Cargo.toml similarity index 100% rename from nssa/test_program_methods/Cargo.toml rename to test_program_methods/Cargo.toml diff --git a/nssa/test_program_methods/build.rs b/test_program_methods/build.rs similarity index 100% rename from nssa/test_program_methods/build.rs rename to test_program_methods/build.rs diff --git a/nssa/test_program_methods/guest/Cargo.lock b/test_program_methods/guest/Cargo.lock similarity index 100% rename from nssa/test_program_methods/guest/Cargo.lock rename to test_program_methods/guest/Cargo.lock diff --git a/nssa/test_program_methods/guest/Cargo.toml b/test_program_methods/guest/Cargo.toml similarity index 83% rename from nssa/test_program_methods/guest/Cargo.toml rename to test_program_methods/guest/Cargo.toml index 9e5f543..cf60940 100644 --- a/nssa/test_program_methods/guest/Cargo.toml +++ b/test_program_methods/guest/Cargo.toml @@ -7,5 +7,5 @@ edition = "2024" [dependencies] risc0-zkvm = { version = "3.0.3", features = ['std'] } -nssa-core = { path = "../../core" } +nssa-core = { path = "../../nssa/core" } serde = { version = "1.0.219", default-features = false } diff --git a/nssa/test_program_methods/guest/src/bin/burner.rs b/test_program_methods/guest/src/bin/burner.rs similarity index 100% rename from nssa/test_program_methods/guest/src/bin/burner.rs rename to test_program_methods/guest/src/bin/burner.rs diff --git a/nssa/test_program_methods/guest/src/bin/chain_caller.rs b/test_program_methods/guest/src/bin/chain_caller.rs similarity index 100% rename from nssa/test_program_methods/guest/src/bin/chain_caller.rs rename to test_program_methods/guest/src/bin/chain_caller.rs diff --git a/nssa/test_program_methods/guest/src/bin/claimer.rs b/test_program_methods/guest/src/bin/claimer.rs similarity index 100% rename from nssa/test_program_methods/guest/src/bin/claimer.rs rename to test_program_methods/guest/src/bin/claimer.rs diff --git a/nssa/test_program_methods/guest/src/bin/data_changer.rs b/test_program_methods/guest/src/bin/data_changer.rs similarity index 100% rename from nssa/test_program_methods/guest/src/bin/data_changer.rs rename to test_program_methods/guest/src/bin/data_changer.rs diff --git a/nssa/test_program_methods/guest/src/bin/extra_output.rs b/test_program_methods/guest/src/bin/extra_output.rs similarity index 100% rename from nssa/test_program_methods/guest/src/bin/extra_output.rs rename to test_program_methods/guest/src/bin/extra_output.rs diff --git a/nssa/test_program_methods/guest/src/bin/minter.rs b/test_program_methods/guest/src/bin/minter.rs similarity index 100% rename from nssa/test_program_methods/guest/src/bin/minter.rs rename to test_program_methods/guest/src/bin/minter.rs diff --git a/nssa/test_program_methods/guest/src/bin/missing_output.rs b/test_program_methods/guest/src/bin/missing_output.rs similarity index 100% rename from nssa/test_program_methods/guest/src/bin/missing_output.rs rename to test_program_methods/guest/src/bin/missing_output.rs diff --git a/nssa/test_program_methods/guest/src/bin/modified_transfer.rs b/test_program_methods/guest/src/bin/modified_transfer.rs similarity index 100% rename from nssa/test_program_methods/guest/src/bin/modified_transfer.rs rename to test_program_methods/guest/src/bin/modified_transfer.rs diff --git a/nssa/test_program_methods/guest/src/bin/nonce_changer.rs b/test_program_methods/guest/src/bin/nonce_changer.rs similarity index 100% rename from nssa/test_program_methods/guest/src/bin/nonce_changer.rs rename to test_program_methods/guest/src/bin/nonce_changer.rs diff --git a/test_program_methods/guest/src/bin/noop.rs b/test_program_methods/guest/src/bin/noop.rs new file mode 100644 index 0000000..79dd1de --- /dev/null +++ b/test_program_methods/guest/src/bin/noop.rs @@ -0,0 +1,13 @@ +use nssa_core::program::{AccountPostState, ProgramInput, read_nssa_inputs, write_nssa_outputs}; + +type Instruction = (); + +fn main() { + let (ProgramInput { pre_states, .. }, instruction_words) = read_nssa_inputs::(); + + let post_states = pre_states + .iter() + .map(|account| AccountPostState::new(account.account.clone())) + .collect(); + write_nssa_outputs(instruction_words, pre_states, post_states); +} diff --git a/nssa/test_program_methods/guest/src/bin/program_owner_changer.rs b/test_program_methods/guest/src/bin/program_owner_changer.rs similarity index 100% rename from nssa/test_program_methods/guest/src/bin/program_owner_changer.rs rename to test_program_methods/guest/src/bin/program_owner_changer.rs diff --git a/nssa/test_program_methods/guest/src/bin/simple_balance_transfer.rs b/test_program_methods/guest/src/bin/simple_balance_transfer.rs similarity index 100% rename from nssa/test_program_methods/guest/src/bin/simple_balance_transfer.rs rename to test_program_methods/guest/src/bin/simple_balance_transfer.rs diff --git a/nssa/test_program_methods/src/lib.rs b/test_program_methods/src/lib.rs similarity index 100% rename from nssa/test_program_methods/src/lib.rs rename to test_program_methods/src/lib.rs