Skip to content

refactor(emcn): share invalid OTP slot treatment - #8246

Merged
BillLeoutsakosvl346 merged 5 commits into
codex/control-fix-account-status-headingsfrom
codex/emcn-next-otp-invalid
Sep 24, 2026
Merged

BillLeoutsakosvl346 merged 5 commits into
codex/control-fix-account-status-headingsfrom
codex/emcn-next-otp-invalid

Conversation

@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor

Summary

Add an invalid state to EMCN InputOTPSlot and use it in the three matching account, chat, and public-file OTP flows. The shared slot owns the existing error border, and the underlying input now exposes aria-invalid.

Base and validation

Targets the live account-headings head 5d7f002 (#8074). Focused EMCN tests, EMCN and app type checks, Biome, and diff whitespace checks passed. Independent source review confirmed that invalid border precedence preserves the active ring and that all three consumers forward the same state.

Eight matched visual pairs cover idle and focused OTP slots in light/dark at 16px and 20px root text; before/after pixels and computed styles match. The added ARIA state is intentional. Evidence is stored outside the product checkout.

The local design diff check and comparable full scans are queued. Keep this PR unmerged until those results, both bot reviews, all required checks, and all review threads are complete.

@vercel

vercel Bot commented Sep 24, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated
docs Skipped Skipped Sep 24, 2026 7:28pm UTC

Request Review

@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor Author

@greptile review this PR

@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@BillLeoutsakosvl346 I have started the AI code review. It will take a few minutes to complete.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

No issues found across 6 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Re-trigger cubic

@greptile-apps

greptile-apps Bot commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerConfidence Score: 5/5

The reviewed changes appear safe to merge; no new actionable issue or outstanding previous finding remains.

Summary

This PR moves invalid OTP slot styling into the shared EMCN component and passes verification-specific invalid state through the account, chat, and public-file flows.

  • Adds focused tests for slot styling and for distinguishing verification failures from resend failures.
  • Removes a redundant test-local logger mock.

Reviews (5) · Last reviewed commit: "test(ui): use shared logger mock in OTP ..."

Comment thread apps/sim/app/(interfaces)/chat/components/auth/email/email-auth.tsx Outdated
@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor Author

@greptile

@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@BillLeoutsakosvl346 I have started the AI code review. It will take a few minutes to complete.

@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor Author

@greptile

@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@BillLeoutsakosvl346 I have started the AI code review. It will take a few minutes to complete.

@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor Author

@greptile

@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@BillLeoutsakosvl346 I have started the AI code review. It will take a few minutes to complete.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

No issues found across 7 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Re-trigger cubic

Comment thread apps/sim/app/(auth)/verify/otp-error-source.test.tsx Outdated
Comment thread apps/sim/app/(auth)/verify/otp-error-source.test.tsx Outdated
@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor Author

@greptile

@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@BillLeoutsakosvl346 I have started the AI code review. It will take a few minutes to complete.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

No issues found across 7 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Re-trigger cubic

@BillLeoutsakosvl346
BillLeoutsakosvl346 merged commit d7f8b69 into codex/control-fix-account-status-headings Sep 24, 2026
8 checks passed
BillLeoutsakosvl346 added a commit that referenced this pull request Sep 24, 2026
* improvement(ui): share account status headings

* improvement(ui): use shared sizing for auth controls

* refactor(emcn): share invalid OTP slot treatment (#8246)

* Add shared invalid state to EMCN OTP slots

* fix(ui): distinguish OTP verification from resend errors

* test(ui): type OTP input queries as inputs

* test(ui): import OTP test button prop type

* test(ui): use shared logger mock in OTP regression

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>
Co-authored-by: Waleed <walif6@gmail.com>
BillLeoutsakosvl346 added a commit that referenced this pull request Sep 24, 2026
* improvement(emcn): share larger chip and field geometry

* improvement(ui): share public authentication headings

* improvement(ui): share workflow panel tab buttons (#8072)

* improvement(ui): share workflow panel tab buttons

* improvement(ui): reuse chips for panel selection actions (#8166)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* refactor(ui): share account headings and auth control sizing (#8074)

* improvement(ui): share account status headings

* improvement(ui): use shared sizing for auth controls

* refactor(emcn): share invalid OTP slot treatment (#8246)

* Add shared invalid state to EMCN OTP slots

* fix(ui): distinguish OTP verification from resend errors

* test(ui): type OTP input queries as inputs

* test(ui): import OTP test button prop type

* test(ui): use shared logger mock in OTP regression

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>
Co-authored-by: Waleed <walif6@gmail.com>

* improvement(ui): share missing resource states (#8078)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* improvement(ui): reuse avatars for owners and members (#8079)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* fix(ui): adopt exact shared 18px typography token

* fix(ui): preserve panel and auth control semantics

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>
Co-authored-by: Waleed <walif6@gmail.com>
BillLeoutsakosvl346 added a commit that referenced this pull request Sep 24, 2026
* improvement(emcn): share ordinary action geometry in Button

* improvement(emcn): consolidate selection controls and styling options

* test(emcn): read email geometry from the public export

* improvement(emcn): share larger chip and field geometry (#8151)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* refactor(ui): use EMCN fields in deployment and setup modals (#8009)

* improvement(emcn): share larger chip and field geometry

* refactor(ui): use EMCN fields in deployment and setup modals

* improvement(ui): reuse chip for PII configuration action (#8173)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* improvement(ui): compose horizontal and credential fields in EMCN (#8164)

* improvement(ui): compose horizontal and credential fields in EMCN

* Share deploy chat field error treatment (#8255)

* refactor(ui): share deploy chat field error treatment

* refactor(ui): name deploy error props

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* improvement(ui): share knowledge filter headings (#8073)

* improvement(ui): share knowledge filter headings

* improvement(ui): share inline filter and pagination actions (#8163)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* improvement(ui): use chip fields in workflow search and replace (#8076)

* improvement(emcn): share larger chip and field geometry

* improvement(ui): use chip fields in workflow search and replace

* fix(ui): use shared centered chip content on chat errors

* improvement(ui): use chips for ordinary product actions (#8081)

* improvement(ui): use chips for ordinary product actions

* improvement(ui): use shared chip alignment

* improvement(ui): use shared search action sizes (#8160)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* improvement(ui): reuse chips for custom block upload actions (#8084)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* fix(chat): use native attachment action (#8265)

* fix(chat): use native attachment action

* fix(chat): retain disabled attachment tooltip

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* fix(chat): use EMCN icon button target for attachments

* refactor(ui): centralize destructive ghost button colors in EMCN (#7988)

* improvement(emcn): share larger chip and field geometry

* refactor(ui): use EMCN fields in deployment and setup modals

* refactor(ui): centralize destructive ghost button colors in EMCN

* improvement(ui): use standard knowledge tag icon size

* refactor(ui): consolidate product corner radii

* improvement(ui): reuse chip for PII configuration action (#8173)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* refactor(ui): share collapsible workflow field cards (#8017)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* improvement(ui): compose horizontal and credential fields in EMCN (#8164)

* improvement(ui): compose horizontal and credential fields in EMCN

* Share deploy chat field error treatment (#8255)

* refactor(ui): share deploy chat field error treatment

* refactor(ui): name deploy error props

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>
Co-authored-by: Waleed <walif6@gmail.com>

* improvement(ui): share public headings and product typography (#8069)

* improvement(emcn): share larger chip and field geometry

* improvement(ui): share public authentication headings

* improvement(ui): share workflow panel tab buttons (#8072)

* improvement(ui): share workflow panel tab buttons

* improvement(ui): reuse chips for panel selection actions (#8166)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* refactor(ui): share account headings and auth control sizing (#8074)

* improvement(ui): share account status headings

* improvement(ui): use shared sizing for auth controls

* refactor(emcn): share invalid OTP slot treatment (#8246)

* Add shared invalid state to EMCN OTP slots

* fix(ui): distinguish OTP verification from resend errors

* test(ui): type OTP input queries as inputs

* test(ui): import OTP test button prop type

* test(ui): use shared logger mock in OTP regression

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>
Co-authored-by: Waleed <walif6@gmail.com>

* improvement(ui): share missing resource states (#8078)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* improvement(ui): reuse avatars for owners and members (#8079)

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>

* fix(ui): adopt exact shared 18px typography token

* fix(ui): preserve panel and auth control semantics

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>
Co-authored-by: Waleed <walif6@gmail.com>

* fix(ui): preserve shared tag actions and product styling fallbacks

* fix(ui): keep logs filters on canonical chip height

---------

Co-authored-by: Bill Leoutsakos <billleoutsakos@Bills-MacBook-Pro.local>
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Waleed <walif6@gmail.com>
@waleedlatif1
waleedlatif1 deleted the codex/emcn-next-otp-invalid branch September 24, 2026 23:57

This branch was previously deployed

1 inactive deployment
Preview — 1606fa9b Deployed Sep 24, 2026 by vercel[bot]
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.

1 participant