These are the best next targets because they block npx tsc --noEmit from being useful as a regression check.
-
Remove stale
selectMintToSwapToroute.- Removed the unreachable route registration, route type, screen prop type, and screen file.
-
Fix stale route types in
src/components/Empty.tsx.- Current type references old routes:
"nostrReceive"and"qr scan". - Replace with a generic
NativeStackNavigationProp<RootStackParamList>or a narrower current route type.
- Current type references old routes:
-
Clean up payment overview residue in
src/screens/Payment/Send/CoinSelection.tsx.- Remove the missing
_testmintUrlimport from@consts. - Check whether
url,scanned, andtrustMintRefare still needed.
- Remove the missing
-
Fix utility module type errors in
src/util/index.ts.- Import or remove the
IContactdependency used byuniqByIContacts. - Fix
decodeLnInvoice, which currently callsdecodeInvoicewithout an import/provider.
- Import or remove the
-
Fix environment typing in
src/consts/env.ts.- TypeScript cannot resolve the
expo-constantsimport from the root dependency graph. - Add declarations or remove direct global references for
__TEST__andjest.
- TypeScript cannot resolve the
-
Fix i18n key typing errors.
src/components/MintSelectionSheet.tsxhas a union key call for"selectMint" | "selectMints"that does not satisfy the typedtoverload.src/screens/Payment/Processing.tsxhas a similar dynamic key issue for processing status strings.
-
Add a QR chooser for unified requests with multiple supported candidates.
- Current QR policy chooses by priority.
- A chooser is better when a unified request contains both a Cashu payment request and a Lightning invoice.
-
Implement Cashu payment request execution from QR.
- QR currently recognizes
cashuPaymentRequestcandidates but shows an unsupported prompt. - NFC already extracts and executes Cashu payment requests through
manager.paymentRequests.
- QR currently recognizes
-
Add focused parser coverage once a test runner exists.
- Direct Cashu token.
- Direct Lightning invoice.
- Lightning address.
- LNURL.
- Direct
creq.... bitcoin:with address pluslightning=....bitcoin:withcreq=....bitcoin:with multiple supported fallbacks.
-
Reduce noisy debug logging in
src/shim.ts.- It logs crypto polyfill setup details on startup.
-
Review
src/screens/Payment/MeltInput.tsxfor extraction opportunities.- The file is large and still owns request parsing, LNURL amount flow, mint selection, operation preparation, confirmation, cancellation, and success routing.
- Do this after typecheck is cleaner, so behavior changes are easier to validate.
-
Review broad
anyand modal backdrop types.- Several bottom-sheet components type backdrop props as
any. - This is lower priority than the current typecheck blockers.
- Several bottom-sheet components type backdrop props as