Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
172 commits
Select commit Hold shift + click to select a range
163c924
feat(platform-wallet): add gap-limit identity discovery scan
QuantumExplorer Mar 5, 2026
b2ce4dc
Merge branch 'v3.1-dev' into feat/identity-discovery-scan
shumkov Mar 13, 2026
b7c6767
docs: add plan
shumkov Mar 16, 2026
bc8f55c
docs: review and correct the plan
shumkov Mar 16, 2026
ec8c909
docs: simplify architecture
shumkov Mar 16, 2026
84bd68c
docs: fix plan
shumkov Mar 16, 2026
8df7803
chore: update to local dashcore dependency
shumkov Mar 17, 2026
c13a536
chore: update dashcore deps and add Send+Sync to ContractLookupFn
shumkov Mar 17, 2026
ca9a943
feat(platform-wallet): PR-1 scaffold — PlatformWallet, Manager, sub-w…
shumkov Mar 17, 2026
c002d56
refactor(platform-wallet): reorganize modules and fix review issues
shumkov Mar 18, 2026
4dde0e0
docs(platform-wallet): update PLAN with PR-2 architecture and risk an…
shumkov Mar 18, 2026
f099156
feat(platform-wallet): PR-2 — per-address data, signing, asset locks
shumkov Mar 18, 2026
7cae5f1
feat(platform-wallet): PR-2 — signing, per-address data, asset locks,…
shumkov Mar 18, 2026
280a0cd
feat(platform-wallet): PR-3 — IdentityWallet with real SDK calls + Id…
shumkov Mar 19, 2026
0e285ed
feat(platform-wallet): PR-3/PR-4 — IdentityWallet, DashPayWallet, rev…
shumkov Mar 19, 2026
510f3dc
feat(platform-wallet): PR-5 — PlatformAddressWallet DIP-17 operations
shumkov Mar 20, 2026
43ecc39
docs(platform-wallet): add PR-6 plan — upstream dashcore + evo-tool sync
shumkov Mar 26, 2026
bdd4e20
docs(platform-wallet): comprehensive PLAN update — all sections rewri…
shumkov Mar 26, 2026
7592f36
Merge remote-tracking branch 'origin/v3.1-dev' into feat/platform-wallet
shumkov Mar 31, 2026
9718d47
feat(platform-wallet): PR-6 — SPV lifecycle, TransactionStatus, Event…
shumkov Mar 31, 2026
a53ca22
feat(platform-wallet): PR-7 — identity update, address fund flows, DPNS
shumkov Mar 31, 2026
0a676d8
feat(platform-wallet): PR-8 — TokenWallet with registry-based balance…
shumkov Mar 31, 2026
3398ed7
docs(platform-wallet): update PLAN with PR-6/7/8 completion status
shumkov Mar 31, 2026
749726f
feat(platform-wallet): PR-6 follow-up — per-tx status tracking + fina…
shumkov Mar 31, 2026
f7db6bc
docs(platform-wallet): restructure plan — evo-tool integration moved up
shumkov Mar 31, 2026
3d1d3a3
docs(platform-wallet): update architecture and struct definitions
shumkov Mar 31, 2026
110b70e
docs(platform-wallet): PR-9 expanded — full evo-tool integration plan
shumkov Mar 31, 2026
9962515
feat(platform-wallet): add *_with_signer methods to TokenWallet
shumkov Mar 31, 2026
001de1f
feat(platform-wallet): add *_with_signer methods to IdentityWallet
shumkov Mar 31, 2026
9adee5d
docs(platform-wallet): spec PR-10/11/12 — library enrichment before f…
shumkov Mar 31, 2026
23b796c
docs(platform-wallet): update architecture + implementation sections …
shumkov Mar 31, 2026
68d56f8
feat(platform-wallet): PR-10 — enrich ManagedIdentity with KeyStorage…
shumkov Apr 1, 2026
808f3af
feat(platform-wallet): PR-11 — asset lock lifecycle + multi-mode funding
shumkov Apr 1, 2026
bd11787
feat(platform-wallet): PR-12 — DashPay DIP-14/15 crypto + payment add…
shumkov Apr 1, 2026
e87c787
docs(platform-wallet): mark PR-9/10/11/12 as complete
shumkov Apr 1, 2026
ffacfdd
feat(platform-wallet): add register/top-up with_signer + identity_man…
shumkov Apr 1, 2026
3251b16
feat(platform-wallet): add missing token operations — destroy, pause,…
shumkov Apr 1, 2026
39c66c4
docs(platform-wallet): update plan with PR-13 completion + migration …
shumkov Apr 1, 2026
ea6d960
docs(platform-wallet): spec PR-14 — DashPay protocol completeness
shumkov Apr 1, 2026
11039ea
docs(platform-wallet): add missing identity methods to PR-14 spec
shumkov Apr 1, 2026
82662d8
feat(platform-wallet): PR-14 — DashPay + Identity protocol completeness
shumkov Apr 1, 2026
8aa696e
docs(platform-wallet): mark PR-14 complete
shumkov Apr 1, 2026
6835ede
feat(platform-wallet): owned/watched identity split + ManagedIdentity…
shumkov Apr 1, 2026
4da8cbe
docs(platform-wallet): update plan with owned/watched split + Managed…
shumkov Apr 1, 2026
4a1bfd1
feat(platform-wallet): add identity_manager_mut + try_identity_manage…
shumkov Apr 1, 2026
f70e1ae
feat(platform-wallet): extend send_contact_request with label + auto-…
shumkov Apr 1, 2026
0e1cbb0
docs(platform-wallet): update PR-14 with final migration tally
shumkov Apr 1, 2026
5184abc
Merge remote-tracking branch 'origin/v3.1-dev' into feat/platform-wallet
shumkov Apr 1, 2026
9f32e44
docs(platform-wallet): spec PR-15 — shielded pool with storage abstra…
shumkov Apr 1, 2026
2c7c7a9
feat(platform-wallet): PR-15 — shielded pool with storage abstraction
shumkov Apr 1, 2026
de7a54d
docs(platform-wallet): mark PR-15 complete
shumkov Apr 1, 2026
f26579a
fix(platform-wallet): address review findings
shumkov Apr 1, 2026
2689338
docs(platform-wallet): add review findings to risk analysis + PR-19 F…
shumkov Apr 1, 2026
a564c94
docs(platform-wallet): rescope PR-16 — finality only, keep SpvManager
shumkov Apr 1, 2026
ca06f91
feat(platform-wallet): PR-16 — AssetLockFinalityEvent tracking
shumkov Apr 1, 2026
715d7e2
docs(platform-wallet): mark PR-16 complete
shumkov Apr 1, 2026
7e62ccc
revert: unnecessary trait bound
shumkov Apr 1, 2026
1eed036
fix(platform-wallet): fix test compilation and DIP-14 account test
shumkov Apr 1, 2026
334a845
docs(platform-wallet): add PR-17 for dashcore asset lock builder adop…
shumkov Apr 1, 2026
e45eafe
docs(platform-wallet): PR-17 blocked — asset lock builder not on v0.4…
shumkov Apr 1, 2026
ee60026
feat(platform-wallet): PR-17 — adopt dashcore asset lock builder
shumkov Apr 2, 2026
5082a9c
feat(platform-wallet): PR-17 — adopt dashcore asset lock builder
shumkov Apr 2, 2026
44c1e20
refactor(platform-wallet): use dash-spv event types directly
shumkov Apr 2, 2026
5ead232
refactor(platform-wallet): gate PlatformWalletManager behind manager …
shumkov Apr 2, 2026
6243de1
refactor(platform-wallet): extract SpvRuntime from PlatformWalletManager
shumkov Apr 2, 2026
a90e1d5
refactor(platform-wallet): move SPV modules to src/spv/
shumkov Apr 2, 2026
6677342
refactor(platform-wallet): multi-wallet SPV + SpvRuntime constructor
shumkov Apr 2, 2026
3929b99
refactor(platform-wallet): remove redundant network field from sub-wa…
shumkov Apr 2, 2026
e159b4f
refactor(platform-wallet): simplify manager to single file + clean API
shumkov Apr 2, 2026
e6c4318
refactor(platform-wallet): remove inner wrapper, gate manager at lib.rs
shumkov Apr 2, 2026
68fd7dc
docs(platform-wallet): detailed migration tally with per-task breakdown
shumkov Apr 2, 2026
b486b79
refactor(platform-wallet): move BlockTime to managed_identity module
shumkov Apr 2, 2026
ec4c695
refactor(platform-wallet): group SPV events under SpvEvent enum
shumkov Apr 2, 2026
3b8174d
docs(platform-wallet): comprehensive plan spec update to match code
shumkov Apr 2, 2026
fc11a48
refactor(platform-wallet): remove duplicate TransactionStatusChanged
shumkov Apr 2, 2026
7b916a9
feat(platform-wallet): expose wallet_info/wallet lock accessors on Co…
shumkov Apr 2, 2026
d0d22a9
refactor(platform-wallet): PR-18 — remove CoreWallet convenience wrap…
shumkov Apr 2, 2026
a9e6387
feat(platform-wallet): add try_wallet_info() non-blocking accessors
shumkov Apr 3, 2026
1993195
feat(platform-wallet): add WalletBalance — lock-free atomic balance
shumkov Apr 3, 2026
78e147e
feat(platform-wallet): auto-refresh WalletBalance via WalletInfoWrite…
shumkov Apr 3, 2026
61c2ed7
feat(platform-wallet): wrap WalletBalance in Arc for shared access
shumkov Apr 3, 2026
e4bf3a7
feat(platform-wallet): add blocking_wallet_info() for sync contexts
shumkov Apr 3, 2026
dfa6084
docs(platform-wallet): update PLAN.md — PR-18 completed
shumkov Apr 3, 2026
a692b18
docs(platform-wallet): update PLAN.md — PR-18 final, add PR-19 spec
shumkov Apr 3, 2026
3f69a3b
feat(platform-wallet): register DashPay contact accounts in ManagedWa…
shumkov Apr 3, 2026
b0ebae6
docs(platform-wallet): rewrite PR-19 spec with DashPay contact flow
shumkov Apr 3, 2026
e667983
feat(platform-wallet): add blocking_wallet() for sync key derivation
shumkov Apr 3, 2026
926feb7
feat(platform-wallet): add contact account to both Wallet and Managed…
shumkov Apr 3, 2026
b5ad59c
feat(platform-wallet): add blocking address derivation methods
shumkov Apr 3, 2026
c7396d5
docs(platform-wallet): update PR-19 checklist — phases 1-4 done
shumkov Apr 3, 2026
eab0cb8
refactor(platform-wallet): use Arc<Sdk>, revert Arc<WalletBalance> to…
shumkov Apr 4, 2026
fd222a0
docs(platform-wallet): mark PR-19 complete — all 10 duplicate fields …
shumkov Apr 4, 2026
0188892
docs(platform-wallet): add PR-22 spec — ChangeSet-based persistence
shumkov Apr 4, 2026
1746c91
docs(platform-wallet): add PR-22 implementation plan
shumkov Apr 4, 2026
959e9de
feat(platform-wallet): add persistence module — ChangeSet types, Merg…
shumkov Apr 4, 2026
2262a4f
feat(platform-wallet): add stage field and persist API to PlatformWallet
shumkov Apr 4, 2026
daf10ef
feat(platform-wallet): SPV adapter produces and stages changesets aft…
shumkov Apr 4, 2026
acaec31
chore(platform-wallet): apply formatter changes
shumkov Apr 5, 2026
1d2c306
docs(platform-wallet): rewrite PR-22 spec — two-layer ChangeSet archi…
shumkov Apr 5, 2026
e45ceba
docs(platform-wallet): fix PLAN.md — key-wallet uses changeset/ not p…
shumkov Apr 5, 2026
e9e3af0
refactor(platform-wallet): rename WalletChangeSet to PlatformWalletCh…
shumkov Apr 5, 2026
b8b4ecb
feat(platform-wallet): SPV adapter uses key-wallet native changesets
shumkov Apr 5, 2026
cc437e6
feat(platform-wallet): expose changeset types for caller-level staging
shumkov Apr 5, 2026
c97fbf3
fix: include UTXO IS-lock changeset in process_instant_send_lock
shumkov Apr 6, 2026
1f3a021
docs(platform-wallet): add SingleKeyWallet migration to PR-22 done cr…
shumkov Apr 6, 2026
1d93aac
docs(platform-wallet): add compute-then-apply architecture to PLAN.md
shumkov Apr 6, 2026
7549539
docs(platform-wallet): complete PLAN.md — steps 9-13, smart persisten…
shumkov Apr 6, 2026
796d758
docs(platform-wallet): rewrite PLAN.md — persister on wallet, no stag…
shumkov Apr 6, 2026
0923394
feat(platform-wallet): replace stage with persister, add apply()
shumkov Apr 6, 2026
4240169
feat(platform-wallet): add load_persisted_state() to PlatformWallet
shumkov Apr 6, 2026
4586e22
refactor(platform-wallet): rename persistence/ to changeset/
shumkov Apr 6, 2026
fa858bc
refactor(platform-wallet): remove duplicate transaction_statuses from…
shumkov Apr 6, 2026
c2351e8
refactor: simplify derive_account_xpub to use AccountType
shumkov Apr 6, 2026
1908054
docs(platform-wallet): add PR-20 spec — complete identity/asset lock …
shumkov Apr 6, 2026
400a5a8
docs(platform-wallet): expand PR-20 — multi-funding, lifecycle tracki…
shumkov Apr 6, 2026
d06fae7
feat(platform-wallet): asset lock lifecycle, IdentityFunding, SPV fin…
shumkov Apr 6, 2026
0ac3675
feat(platform-wallet): add funded_register/top_up_identity methods wi…
shumkov Apr 6, 2026
e576601
docs(platform-wallet): rewrite PR-20 — CoreWallet owns asset lock lif…
shumkov Apr 6, 2026
2700a23
feat(platform-wallet): clean asset lock types — TrackedAssetLock + As…
shumkov Apr 6, 2026
4e0acdf
feat(platform-wallet): extract AssetLockManager, share across sub-wal…
shumkov Apr 6, 2026
9ad1951
docs(platform-wallet): update PR-20 — AssetLockManager SPV event subs…
shumkov Apr 6, 2026
52477e7
feat(platform-wallet): AssetLockManager subscribes to SPV events, del…
shumkov Apr 6, 2026
86e126b
fix(platform-wallet): match asset lock status to actual proof type
shumkov Apr 6, 2026
aab47c7
feat(platform-wallet): add blocking accessors to AssetLockManager
shumkov Apr 6, 2026
de84290
feat(platform-wallet): add IS-lock to ChainLock proof fallback
shumkov Apr 6, 2026
6d9eb56
fix(platform-wallet): make track_asset_lock private
shumkov Apr 6, 2026
f73db28
refactor(platform-wallet): remove track_asset_lock, inline insert
shumkov Apr 6, 2026
cd8111f
refactor(platform-wallet): use local wallet info for tx status, not DAPI
shumkov Apr 6, 2026
8682037
refactor(platform-wallet): check BIP44 account first for asset lock t…
shumkov Apr 6, 2026
386751d
fix(platform-wallet): fix critical asset lock issues — ChainLock veri…
shumkov Apr 6, 2026
6c4067f
refactor(platform-wallet): remove 9 dead AssetLockManager methods
shumkov Apr 6, 2026
a8ac9a4
fix(platform-wallet): make remove_asset_lock pub(crate)
shumkov Apr 6, 2026
8e631b4
refactor(platform-wallet): improve AssetLockManager correctness and API
shumkov Apr 6, 2026
d088d55
feat(platform-wallet): key TrackedAssetLock by OutPoint, add resumabl…
shumkov Apr 6, 2026
b2d8276
feat(platform-wallet): thread PutSettings through identity wallet, pr…
shumkov Apr 6, 2026
fe7289e
feat(platform-wallet): changeset persistence for tracked asset locks
shumkov Apr 6, 2026
093e3ef
refactor(platform-wallet): simplify wait_for_proof and add SPV broadc…
shumkov Apr 6, 2026
d432f58
docs(platform-wallet): add PR-26 for lock ordering audit
shumkov Apr 6, 2026
a1db2d2
refactor(platform-wallet): use OutPoint in recover_asset_lock_blockin…
shumkov Apr 6, 2026
c0ed4d0
docs(platform-wallet): document confirmed deadlock risk in PR-26
shumkov Apr 6, 2026
958964f
refactor(platform-wallet): move asset lock modules to wallet/asset_lock/
shumkov Apr 6, 2026
6fa8644
feat(platform-wallet): add list_tracked_locks accessors to AssetLockM…
shumkov Apr 6, 2026
d947b05
docs(platform-wallet): warn about disconnected event channel in from_…
shumkov Apr 6, 2026
d1fe25e
refactor(platform-wallet): clean up PlatformWallet constructors and m…
shumkov Apr 6, 2026
08c3e43
refactor(platform-wallet): consolidate SpvRuntime and SpvWalletAdapte…
shumkov Apr 6, 2026
c8bf1b9
refactor(platform-wallet): move identity key derivation to IdentityWa…
shumkov Apr 6, 2026
658239a
refactor(platform-wallet): remove dead FromUtxo/FundWithUtxo variants
shumkov Apr 6, 2026
bee80e9
feat(platform-wallet): extend SpvRuntime with broadcast, quorum, run
shumkov Apr 6, 2026
9701188
feat(platform-wallet): add PR-29 to PLAN, update event_forwarder docs…
shumkov Apr 6, 2026
18b6be7
refactor(platform-wallet): remove manager feature flag, extract SpvSy…
shumkov Apr 6, 2026
dec1faa
fix(platform-wallet): fix review findings — broadcast doc, run() erro…
shumkov Apr 6, 2026
4f40009
refactor(platform-wallet): shared persister on manager with wallet_id…
shumkov Apr 6, 2026
958ee65
refactor(platform-wallet): make create_wallet_from_seed_bytes async
shumkov Apr 6, 2026
2b1502e
refactor(platform-wallet): rename persister methods — store/flush/load
shumkov Apr 6, 2026
99936f7
refactor(platform-wallet): extract WalletPersister to wallet/persiste…
shumkov Apr 6, 2026
037e0a1
feat(platform-wallet): TransactionBroadcaster trait for AssetLockMana…
shumkov Apr 6, 2026
9426204
refactor(platform-wallet): move broadcaster to crate root, add SpvBro…
shumkov Apr 6, 2026
c9dbc7f
refactor(platform-wallet): make SpvRuntime::broadcast_transaction pub…
shumkov Apr 6, 2026
0583f05
fix(platform-wallet): fix dead WalletEvent channel causing SPV crash
shumkov Apr 7, 2026
e70b17e
debug: add tracing to SpvRuntime::run() for e2e test investigation
shumkov Apr 7, 2026
67feefa
debug(platform-wallet): add logging to SpvWalletAdapter::monitored_ad…
shumkov Apr 7, 2026
4bf21a2
refactor(platform-wallet): collapse 7+ locks into single RwLock<Platf…
shumkov Apr 7, 2026
55adcfb
refactor(platform-wallet): clean up CoreWallet, add broadcaster
shumkov Apr 7, 2026
78bdce9
refactor(platform-wallet): route load through WalletPersister
shumkov Apr 7, 2026
ce834d5
refactor(platform-wallet): move CoreAddressInfo to evo-tool
shumkov Apr 7, 2026
39cec34
fix(platform-wallet): add reset_filter_committed_height for test rescan
shumkov Apr 7, 2026
630b380
refactor(platform-wallet): move state getters from CoreWallet to Plat…
shumkov Apr 7, 2026
559b3df
docs(platform-wallet): update PLAN.md with single-lock architecture a…
shumkov Apr 8, 2026
8f23630
docs(platform-wallet): add PR-30 spec — switch to dashcore WalletManager
shumkov Apr 8, 2026
7080444
docs(platform-wallet): mark PR-20/21 done, add PR-31 for leftovers
shumkov Apr 8, 2026
cb755c6
feat(platform-wallet): derive Clone on IdentityFunding for evo-tool r…
shumkov Apr 8, 2026
66c3ace
feat(platform-wallet): use dashcore WalletManager directly, delete Sp…
shumkov Apr 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .serena/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/cache
/project.local.yml
152 changes: 152 additions & 0 deletions .serena/project.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
# the name by which the project can be referenced within Serena
project_name: "platform"


# list of languages for which language servers are started; choose from:
# al bash clojure cpp csharp
# csharp_omnisharp dart elixir elm erlang
# fortran fsharp go groovy haskell
# java julia kotlin lua markdown
# matlab nix pascal perl php
# php_phpactor powershell python python_jedi r
# rego ruby ruby_solargraph rust scala
# swift terraform toml typescript typescript_vts
# vue yaml zig
# (This list may be outdated. For the current list, see values of Language enum here:
# https://github.com/oraios/serena/blob/main/src/solidlsp/ls_config.py
# For some languages, there are alternative language servers, e.g. csharp_omnisharp, ruby_solargraph.)
# Note:
# - For C, use cpp
# - For JavaScript, use typescript
# - For Free Pascal/Lazarus, use pascal
# Special requirements:
# Some languages require additional setup/installations.
# See here for details: https://oraios.github.io/serena/01-about/020_programming-languages.html#language-servers
# When using multiple languages, the first language server that supports a given file will be used for that file.
# The first language is the default language and the respective language server will be used as a fallback.
# Note that when using the JetBrains backend, language servers are not used and this list is correspondingly ignored.
languages:
- rust

# the encoding used by text files in the project
# For a list of possible encodings, see https://docs.python.org/3.11/library/codecs.html#standard-encodings
encoding: "utf-8"

# line ending convention to use when writing source files.
# Possible values: unset (use global setting), "lf", "crlf", or "native" (platform default)
# This does not affect Serena's own files (e.g. memories and configuration files), which always use native line endings.
line_ending:

# The language backend to use for this project.
# If not set, the global setting from serena_config.yml is used.
# Valid values: LSP, JetBrains
# Note: the backend is fixed at startup. If a project with a different backend
# is activated post-init, an error will be returned.
language_backend:

# whether to use project's .gitignore files to ignore files
ignore_all_files_in_gitignore: true

# list of additional paths to ignore in this project.
# Same syntax as gitignore, so you can use * and **.
# Note: global ignored_paths from serena_config.yml are also applied additively.
ignored_paths: []

# whether the project is in read-only mode
# If set to true, all editing tools will be disabled and attempts to use them will result in an error
# Added on 2025-04-18
read_only: false

# list of tool names to exclude.
# This extends the existing exclusions (e.g. from the global configuration)
#
# Below is the complete list of tools for convenience.
# To make sure you have the latest list of tools, and to view their descriptions,
# execute `uv run scripts/print_tool_overview.py`.
#
# * `activate_project`: Activates a project by name.
# * `check_onboarding_performed`: Checks whether project onboarding was already performed.
# * `create_text_file`: Creates/overwrites a file in the project directory.
# * `delete_lines`: Deletes a range of lines within a file.
# * `delete_memory`: Deletes a memory from Serena's project-specific memory store.
# * `execute_shell_command`: Executes a shell command.
# * `find_referencing_code_snippets`: Finds code snippets in which the symbol at the given location is referenced.
# * `find_referencing_symbols`: Finds symbols that reference the symbol at the given location (optionally filtered by type).
# * `find_symbol`: Performs a global (or local) search for symbols with/containing a given name/substring (optionally filtered by type).
# * `get_current_config`: Prints the current configuration of the agent, including the active and available projects, tools, contexts, and modes.
# * `get_symbols_overview`: Gets an overview of the top-level symbols defined in a given file.
# * `initial_instructions`: Gets the initial instructions for the current project.
# Should only be used in settings where the system prompt cannot be set,
# e.g. in clients you have no control over, like Claude Desktop.
# * `insert_after_symbol`: Inserts content after the end of the definition of a given symbol.
# * `insert_at_line`: Inserts content at a given line in a file.
# * `insert_before_symbol`: Inserts content before the beginning of the definition of a given symbol.
# * `list_dir`: Lists files and directories in the given directory (optionally with recursion).
# * `list_memories`: Lists memories in Serena's project-specific memory store.
# * `onboarding`: Performs onboarding (identifying the project structure and essential tasks, e.g. for testing or building).
# * `prepare_for_new_conversation`: Provides instructions for preparing for a new conversation (in order to continue with the necessary context).
# * `read_file`: Reads a file within the project directory.
# * `read_memory`: Reads the memory with the given name from Serena's project-specific memory store.
# * `remove_project`: Removes a project from the Serena configuration.
# * `replace_lines`: Replaces a range of lines within a file with new content.
# * `replace_symbol_body`: Replaces the full definition of a symbol.
# * `restart_language_server`: Restarts the language server, may be necessary when edits not through Serena happen.
# * `search_for_pattern`: Performs a search for a pattern in the project.
# * `summarize_changes`: Provides instructions for summarizing the changes made to the codebase.
# * `switch_modes`: Activates modes by providing a list of their names
# * `think_about_collected_information`: Thinking tool for pondering the completeness of collected information.
# * `think_about_task_adherence`: Thinking tool for determining whether the agent is still on track with the current task.
# * `think_about_whether_you_are_done`: Thinking tool for determining whether the task is truly completed.
# * `write_memory`: Writes a named memory (for future reference) to Serena's project-specific memory store.
excluded_tools: []

