-
Notifications
You must be signed in to change notification settings - Fork 210
Refine mobile SDK constants re-exports #1551
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refine mobile SDK constants re-exports #1551
Conversation
📝 WalkthroughWalkthroughA new constants barrel index was created to re-export analytics events, color tokens, font identifiers, and layout constants. Concurrently, package.json script entries were reorganized and consolidated across three configuration files to improve structure and eliminate duplication. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
📜 Recent review detailsConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro 📒 Files selected for processing (4)
🧰 Additional context used📓 Path-based instructions (7)**/*.{js,jsx,ts,tsx}📄 CodeRabbit inference engine (.cursorrules)
Files:
**/*.{ts,tsx,js,jsx}📄 CodeRabbit inference engine (.cursorrules)
Files:
**/*.{tsx,jsx,ts,js}📄 CodeRabbit inference engine (.cursorrules)
Files:
packages/mobile-sdk-alpha/**/*.{ts,tsx}📄 CodeRabbit inference engine (packages/mobile-sdk-alpha/AGENTS.md)
Files:
packages/mobile-sdk-alpha/**/*.{js,ts,tsx,jsx}📄 CodeRabbit inference engine (packages/mobile-sdk-alpha/AGENTS.md)
Files:
packages/mobile-sdk-alpha/**/index.{ts,tsx}📄 CodeRabbit inference engine (packages/mobile-sdk-alpha/AGENTS.md)
Files:
packages/mobile-sdk-alpha/**/*.{ts,tsx,js,jsx}⚙️ CodeRabbit configuration file
Files:
🧠 Learnings (26)📓 Common learnings📚 Learning: 2025-12-25T19:19:04.954ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:04.954ZApplied to files:
📚 Learning: 2025-12-25T19:19:04.954ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-11-25T14:06:55.970ZApplied to files:
📚 Learning: 2025-12-25T19:18:43.224ZApplied to files:
📚 Learning: 2025-12-25T19:18:43.224ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-08-25T14:25:57.586ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-12-25T19:19:35.354ZApplied to files:
📚 Learning: 2025-10-23T12:08:55.529ZApplied to files:
⏰ Context from checks skipped due to timeout of 300000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (8)
🔇 Additional comments (4)
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 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 580e382818
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
packages/mobile-sdk-alpha/package.json (1)
37-65: Fix export configuration: import and react-native conditions must point to compiled JavaScript, not source TypeScript.The exports for
./constants,./constants/analytics,./constants/colors, and./constants/fonts(lines 37–65) are broken. Theimportandreact-nativeconditions must reference compiled.jsfiles fromdist/esm/, not raw.tssource files. Thetypescondition can reference source, but consumers expecting to import these will receive uncompiled TypeScript and fail at runtime.Correct structure (per other exports like
./storesand./components):"types": "./dist/esm/constants/index.d.ts", "react-native": "./dist/esm/constants/index.js", "import": "./dist/esm/constants/index.js", "require": "./dist/cjs/constants/index.cjs"The current validation scripts won't catch this misconfiguration—they only check package structure, not path correctness. This is a breaking change for existing consumers.
🤖 Fix all issues with AI Agents
In @packages/mobile-sdk-alpha/src/constants/index.ts:
- Around line 1-54: Add the required license header at the top of the file, then
reorder the export groups to satisfy the sort-exports rule: place the analytics
export group (starting with AadhaarEvents) first, the images export (NFC_IMAGE)
next, then fonts (advercase), then colors (starting with amber50), and finally
layout (extraYPadding); after making these changes run the workspace linter
(yarn workspace @selfxyz/mobile-sdk-alpha lint:fix) to auto-fix/validate
formatting.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
packages/mobile-sdk-alpha/package.jsonpackages/mobile-sdk-alpha/src/constants/index.ts
🧰 Additional context used
📓 Path-based instructions (8)
**/*.{js,jsx,ts,tsx}
📄 CodeRabbit inference engine (.cursorrules)
**/*.{js,jsx,ts,tsx}: NEVER log sensitive data including PII (names, DOB, passport numbers, addresses), credentials, tokens, API keys, private keys, or session identifiers.
ALWAYS redact/mask sensitive fields in logs using consistent patterns (e.g.,***-***-1234for passport numbers,J*** D***for names).
Files:
packages/mobile-sdk-alpha/src/constants/index.ts
**/*.{ts,tsx,js,jsx}
📄 CodeRabbit inference engine (.cursorrules)
**/*.{ts,tsx,js,jsx}: Use React Navigation withcreateStaticNavigationfor type-safe navigation in React Native applications.
Implement platform-specific handling withPlatform.OS === 'ios' ? 'iOS' : 'Android'checks before platform-specific code in React Native.
Initialize native modules withinitializeNativeModules()before any native operations in React Native.
Implement lazy loading for screens usingReact.lazy()in React Native applications.
Implement custom modal system withuseModalhook and callback registry in React Native.
Integrate haptic feedback usinguseHapticNavigationhook in React Native navigation.
Use platform-specific initial routes: web uses 'Home', mobile uses 'Splash' in React Navigation.
Use Zustand for global state management in React Native applications.
Use custom hooks for complex state (useModal,useHapticNavigation) instead of inline logic.
Use AsyncStorage for simple data, SQLite for complex data, and Keychain for sensitive data in React Native.
Use@/alias for src imports and@tests/alias for test imports in TypeScript/JavaScript files.
Use conditional rendering with Platform.OS for platform-specific code in React Native.
Use Tamagui for UI components in React Native applications.
Do not log sensitive data in production, including identity verification and passport information.
Use Keychain for secure storage of sensitive data in React Native.
Implement proper cleanup of sensitive data after use.
Implement certificate validation for passport data verification.
Always use try-catch for async operations in React Native and TypeScript code.
Implement graceful degradation when native modules fail in React Native.
Provide user-friendly error messages in UI and error handlers.
Lazy load screens and components to optimize bundle size in React Native.
Prevent memory leaks in native modules in React Native.
Files:
packages/mobile-sdk-alpha/src/constants/index.ts
**/*.{tsx,jsx,ts,js}
📄 CodeRabbit inference engine (.cursorrules)
Implement proper cleanup in useEffect and component unmount hooks in React.
Files:
packages/mobile-sdk-alpha/src/constants/index.ts
packages/mobile-sdk-alpha/**/*.{ts,tsx}
📄 CodeRabbit inference engine (packages/mobile-sdk-alpha/AGENTS.md)
packages/mobile-sdk-alpha/**/*.{ts,tsx}: Check types across the codebase by runningyarn types
Runyarn typesoryarn typecheckto check TypeScript types across the codebase
Runyarn buildto build the package for distribution
Before committing changes, ensure TypeScript types are valid by runningyarn types
Before committing changes, ensure the build succeeds by runningyarn build
Before creating a PR, ensureyarn typespasses (TypeScript validation)
Before creating a PR, ensureyarn buildsucceeds (package builds correctly)
Ensure no breaking changes to public API or document them properly
Verify cross-platform compatibility for both React Native and Web environments
This package uses TypeScript with strict type checking
Use ESLint with TypeScript-specific rules
Use platform detectionPlatform.OS === 'web'when adding platform-specific code
Maintain type definitions that are complete and accurate
Files:
packages/mobile-sdk-alpha/src/constants/index.ts
packages/mobile-sdk-alpha/**/*.{js,ts,tsx,jsx}
📄 CodeRabbit inference engine (packages/mobile-sdk-alpha/AGENTS.md)
Run
yarn lintto check for linting issues oryarn lint:fixto automatically fix them
Files:
packages/mobile-sdk-alpha/src/constants/index.ts
packages/mobile-sdk-alpha/**/index.{ts,tsx}
📄 CodeRabbit inference engine (packages/mobile-sdk-alpha/AGENTS.md)
Run
yarn validate:exportsto verify that exports are properly configured
Files:
packages/mobile-sdk-alpha/src/constants/index.ts
packages/mobile-sdk-alpha/**/*.{ts,tsx,js,jsx}
⚙️ CodeRabbit configuration file
packages/mobile-sdk-alpha/**/*.{ts,tsx,js,jsx}: Review alpha mobile SDK code for:
- API consistency with core SDK
- Platform-neutral abstractions
- Performance considerations
- Clear experimental notes or TODOs
Files:
packages/mobile-sdk-alpha/src/constants/index.ts
packages/mobile-sdk-alpha/**/package.json
📄 CodeRabbit inference engine (packages/mobile-sdk-alpha/AGENTS.md)
Run
yarn validate:pkgto verify that package conditions are valid
Files:
packages/mobile-sdk-alpha/package.json
🧠 Learnings (23)
📓 Common learnings
Learnt from: aaronmgdr
Repo: selfxyz/self PR: 951
File: app/src/providers/authProvider.web.tsx:17-18
Timestamp: 2025-08-25T14:25:57.586Z
Learning: The selfxyz/mobile-sdk-alpha/constants/analytics import path is properly configured with SDK exports, Metro aliases, and TypeScript resolution. Import changes from @/consts/analytics to this path are part of valid analytics migration, not TypeScript resolution issues.
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/index.{ts,tsx} : Run `yarn validate:exports` to verify that exports are properly configured
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.test.{ts,tsx} : Use real imports from `selfxyz/mobile-sdk-alpha` in tests instead of mocking the entire package
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.test.{ts,tsx} : Use ES6 `import` statements instead of `require()` when possible
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Ensure no breaking changes to public API or document them properly
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Verify cross-platform compatibility for both React Native and Web environments
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.test.{ts,tsx} : Prefer top-level imports over nested requires in test files
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Maintain type definitions that are complete and accurate
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Before creating a PR, ensure `yarn types` passes (TypeScript validation)
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Before committing changes, ensure the build succeeds by running `yarn build`
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Run `yarn build` to build the package for distribution
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : This package uses TypeScript with strict type checking
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Run `yarn types` or `yarn typecheck` to check TypeScript types across the codebase
📚 Learning: 2025-08-25T14:25:57.586Z
Learnt from: aaronmgdr
Repo: selfxyz/self PR: 951
File: app/src/providers/authProvider.web.tsx:17-18
Timestamp: 2025-08-25T14:25:57.586Z
Learning: The selfxyz/mobile-sdk-alpha/constants/analytics import path is properly configured with SDK exports, Metro aliases, and TypeScript resolution. Import changes from @/consts/analytics to this path are part of valid analytics migration, not TypeScript resolution issues.
Applied to files:
packages/mobile-sdk-alpha/src/constants/index.tspackages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:19:35.354Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Ensure no breaking changes to public API or document them properly
Applied to files:
packages/mobile-sdk-alpha/src/constants/index.tspackages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:19:35.354Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/index.{ts,tsx} : Run `yarn validate:exports` to verify that exports are properly configured
Applied to files:
packages/mobile-sdk-alpha/src/constants/index.tspackages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:19:35.354Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Maintain type definitions that are complete and accurate
Applied to files:
packages/mobile-sdk-alpha/src/constants/index.tspackages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:19:35.354Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : This package uses TypeScript with strict type checking
Applied to files:
packages/mobile-sdk-alpha/src/constants/index.tspackages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:19:35.354Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Run `yarn types` or `yarn typecheck` to check TypeScript types across the codebase
Applied to files:
packages/mobile-sdk-alpha/src/constants/index.tspackages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:19:35.354Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Check types across the codebase by running `yarn types`
Applied to files:
packages/mobile-sdk-alpha/src/constants/index.tspackages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:19:35.354Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.test.{ts,tsx} : Prefer top-level imports over nested requires in test files
Applied to files:
packages/mobile-sdk-alpha/src/constants/index.ts
📚 Learning: 2025-12-25T19:19:35.354Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Before committing changes, ensure TypeScript types are valid by running `yarn types`
Applied to files:
packages/mobile-sdk-alpha/src/constants/index.tspackages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:19:35.354Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.{ts,tsx} : Verify cross-platform compatibility for both React Native and Web environments
Applied to files:
packages/mobile-sdk-alpha/src/constants/index.tspackages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:19:35.354Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: packages/mobile-sdk-alpha/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:35.354Z
Learning: Applies to packages/mobile-sdk-alpha/**/*.test.{ts,tsx} : Use ES6 `import` statements instead of `require()` when possible
Applied to files:
packages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:19:04.954Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: app/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:04.954Z
Learning: Applies to app/**/*.test.{ts,tsx,js,jsx} : Avoid nested `require('react')` or `require('react-native')` calls in test files - use ES6 import statements instead
Applied to files:
packages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:19:04.954Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: app/AGENTS.md:0-0
Timestamp: 2025-12-25T19:19:04.954Z
Learning: Applies to app/**/*.test.{ts,tsx,js,jsx} : Use ES6 `import` statements exclusively - never use `require('react')` or `require('react-native')` in test files
Applied to files:
packages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:18:22.033Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: .cursor/rules/test-memory-optimization.mdc:0-0
Timestamp: 2025-12-25T19:18:22.033Z
Learning: Applies to **/__tests__/**/*.{ts,tsx,js,jsx} : Never use `require('react-native')` in test files; use ES6 `import` statements instead to avoid nested require() calls that cause out-of-memory errors in CI/CD pipelines
Applied to files:
packages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:18:22.033Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: .cursor/rules/test-memory-optimization.mdc:0-0
Timestamp: 2025-12-25T19:18:22.033Z
Learning: Applies to **/*.test.{ts,tsx,js,jsx} : Never use `require('react-native')` in test files; use ES6 `import` statements instead to avoid nested require() calls that cause out-of-memory errors in CI/CD pipelines
Applied to files:
packages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:18:22.033Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: .cursor/rules/test-memory-optimization.mdc:0-0
Timestamp: 2025-12-25T19:18:22.033Z
Learning: Applies to **/*.spec.{ts,tsx,js,jsx} : Never use `require('react-native')` in test files; use ES6 `import` statements instead to avoid nested require() calls that cause out-of-memory errors in CI/CD pipelines
Applied to files:
packages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:18:22.033Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: .cursor/rules/test-memory-optimization.mdc:0-0
Timestamp: 2025-12-25T19:18:22.033Z
Learning: Applies to **/__tests__/**/*.{ts,tsx,js,jsx} : Never use `require('react')` in test files; use ES6 `import React from 'react'` instead to avoid nested require() calls that cause out-of-memory errors
Applied to files:
packages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:18:22.033Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: .cursor/rules/test-memory-optimization.mdc:0-0
Timestamp: 2025-12-25T19:18:22.033Z
Learning: Applies to **/*.test.{ts,tsx,js,jsx} : Never use `require('react')` in test files; use ES6 `import React from 'react'` instead to avoid nested require() calls that cause out-of-memory errors
Applied to files:
packages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:18:22.033Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: .cursor/rules/test-memory-optimization.mdc:0-0
Timestamp: 2025-12-25T19:18:22.033Z
Learning: Applies to **/*.spec.{ts,tsx,js,jsx} : Never use `require('react')` in test files; use ES6 `import React from 'react'` instead to avoid nested require() calls that cause out-of-memory errors
Applied to files:
packages/mobile-sdk-alpha/package.json
📚 Learning: 2025-11-25T14:06:55.970Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: .cursorrules:0-0
Timestamp: 2025-11-25T14:06:55.970Z
Learning: Applies to **/*.{ts,tsx,js,jsx} : Use `@/` alias for src imports and `tests/` alias for test imports in TypeScript/JavaScript files.
Applied to files:
packages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:18:22.033Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: .cursor/rules/test-memory-optimization.mdc:0-0
Timestamp: 2025-12-25T19:18:22.033Z
Learning: Applies to app/.eslintrc.cjs : Configure ESLint to block `require('react')` and `require('react-native')` calls in test files using the 'no-restricted-syntax' rule with 'CallExpression' selectors
Applied to files:
packages/mobile-sdk-alpha/package.json
📚 Learning: 2025-12-25T19:18:43.224Z
Learnt from: CR
Repo: selfxyz/self PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-12-25T19:18:43.224Z
Learning: Applies to {app,packages/mobile-sdk-alpha}/**/*.{test,spec}.{js,ts,jsx,tsx} : Never create nested require('react-native') calls in tests as this causes out-of-memory errors in CI/CD pipelines; use ES6 import statements instead and avoid dynamic require() calls in beforeEach/afterEach hooks
Applied to files:
packages/mobile-sdk-alpha/package.json
🪛 GitHub Actions: Mobile SDK CI
packages/mobile-sdk-alpha/src/constants/index.ts
[error] 52-52: Lint step 'yarn workspace @selfxyz/mobile-sdk-alpha lint' failed: sort-exports/sort-exports error at 52:1 - "Expected advercase before amber50".
🪛 GitHub Actions: Workspace CI
packages/mobile-sdk-alpha/src/constants/index.ts
[error] 1-1: License header missing or incorrect in /home/runner/work/self/self/packages/mobile-sdk-alpha/src/constants/index.ts. Command 'yarn lint' exited with code 1. Run 'yarn lint --fix' to auto-fix header issues.
🪛 GitHub Check: lint
packages/mobile-sdk-alpha/src/constants/index.ts
[failure] 53-53:
Expected NFC_IMAGE before advercase
[failure] 52-52:
Expected advercase before amber50
⏰ Context from checks skipped due to timeout of 300000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (6)
- GitHub Check: test
- GitHub Check: type-check
- GitHub Check: Android E2E Tests Demo App
- GitHub Check: android-build-test
- GitHub Check: e2e-ios
- GitHub Check: analyze-android
* Clarify constants re-exports * Adjust constants export mapping * agent feedback. sort all the tings
Summary
Testing
Codex Task
Summary by CodeRabbit
Chores
Refactor
✏️ Tip: You can customize this high-level summary in your review settings.