merge: resolve v1.0-dev conflicts for #577#587
Merged
PastaPastaPasta merged 4 commits intoFeb 17, 2026
Merged
Conversation
* fix: compute relative timestamps from actual data Replace hardcoded display strings like "Received: 1 day ago" with real relative timestamps computed from document createdAt/updatedAt fields using chrono::Utc::now(). Fixes dashpay#579 * style: fix import ordering per cargo fmt * refactor: extract format_relative_time to shared dashpay module Deduplicate the identical format_relative_time function that existed in both contact_requests.rs and send_payment.rs. Move it to the dashpay mod.rs as a pub(crate) function and import from both files. --------- Co-authored-by: PastaClaw <thepastaclaw@users.noreply.github.com>
…shpay#575) * fix: update dashpay/platform to d6f4eb9 for DIP-18 HRP fix The previous platform revision used incorrect bech32m HRP prefixes (evo/tevo) for Platform addresses. The updated commit uses the correct DIP-0018 prefixes (dash/tdash). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * refactor(spv): use dash-spv SyncProgress API directly Replace the intermediate SyncProgress/DetailedSyncProgress/SyncStage translation layer with direct use of dash_spv::sync::SyncProgress. This eliminates ~120 lines of bridge code in spawn_progress_watcher() and determine_sync_stage(), and lets the UI query per-manager progress (headers, filter_headers, filters, masternodes, blocks) via the upstream API. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(spv): improve sync progress accuracy and robustness - Log headers() error before discarding for easier debugging - Restore download-window optimization for headers progress on checkpoint-resumed syncs (progress starts near 0% not 83%) - Replace catch-all _ => 0.0 with explicit SyncState variant matches so new variants produce compile errors - Fix filters progress to use current_height/target_height instead of downloaded/target_height (session count vs absolute height mismatch) - Restore peer count in sync status text - Add "Querying peer heights" label and diffs_processed to masternode status for more informative sync messages Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(spv): use height-based blocks progress to prevent bar from jumping The blocks progress bar was bouncing backward because it used processed/requested session counters whose denominator grows as filters discover more matching blocks. Switch to last_processed block height relative to headers target_height, which only increases. Display "current / target" heights instead of percentage on the blocks bar. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(spv): improve progress bar resilience across resume and network switch - Add windowed progress tracking for filters (consistent with headers/filter_headers) - Reset blocks_stage_start on Error state so recovery gets a fresh window - Track spv_progress_network to detect network changes and rebuild progress state from the new network's sync_progress instead of resetting to zero - Eliminate redundant clone in progress watcher (move instead of clone twice) - Consolidate all progress state reset logic into rebuild_spv_progress_state() Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…#565) * build: add git and cargo permissions to Claude Code workflow Allow Claude to run git fetch/merge/checkout/rebase/push and cargo build/test/clippy/fmt commands. Switch model to opus. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: use claude_args for model and allowed tools The `model` and `allowed_tools` inputs are not declared in claude-code-action@v1 and are silently ignored. Move them to `claude_args` with --model and --allowedTools flags. Also fix deprecated colon syntax (`:*`) to space syntax (` *`). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: use single quotes to prevent glob expansion in allowed tools Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * build: sandbox cargo commands and add git permissions for Claude - Add safe-cargo.sh wrapper that strips CI secrets before running cargo - Use --allowedTools for git and safe-cargo, --disallowedTools for raw cargo - Document safe-cargo usage in CLAUDE.md Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: switch safe-cargo.sh from denylist to allowlist approach Use `env -i` (start with empty environment, explicitly pass only what cargo needs) instead of `env -u` (strip known secrets). This is more robust against future secrets being added to the workflow. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * build: deny Claude from editing CI scripts and workflows Prevent Claude from modifying .github/scripts/ and .github/workflows/ to ensure the safe-cargo wrapper cannot be tampered with. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: conditionally pass optional env vars in safe-cargo.sh Empty PROTOC="" caused prost build scripts to fail with "protoc not found". Now optional vars (PROTOC, CC, CXX, etc.) are only passed when set and non-empty. Tested: build, test, fmt all pass through the wrapper. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * rabbit feedback * build: move safe-cargo.sh to scripts/ and allow +nightly fmt Move safe-cargo.sh from .github/scripts/ to top-level scripts/ for better discoverability. Add detailed comment explaining why the wrapper exists (prevent CI secret exfiltration via build scripts). Update all references in claude.yml, CLAUDE.md, and permission settings. Add `+nightly fmt` to allowedTools so Claude can follow CLAUDE.md formatting instructions in CI. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
- Cargo.toml: keep PR's [lints.rust.unexpected_cfgs] section alongside v1.0-dev's [lints.clippy] - Cargo.lock: regenerated
Contributor
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review (2)
Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
e50c898
into
dashpay:fix/spv-connect-button-feedback
1 of 5 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Merges v1.0-dev into fix/spv-connect-button-feedback to resolve conflicts in #577.
Cargo.toml: Kept both lint sections —
[lints.rust.unexpected_cfgs](from PR) and[lints.clippy](from v1.0-dev).Cargo.lock: Regenerated via
cargo update.cc @QuantumExplorer @lklimek