# list of tools to include that would otherwise be disabled (particularly optional tools that are disabled by default).
# This extends the existing inclusions (e.g. from the global configuration).
included_optional_tools: []

# fixed set of tools to use as the base tool set (if non-empty), replacing Serena's default set of tools.
# This cannot be combined with non-empty excluded_tools or included_optional_tools.
fixed_tools: []

# list of mode names to that are always to be included in the set of active modes
# The full set of modes to be activated is base_modes + default_modes.
# If the setting is undefined, the base_modes from the global configuration (serena_config.yml) apply.
# Otherwise, this setting overrides the global configuration.
# Set this to [] to disable base modes for this project.
# Set this to a list of mode names to always include the respective modes for this project.
base_modes:

# list of mode names that are to be activated by default.
# The full set of modes to be activated is base_modes + default_modes.
# If the setting is undefined, the default_modes from the global configuration (serena_config.yml) apply.
# Otherwise, this overrides the setting from the global configuration (serena_config.yml).
# This setting can, in turn, be overridden by CLI parameters (--mode).
default_modes:

# initial prompt for the project. It will always be given to the LLM upon activating the project
# (contrary to the memories, which are loaded on demand).
initial_prompt: ""

# time budget (seconds) per tool call for the retrieval of additional symbol information
# such as docstrings or parameter information.
# This overrides the corresponding setting in the global configuration; see the documentation there.
# If null or missing, use the setting from the global configuration.
symbol_info_budget:

