返回 Skill 列表
extension
分类: 开发与工程无需 API Key

miniapp-edit-testing

测试和调试Dashboard“使用AI编辑”迷你应用编辑流程(开始编辑会话、构建、历史记录、关闭会话),并编写自动化测试来模拟代理驱动的迷你应用编辑,如添加暗模式。

person作者: jakexiaohubgithub

Mini-app editor testing (Edit with AI)

Use this when you need to validate that mini-app editing works end-to-end (or via integration tests) from the Dashboard’s “Edit with AI” action, including common changes like adding dark mode.

What to test

  • The Dashboard client calls the mini-app editor endpoints (example: POST /api/apps/:appName/edit) with the user prompt.
  • The server validates inputs (app name format, prompt length) and forwards to the edit-service.
  • The response contains sessionId, commitHash, portalUrl, and buildStatus.

Recommended test strategy (fast + deterministic)

  • Prefer route-level integration tests with a mocked edit service:
    • Mock startEditSession(appName, prompt, createNew) and continueEdit(sessionId, prompt)
    • Assert the route returns the expected JSON shape and HTTP status codes
    • Avoid requiring a real OpenCode server or real git worktrees for CI stability

Useful repo pointers

  • Dashboard frontend API client functions live in packages/dashboard/frontend/src/api.ts (look for editApp, buildApp, getHistory, closeSession).
  • The “Edit with AI” UI lives under packages/dashboard/frontend/src/components/MiniAppEditor/.
  • Mini-app edit routes may be disabled/stubbed in the Dashboard server; if editor endpoints return 404/503, check the Dashboard router wiring in packages/dashboard/src/server/routes.ts.

Debug checklist (when edits fail)

  • If you see 502 from /api/apps/:appName/edit, verify the upstream service is running and the Dashboard route is mounted.
  • If the editor modal errors immediately, check browser console + network response body for { error, message }.