Commit Graph
160 Commits
Author SHA1 Message Date
Ricardo Guilherme Schmidt d96c0a52be fix(amm): reject exact output at pool reserve 2026-07-18 19:55:35 -03:00
Ricardo Guilherme Schmidt 9c7d16e197 fix(amm): reserve balance for exact-output slippage 2026-07-18 19:55:35 -03:00
Ricardo Guilherme Schmidt 3bd4d4e62a fix(amm): keep trade controls reachable 2026-07-18 19:55:35 -03:00
Ricardo Guilherme Schmidt 5c4b9bb116 fix(amm): end submits when backend disconnects 2026-07-18 19:55:35 -03:00
Ricardo Guilherme Schmidt 44d1a959c1 fix(amm): prevent swaps with identical tokens 2026-07-18 19:55:35 -03:00
Ricardo Guilherme Schmidt c847707778 fix(amm): apply slippage to exact-output input 2026-07-18 19:55:35 -03:00
Ricardo Guilherme Schmidt a580646d42 fix(amm): label sample swaps as previews 2026-07-18 19:55:35 -03:00
Ricardo Guilherme Schmidt 2403a0e5f7 fix(amm): align reads with adopted wallet endpoint 2026-07-18 19:55:35 -03:00
Ricardo Guilherme Schmidt 5b3663ef27 fix(amm): submit wallet mutations asynchronously 2026-07-18 19:55:35 -03:00
Ricardo Guilherme Schmidt 6b654ff937 fix(amm): cancel submits after wallet changes 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 8c18ffbe33 fix(amm): cancel cached reads on endpoint change 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 91e07424dc fix(amm): force fresh post-transaction reads 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 6bcafbefd2 fix(amm): reject failed identity responses 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 9893d88320 fix(amm): deduplicate transaction status polls 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 155eae3d7f fix(amm): avoid duplicate wallet context refreshes 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 56178fb6af fix(amm): complete repeated context refreshes 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 80e3a7da62 fix(amm): reload changed sequencer configuration 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 9a15b33d23 fix(amm): evict stale accounts before forced reads 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt d7f13de041 fix(amm): refresh wallet holdings on context reload 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 338ed52545 fix(amm): back off network identity probes 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 210eb9805b fix(amm): align wallet RPC with public testnet
Pin wallet FFI to the rc6 sequencer contract while retaining the Darwin xcrun workaround. Add a regression check and matching core LGX outputs.
2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 2f029d4c91 feat: Introduce SequencerClient for enhanced account management and transaction querying
- Added SequencerClient class to handle asynchronous account reads and transaction queries.
- Updated NewPositionRuntime to integrate SequencerClient, allowing for improved wallet account management.
- Modified existing tests to accommodate changes in the new position schema from v1 to v2.
- Enhanced QML tests to validate new position form behavior with updated holding selections and context handling.
- Refactored code to ensure compatibility with the new SequencerClient functionalities.
2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 5cb408379c fix(amm): make flake portable across macOS and Linux 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 11af43c5e0 fix(amm-ui): require explicit liquidity inputs
Keep wallet assets as token choices without automatically selecting a pair. Keep pool-probe amounts internal so active-pool quotes do not populate the form before user input.
2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 76ded1a933 refactor(amm-ui): defer token decimal inference
Keep token balances and amounts in raw integer units until the decimal display model receives dedicated UX analysis.
2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 0bf0d84e2a feat(amm-ui): reshape liquidity position layout
Add responsive step navigation and a wider deposit workspace while preserving the shared create-pool and add-liquidity flow.
2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt e816044588 refactor(amm): split client protocol into reusable API
Expose typed Rust request contracts and transport-independent operations for application clients. Keep the existing C ABI as a thin adapter so the AMM UI continues to use the same symbols.
2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 0327892a70 feat(amm-ui): complete new position liquidity flow
Implement one create-pool and add-liquidity workflow. Add searchable token resolution, direct opening-price and deposit editing, optimistic pool activation, and base58 transaction IDs.

Isolate network, wallet, AMM client, and runtime boundaries. Stabilize quote, submission, refresh, and pool-probe state while consolidating liquidity tests and removing obsolete liquidity paths.
2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt e3d019d2ce feat(amm-ui): refactor quote computation and introduce new position plan structures 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt bc47e6fbda feat(amm-ui): implement new position flow #216
Replace prototype data and floating-point quotes with live wallet and
chain reads, exact Rust quote planning, and optimistic external-wallet
submission.

