Skip to content

Fixed published main at dist root#700

Merged
abhijithsheheer merged 4 commits into
mainfrom
flash-list-v2
Jun 11, 2026
Merged

Fixed published main at dist root#700
abhijithsheheer merged 4 commits into
mainfrom
flash-list-v2

Conversation

@abhijithsheheer

Copy link
Copy Markdown
Contributor

No description provided.

@abhijithsheheer abhijithsheheer self-assigned this Jun 11, 2026
@abhijithsheheer abhijithsheheer added frontend Deals with React/JS code majorly. It can also include UI fixes without the help of the UI team. minor Releases non-breaking noteworthy changes with backward compatible. labels Jun 11, 2026

@neeto-bugwatch neeto-bugwatch Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 NeetoBugWatch Review

I've analyzed your pull request and found some potential improvements that might be worth considering. Please review the specific line comments below for helpful suggestions.

💡 To trigger a re-review of this PR, add a comment with neeto-bugwatch-run on its own line (not inside a code block or blockquote).

Warning

Verdict: Needs review — 5 comments found, including major issues

Click to copy prompt for AI agent
Verdict: review_required

The following are code review comments from an AI reviewer that only has access
to the PR diff, not the full codebase. Treat every comment as a hypothesis,
not a fact. For each comment:

1. Investigate the verification questions against the full codebase first.
2. Go beyond the provided questions. Use your full codebase access to ask your
   own questions, check related code paths, and consider edge cases that the
   reviewer could not have seen from the diff alone.
3. Only implement the suggested fix if your investigation confirms the issue is real.
4. If the issue is not real, skip it entirely. Do not implement speculative fixes.

Prioritize by severity (critical > major > minor > trivial) and confidence score.
Only attend to comments with confidence below 0.5 if your investigation proves them valid.

[
  {
    "file_path": "package.json",
    "line_number": 42,
    "comment": "The package `@shopify/flash-list` was moved from `dependencies` to `peerDependencies` and `devDependencies`. This is a breaking change for consumers who do not already have this package installed, as it will no longer be installed automatically with `@bigbinary/neetoui-rn`.",
    "confidence": 1.0,
    "severity": "major",
    "suggested_fix": "Ensure that this change is documented in the migration guide or CHANGELOG so consumers know they need to install `@shopify/flash-list` manually.",
    "verification_questions": [
      "Is this intended to be a breaking change to reduce bundle size or avoid version conflicts?",
      "Have all internal apps using this library been updated to include flash-list in their own package.json?"
    ],
    "raw_confidence": 1.0,
    "specialists_agreeing": 1,
    "judge_decision": "keep"
  },
  {
    "file_path": "src/components/FlashList.jsx",
    "line_number": 154,
    "comment": "The `FadeInComponent` uses `useAnimatedStyle` and `interpolate` inside a `useCallback`. However, in `renderItem`, `FadeInComponent` is treated as a component but it's defined inside the `FadeInFlatList` render body. This can cause the component to unmount and remount on every render of the parent, potentially breaking animations.",
    "confidence": 0.9199999999999999,
    "severity": "major",
    "suggested_fix": "Move the `FadeInComponent` definition outside of the `FadeInFlatList` component or ensure it doesn't trigger unmounts. Also, check if `useAnimatedStyle` is being called correctly within the closure.",
    "verification_questions": [
      "Does the list items flash or restart animation when the parent component re-renders?",
      "Is `value` shared correctly across all instances of `FadeInComponent`?",
      "Does toggling animationDuration at runtime cause the list items to unmount/remount?"
    ],
    "raw_confidence": 0.8,
    "specialists_agreeing": 2,
    "judge_decision": "keep"
  },
  {
    "file_path": ".scripts/post-build.mjs",
    "line_number": 16,
    "comment": "Hardcoding `packageJSON.main = \"./index.js\"` assumes the entry point of the bundled library will always be `index.js` in the `dist` folder. If the build step (babel) produces a different filename or structure (e.g., if the source root is not `src/index.js`), this will break the package imports for consumers.",
    "confidence": 0.36,
    "severity": "major",
    "suggested_fix": "Ensure the build script (`yarn build:es`) consistently outputs an `index.js` at the root of the `dist` folder, or derive this value from the original `package.json` 'main' field by stripping the 'src/' prefix.",
    "verification_questions": [
      "Does `babel src --out-dir=dist` produce a file named `dist/index.js`?",
      "Is the entry point of the library intended to be index.js?"
    ],
    "raw_confidence": 0.6,
    "specialists_agreeing": 1,
    "judge_decision": "downgrade"
  },
  {
    "file_path": "src/components/SearchBar.jsx",
    "line_number": 140,
    "comment": "Removing `searchText.length > 0` check means the cancel/close button will now be visible even when the search input is empty, provided `showCancelButton` is true. This might lead to a confusing UI where a 'clear' button exists for an already empty field.",
    "confidence": 1.0,
    "severity": "minor",
    "suggested_fix": "Verify if the cancel button should indeed be visible at all times when `showCancelButton` is true. If not, restore the `searchText.length > 0` condition or manage visibility via the animation state.",
    "verification_questions": [
      "Is the intended design to always show the cancel/close icon regardless of input content?",
      "Does the close icon appear redundant when the search field is already empty?",
      "Is it a design requirement for the cancel button to be visible even when the input is empty?"
    ],
    "raw_confidence": 1.0,
    "specialists_agreeing": 2,
    "judge_decision": "keep"
  },
  {
    "file_path": "src/components/FlashList.jsx",
    "line_number": 163,
    "comment": "The `useEffect` hook resets `value.value = 0` and starts a sequence animation whenever `isLoading` or `animationDuration` changes. If `isLoading` toggles frequently, it might cause jarring animation restarts for the entire list.",
    "confidence": 0.36,
    "severity": "minor",
    "suggested_fix": "Consider adding a check to only trigger the animation when `isLoading` transitions from `true` to `false`.",
    "verification_questions": [
      "Does the animation look smooth when the list finishes loading?",
      "Are there scenarios where `animationDuration` changes while the list is displayed?"
    ],
    "raw_confidence": 0.6,
    "specialists_agreeing": 1,
    "judge_decision": "downgrade"
  }
]

Comment thread package.json
Comment thread src/components/FlashList.jsx
Comment thread .scripts/post-build.mjs
Comment thread src/components/SearchBar.jsx
Comment thread src/components/FlashList.jsx
@abhijithsheheer abhijithsheheer merged commit a00bd86 into main Jun 11, 2026
1 check passed
@abhijithsheheer abhijithsheheer deleted the flash-list-v2 branch June 11, 2026 12:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

frontend Deals with React/JS code majorly. It can also include UI fixes without the help of the UI team. minor Releases non-breaking noteworthy changes with backward compatible.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant