Skip to content

feat: version bump v3#3293

Merged
eduardoformiga merged 159 commits intomainfrom
feat/version-bump-v3
May 4, 2026
Merged

feat: version bump v3#3293
eduardoformiga merged 159 commits intomainfrom
feat/version-bump-v3

Conversation

@eduardoformiga
Copy link
Copy Markdown
Member

What's the purpose of this pull request?

generate a new v3 version.

lariciamota and others added 30 commits October 30, 2025 09:26
## What's the purpose of this pull request?

Build our default image loader.

## How it works?

- When the FastStore image component is used, the `faststoreLoader` is
used.
- When the Next image component is used directly, the
`customImageLoader` is used.
- Both have the same behavior when handling images from VTEX (from the
file manager/cms and product images) -- they add to the URL the info
regarding size, quality and aspect, since those VTEX services already
handles optimizations.
- The difference between those loaders is regarding external images --
the one used for Next images uses the Next optimizations, and the
FastStore one doesn't.

It won't be necessary to use a feature flag like
`enableVtexAssetsLoader`.

## How to test it?

<!--- Describe the steps with bullet points. Is there any external link
that can be used to better test it or an example? --->

### Starters Deploy Preview

PR: vtex-sites/faststoreqa.store#881

## References

- [Jira task](https://vtex-dev.atlassian.net/browse/SFS-2878)
- [Slack
thread](https://vtex.slack.com/archives/C03L3CRCDC4/p1761334946034969)
## What's the purpose of this pull request?

Atts.
## What's the purpose of this pull request?

This PR fixes a visual bug in the TextareaField component where long
text would appear underneath the floating label during scroll, making it
difficult to read. The issue was identified during the review of [PR
#2705](#2705 (review)).

Additionally, comprehensive Storybook documentation was added to
showcase all TextareaField variations and use cases.


https://github.com/user-attachments/assets/a86cd4df-e286-40f4-82b0-271a8bc66a26




## How it works?

**Bug Fix:**
- Added `--fs-textarea-field-label-background-color` CSS variable to
`packages/ui/src/components/molecules/TextareaField/styles.scss`
- Set default value to neutral-0 (white) to prevent text from showing
through the label
- When the textarea content is long and the user scrolls, the label now
has an opaque background, preventing text overlap

## How to test it?

**Test the scroll bug fix:**

From the project root:
```bash
pnpm --filter "@faststore/storybook" dev
```

Or navigate to the storybook package:
```bash
cd packages/storybook
pnpm dev
```

Then:
1. Open http://localhost:6006 in your browser
2. Navigate to **"TextareaField"** → **"LargeText"** story
3. Scroll inside the textarea content
4. Verify that the text no longer appears underneath the label

## References
- **Related Issue:** [PR #2705 - TextareaField label overlap issue
identified](#2705 (review))
- **Task:** [SFS-2385 ](https://vtex-dev.atlassian.net/browse/SFS-2385)
## What's the purpose of this pull request?

Revert changes from 
- #2988
since the approach to filter shopper changes to use text field instead
of selected filter in the drawer.

## details

remove purchaseAgentId filter and related components from
`MyAccountListOrders`.

This update removes the purchaseAgentId filter and its associated
components from the MyAccountListOrders section. The changes include:
- Deleting the MyAccountFilterFacetPlacedBy component and its styles.
- Adjusting the MyAccountListOrders and MyAccountSelectedTags components
to eliminate references to purchaseAgentId.
- Cleaning up related styles and imports to streamline the codebase.

These modifications aim to simplify the order filtering process and
improve overall maintainability.
## What's the purpose of this pull request?

From a current Next.js's known issue
([discussion#44013](vercel/next.js#44013)),
these changes aim to add an experimental custom hook to handle scroll
restoration when navigating back from PDPs to PLPs.


https://github.com/user-attachments/assets/9a452081-4c65-4a83-8c16-9775f97d226d

Along with this experimental hook, some adjustments needed to be made to
correct the behavior of related components, such as `Sentinel`.

While the Next.js experimental `scrollRestoration` flag is not working
as it should, we are proposing this FastStore's experimental scroll
restoration alternative.

## How it works?

While navigating through PLPs and loading more pages, when users
navigate to a PDP and navigate back the scroll should be restored to the
last position before the navigation.

### Starters Deploy Preview

vtex-sites/faststoreqa.store#878

## References

#2054
## What's the purpose of this pull request?

Merge the changes from main
## What's the purpose of this pull request?

By using the direction property users will be able to use RTL or LTR
layouts.
## What's the purpose of this pull request?

With these changes, if merchants remove the footer logo the entire
footer component will not be hid anymore, it will throw a console error
but the component should be displayed with no logo.
#3077)

## What's the purpose of this pull request?

This PR fixes the `border-radius` of the Slider thumb in Firefox. The
current CSS rule for Mozilla uses an inexistent variable, making the
browser render a square instead of a circle:

<img width="1028" height="181" alt="image"
src="https://github.com/user-attachments/assets/50c08d79-a6a9-4d31-b2e7-5ef9e287080f"
/>

## How it works?

The `--fs-slider-thumb-radius` variable is replaced by
`--fs-slider-thumb-border-radius`, the one that is defined in the
default thumb variables.

## How to test it?

- Use the `Local Install Instructions` from the [CodeSandbox
CI](https://ci.codesandbox.io/status/vtex/faststore/pr/3077) to add this
version in the `package.json` of a store.
- Import the `Slider` atom (and styles) in a component following the
docs: https://developers.vtex.com/docs/guides/faststore/atoms-slider
- Run the store in development mode and browse it in Mozilla Firefox.

### Starters Deploy Preview

I'm unable to generate a preview link but here's a screenshot from
localhost:

<img width="1287" height="617" alt="image"
src="https://github.com/user-attachments/assets/f0a5a5e9-d657-41db-9415-303b5d17fefd"
/>

## Checklist

**PR Title and Commit Messages**

- [x] PR title and commit messages follow the [Conventional
Commits](https://www.conventionalcommits.org/en/v1.0.0/) specification
- Available prefixes: `feat`, `fix`, `chore`, `docs`, `style`,
`refactor`, `ci` and `test`

**PR Description**

- [ ] Added a label according to the PR goal - `breaking change`, `bug`,
`contributing`, `performance`, `documentation`..
_(No permissions. It's a bug though.)_

**Dependencies**

- [N/A] Committed the `pnpm-lock.yaml` file when there were changes to
the packages

**Documentation**

- [x] PR description
- [N/A] For documentation changes, ping `@Mariana-Caetano` to review and
update (Or submit a doc request)
)

## What's the purpose of this pull request?

Adds a new "Pending Approval" filter to the MyAccount orders page,
allowing users to quickly filter orders that require their approval.

## How it works?

- New toggle filter: Added "Pending Approval" as the first filter option
in the orders filter slider
- Toggle switch: Users can turn on/off the filter to show only pending
approval orders
- URL integration: Filter state is reflected in the URL
(?pendingApproval=true)
- Selected tag: When active, shows "Pending my approval" tag below the
search bar

## How to test it?

- Go to /account/orders
- Open filter slider and verify "Pending Approval" is the first option
- Toggle the switch and click "Apply"
- Check URL - should include ?pendingApproval=true
- Verify tag appears - "Pending my approval" tag should show below
search bar
- Test removal - click "×" on tag or "Clear All" to remove filter
- Test direct URL - navigate to /account/orders?pendingApproval=true and
verify filter is active

## Starter deploy preview

vtex-sites/b2bfaststoredev.store#358

## References

[SFS-2618](https://vtex-dev.atlassian.net/browse/SFS-2618)

| List | Filter |
| - | - |
|
![image](https://github.com/user-attachments/assets/70a02298-4461-4b21-926d-8d6b754a78bc)
|
![image](https://github.com/user-attachments/assets/2d6afc76-7153-473a-b839-c141e4f0ca1f)
|

[SFS-2618]:

https://vtex-dev.atlassian.net/browse/SFS-2618?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

[SFS-2618]:
https://vtex-dev.atlassian.net/browse/SFS-2618?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

---------

Co-authored-by: Artur Santiago <artur.santiago@cubos.io>
)

## What's the purpose of this pull request?

Fix a bug that occurs when regionalized and `isSessionReady` is sent in
the' validateSession' and' validateCart' mutations.

## How does it work?

It removes the `isSessionReady` from the session sent to the `setRegion`
method.

<img width="1909" height="916" alt="Screenshot 2025-11-11 at 16 22 55"
src="https://github.com/user-attachments/assets/468cc987-a2ee-432f-b306-399bfd32e891"
/>
## What's the purpose of this pull request?

This PR aims to fix the build in the dev branch.
## What's the purpose of this pull request?

With these changes, a loading skeleton will be displayed when product
price is still being validated, preventing product price flickering on
PDP.

## How to test it?

### Starters Deploy Preview
## What's the purpose of this pull request?

Allow svg files in public folder, avoid it getting deleted/overwritten
when generating .faststore

## How it works?

Add it to the allow list.

## How to test it?

Create a svg file or modify an existing svg file, it should be copied
correctly to the `/.faststore/public` when running the build command.
You can use this PR to test:
vtex-sites/faststoreqa.store#887, I've added a
new svg file and changed an existing one, before it was being
deleted/overwritten.
<img width="287" height="420" alt="Screenshot 2025-11-20 at 09 57 19"
src="https://github.com/user-attachments/assets/7b01d806-bdf9-4c3b-a385-32ea11ab2518"
/>

Nothing else should change.

### Starters Deploy Preview

- https://storeframework-cm652ufll028lmgv665a6xv0g-h0max2o2h.b.vtex.app/

## References
- [Jira task](https://vtex-dev.atlassian.net/browse/SO-559)
## What's the purpose of this pull request?

This PR considers the session when deducing the changes to the orderForm
done externally.

## What it aims to solve

The current FastStore shows a competing nature when dealing with the
same cart on two different devices (E.g. 2 browsers, Chrome and
Firefox).

### How to reproduce the problem

- Open your store in Chrome and Firefox
- Make note of the checkout.vtex.com cookie value of Chrome and view the
content of the orderForm using a client like Postman
- Paste the value of the cookie to the checkout cookie of Firefox
- Now you should have the same orderForm in Chrome, Firefox and Postman
- Add an item to the cart from Chrome
- Without going to Firefox, verify that the item is present in the
orderForm using Postman
- Now go to Firefox, but you will not see the item (Expected: the item
should be present in the cart, Actual: the browser cart in Firefox will
override the items of the real orderForm object)
- Open Postman, and you will notice that the item is not present in the
orderForm
- Now go back to Chrome, and it will add back the item to the orderForm
- Open Postman, and you will notice that the item is present in the
orderForm

## How it works?

We include the session ID to the MD5 hash, so that when the store is
used in a different browser with the same orderForm, the two hashes are
different. The two browsers should respect the changes performed by each
other.

## How to test it?

- First verify that the existing behavior of the mutation `validateCart`
is as expected.
- Follow the steps under **How to reproduce the problem**, and verify
that the expected behavior is observed.

### Starters Deploy Preview

<!--- Add a link to a deploy preview from `starter.store` with this
branch being used. --->

<!--- Tip: You can get an installable version of this branch from the
CodeSandbox generated when this PR is created. --->

## References

<!--- Spread the knowledge: is there any content you used to create this
PR that is worth sharing? --->

<!--- Extra tip: adding references to related issues or mentioning
people important to this PR may be good for the documentation and
reviewing process --->

## Checklist

<em>You may erase this after checking them all 😉</em>

**PR Title and Commit Messages**

- [ ] PR title and commit messages follow the [Conventional
Commits](https://www.conventionalcommits.org/en/v1.0.0/) specification
- Available prefixes: `feat`, `fix`, `chore`, `docs`, `style`,
`refactor`, `ci` and `test`

**PR Description**

- [ ] Added a label according to the PR goal - `breaking change`, `bug`,
`contributing`, `performance`, `documentation`..

**Dependencies**

- [ ] Committed the `pnpm-lock.yaml` file when there were changes to the
packages

**Documentation**

- [ ] PR description
- [ ] For documentation changes, ping `@Mariana-Caetano` to review and
update (Or submit a doc request)
## What's the purpose of this pull request?

This PR aims to fix the source code to show `undefined` `searchTerm`.
<img width="916" height="811" alt="Screenshot 2025-11-20 at 19 01 42"
src="https://github.com/user-attachments/assets/b07e44a4-9e37-45e3-9712-6ab19b1af758"
/>


## How it works?

1. The source code can't access the searchTerm from the build time;
thus, this page uses the default
<img width="1899" height="656" alt="Screenshot 2025-11-20 at 18 42 43"
src="https://github.com/user-attachments/assets/697d1b4a-e5cb-4325-a5a1-3ba5d429b7b3"
/>

2. The final code (runtime code after hydration, you can see the element
tab in the devtools), can access the dynamic search term and uses it.
<img width="1570" height="1049" alt="Screenshot 2025-11-20 at 18 42 05"
src="https://github.com/user-attachments/assets/04e0a613-950f-4416-9200-dcc239326b41"
/>

## How to test it?

You can run `pnpm build && pnpm serve` and view the source code
(right-click> Source Code). Additionally, you can view the final code
using the Element tab in the DevTools.
vtexgithubbot and others added 17 commits April 21, 2026 21:02
…3220)

## What's the purpose of this pull request?

This PR aims to make possible the use of isGift from the orderForm item
instead of price = 0 when dealing with gift.For that, you should use the
flag `useIsGiftFromOrderForm` as true.

- When true, use the orderForm's isGift field to detect gift items.
- When false or unset, use the legacy behavior (item.price === 0).

## How it works?

- Introduced an optional `isGift` field in the `StoreOffer` type to
indicate if an offer is a gift.
- Updated GraphQL schema and resolvers to handle the new `isGift` field.
- Modified the cart validation mutation to include the `isGift` property
for cart items.
- Adjusted the `isGift` logic in the cart SDK to utilize the new field
when applicable.


(see the gift icon and the free tag in the minicart)
| Flag false / default | flag true |
|-|-|
|<img width="1916" height="923" alt="Screenshot 2026-02-23 at 18 09 09"
src="https://github.com/user-attachments/assets/64191213-5a83-490f-9263-ce86cf96d440"
/>|<img width="1916" height="920" alt="Screenshot 2026-02-23 at 18 19
48"
src="https://github.com/user-attachments/assets/e3a544fe-09dd-4e54-87b1-3b15c9c17bd3"
/>|

## How to test it?

...

### Starters Deploy Preview

<!--- Add a link to a deploy preview from `starter.store` with this
branch being used. --->

<!--- Tip: You can get an installable version of this branch from the
CodeSandbox generated when this PR is created. --->

## References

<!--- Spread the knowledge: is there any content you used to create this
PR that is worth sharing? --->

<!--- Extra tip: adding references to related issues or mentioning
people important to this PR may be good for the documentation and
reviewing process --->

## Checklist

<em>You may erase this after checking them all 😉</em>

**PR Title and Commit Messages**

- [ ] PR title and commit messages follow the [Conventional
Commits](https://www.conventionalcommits.org/en/v1.0.0/) specification
- Available prefixes: `feat`, `fix`, `chore`, `docs`, `style`,
`refactor`, `ci` and `test`

**PR Description**

- [ ] Added a label according to the PR goal - `breaking change`, `bug`,
`contributing`, `performance`, `documentation`..

**Dependencies**

- [ ] Committed the `pnpm-lock.yaml` file when there were changes to the
packages

**Documentation**

- [ ] PR description
- [ ] For documentation changes, ping `@Mariana-Caetano` to review and
update (Or submit a doc request)


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Cart items now include gift detection and an isGift flag to mark
promotional/complimentary items.
* An experimental configuration option controls how gifts are detected
(store-provided flag vs. price-based).
* Checkout totals and item lists account for gifts, enabling proper
splitting between gifts and regular items.
* Cart state exposes a flag to support conditional item-splitting
behavior.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## What's the purpose of this pull request?

- Enhance session management with logout handling and validation
tracking

## How it works?

- Added SESSION_READY_KEY to manage session readiness state after
logout.
- Updated checkAndReloadIfReturnedFromLogout to set session readiness on
reload.
- Modified createValidationStore to include hasValidatedStore for
tracking validation completion.
- Adjusted useSession and useSessionReady hooks to utilize hasValidated
for improved session state management, addressing React 18 batching
issues.

## How to test it?

using b2b store url.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Bug Fixes**
* Improved session state management to ensure proper tracking after user
logout and return.
* Enhanced session readiness detection for more reliable authentication
handling.

* **Refactor**
* Optimized internal session validation logic for better performance and
state consistency.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## What's the purpose of this pull request?

Migrate FastStore package preview pipeline away from CodeSandbox CI,
which is being discontinued.

CodeSandbox CI will be shut down on April 15, 2026, which directly
impacts our current PR preview flow. Without a replacement, we lose the
ability to generate installable preview builds for testing changes in
real stores.

This PR introduces pkg.pr.new as a replacement, ensuring continuity of
the preview pipeline with a more reliable and simpler approach.

## How it works?

This PR adds a new CI workflow that generates installable package
previews using pkg.pr.new for every PR.

Instead of relying on CodeSandbox, we now:
- Generate a preview package URL directly from the PR
- Allow installation via yarn/npm using a URL
- Support commit-based versions for more granular validation

Task:
https://vtex-dev.atlassian.net/jira/software/c/projects/SFS/boards/1051?selectedIssue=SFS-3102
…3263)

- Simplified conditions for refreshing tokens by consolidating checks
for expired tokens and the presence of refresh tokens.
- Removed redundant checks to streamline the authentication flow.

## What's the purpose of this pull request?

<!--- Considering the context, what is the problem we'll solve? Where in
VTEX's big picture our issue fits in? Write a tweet about the context
and the problem itself. --->

## How it works?

<!--- Tell us the role of the new feature, or component, in its context.
Provide details about what you have implemented and screenshots if
applicable. --->

## How to test it?

<!--- Describe the steps with bullet points. Is there any external link
that can be used to better test it or an example? --->

### Starters Deploy Preview

<!--- Add a link to a deploy preview from `starter.store` with this
branch being used. --->

<!--- Tip: You can get an installable version of this branch from the
CodeSandbox generated when this PR is created. --->

## References

<!--- Spread the knowledge: is there any content you used to create this
PR that is worth sharing? --->

<!--- Extra tip: adding references to related issues or mentioning
people important to this PR may be good for the documentation and
reviewing process --->

## Checklist

<em>You may erase this after checking them all 😉</em>

**PR Title and Commit Messages**

- [ ] PR title and commit messages follow the [Conventional
Commits](https://www.conventionalcommits.org/en/v1.0.0/) specification
- Available prefixes: `feat`, `fix`, `chore`, `docs`, `style`,
`refactor`, `ci` and `test`

**PR Description**

- [ ] Added a label according to the PR goal - `breaking change`, `bug`,
`contributing`, `performance`, `documentation`..

**Dependencies**

- [ ] Committed the `pnpm-lock.yaml` file when there were changes to the
packages

**Documentation**

- [ ] PR description
- [ ] For documentation changes, ping `@Mariana-Caetano` to review and
update (Or submit a doc request)


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Refactor**
* Centralized and simplified session validation and refresh decision
logic for more consistent token handling.

* **Bug Fixes / Behavior Change**
* On refresh failure, users are immediately logged out and session data
cleared to avoid stale session states; refresh attempts are no longer
silently postponed.

* **New Features**
* Added a helper to determine when a validation request must force a
token refresh.

* **Tests**
* New unit tests cover the refresh-decision helper across expected
scenarios.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
#3285)

…environments

- Introduced a check to bypass token refresh logic when running in local
environments (localhost or 127.0.0.1).
- Updated GraphQL API handler and session validation functions to ensure
consistent behavior across environments.
- This change prevents unnecessary refresh attempts during local
development, improving the developer experience.



<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Session validation now detects local development environments
(localhost/127.0.0.1) and adapts behavior to simplify local
authentication handling and improve developer workflow.

* **Bug Fixes**
* Refined token refresh logic to skip refresh enforcement when running
locally, preventing unnecessary 401-driven refresh flows during
development.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
…-3144 (#3286)

- Added a new script "release:v3" in package.json for versioning and
publishing with a dist-tag of v3-latest.
- Updated GitHub Actions workflow to include a new job for publishing on
the 3.x branch.

## What's the purpose of this pull request?

### `release.yml`

- **Linha 9** — `3.x` adicionado ao trigger de branches
- **Linhas 75-77** — Step `Publish (3.x)` com condição `if:
github.ref_name == '3.x'` apontando para `pnpm release:v3`

### `package.json`

- **Linha 22** — Script `release:v3` com `lerna version
--conventional-commits --yes && lerna publish from-git
--dist-tag=v3-latest --yes`
- Sem `--conventional-graduate` (correto, pois no `3.x` não haverá
prereleases para graduar)
- Sem `--conventional-prerelease` (correto, pois serão releases estáveis
da v3)
- Com `--dist-tag=v3-latest` (correto, para não sobrescrever a tag
`latest` que será da v4)

Os hotfixes da v3 publicados a partir do branch `3.x` serão instaláveis
via `npm install @faststore/core@v3-latest` e não vão interferir com a
tag `latest` da v4.


Nota importante: não usem pnpm release (o mesmo da main) no branch 3.x,
porque esse comando usa --conventional-graduate que é para graduar
prereleases. No 3.x, hotfixes serão commits normais (fix:, feat:) e o
lerna version --conventional-commits (sem graduate) é o adequado — ele
vai gerar 3.99.1, 3.99.2, etc., baseado nos commits.
## What's the purpose of this pull request?

Fix the base CMS schema to ensure that components will be created
**without** the `$componentKey` and `$componentTitle` keys as
properties.

## How to test it?

The latest FS schema on Schema Registry (`vtex.faststore@3.99.0`) should
not have `$componentKey` and `$componentTitle` keys as components'
properties.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Changes**
* Component configurations are now more flexible with relaxed validation
requirements. Components no longer require specific identifiers to be
defined, allowing for greater customization and optional field
specifications.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## What’s the purpose of this pull request?
This PR fixes the Preview tag styling when previews are shown in stores
that use custom themes.
An example from a preview page in the `heringhomolog` account:

### Before
<img width="146" height="55" alt="Screenshot 2025-09-29 at 14 15 47"
src="https://github.com/user-attachments/assets/d4aec357-72d7-40d9-9dd5-f4a92c67b4e1"
/>
<img width="1543" height="599" alt="Screenshot 2025-09-29 at 14 16 04"
src="https://github.com/user-attachments/assets/2e737e68-00f2-413e-9c84-bb85d23e1171"
/>

### After
<img width="146" height="55" alt="Screenshot 2025-09-29 at 14 15 12"
src="https://github.com/user-attachments/assets/efd0620d-9f46-4355-be5b-6cb38e8d016f"
/>
<img width="1543" height="599" alt="Screenshot 2025-09-29 at 17 43 18"
src="https://github.com/user-attachments/assets/4dd720a9-063d-476d-8571-2c3980e77229"
/>

## How it works
It replaces styles inherited from the `Badge`, `Tag`, and `Icon`
components with scoped custom styles, preventing overrides by
store-specific theme customizations.

## How to test
1. Clone the `heringhomolog` [store
repository](https://github.com/Cia-Hering/heringhomolog.store/).
2. Set the data source to Content Platform (CP).
3. Run the store locally.
4. In the `heringhomolog` Content Platform, set the preview URL to your
local build.
5. Preview a page. The Preview tag should initially appear with broken
styling.
6. Apply this PR locally by either:
- Linking the `faststore/core` package from this PR into the store, or
- Overriding the Preview tag stylesheet with the version from this PR.
7. Refresh the preview. The Preview tag should display with the
corrected styling.

Note: The preview tag is shown only on pages previewed from the Content
Platform. This change doesn't apply to the preview flow for hCMS pages.

### Starters Deploy Preview

<!--- Add a link to a deploy preview from `starter.store` with this
branch being used. --->

<!--- Tip: You can get an installable version of this branch from the
CodeSandbox generated when this PR is created. --->

## References
<!--- Spread the knowledge: is there any content you used to create this
PR that is worth sharing? --->

<!--- Extra tip: adding references to related issues or mentioning
people important to this PR may be good for the documentation and
reviewing process --->
## What's the purpose of this pull request?

This pull request introduces instrumentation and logging enhancements to
the `core` package, primarily enabling experimental instrumentation
hooks in Next.js and conditionally loading logging libraries in
production node environments.

## References


https://vercel.com/docs/environment-variables/system-environment-variables#VERCEL
https://nextjs.org/docs/app/guides/instrumentation

https://nextjs.org/docs/app/api-reference/file-conventions/instrumentation

---------

Co-authored-by: eduardoformiga <eduardo.formiga@gmail.com>
@eduardoformiga eduardoformiga requested a review from a team as a code owner May 4, 2026 20:05
@eduardoformiga eduardoformiga requested review from renatamottam and renatomaurovtex and removed request for a team May 4, 2026 20:05
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 4, 2026

Warning

Rate limit exceeded

@eduardoformiga has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 20 minutes and 7 seconds before requesting another review.

To keep reviews running without waiting, you can enable usage-based add-on for your organization. This allows additional reviews beyond the hourly cap. Account admins can enable it under billing.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 0d761d98-840e-488b-a273-c01369967ff0

📥 Commits

Reviewing files that changed from the base of the PR and between ee710a0 and 691e783.

⛔ Files ignored due to path filters (9)
  • .github/workflows/packages-preview.yml is excluded by none and included by none
  • .github/workflows/release.yml is excluded by none and included by none
  • CHANGELOG.md is excluded by none and included by none
  • lerna.json is excluded by none and included by none
  • package.json is excluded by none and included by none
  • packages/api/src/__generated__/schema.ts is excluded by !**/__generated__/** and included by packages/**
  • packages/core/@generated/gql.ts is excluded by !**/@generated/**, !**/@generated/** and included by packages/**
  • packages/core/@generated/graphql.ts is excluded by !**/@generated/**, !**/@generated/** and included by packages/**
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml and included by none
📒 Files selected for processing (39)
  • packages/api/CHANGELOG.md
  • packages/api/package.json
  • packages/api/src/platforms/vtex/resolvers/offer.ts
  • packages/api/src/typeDefs/offer.graphql
  • packages/cli/CHANGELOG.md
  • packages/cli/README.md
  • packages/cli/package.json
  • packages/components/CHANGELOG.md
  • packages/components/package.json
  • packages/core/CHANGELOG.md
  • packages/core/cms/faststore/base.jsonc
  • packages/core/cms/faststore/components/cms_component__shoppingassistant.jsonc
  • packages/core/cms/faststore/pages/cms_content_type__globalsections.jsonc
  • packages/core/cms/faststore/schema.json
  • packages/core/discovery.config.default.js
  • packages/core/next.config.js
  • packages/core/package.json
  • packages/core/src/components/account/MyAccountDrawer/OrganizationDrawer/useReloadAfterLogoutReturn.ts
  • packages/core/src/components/common/PreviewTag/section.module.scss
  • packages/core/src/instrumentation.ts
  • packages/core/src/pages/api/graphql.ts
  • packages/core/src/sdk/account/useRefreshToken.ts
  • packages/core/src/sdk/cart/index.ts
  • packages/core/src/sdk/session/index.ts
  • packages/core/src/sdk/session/storageKeys.ts
  • packages/core/src/sdk/useStore.ts
  • packages/core/src/utils/validateSessionRefreshToken.ts
  • packages/core/test/utils/validateSessionRefreshToken.test.ts
  • packages/graphql-utils/CHANGELOG.md
  • packages/graphql-utils/package.json
  • packages/lighthouse/CHANGELOG.md
  • packages/lighthouse/package.json
  • packages/sdk/CHANGELOG.md
  • packages/sdk/package.json
  • packages/sdk/src/store/persisted.ts
  • packages/storybook/CHANGELOG.md
  • packages/storybook/package.json
  • packages/ui/CHANGELOG.md
  • packages/ui/package.json
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/version-bump-v3

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.

❤️ Share
Review rate limit: 0/1 reviews remaining, refill in 20 minutes and 7 seconds.

Comment @coderabbitai help to get the list of available commands and usage tips.

@codesandbox-ci
Copy link
Copy Markdown

codesandbox-ci Bot commented May 4, 2026

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

@pkg-pr-new
Copy link
Copy Markdown

pkg-pr-new Bot commented May 4, 2026

Open in StackBlitz

@faststore/api

yarn add https://pkg.pr.new/vtex/faststore/@faststore/api@691e783.tgz

@faststore/cli

yarn add https://pkg.pr.new/vtex/faststore/@faststore/cli@691e783.tgz

@faststore/components

yarn add https://pkg.pr.new/vtex/faststore/@faststore/components@691e783.tgz

@faststore/core

yarn add https://pkg.pr.new/vtex/faststore/@faststore/core@691e783.tgz

@faststore/graphql-utils

yarn add https://pkg.pr.new/vtex/faststore/@faststore/graphql-utils@691e783.tgz

@faststore/lighthouse

yarn add https://pkg.pr.new/vtex/faststore/@faststore/lighthouse@691e783.tgz

@faststore/sdk

yarn add https://pkg.pr.new/vtex/faststore/@faststore/sdk@691e783.tgz

@faststore/ui

yarn add https://pkg.pr.new/vtex/faststore/@faststore/ui@691e783.tgz

commit: 691e783

@eduardoformiga eduardoformiga merged commit 0475e38 into main May 4, 2026
9 of 10 checks passed
@eduardoformiga eduardoformiga deleted the feat/version-bump-v3 branch May 4, 2026 20:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.