Add canonical display-order mapping, responsive QML states,
network-scoped program configuration, and packaged Rust client support.
2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 5d8b1e3a3c test(amm-ui): validate new position flow #224 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt b21f040e37 feat(amm-ui): wire new position QML flow #223 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt 17f1c430ac feat(amm-ui): add new position backend API #222 2026-07-18 19:55:15 -03:00
Ricardo Guilherme Schmidt e55c7edb64 feat(amm-ui): add new position prototype #221 2026-07-18 19:54:05 -03:00
r4bbit 3f26d02230 WIP 2026-07-18 19:54:05 -03:00
r4bbit 1e683102e9 fix(apps/amm): ensure changing endpoint works 2026-07-18 19:54:05 -03:00
Ricardo Guilherme Schmidt 2977399cb0 fix(wallet): show decoded program account data 2026-07-18 19:53:02 -03:00
Ricardo Guilherme Schmidt 5c151728ad fix(wallet): present tokens in bordered boxes 2026-07-18 19:51:38 -03:00
Ricardo Guilherme Schmidt 9049d31e70 chore(wallet): synchronize shared wallet module 2026-07-18 19:38:14 -03:00
Ricardo Guilherme Schmidt b71be34edf perf(amm): cache verified token definitions 2026-07-17 21:39:09 -03:00
Ricardo Guilherme Schmidt 6ccd37b231 perf(wallet): batch account presentation updates 2026-07-17 20:38:49 -03:00
Ricardo Guilherme Schmidt fc1658635b perf(wallet): reuse created account snapshot reads 2026-07-17 20:34:28 -03:00
Ricardo Guilherme Schmidt addccf3850 perf(wallet): skip redundant wallet account probes 2026-07-17 20:29:34 -03:00
Ricardo Guilherme Schmidt 9d4af6a5f7 perf(wallet): avoid redundant async snapshot saves 2026-07-17 20:26:29 -03:00
Ricardo Guilherme Schmidt 9b72b08c2d feat(wallet): humanize shared wallet experience 2026-07-17 20:18:09 -03:00
r4bbit c0947e1917 fix(apps/wallet): use @loader_path rpath for the QML plugin on macOS
The Logos.Wallet QML plugin was installed with an ELF "$ORIGIN" rpath.
macOS dyld does not expand "$ORIGIN", so loading the plugin failed with

  Cannot load library liblogos_wallet_qmlplugin.dylib:
  Library not loaded: @rpath/liblogos_wallet_qml.dylib

even though liblogos_wallet_qml.dylib sits in the same directory. Select
the rpath per platform: @loader_path on Apple, $ORIGIN elsewhere, so
@rpath/liblogos_wallet_qml.dylib resolves to the sibling library.
2026-07-16 15:09:52 +02:00
r4bbit d47cc70ce7 fix(apps/amm): use patched LEZ version that nukes xcrun cache
Done in https://github.com/logos-blockchain/logos-execution-zone/pull/629/changes
Needed to avoid `missing metal toolchain` issue on macOS
2026-07-16 15:09:52 +02:00
Ricardo Guilherme Schmidt 049ccdf6a7 refactor(wallet): centralize UI wallet coordination
Move wallet lifecycle, account-model synchronization, settings, and reachability behind a composition-based WalletController. Keep AmmUiBackend as the QtRO forwarding adapter while retaining direct WalletProvider ownership for program-specific reads and transaction submission.

Adopt the thin-consumer direction demonstrated by PR #230 without coupling the shared module to generated QtRO base classes.

Refs #227

Refs #230
2026-07-16 15:09:45 +02:00
Ricardo Guilherme Schmidt ae52613279 refactor(amm-ui): use shared wallet modules
Replace AMM-local wallet access, account state, controls, and confirmation-dialog mechanics with the reusable wallet targets. Keep AMM-specific transaction summaries and actions in the AMM UI.\n\nRefs #227
2026-07-16 15:09:30 +02:00
Ricardo Guilherme Schmidt ea4fcc2c6c feat(wallet): add reusable wallet modules
Add program-neutral wallet access, a stable account model, reusable QML controls, transaction confirmation, submitted-transaction presentation, and isolated contract tests.\n\nRefs #227
2026-07-16 14:08:38 +02:00