mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-02-01 13:59:54 +00:00
## Summary Add Jobs API infrastructure in preparation for migrating from legacy `/history`, `/history_v2`, and `/queue` endpoints to the unified `/jobs` API. **This is PR 1 of 3** - Additive changes only, no breaking changes. ## Changes - **What**: - Add Zod schemas for runtime validation of Jobs API responses (`JobListItem`, `JobDetail`) - Add `fetchQueue`, `fetchHistory`, `fetchJobDetail` fetchers for `/jobs` endpoint - Add `extractWorkflow` utility for extracting workflow from nested job detail response - Add synthetic priority assignment for queue ordering (pending > running > history) - Add comprehensive tests for all new fetchers - **Non-breaking**: All changes are additive - existing code continues to work ## Review Focus 1. **Zod schema flexibility**: Using `.passthrough()` to allow extra API fields - ensures forward compatibility but less strict validation 2. **Priority computation**: Synthetic priority ensures display order: pending (queued) → running → completed (history) 3. **Test coverage**: Verify tests adequately cover edge cases ## Files Added - `src/platform/remote/comfyui/jobs/` - New Jobs API module - `types/jobTypes.ts` - Zod schemas and TypeScript types - `fetchers/fetchJobs.ts` - API fetchers with validation - `index.ts` - Barrel exports - `tests-ui/tests/platform/remote/comfyui/jobs/fetchers/fetchJobs.test.ts` - Tests ## Next PRs - **PR 2**: Migrate `getQueue()` and `getHistory()` to use Jobs API - **PR 3**: Remove legacy history code and unused types ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-7169-feat-Add-Jobs-API-infrastructure-PR-1-of-3-2bf6d73d3650812eae4ac0555a86969c) by [Unito](https://www.unito.io) --------- Co-authored-by: Claude <noreply@anthropic.com>