# list of regex patterns which, when matched, mark a memory entry as read‑only.
# Extends the list from the global configuration, merging the two lists.
read_only_memory_patterns: []

# list of regex patterns for memories to completely ignore.
# Matching memories will not appear in list_memories or activate_project output
# and cannot be accessed via read_memory or write_memory.
# To access ignored memory files, use the read_file tool on the raw file path.
# Extends the list from the global configuration, merging the two lists.
# Example: ["_archive/.*", "_episodes/.*"]
ignored_memory_patterns: []

# advanced configuration option allowing to configure language server-specific options.
# Maps the language key to the options.
# Have a look at the docstring of the constructors of the LS implementations within solidlsp (e.g., for C# or PHP) to see which options are available.
# No documentation on options means no options are available.
ls_specific_settings: {}
19 changes: 9 additions & 10 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 7 additions & 7 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -47,13 +47,13 @@ members = [
]

[workspace.dependencies]
dashcore = { git = "https://github.com/dashpay/rust-dashcore", rev = "5db46b4d2bdc50b0fbc8d9acbebe72775bb4132a" }
dash-spv = { git = "https://github.com/dashpay/rust-dashcore", rev = "5db46b4d2bdc50b0fbc8d9acbebe72775bb4132a" }
dash-spv-ffi = { git = "https://github.com/dashpay/rust-dashcore", rev = "5db46b4d2bdc50b0fbc8d9acbebe72775bb4132a" }
key-wallet = { git = "https://github.com/dashpay/rust-dashcore", rev = "5db46b4d2bdc50b0fbc8d9acbebe72775bb4132a" }
key-wallet-ffi = { git = "https://github.com/dashpay/rust-dashcore", rev = "5db46b4d2bdc50b0fbc8d9acbebe72775bb4132a" }
key-wallet-manager = { git = "https://github.com/dashpay/rust-dashcore", rev = "5db46b4d2bdc50b0fbc8d9acbebe72775bb4132a" }
dashcore-rpc = { git = "https://github.com/dashpay/rust-dashcore", rev = "5db46b4d2bdc50b0fbc8d9acbebe72775bb4132a" }
dashcore = { path = "../rust-dashcore/dash" }
dash-spv = { path = "../rust-dashcore/dash-spv" }
dash-spv-ffi = { path = "../rust-dashcore/dash-spv-ffi" }
key-wallet = { path = "../rust-dashcore/key-wallet" }
key-wallet-ffi = { path = "../rust-dashcore/key-wallet-ffi" }
key-wallet-manager = { path = "../rust-dashcore/key-wallet-manager" }
dashcore-rpc = { path = "../rust-dashcore/rpc-client" }

