2225 Commits

Author SHA1 Message Date
Moudy
7d465dded7 fix: verify caller_program_id in program output 2026-04-07 19:03:06 +02:00
Moudy
495680e2ea update test guest programs with caller_program_id in ProgramOutput 2026-04-07 17:54:59 +02:00
Moudy
5273c9e076 fix: rebuild artifacts 2026-04-04 00:44:50 +02:00
Moudy
cc8e82278b fix: add backticks in callback doc comment 2026-04-04 00:20:42 +02:00
Moudy
324750e618 fix: remove unfulfilled large_enum_variant expect, add backticks in docs, rebuild artifacts 2026-04-04 00:04:40 +02:00
Moudy
dca3d1a18d fix: rebuild artifacts 2026-04-03 23:36:36 +02:00
Moudy
032f6b8906 fix: use AccountId::new instead of From<ProgramId>, apply formatting 2026-04-03 23:24:13 +02:00
moudyellaz
1d0c93e9cf test: verify malicious self_program_id is rejected in public execution 2026-04-03 22:13:58 +02:00
Moudy
3cfc74695b fix: compute intermediate states inside flash swap programs 2026-04-03 22:05:49 +02:00
Moudy
c85f19fe85 fix: clippy lints in flash swap guest programs 2026-04-03 20:16:59 +02:00
Moudy
5b42d8ed9c fix: move flash swap types before all functions in test module 2026-04-03 18:14:49 +02:00
Moudy
324593c4c7 fix: format expect attribute 2026-04-03 16:08:08 +02:00
Moudy
eefaf64b6d fix: move flash swap types before tests, use expect instead of allow 2026-04-03 16:04:49 +02:00
Moudy
9fb55a75d6 fix: ordering of items and allow large_enum_variant in test module 2026-04-03 15:40:55 +02:00
Moudy
bc0583368d fix: set is_authorized on PDA accounts in flash swap chained calls 2026-04-03 15:18:23 +02:00
Moudy
02e336b240 fix: add missing caller_program_id argument in test 2026-04-03 11:47:34 +02:00
Moudy
74e16db68f fix: apply formatting and rebuild artifacts 2026-04-03 01:17:42 +02:00
Moudy
88e3b368c3 fix: rebuild artifacts 2026-04-03 00:58:11 +02:00
moudyellaz
af81719414 feat: add flash swap integration tests 2026-04-03 00:58:11 +02:00
moudyellaz
599724b72f feat: register flash_swap programs as test programs 2026-04-03 00:58:11 +02:00
moudyellaz
38ea2a01fa feat: add flash_swap_initiator and flash_swap_callback guest programs 2026-04-03 00:58:11 +02:00
moudyellaz
087baebcca feat: add caller_program_id to ProgramInput 2026-04-03 00:58:11 +02:00
Moudy
d105a51c04 fix: rebuild artifacts 2026-04-03 00:58:11 +02:00
Moudy
65166e8fcc fix: rebuild artifacts 2026-04-03 00:58:11 +02:00
Moudy
42a2f04cd5
Merge pull request #426 from logos-blockchain/moudy/feat-self-program-id
add self_program_id
2026-04-02 21:15:32 +02:00
Moudy
67bb1809de fix: rebuild artifacts 2026-04-02 20:38:02 +02:00
Moudy
c9aa4d48c7 fix: add self_program_id check for public execution 2026-04-02 20:30:52 +02:00
Moudy
531381e023 Update program_methods/guest/src/bin/privacy_preserving_circuit.rs
Co-authored-by: Daniil Polyakov <arjentix@gmail.com>
2026-04-02 20:30:52 +02:00
Moudy
702ef4a46f fix: cargo fmt 2026-04-02 20:30:27 +02:00
moudyellaz
7def0c4664 refactor: pass self_program_id to ProgramOutput in test and example guest programs 2026-04-02 20:30:16 +02:00
moudyellaz
58b72dd77c refactor: pass self_program_id to ProgramOutput in production guest programs 2026-04-02 20:30:16 +02:00
moudyellaz
85cc323649 feat: verify self_program_id in privacy circuit 2026-04-02 20:30:16 +02:00
moudyellaz
eafc2969be feat: add self_program_id to ProgramOutput struct 2026-04-02 20:30:16 +02:00
Moudy
59d3d38448 fix: serialize write_inputs fields separately to match guest deserialization 2026-04-02 20:29:12 +02:00
moudyellaz
9ecf186851 refactor: update all guest programs to handle self_program_id field 2026-04-02 20:29:10 +02:00
moudyellaz
d5cb3e0454 feat: inject self_program_id in write_inputs and execute 2026-04-02 20:29:10 +02:00
moudyellaz
27299e75cc feat: add self_program_id to ProgramInput and read_nssa_inputs 2026-04-02 20:29:10 +02:00
Sergio Chouhy
fbdfd8f7ef
Merge pull request #417 from ygd58/fix/ci-fork-pr-permissions
fix: add explicit permissions to allow CI on fork PRs
2026-04-02 12:27:32 -03:00
Andrea Franz
7d75eb2d59 chore(programs/amm): rename Swap to SwapExactInput 2026-04-02 16:10:12 +02:00
Andrea Franz
9a6ec0018b feat(programs/amm): add swap exact output functionality 2026-04-02 16:10:12 +02:00
r4bbit
3e24ae2736 fix(wallet): use cryptographically secure entropy for mnemonic generation
The mnemonic/wallet generation was using a constant zero-byte array for entropy ([0u8; 32]), making all wallets deterministic based
solely on the password. This commit introduces proper random entropy using OsRng and enables users to back up their recovery phrase.

