Skip to content

Refactor Bippy for happy-path clarity - #93

Open
aidenybai wants to merge 2 commits into
mainfrom
codex/refactor-bippy-happy-path
Open

Refactor Bippy for happy-path clarity#93
aidenybai wants to merge 2 commits into
mainfrom
codex/refactor-bippy-happy-path

Conversation

@aidenybai

Copy link
Copy Markdown
Owner

What changed

  • reorganized rendered-Fiber traversal around the normal mount and update flow, with Suspense transitions and root lifecycle mechanics behind focused interfaces
  • introduced precise timing and nullable rendered-root contracts at public boundaries
  • replaced repeated partial-Fiber and renderer casts in tests with typed fixture builders and fail-fast Fiber requirements
  • converted application and fixture components to arrow functions with global prop interfaces and descriptive names
  • normalized hand-authored application filenames to kebab-case and replaced the shallow cn utility name with classNames
  • tightened dynamic component evaluation and E2E boundary parsing so external values become trusted before use

Why

The repository mixed normal orchestration with rare lifecycle mechanics and repeated unsafe test setup patterns. This made the most common flows harder to read and allowed fixtures to bypass the contracts production code relies on. The refactor keeps the happy path prominent, moves exceptional mechanics into cohesive boundaries, and makes test data valid by construction.

Impact

Runtime behavior and public package behavior remain compatible. getTimings now accepts the smaller structural contract it actually reads, and traverseRenderedFibers explicitly supports root-like inputs whose current Fiber can be null. Playground and fixture imports were updated for their new kebab-case filenames.

Validation

  • nr check
  • strict tsc --noEmit checks for Bippy, E2E, Vite, Next, TanStack, Expo, both playgrounds, and the website
  • nr test: 564 passed, 2 skipped
  • nr build
  • nr test:e2e: 339 passed across Vite, Next.js, and TanStack, 3 skipped
  • git diff --check

@changeset-bot

changeset-bot Bot commented Aug 13, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 5c4845a

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel

vercel Bot commented Aug 13, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
bippy Ready Ready Preview Aug 13, 2026 6:36am

@aidenybai
aidenybai marked this pull request as ready for review August 13, 2026 06:33
@pkg-pr-new

pkg-pr-new Bot commented Aug 13, 2026

Copy link
Copy Markdown

Open in StackBlitz

npm i https://pkg.pr.new/bippy@93

commit: 5c4845a

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