# Optimize heavy crypto crates even in dev/test builds so that
# Halo 2 proof generation and verification run at near-release speed.
Expand Down
29 changes: 24 additions & 5 deletions packages/rs-platform-wallet/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ platform-encryption = { path = "../rs-platform-encryption" }

# Key wallet dependencies (from rust-dashcore)
key-wallet = { workspace = true }
key-wallet-manager = { workspace = true, optional = true }
key-wallet-manager = { workspace = true, features = [] }
dash-spv = { workspace = true }

# Core dependencies
dashcore = { workspace = true }
Expand All @@ -26,12 +27,30 @@ async-trait = "0.1"
# Collections
indexmap = "2.0"

# Async runtime
tokio = { version = "1", features = ["sync"] }
tokio-util = { version = "0.7.12" }

# Logging
tracing = "0.1"

# Encoding
hex = "0.4"

# Security
zeroize = "1"

# Shielded pool (optional, behind `shielded` feature)
grovedb-commitment-tree = { git = "https://github.com/dashpay/grovedb", rev = "8f25b20d04bfc0e8bdfb3870676d647a0d74918b", optional = true }
zip32 = { version = "0.2.0", default-features = false, optional = true }

[dev-dependencies]
rand = "0.8"
static_assertions = "1.1"


[features]
default = ["bls", "eddsa", "manager"]
bls = ["key-wallet/bls"]
eddsa = ["key-wallet/eddsa"]
manager = ["key-wallet-manager"]
default = ["bls", "eddsa"]
bls = ["key-wallet/bls", "key-wallet-manager/bls"]
eddsa = ["key-wallet/eddsa", "key-wallet-manager/eddsa"]
shielded = ["dep:grovedb-commitment-tree", "dep:zip32", "dash-sdk/shielded", "dpp/shielded-client"]
Loading
Loading