Changes:

- SeedHolder::new_mnemonic() now uses OsRng for 256-bit random entropy and returns the generated mnemonic
- Added SeedHolder::from_mnemonic() to recover a wallet from an existing mnemonic phrase
- WalletChainStore::new_storage() returns the mnemonic for user backup
- Added WalletChainStore::restore_storage() for recovery from a mnemonic
- WalletCore::new_init_storage() now returns the mnemonic
- Renamed reset_storage to restore_storage, which accepts a mnemonic for recovery
- CLI displays the recovery phrase when a new wallet is created
- RestoreKeys command now prompts for the mnemonic phrase via read_mnemonic_from_stdin()

Note: The password parameter is retained for future storage encryption but is no longer used in seed derivation (empty passphrase is used
 instead). This means the mnemonic alone is sufficient to recover accounts.

Usage:

On first wallet initialization, users will see:
IMPORTANT: Write down your recovery phrase and store it securely.
This is the only way to recover your wallet if you lose access.

Recovery phrase:
  word1 word2 word3 ... word24

To restore keys:
wallet restore-keys --depth 5
Input recovery phrase: <24 words>
Input password: <password>
2026-04-01 16:04:47 +02:00
ygd58
e71a0b9375 fix: use pull_request.head.sha for fork PR checkout
github.head_ref is empty for fork PRs, causing checkout to fail.
Use github.event.pull_request.head.sha as primary ref with
github.head_ref as fallback for branch pushes.
2026-04-01 12:56:29 +02:00
ygd58
ef83bb2e91 chore: remove redundant comment from permissions block 2026-04-01 12:54:26 +02:00
ygd58
868781f992 fix: add explicit permissions to allow CI on fork PRs
Fixes #278
2026-04-01 12:54:26 +02:00
Sergio Chouhy
9fa541f3d1
Merge pull request #404 from logos-blockchain/feature/validity-window-timestamps
feat: extend ValidityWindow with Unix timestamp bounds
2026-03-31 16:46:58 -03:00
Moudy
a560562874 fix: use force_insert_account in pinata PDA test
The pda_mechanism_with_pinata_token_program test was broken after
PR #414 introduced Claim::Authorized for token account claiming.
Set up token accounts directly to focus the test on the PDA mechanism
in the pinata program's chained call.
2026-03-31 18:51:37 +02:00
Moudy
e3edabcaa2 rebuild artifacts after ValidityWindow struct change 2026-03-31 15:47:43 +02:00
Moudy
5f0f8a78d3 fix: use infallible .into() instead of .try_into() for ValidityWindow conversion
Clippy flagged unnecessary fallible conversion since RangeFrom<u64> to
ValidityWindow<u64> cannot fail.
2026-03-31 15:34:52 +02:00
Moudy
103198f981 remove .unwrap() 2026-03-31 14:58:52 +02:00
Moudy
12bdc256d4 rebuild artifacts 2026-03-31 14:55:37 +02:00