Gia cố Cron Add & Căn chỉnh Schema
Bối cảnh
Điều này cho thấy ít nhất một client (có khả năng là đường gọi công cụ agent) đang gửi payload job bị bọc hoặc được chỉ định một phần. Điều này cho thấy ít nhất một client (có thể là luồng gọi công cụ của agent) đang gửi payload job được bọc hoặc chỉ định không đầy đủ. Ngoài ra, còn có sự lệch pha giữa các enum của nhà cung cấp cron trong TypeScript, schema gateway, cờ CLI và kiểu form UI, cùng với sự không khớp UI chocron.status (mong đợi jobCount trong khi gateway trả về jobs).
Mục tiêu
- Chặn spam
cron.addINVALID_REQUEST bằng cách chuẩn hóa các payload bọc phổ biến và suy luận các trườngkindcòn thiếu. - Căn chỉnh danh sách nhà cung cấp cron giữa schema gateway, các kiểu cron, tài liệu CLI và biểu mẫu UI.
- Làm rõ schema công cụ cron của tác tử để LLM tạo payload job chính xác.
- Sửa hiển thị số lượng job trạng thái cron trên Control UI.
- Thêm test để bao phủ chuẩn hóa và hành vi công cụ.
Ngoài phạm vi
- Thay đổi ngữ nghĩa lập lịch cron hoặc hành vi thực thi job.
- Thêm loại lịch mới hoặc phân tích cú pháp biểu thức cron.
- Đại tu UI/UX cho cron ngoài các chỉnh sửa trường cần thiết.
Phát hiện (khoảng trống hiện tại)
CronPayloadSchematrong gateway loại trừsignal+imessage, trong khi các kiểu TS có bao gồm.- CronStatus của Control UI kỳ vọng
jobCount, nhưng gateway trả vềjobs. - Schema công cụ cron của tác tử cho phép các đối tượng
jobtùy ý, tạo điều kiện cho đầu vào sai. - Gateway xác thực nghiêm ngặt
cron.addmà không có chuẩn hóa, nên các payload được bọc sẽ thất bại.
Những thay đổi
cron.addvàcron.updatehiện chuẩn hóa các dạng bọc phổ biến và suy luận các trườngkindcòn thiếu.- Schema công cụ cron của tác tử khớp với schema gateway, giúp giảm payload không hợp lệ.
- Các enum nhà cung cấp được căn chỉnh trên gateway, CLI, UI và bộ chọn macOS.
- Control UI sử dụng trường đếm
jobscủa gateway cho trạng thái.
Hành vi hiện tại
- Chuẩn hóa: các payload
data/jobđược bọc sẽ được mở;schedule.kindvàpayload.kindđược suy luận khi an toàn. - Mặc định: áp dụng giá trị mặc định an toàn cho
wakeModevàsessionTargetkhi thiếu. - Nhà cung cấp: Discord/Slack/Signal/iMessage hiện được hiển thị nhất quán trên CLI/UI.
Xác minh
- Theo dõi log Gateway để thấy giảm lỗi
cron.addINVALID_REQUEST. - Xác nhận Control UI hiển thị số lượng job trạng thái cron sau khi làm mới.
Theo dõi tùy chọn
- Smoke test thủ công trên Control UI: thêm một cron job cho mỗi nhà cung cấp + xác minh số lượng job trạng thái.
Câu hỏi mở
cron.addcó nên chấp nhậnstatetường minh từ client không (hiện bị schema không cho phép)?- Có nên cho phép
webchatnhư một nhà cung cấp phân phối tường minh không (hiện bị lọc trong quá trình phân giải phân phối)?