Repository navigation
Feature/dashboard validation - #1580
Merged
1nonlypiece merged 5 commits intoOct 24, 2026
Merged
Conversation
Dedupe concurrent requests, serve fresh data for 15s, revalidate stale data in the background, and invalidate on createVault. Errors are never cached.
…tivity from the API
Dashboard showed every vault in the system and read recent activity and deadlines from hard-coded fixtures even in production.\n\n- listVaults accepts { creator, status } (encoded query for the API, offline filter for fixtures); add getStats({ creator }) backed by /stats?creator=\n- load the connected wallet's vaults (creator + verifier, merged and de-duplicated); show a connect prompt when disconnected\n- derive Recent Activity (top 8, newest first) from /transactions and Upcoming Deadlines from pending milestones; fixtures kept for offline mode only\n- guard against stale responses on wallet switch; rename list to 'Your vaults' with active-first sort\n- add tests for service filters, derive helpers and live dashboard
|
@Devadakene Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Closes #1512
What
validateVaultPreview(id, name ≤ 200 chars, status, positive finite amount, currency, ISO deadline, progress in [0, 100]) with a distinct reason code per failure, andsanitizeActivity(array guard, id/type/timestamp checks, 50-entry cap).readVaultList. This de-duplicates ids and counts rejected entries.rejectedCountis now real state, so "N vaults could not be verified and are not shown." renders. If no vault is usable, the retryable error state shows instead of "No vaults yet".toSafePreviewscounts dropped previews, and the summary only uses vaults that passed.Why
The validation code was dead, so a malformed or duplicated record could inflate "Total Locked" or break the page. Only
idand the reason code are logged, never names or addresses.Tests
Unit and fast-check property tests, plus boundary tests that mock
listVaultswith mixed, all-bad, duplicate, empty and 1,000-vault payloads.Screenshots
Before/after at 1440px and 390px still need to be added.