Phase A Testing: CF Worker API Gateway + KV Registry #165

Closed
opened 2026-05-09 09:44:38 +00:00 by xiaoju · 0 comments
Owner

验证目标

CF Worker 能接收 agent 注册,存储 endpoint 到 KV,并将 API 请求转发到对应 agent 的 tunnel URL。

测试步骤

  • Step 1: Worker 部署成功

    curl -s https://workflow-api.shazhou.work/healthz
    

    预期: 返回 {"ok":true}

  • Step 2: 注册 endpoint

    curl -s -X POST https://workflow-api.shazhou.work/register \
      -H "Content-Type: application/json" \
      -d '{"name":"neko","url":"http://127.0.0.1:7860","secret":"<shared-secret>"}'
    

    预期: 返回 201,{"registered":"neko"}

  • Step 3: 列出在线 agents

    curl -s https://workflow-api.shazhou.work/endpoints
    

    预期: 返回数组,包含 {"name":"neko","url":"...","status":"online"}

  • Step 4: 心跳续约

    curl -s -X POST https://workflow-api.shazhou.work/register \
      -H "Content-Type: application/json" \
      -d '{"name":"neko","url":"http://127.0.0.1:7860","secret":"<shared-secret>"}'
    

    预期: 返回 200,lastHeartbeat 更新

  • Step 5: API 转发(需要真实 tunnel)
    先在 NEKO 本地起 serve + quick tunnel,注册真实 URL,然后:

    curl -s https://workflow-api.shazhou.work/api/neko/threads
    

    预期: 返回 NEKO 的 threads 列表(与直接访问 tunnel URL 一致)

  • Step 6: 注销 endpoint

    curl -s -X DELETE https://workflow-api.shazhou.work/register/neko \
      -H "Authorization: Bearer <shared-secret>"
    

    预期: 返回 200,/endpoints 不再包含 neko

  • Step 7: 未知 agent 返回 404

    curl -s https://workflow-api.shazhou.work/api/unknown/threads
    

    预期: 返回 404,{"error":"agent not found"}

验证完成标准

所有 checkbox 打勾
Worker 部署到 workflow-api.shazhou.work
KV 读写正常

Ref: #164

—— 小橘 🍊(NEKO Team)

## 验证目标 CF Worker 能接收 agent 注册,存储 endpoint 到 KV,并将 API 请求转发到对应 agent 的 tunnel URL。 ## 测试步骤 - [ ] **Step 1: Worker 部署成功** ```bash curl -s https://workflow-api.shazhou.work/healthz ``` **预期:** 返回 `{"ok":true}` - [ ] **Step 2: 注册 endpoint** ```bash curl -s -X POST https://workflow-api.shazhou.work/register \ -H "Content-Type: application/json" \ -d '{"name":"neko","url":"http://127.0.0.1:7860","secret":"<shared-secret>"}' ``` **预期:** 返回 201,`{"registered":"neko"}` - [ ] **Step 3: 列出在线 agents** ```bash curl -s https://workflow-api.shazhou.work/endpoints ``` **预期:** 返回数组,包含 `{"name":"neko","url":"...","status":"online"}` - [ ] **Step 4: 心跳续约** ```bash curl -s -X POST https://workflow-api.shazhou.work/register \ -H "Content-Type: application/json" \ -d '{"name":"neko","url":"http://127.0.0.1:7860","secret":"<shared-secret>"}' ``` **预期:** 返回 200,`lastHeartbeat` 更新 - [ ] **Step 5: API 转发(需要真实 tunnel)** 先在 NEKO 本地起 serve + quick tunnel,注册真实 URL,然后: ```bash curl -s https://workflow-api.shazhou.work/api/neko/threads ``` **预期:** 返回 NEKO 的 threads 列表(与直接访问 tunnel URL 一致) - [ ] **Step 6: 注销 endpoint** ```bash curl -s -X DELETE https://workflow-api.shazhou.work/register/neko \ -H "Authorization: Bearer <shared-secret>" ``` **预期:** 返回 200,`/endpoints` 不再包含 neko - [ ] **Step 7: 未知 agent 返回 404** ```bash curl -s https://workflow-api.shazhou.work/api/unknown/threads ``` **预期:** 返回 404,`{"error":"agent not found"}` ## 验证完成标准 ✅ 所有 checkbox 打勾 ✅ Worker 部署到 workflow-api.shazhou.work ✅ KV 读写正常 Ref: #164 —— 小橘 🍊(NEKO Team)
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: uncaged/workflow#165