269 Commits

Author SHA1 Message Date
Daniil Polyakov
332bd29e93
Merge pull request #389 from logos-blockchain/pg/zone-sdk-lez
feat(sequencer, indexer): Use zone-sdk instead of bedrock client
2026-05-05 14:36:16 +03:00
Petar Radovic
c263a98231 address comments 2026-05-01 09:12:24 +02:00
Moudy
4c28133448 fix: resolve merge conflicts 2026-04-30 15:04:33 +02:00
Petar Radovic
af3a31509e machete 2026-04-30 11:29:49 +02:00
Petar Radovic
0920e086d9 merge main 2026-04-30 11:21:01 +02:00
Sergio Chouhy
8025780e26 fix deny 2026-04-29 16:46:07 -03:00
Sergio Chouhy
72756e8622 Merge branch 'main' into schouhy/generalize-npk-to-multiple-accounts 2026-04-29 12:28:05 -03:00
Moudy
c327f592bf merge: resolve Cargo.lock conflict with main 2026-04-29 15:38:09 +02:00
Moudy
27649560bc fix: bump testcontainers to resolve RUSTSEC-2026-0112 and RUSTSEC-2026-0113 2026-04-29 15:34:45 +02:00
Petar Radovic
7aecc4faba cargo deny 2026-04-29 13:23:13 +02:00
Petar Radovic
7944a77251 use new docker image 2026-04-29 12:50:17 +02:00
Petar Radovic
6bcbe058ed merge master 2026-04-29 10:33:07 +02:00
Moudy
9927e6e690 fix: rebuild artifacts 2026-04-27 14:37:15 +02:00
Pravdyvy
02949e961a
Merge branch 'main' into Pravdyvy/indexer-ffi-spawns-rpc-for-communication 2026-04-27 13:58:10 +03:00
Moudy
5b9cf95c47 feat: add group PDA test program, unit tests, and integration test 2026-04-27 02:44:16 +02:00
Sergio Chouhy
7c45b5af3c Merge branch 'main' into schouhy/generalize-npk-to-multiple-accounts 2026-04-24 01:04:55 -03:00
Moudy
86ff3670c0 fix: bump rustls-webpki to 0.103.13 for RUSTSEC-2026-0104
Upstream advisory, reachable panic in certificate revocation list
parsing via `BorrowedCertRevocationList::from_der` /
`OwnedCertRevocationList::from_der`. Unrelated to this PR, dropped
into the advisory DB since the last green CI run and broke the `deny`
job. Fix is the recommended version bump.
2026-04-22 16:02:56 +02:00
Sergio Chouhy
670527c2f1 Merge branch 'main' into schouhy/generalize-npk-to-multiple-accounts 2026-04-21 18:53:24 -03:00
Sergio Chouhy
c30d435155 update nonce init formula to depend on account id instead of just npk 2026-04-19 19:28:10 -03:00
Pravdyvy
cb2a0ab4ee fix: deny fix 1 2026-04-17 17:58:04 +03:00
Sergio Chouhy
a6194ad447 fix deny by updating rustls-webpki and multihash 2026-04-15 14:08:35 -03:00
Pravdyvy
b864ff22d4 Merge branch 'main' into Pravdyvy/indexer-ffi-spawns-rpc-for-communication 2026-04-14 10:58:18 +03:00
Pravdyvy
dd3ac54318 fix: all ffi tests added 2026-04-14 10:51:57 +03:00
Pravdyvy
a921d63750 Merge branch 'main' into Pravdyvy/indexer-ffi-spawns-rpc-for-communication 2026-04-13 16:01:14 +03:00
Pravdyvy
5fc397c2ee fix: ci fix 2026-04-13 15:53:31 +03:00
Petar Radovic
078c4726e4 simplify run script 2026-04-13 11:46:29 +02:00
Petar Radovic
b7ba2daa97 use newer image 2026-04-09 13:18:54 +02:00
Petar Radovic
359619ad14 new version 2026-04-08 23:33:12 +02:00
Petar Radovic
7af703f198 debug 2026-04-08 22:30:21 +02:00
Petar Radovic
74039f5cca debug 2026-04-08 21:59:15 +02:00
Petar Radovic
63206faeea tag commits 2026-04-08 18:39:47 +02:00
Moudy
b22a989fbc merge main into feat-caller-program-id-and-flash-swap 2026-04-07 19:27:27 +02:00
Pravdyvy
1ae7192c7a fix: trying to run tests 2026-04-03 15:50:24 +03:00
Moudy
74e16db68f fix: apply formatting and rebuild artifacts 2026-04-03 01:17:42 +02:00
Pravdyvy
2cf7f5d724 fix: machete fix 2026-04-02 15:58:26 +03:00
Pravdyvy
cf420291e3 feat: indexer ffi added 2026-04-02 15:49:42 +03: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
Moudy
df375ad04a fix: add missing nssa_core dependency to common crate 2026-03-31 14:08:12 +02:00
moudyellaz
5c592312f9 feat: extend ValidityWindow with Unix timestamp bounds 2026-03-31 13:46:08 +02:00
Sergio Chouhy
99071a4ef9 Merge branch 'main' into schouhy/add-block-context 2026-03-26 21:23:36 -03:00
Sergio Chouhy
e618e08bdc use validity window as intstruction type in test programs 2026-03-26 18:10:31 -03:00
Pravdyvy
9c23c5fd8a
Merge pull request #393 from logos-blockchain/Pravdyvy/hardcoded-initial-state
feat: general initial state
2026-03-26 19:17:20 +02:00
Pravdyvy
8a806899e4 Merge branch 'main' into Pravdyvy/hardcoded-initial-state 2026-03-26 17:53:05 +02:00
Pravdyvy
b8a754449a Merge branch 'main' into Pravdyvy/indexer-db-batching 2026-03-26 17:51:03 +02:00
Sergio Chouhy
1ad3070662 fix deny 2026-03-26 11:54:24 -03:00
r4bbit
0ed91e869e feat(programs): add Associated Token Account program with wallet CLI and tutorial
Introduce the ATA program, which derives deterministic per-token holding
accounts from (owner, token_definition) via SHA256, eliminating the need
to manually create and track holding account IDs.

