35 Commits

Author SHA1 Message Date
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
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
Daniil Polyakov
b631ef02c6 fix: final fixes & polishing 2026-03-20 00:47:37 +03:00
Daniil Polyakov
b254ebb185 feat: refactor sequencer RPC client-side 2026-03-20 00:41:05 +03:00
Daniil Polyakov
252848a145 feat: update rust to 1.94.0 2026-03-17 21:25:30 +03:00
Daniil Polyakov
aa462b66eb feat: add nursery clippy lints 2026-03-17 21:25:30 +03:00
Daniil Polyakov
e3b93b6e9a feat: add restriction clippy lints 2026-03-17 21:25:30 +03:00
Daniil Polyakov
efe8393ba0 feat: add pedantic clippy lints 2026-03-17 21:25:30 +03:00
Sasha
ddecae8c40
feat: ensure pinata recipient initialized 2026-03-03 23:21:18 +01:00
jonesmarvin8
943efd1433 Merge branch 'main' into marvin/private_keys 2026-02-12 10:33:00 -05:00
Daniil Polyakov
975cfb9ec6 feat: fully integrate Sequencer, Indexer and Explorer with Bedrock 2026-02-12 16:31:13 +03:00
jonesmarvin8
6a399ac36c Merge branch 'main' into marvin/private_keys 2026-02-11 11:49:57 -05:00
Daniil Polyakov
9909f02803 refactor: split token program into crates 2026-02-06 00:08:43 +03:00
jonesmarvin8
2c9219bb0f relabel ipk to vpk 2026-01-21 17:58:45 -05:00
Daniil Polyakov
7296088005 feat: introduce parallel integration tests, wallet without global vars and etc 2025-12-31 04:30:22 +03:00
Daniil Polyakov
2d1ee4b279 Merge branch 'main' into Pravdyvy/amm-wallet-integration 2025-12-26 23:07:48 +03:00
Pravdyvy
4f15237446 fix: suggestions fix 2025-12-22 04:42:32 +02:00
Pravdyvy
f6c787e15f fix: suggestions fix 2025-12-22 04:02:12 +02:00
Pravdyvy
d427d49c65 fix: suggestions added 2025-12-19 19:12:58 +02:00
Pravdyvy
1b0dea11f6
Update wallet/src/cli/programs/amm.rs
Co-authored-by: Sergio Chouhy <41742639+schouhy@users.noreply.github.com>
2025-12-19 19:02:39 +02:00
Pravdyvy
c1283d4a0c fix: public execution finalized 2025-12-18 11:44:38 +02:00
Pravdyvy
92b5dffec2 fix: public swaps 2025-12-17 14:21:36 +02:00
Pravdyvy
d4a471e948 feat: swaps, add/rem liq 2025-12-16 14:05:34 +02:00
Pravdyvy
5212d456ab fix: integration tests 2025-12-12 13:40:56 +02:00
Pravdyvy
f77481f3b5 feat: mint and burn 2025-12-11 14:46:16 +02:00
Pravdyvy
81393925d0
Merge pull request #211 from logos-blockchain/Pravdyvy/private-definition-token
Private TokenDefinition support
2025-12-10 10:03:42 +02:00
Daniil Polyakov
4574acfc49 feat: introduce account data size limit 2025-12-09 20:26:02 +03:00
Pravdyvy
2fd4a37ee4 fix: private definition support 2025-12-02 15:27:20 +02:00
Daniil Polyakov
df88d8bad6 feat: compute pinata solution in wallet 2025-12-02 01:21:34 +03:00
Daniil Polyakov
4afbd65e3b feat: add transaction output after pinata call 2025-12-01 17:08:07 +03:00
Daniil Polyakov
0c44785a07 refactor: small adjustments to privacy preserving tx sending 2025-12-01 17:08:07 +03:00
Daniil Polyakov
55fc4e9777 refactor: implement program interactions as facades 2025-12-01 17:08:07 +03:00
Daniil Polyakov
df64f8864f refactor: implement universal interface for privacy-preserving transactions 2025-12-01 17:08:07 +03:00
Daniil Polyakov
aee6f45a8b refactor: move some stuff to a more suitable place 2025-12-01 17:08:07 +03:00