Skip to content

refactor(pages): consolidate adapter plugin lifecycle - #633

Merged
cpojer merged 2 commits into
voidzero-dev:mainfrom
yangshun:codex/consolidate-pages-plugin
Oct 29, 2026
Merged

cpojer merged 2 commits into
voidzero-dev:mainfrom
yangshun:codex/consolidate-pages-plugin

Conversation

@yangshun

Copy link
Copy Markdown
Contributor

React, Vue, Svelte, and Solid duplicate Pages scanning, virtual-module loading, watcher rescans, and module invalidation. Extract this lifecycle into createPagesPlugin through the existing void/pages entry so fixes apply consistently across all four adapters.

Each adapter retains its configuration, renderer/client generation, and current build-selection rules. Page-extension filtering remains unchanged and will be handled separately. Add 52 regression cases covering build selection, lazy discovery, static-data options, watcher invalidation, concurrent rescans, and error recovery.

Validation:

  • Full workspace verification passed: formatting, lint, package/playground builds, artifact checks, typechecking, and 15,125 tests (31 skipped). All eight npm/pnpm packed-consumer cases passed.
  • After the final function-syntax cleanup, rebuilt the core package and reran all 129 plugin tests, scoped formatting/lint, and workspace typechecking successfully.

@yangshun
yangshun marked this pull request as ready for review October 29, 2026 06:59
@cpojer
cpojer self-requested a review October 29, 2026 08:31

@cpojer cpojer left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Nice cleanup.

@cpojer cpojer left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Nice cleanup.

@cpojer
cpojer merged commit 7dceed7 into voidzero-dev:main Oct 29, 2026
2 checks passed
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.

2 participants