Skip to content

chore: add GitHub Actions CI and end-to-end test workflow #3

Description

@coconilu

Context

PickFix 目前可以在本地通过 pnpm typecheckpnpm testpnpm check 进行验证。

后续项目会通过 GitHub Issues 和 Pull Requests 维护。为了提高协作质量,需要在 push 到 main 和提交 PR 时自动运行测试,类似成熟开源项目的 CI 流程。

GitHub Actions 支持在代码提交、PR、main 分支更新时自动运行类型检查、单元测试和端到端测试。

Problem

目前代码合并前缺少自动验证流程。随着功能增多,手动运行测试容易遗漏,可能导致 main 分支出现类型错误、单元测试失败或关键交互回归。

Proposal

添加 GitHub Actions workflow:

  • PR 时自动运行:
    • pnpm install
    • pnpm typecheck
    • pnpm test
  • push 到 main 时自动运行:
    • pnpm check
  • 后续接入端到端测试:
    • Playwright
    • 启动 PickFix demo
    • 验证 preview、element picking、changes panel 等关键流程

Scope

In scope:

  • 添加基础 CI workflow。
  • 使用项目声明的 Node ~24 和 pnpm 10.33.2
  • 在 PR 和 main push 时运行 typecheck/test。
  • 为未来 e2e workflow 预留结构。

Out of scope:

  • 本 Issue 不要求立即补齐完整 e2e 测试。
  • 本 Issue 不要求发布 npm 包。
  • 本 Issue 不要求部署 preview environment。

Affected packages

  • apps/web
  • packages/bridge
  • packages/proxy
  • packages/cli
  • examples
  • docs

Acceptance criteria

  • 添加 .github/workflows/ci.yml
  • PR 时自动运行 pnpm typecheck
  • PR 时自动运行 pnpm test
  • push 到 main 时自动运行 pnpm check
  • workflow 使用 pnpm 10.33.2
  • workflow 使用 Node 24
  • README 或 CONTRIBUTING 中说明 CI 验证方式

Alternatives considered

  • 只依赖本地手动测试:成本低,但容易遗漏。
  • 只在 main 上跑 CI:无法在合并前发现问题。
  • 一开始就做完整 e2e:价值高,但范围较大,适合作为后续独立 Issue。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions