576 Commits

Author SHA1 Message Date
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
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
d4fb326f66 fix: remove stale validity_window ref and add missing timestamp args 2026-03-31 14:38:05 +02:00
Moudy
5113b212d6
Update nssa/core/src/circuit_io.rs
Co-authored-by: Daniil Polyakov <arjentix@gmail.com>
2026-03-31 14:10:43 +02:00
Sergio Chouhy
eb14b8bf98 clippy 2026-03-31 13:51:12 +02:00
Sergio Chouhy
f627910468 fmt 2026-03-31 13:51:12 +02:00
Sergio Chouhy
8bfaf9ef4a remove blockid from common 2026-03-31 13:50:47 +02:00
Sergio Chouhy
9d830411a1 rename timestamp_ms to timestamp 2026-03-31 13:50:30 +02:00
Sergio Chouhy
77c5032527 remove common TimeStamp 2026-03-31 13:50:30 +02:00
Sergio Chouhy
99f0ed03dc add type aliases 2026-03-31 13:50:06 +02:00
Sergio Chouhy
27b0ba7592 add tests for timestamp validity windows 2026-03-31 13:49:37 +02:00
Sergio Chouhy
9aa7caf3bf refactor validity window with generic 2026-03-31 13:49:12 +02:00
Moudy
6d690a8d25 fix: add backticks to doc comment for clippy doc_markdown 2026-03-31 13:47:21 +02:00
moudyellaz
0823461012 style: apply nightly cargo fmt 2026-03-31 13:46:43 +02:00
moudyellaz
c4567d163d style: apply cargo fmt 2026-03-31 13:46:25 +02:00
moudyellaz
5c592312f9 feat: extend ValidityWindow with Unix timestamp bounds 2026-03-31 13:46:08 +02:00
Daniil Polyakov
b8bb6913be
Merge pull request #414 from logos-blockchain/arjentix/protect-from-pda-griefing-attack
feat: protect from public pda griefing attacks
2026-03-31 13:56:10 +03:00
jonesmarvin8
ffcbc15972
Issue 258 - remove secp256k1 for k256 (#399)
* initialize branch

* fix signatures to use k256

* fixed error

* lint fix

* lint fix

* clippy fixes

* clippy
2026-03-30 17:15:25 -04:00
Daniil Polyakov
6780f1c9a4 feat: protect from public pda griefing attacks 2026-03-28 01:23:57 +03:00
Sergio Chouhy
287b196569 remove redundant docstring 2026-03-26 18:16:18 -03:00
Sergio Chouhy
e618e08bdc use validity window as intstruction type in test programs 2026-03-26 18:10:31 -03:00
Sergio Chouhy
25a86d4bac move standard derives to beginning 2026-03-26 15:27:37 -03:00
Sergio Chouhy
acf609ecc8 Merge branch 'main' into schouhy/add-block-context 2026-03-26 13:24:46 -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
Sergio Chouhy
d7b0c42255 clippy 2026-03-25 20:26:04 -03:00
Sergio Chouhy
70ccb1befa add constructors from ranges 2026-03-25 17:42:17 -03:00
Sergio Chouhy
953a1dacd3 clippy 2026-03-25 17:35:10 -03:00
Sergio Chouhy
79d70b3a66 add test for empty intersection in circuit 2026-03-25 17:33:27 -03:00
Sergio Chouhy
abc30c0ce0 remove old program output constructors 2026-03-25 16:56:04 -03:00
Sergio Chouhy
3356aef291 handle comments 2026-03-25 16:03:39 -03:00
Sergio Chouhy
4d5d767249 add tests. minor refactor 2026-03-25 14:55:23 -03:00
Sergio Chouhy
66e9881f38 Merge branch 'main' into schouhy/add-block-context 2026-03-20 14:14:11 -03:00
Sergio Chouhy
3257440448 enforce valid window construction 2026-03-20 13:49:17 -03:00
jonesmarvin8
6f77c75b9c
Issue 257 - update ds and add ds to commitment (#397)
* initialize branch

* minor errors

* update artifacts and lint

* lint fix
2026-03-20 10:39:04 -04:00
Sergio Chouhy
607a34058d Merge branch 'main' into schouhy/add-block-context 2026-03-20 09:52:16 -03:00
Sergio Chouhy
d9a1e56983 add docs 2026-03-19 19:41:02 -03:00
Sergio Chouhy
aeddb56978 fmt 2026-03-19 18:55:19 -03:00
Sergio Chouhy
0d46f0798a clippy 2026-03-19 18:55:02 -03:00
Daniil Polyakov
05c2c3a56d fix: encode transactions with borsh in sequencer rpc 2026-03-20 00:48:04 +03:00
Daniil Polyakov
be94e133fa feat: refactor sequencer RPC server-side 2026-03-20 00:41:05 +03:00
Sergio Chouhy
a069004451 add validity window checks on privacy preserving transactions 2026-03-19 18:32:54 -03:00
Sergio Chouhy
7bbd2dd5d7 add public validity window checks 2026-03-19 15:03:45 -03:00
Sergio Chouhy
895dd942cf add validity range to program output 2026-03-19 12:10:02 -03:00
Daniil Polyakov
c40c62a484 fix: satisfy clippy 2026-03-19 18:03:23 +03:00
jonesmarvin8
2cecf71c93 additional lint fixes 2026-03-18 14:06:56 -04:00
jonesmarvin8
b81b725bd1 fmt 2026-03-18 13:47:21 -04:00
jonesmarvin8
5d9980cf63 lint fixes 2026-03-18 13:10:36 -04:00
jonesmarvin8
0bcb626adc lint fixes 2026-03-18 10:28:52 -04:00
jonesmarvin8
a83725512d Merge branch 'main' into marvin/nonce 2026-03-18 07:59:55 -04:00