Skip to content

chore: 開発ツールチェーンを Vite+ に移行 (tsup/Biome → vp)#8

Merged
mast1ff merged 1 commit into
mainfrom
chore/vite-plus-migration
Jun 2, 2026
Merged

chore: 開発ツールチェーンを Vite+ に移行 (tsup/Biome → vp)#8
mast1ff merged 1 commit into
mainfrom
chore/vite-plus-migration

Conversation

@mast1ff
Copy link
Copy Markdown
Member

@mast1ff mast1ff commented Jun 2, 2026

概要

開発ツールチェーンを Vite+(VoidZero 統合ツールチェーン) に移行します。検証・CI・日常利用をすべて vp コマンドで駆動し、設定を vite.config.ts に集約します。ランタイムはゼロ依存のまま、公開物(dist)の内容も従来と同等です。

領域 Before After
bundle tsup vp pack(tsdown)
lint Biome vp lint(oxlint)
format Biome vp fmt(oxfmt)
typecheck tsc vp check(tsgolint)
test vitest 3 vp test(vitest 4 / vite-plus)

主な変更

  • vite.config.ts(新規・集約): pack(tsdown)で esm/cjs + dts と iife(min, global Snowflake) を再現。build:done フックで examples へのコピーも移植。fmt/lint/test ブロックも集約
  • Biome スタイルを踏襲: oxfmt を tab / lineWidth 100 / double quote / semicolons / trailingComma es5 に設定し、Biome 同様 JS/TS のみ整形(md/html/json/yaml は除外)→ ソースの再整形 churn ゼロ
  • tsconfig: tsgolint 向けに lib: [ES2022, DOM, DOM.Iterable] / types: [node] を明示
  • 旧設定を削除: tsup.config.ts / biome.json / vitest.config.ts
  • CI / release: voidzero-dev/setup-vp を使い vp installvp pack / vp check / vp test run --coverage で駆動
  • src/index.ts: oxlint が検出した未使用定数(TIMESTAMP_BITS / SEQUENCE_SHIFT)を削除
  • テスト追加: coverage-v8 v4 がより正確に検出した未カバー分岐(saveConfigToStorage の datacenterId 未指定)にテストを追加
  • エディタ/フック: .vscode/settings.json を oxc 拡張向けに更新。.zed / .vite-hooksvp config が各環境でローカル生成するため gitignore
  • AGENTS.md 追加(vp ワークフローの手引き)

検証(すべて vp 直接)

  • vp pack — dist が従来同等(index/node/browser.js/.cjs/.d.ts/.d.ctssnowflake.min.js)。examples へのコピーも反映
  • vp check — format + lint + typecheck すべてクリーン(警告・エラーなし)
  • vp test run --coverage — 86 件 pass、カバレッジ 100%(Stmts 176/176・Branch 103/103・Funcs 23/23・Lines 172/172)

既知事項

  • Vite+ は alpha / oxfmt は beta のため、将来のバージョンで設定や挙動が変わる可能性があります(devtool のみでランタイム非依存のため公開物への影響はなし)。
  • vp test --coverage@vitest/coverage-v8@4.1.8 と vp 同梱 vitest(0.1.24 表記)の バージョン表記不一致警告が出ますが、テスト・カバレッジは正しく動作します(非致命)。

🤖 Generated with Claude Code

検証・CI・日常利用をすべて vp コマンドで駆動する統合ツールチェーンへ移行。

- ビルド: tsup → `vp pack` (tsdown)。vite.config.ts の pack ブロックで
  esm/cjs + dts と iife(min, global `Snowflake`) を再現し、build:done フックで
  examples へのコピーも移植
- lint/format: Biome → oxlint/oxfmt (`vp check`)。oxfmt は従来の Biome スタイル
  (tab / lineWidth 100 / double quote / semicolons / trailingComma es5) に合わせ、
  Biome 同様 JS/TS のみ整形(md/html/json/yaml は除外)→ 再整形 churn ゼロ
- test: vitest 4 + `vp test`(カバレッジ 100% を維持)
- typecheck: tsc → tsgolint (`vp check`)。tsgolint 向けに tsconfig へ
  lib(DOM) / types(node) を明示
- 旧 tsup.config.ts / biome.json / vitest.config.ts を削除し vite.config.ts に集約
- CI / release ワークフローを vp 駆動に変更 (voidzero-dev/setup-vp)
- src/index.ts: oxlint が検出した未使用定数 (TIMESTAMP_BITS / SEQUENCE_SHIFT) を削除
- browser.ts:131 の未カバー分岐 (datacenterId 未指定) にテストを追加
- .vscode/settings.json を oxc 拡張向けに更新。.zed / .vite-hooks は
  vp config が各環境でローカル生成するため gitignore
- AGENTS.md を追加(vp ワークフローの手引き)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mast1ff mast1ff merged commit 6382004 into main Jun 2, 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.

1 participant