Program (programs/associated_token_account/):
- Create, Transfer, and Burn instructions with PDA-based authorization
- Deterministic address derivation: SHA256(owner || definition) → seed → AccountId
- Idempotent Create (no-op if ATA already exists)

Wallet CLI (`wallet ata`):
- `address` — derive ATA address locally (no network call)
- `create`  — initialize an ATA on-chain
- `send`    — transfer tokens from owner's ATA to a recipient
- `burn`    — burn tokens from owner's ATA
- `list`    — query ATAs across multiple token definitions

Usage:
  wallet deploy-program artifacts/program_methods/associated_token_account.bin
  wallet ata address --owner <ID> --token-definition <DEF_ID>
  wallet ata create --owner Public/<ID> --token-definition <DEF_ID>
  wallet ata send --from Public/<ID> --token-definition <DEF_ID> --to <RECIPIENT> --amount 100
  wallet ata burn --holder Public/<ID> --token-definition <DEF_ID> --amount 50
  wallet ata list --owner <ID> --token-definition <DEF1> <DEF2>

Includes tutorial: docs/LEZ testnet v0.1 tutorials/associated-token-accounts.md
2026-03-26 13:19:29 +01:00
Pravdyvy
ce136348e7 fix: deny fix 2026-03-23 19:22:56 +02:00
Pravdyvy
c3723776c6 fix: deny fix 2026-03-23 19:21:42 +02:00
Pravdyvy
9c90930bd6 Merge branch 'main' into Pravdyvy/hardcoded-initial-state 2026-03-20 14:55:42 +02:00
Daniil Polyakov
05c2c3a56d fix: encode transactions with borsh in sequencer rpc 2026-03-20 00:48:04 +03:00