Conversation
- Keep scanner running after validation errors instead of showing blank screen - Deduplicate rapid scan events to prevent toast spam while QR is held up - Show specific error messages for DomainErrors in send scanner - Rename receive scan component to receive-scanner for consistency
Simplify QR scanner component
Improve QR scanner error handling
…e Sentry error events
Add sentry integration for error cause
Extract repository.fail() call into a dedicated service method with state checks, matching the pattern used by other services (CashuSendSwapService, CashuReceiveQuoteService, etc.): - No-op if swap is already FAILED - Validates swap is PENDING before failing - Clear error message with current state on invalid transition Closes #845 https://claude.ai/code/session_01Hw3d3Av8dccEqKCupLbGe3
Add fail() service method for cashu receive swaps
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
This pull request has been ignored for the connected project Preview Branches by Supabase. |
The send scanner's onDecode is async (fetches a send quote over the network) and can take longer than the 3s throttle cooldown. When that happens, the scanner fires onDecode again since the QR code is still in view, causing a double navigation to the confirm page. Add a ref-based processing guard in QRScanner that skips decode calls while the previous one hasn't resolved yet. Also widen the onDecode type to accept Promise<void> so async consumers are explicitly supported. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
gudnuf
approved these changes
Feb 16, 2026
Prevent QR scanner from firing onDecode while previous call is in-flight
Don't report any server 4xx errors to Sentry
- Expand trigger conditions (assignee, label) - Add concurrency control and timeout - Replace inline Nix setup with reusable setup-devenv action - Scope allowed tools explicitly and improve system prompt - Use commit signing and sonnet model
- Add settings.json with permissions, format-on-save hook, and LSP plugin - Add format-on-save hook script - Add typescript-language-server to devenv
Claude Code CI and local dev config
This commit migrates the project to Tailwind CSS v4 following the official upgrade guide and shadcn/ui v4 migration pattern. Key changes: - Updated tailwindcss to v4.1.18 and added @tailwindcss/vite plugin - Removed postcss, autoprefixer, and postcss.config.js (no longer needed with Vite plugin) - Replaced tailwindcss-animate with tw-animate-css (v4 compatible) - Rewrote app/tailwind.css with v4 CSS-first configuration: - Converted @tailwind directives to @import "tailwindcss" - Moved CSS variables outside @layer and wrapped HSL values with hsl() - Added @theme inline blocks to register color tokens - Migrated custom scrollbar-none plugin to @Utility directive - Moved custom keyframes and animations to @theme blocks - Updated deprecated class names across components: - shadow-sm → shadow-xs (2 files) - rounded-sm → rounded-xs (5 files) - outline-none → outline-hidden (14 files) - Removed tailwind.config.ts (configuration now in CSS) - Updated components.json to remove config path The migration preserves all existing functionality while adopting v4's improved architecture and performance. Note: Dependencies need to be installed (bun install) and verification tests need to be run before merging. Co-authored-by: Josip Bojčić <jbojcic1@users.noreply.github.com>
Tailwind v4 removed the default cursor: pointer from button elements in Preflight. This change adds cursor-pointer class to the button component's base classes to restore the expected hover behavior. Co-authored-by: Josip Bojčić <jbojcic1@users.noreply.github.com>
Add cursor-pointer class to all plain <button> elements throughout the app. In Tailwind CSS v4, the Preflight base styles no longer include cursor: pointer on button elements by default (this was removed from v3). The previous fix only added cursor-pointer to the Button component, but many interactive elements use plain <button> elements directly. This commit adds cursor-pointer to: - Send/receive paste and scan buttons - Currency switcher buttons - Settings navigation and share buttons - Account selector buttons - Gift card buttons - Contact selection buttons - Theme toggle button - QR code click button - And other interactive button elements Co-authored-by: Josip Bojčić <jbojcic1@users.noreply.github.com>
- Add disabled:cursor-not-allowed to Button component - Add disabled:cursor-not-allowed to account selector button - Ensures disabled buttons show not-allowed cursor instead of pointer Co-authored-by: Josip Bojčić <jbojcic1@users.noreply.github.com>
Implement the official migration guide approach for handling cursor pointer changes: - Add CSS rule in @layer base to restore v3 cursor behavior for buttons - Remove all individual cursor-pointer and disabled:cursor-not-allowed classes This matches the recommended approach from the Tailwind CSS v4 upgrade guide: https://tailwindcss.com/docs/upgrade-guide#buttons-use-the-default-cursor Changes: - app/tailwind.css: Added button cursor CSS rule in @layer base - 21 component files: Removed cursor-pointer/disabled:cursor-not-allowed classes Co-authored-by: Josip Bojčić <jbojcic1@users.noreply.github.com>
Upgrade Tailwind CSS from v3 to v4
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.
No description provided.