erhant
88736d7421
fix(indexer): keep track of L1 slot of last inscription for correct tracking
2026-07-10 18:35:01 +03:00
erhant
f99d7fef59
chore: clippy docfix + bump crossbeam-epoch (RUSTSEC-2026-0204)
2026-07-10 18:35:01 +03:00
erhant
025105b570
fix(indexer): allow recovery from parked-and-stalled store (w.r.t Copilot review)
...
refactor(indexer): move chain-consistency code within a dedicated file
2026-07-10 18:35:01 +03:00
erhant
1ca3de47b9
chore: docfix w.r.t Copilot
2026-07-10 18:35:00 +03:00
erhant
2c395b95a6
chore: fix typos, enable ignored test
2026-07-10 18:35:00 +03:00
erhant
f563f675ac
fix(indexer): tend to @schouhy reviews, allow re-applied old blocks
2026-07-10 18:35:00 +03:00
erhant
0985df9059
chore: typo fix ChainConsistency [skip ci]
2026-07-10 18:35:00 +03:00
erhant
16888478dd
refactor(indexer): tend to several reviews by @schouhy
2026-07-10 18:35:00 +03:00
erhant
82a16f1ab7
fix(indexer): use better error types, tend to few @Arjentix PR review
2026-07-10 18:35:00 +03:00
erhant
f94a63d8cf
fix(indexer)!: address several reviews, use better return types with conversions, some docfixes
...
BREAKING CHANGE: dropping the serde rename attrs changes the FFI
`query_status` JSON: `state` values are now variant-cased
(`caught_up` -> `CaughtUp`) and fields snake_case
(`indexedBlockId` -> `indexed_block_id`, `lastError` -> `last_error`).
Consumers (lez-indexer-module, lez-explorer-ui) must update their parsing.
2026-07-10 18:35:00 +03:00
erhant
da95e86083
chore: very small comment about future fix [skip ci]
2026-07-10 18:35:00 +03:00
erhant
b5ed8548d5
fix(indexer): catch the edge case of re-using the last valid tip on restart
2026-07-10 18:35:00 +03:00
erhant
255a94c8ed
fix(indexer): attend to copilot comments, rm Store error from a park case
2026-07-10 18:35:00 +03:00
erhant
aceb863ff2
chore: rm redundant unit test [skip ci]
2026-07-10 18:35:00 +03:00
erhant
db48877ca6
fix(indexer): run the chain-identity check even when the store is parked
2026-07-10 18:35:00 +03:00
erhant
2b5379a0c7
fix(indexer): run the chain-identity check even when the store is parked
2026-07-10 18:35:00 +03:00
erhant
66434256da
fix(indexer): detect chain reset via anchor block, **not** deterministic genesis
...
test `RISC0_DEV_MODE=1 RISC0_SKIP_BUILD=1 cargo test -p indexer_core`
2026-07-10 18:35:00 +03:00
erhant
b989974f90
chore: greatly increase timeout
2026-07-10 18:35:00 +03:00
erhant
06ec24540a
feat(indexer): run genesis-consistency check at service and FFI startup
2026-07-10 18:35:00 +03:00
erhant
aa46b69b79
feat(indexer): add startup genesis-consistency check
...
test `RISC0_DEV_MODE=1 RISC0_SKIP_BUILD=1 cargo test -p indexer_core`
2026-07-10 18:35:00 +03:00
erhant
a583c1f21a
test(indexer): cover stall recovery and full StallReason roundtrip
...
test `RISC0_DEV_MODE=1 RISC0_SKIP_BUILD=1 cargo test -p indexer_core`
2026-07-10 18:35:00 +03:00
erhant
eaf2e2d07f
feat(indexer): expose status over RPC and add integration coverage
...
test `RUST_LOG=info RISC0_DEV_MODE=1 cargo test -p integration_tests --test bridge --indexer_status_rpc_reports_caught_up_with_no_stall --exact --nocapture --include-ignored`
2026-07-10 18:35:00 +03:00
erhant
b71b01f94b
chore: fix linter
2026-07-10 18:35:00 +03:00
erhant
de55d2699b
feat(indexer): park ingest loop on bad blocks instead of skipping
...
`RISC0_DEV_MODE=1 RISC0_SKIP_BUILD=1 cargo test -p indexer_core`
2026-07-10 18:35:00 +03:00
erhant
c49cc7bc29
refactor(indexer): use "stall reason" instead of "chain breaker"
2026-07-10 18:35:00 +03:00
erhant
e28cceffab
feat(indexer): add Stalled status and chain breaker snapshot
...
test `RISC0_DEV_MODE=1 RISC0_SKIP_BUILD=1 cargo test -p indexer_core --lib status`
2026-07-10 18:35:00 +03:00
erhant
6ab6455482
feat(indexer): add accept_block with chain-linkage check and atomic apply
...
test `RISC0_DEV_MODE=1 RISC0_SKIP_BUILD=1 cargo test -p indexer_core --lib accept_tests`
2026-07-10 18:35:00 +03:00
erhant
5b2c387fe9
feat(indexer): persist ChainBreaker in RocksDB meta
...
test `RISC0_DEV_MODE=1 RISC0_SKIP_BUILD=1 cargo test -p storage -p indexer_core --lib chain_breaker`
2026-07-10 18:35:00 +03:00
erhant
60265ed438
feat(indexer): add BlockIngestError enum, fix linting
2026-07-10 18:35:00 +03:00
erhant
1a304e0e60
feat(common): add block hash recomputation helper
...
test: `RISC0_DEV_MODE=1 RISC0_SKIP_BUILD=1 cargo test -p common --lib block::tests`
2026-07-10 18:35:00 +03:00
erhant
03f92abbcf
refactor(indexer): rename execute_on_state and drop indexer-side tx checks
...
test with:
RISC0_DEV_MODE=1 RISC0_SKIP_BUILD=1 cargo test -p common -p storage -p indexer_core
2026-07-10 18:35:00 +03:00
Daniil Polyakov
89d2486970
feat(test_fixtures): apply zstd compression
2026-07-09 17:15:29 +03:00
Daniil Polyakov
d0aaddbec1
feat(test_fixtures): use prebuilt sequencer dp to speed up integration tests
2026-07-09 17:15:29 +03:00
Daniil Polyakov
7408955f08
feat!(wallet): wait for deploy tx inclusion in block
...
Breaking:
1. Now a lot of wallet commands return `TransactionExecuted`, instead of `Empty`.
2. Sequencer's `getTransaction()` RPC response changed from `tx` to `(tx, block_id)`
2026-07-09 00:32:53 +03:00
Artem Gureev
1b4d8fbcf4
Merge pull request #550 from logos-blockchain/artem/viewing-key-binding
...
feat!: viewing key and ciphertext binding
2026-07-08 20:17:37 +04:00
Sergio Chouhy
ae0705995f
fix: solve merging conflicts with main
2026-07-03 15:07:35 -03:00
agureev
49d3823a75
chore: remove unused deps
2026-07-02 20:43:34 +04:00
agureev
8e084e22d1
Merge remote-tracking branch 'origin/dev' into artem/viewing-key-binding
2026-07-02 20:04:30 +04:00
jonesmarvin8
f786aca73e
refactor(lez): clean up long functions ( #541 )
...
* add helper functions
* CI fixes
* additional refactors
* fix: clarify doc comment on apply_mempool_transaction
* chore: apply nightly fmt
* fix: import missing ML_KEM_768_CIPHERTEXT_LEN in auth_transfer private test
2026-07-01 10:23:21 -04:00
jonesmarvin8
f8d859394b
refactor(privacy_preserving_circuit): introduce helper functions to shorten long functions ( #545 )
...
* refactor(privacy_preserving_circuit): extract functions for readability
* refactor(privacy_preserving_circuit): address PR review comments
Bundle shared handle_* arguments into PrivateOutputHandler struct in
output.rs and fix misplaced docstring on resolve_external_seed in
execution_state.rs.
* feat: update commitment mechanism for new private account (#546 )
* refactor(privacy_preserving_circuit): extract functions for readability
* feat: update commitment mechanism for new private accounts
Allow init accounts to optionally use a real membership proof for
DUMMY_COMMITMENT instead of hardcoding DUMMY_COMMITMENT_HASH as the
CommitmentSetDigest. The wallet fetches the proof from the sequencer
and passes it through the circuit.
* fix: address clippy lints and fix integration test visibility
* add tests
* refactor: removed duplicated code
* refactor: simplify init nullifier mechanism
Replace Option<MembershipProof> with Option<CommitmentSetDigest> on init
variants (PrivateAuthorizedInit, PrivateUnauthorized, PrivatePdaInit).
The circuit now receives the commitment tree root directly instead of
recomputing it from a Merkle proof.
* refactor: use CommitmentSetDigest directly instead of Option for init commitment root
Address PR #546 review feedback: the circuit now accepts CommitmentSetDigest
directly on init variants (PrivateAuthorizedInit, PrivateUnauthorized,
PrivatePdaInit), with callers providing DUMMY_COMMITMENT_HASH as the default.
Also fixes duplicate resolve_external_seed from rebase and rebuilds artifacts.
* style: run cargo +nightly fmt
2026-07-01 10:14:32 -04:00
Pravdyvy
97aa85d123
Merge pull request #577 from logos-blockchain/Pravdyvy/wallet-ffi-labels
...
Wallet ffi labels
2026-07-01 15:32:16 +03:00
Pravdyvy
53ae6dcfdd
fix(wallet_ffi): asref suggestion
2026-06-30 12:46:52 +03:00
Daniil Polyakov
fc800a7151
fix(sequencer): don't accept zero deposits & remove unreachable
2026-06-30 12:38:22 +03:00
Marvin Jones
6155bd9a37
fix(encryption): rename os_random to random_seed and fix ESK derivation in tests
...
Rename os_random field to random_seed per review feedback. Fix tests
that constructed SharedSecretKey with a hardcoded EphemeralSecretKey
instead of deriving it via EphemeralSecretKey::new.
2026-06-29 09:10:43 -04:00
Marvin Jones
060a83879b
feat(encryption): derive esk from account state, remove chacha20poly1305 logic
...
Introduce EphemeralSecretKey as a proper struct with EphemeralSecretKey::new()
that derives esk from SHA256("/LEE/v0.3/esk/" || account_id || os_random || nonce).
Rename witness field from esk to os_random. Simplify encapsulate_deterministic
to accept pre-derived EphemeralSecretKey directly.
2026-06-29 09:10:43 -04:00
Pravdyvy
fade3b488a
feat(integration_tests): added integration tests for wallet ffi
2026-06-26 16:48:00 +03:00
Pravdyvy
860746dac9
feat(wallet_ffi): labels added
2026-06-25 18:29:35 +03:00
Daniil Polyakov
d11b706756
feat(sequencer): add getChannelId rpc endpoint
2026-06-25 16:47:04 +03:00
Daniil Polyakov
9977cc5374
fix(ci, programs, privacy_preserving_circuit): properly check programs ci
2026-06-24 20:20:40 +03:00
Daniil Polyakov
96b28827f6
fix(tests): fix tests
2026-06-24 20:20:40 +03:00