Full pipeline: IMAP ingress -> OpenClaw dispatch -> callback -> SMTP reply. SQLite stateful storage with idempotency, threading, and retry logic. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
844 B
844 B
Checkpoint 003 — Feedback kết quả kiểm tra
Kết luận
✅ Đạt theo tiêu chí checkpoint.
Bằng chứng
- Verify command:
go build ./...chạy thành công. internal/ai_client/client.gođã có dispatch payload đúng spec:input,session_id,history,callback_url,metadata.task_uuid.- Retry OpenClaw đúng 3 lần với backoff
1s -> 5s -> 15s, cập nhậtattempt_openclaw, hết retry thìstatus=FAILED+last_error. - HTTP client đi direct (
Transport.Proxy=nil), timeout 30s, bearer token optional. cmd/bridge/main.gođã wirewatcher.OnReceived -> go dispatcher.Dispatch(task).
Lưu ý (không chặn checkpoint)
callback_urlhiện dùnghttp://<LISTEN_ADDR>/callback; khi deploy qua domain/public endpoint có thể cần biến cấu hình base URL riêng.