feat: add task workflow and asset downloads
This commit is contained in:
28
task_plan.md
28
task_plan.md
@@ -4,7 +4,7 @@
|
||||
Add EvoLink GPT Image 2 as a selectable image creation engine in the settings flow, while preserving the existing Jimeng/Volcengine image engine and the current task/asset workflow.
|
||||
|
||||
## Current Phase
|
||||
Complete - latest update: product UI/UX polish, Seedance limits, and 智念AIGC平台 branding
|
||||
Complete - latest update: Task management and public API v1
|
||||
|
||||
## Phases
|
||||
|
||||
@@ -60,6 +60,23 @@ Complete - latest update: product UI/UX polish, Seedance limits, and 智念AIGC
|
||||
- [x] Verify desktop and mobile header rendering
|
||||
- **Status:** complete
|
||||
|
||||
### Phase 9: Server Deployment Support
|
||||
- [x] Add Dockerfile for production image builds
|
||||
- [x] Add Docker Compose service with runtime persistence and healthcheck
|
||||
- [x] Add setup/deploy scripts
|
||||
- [x] Document one-command server deployment in Chinese README
|
||||
- [x] Verify shell syntax, unit tests, production build, and local health
|
||||
- **Status:** complete
|
||||
|
||||
### Phase 10: Task Management and Public API v1
|
||||
- [x] Extend generation job fields for task ownership, idempotency, locking, retry, timing, and webhook delivery
|
||||
- [x] Split task creation from provider execution so page/API submits enqueue only
|
||||
- [x] Add task management service, worker loop, API key auth, webhook delivery, and OpenAPI output
|
||||
- [x] Add `/api/v1` capabilities, assets, jobs, cancel, and openapi routes
|
||||
- [x] Add Docker Compose worker service, npm worker script, docs, and env examples
|
||||
- [x] Add focused tests and run verification commands
|
||||
- **Status:** complete
|
||||
|
||||
## Key Questions
|
||||
1. How should the selected image engine be stored and exposed in settings?
|
||||
2. Which current capabilities should EvoLink handle first?
|
||||
@@ -77,6 +94,9 @@ Complete - latest update: product UI/UX polish, Seedance limits, and 智念AIGC
|
||||
| Follow official Seedance 2.0 duration range `4~15` seconds in the UI | Prevents the user from selecting values the API rejects |
|
||||
| Preserve `-1` Seedance auto duration only in backend/env normalization, not in the default UI dropdown | Keeps the UI predictable while still supporting advanced configuration |
|
||||
| Use the black/blue transparent NIANXX logo on the light top bar | Makes the logo visible without adding a frame that changes the brand feel |
|
||||
| Use Docker Compose as the primary server deployment path | Gives server operators one command, persistent local runtime data, and a restart policy |
|
||||
| Implement multi-task support as task management, not an external message queue | Matches user preference and keeps deployment simpler for this server product |
|
||||
| Use API Key auth for public API v1 | Fastest stable server-to-server integration model for other AI systems |
|
||||
|
||||
## Errors Encountered
|
||||
| Error | Attempt | Resolution |
|
||||
@@ -90,6 +110,8 @@ Complete - latest update: product UI/UX polish, Seedance limits, and 智念AIGC
|
||||
| `npm run build` failed after Seedance settings update because TypeScript narrowed fast-model resolution choices too aggressively | 1 | Changed resolution `includes` checks to readonly string arrays and rebuilt successfully |
|
||||
| Running `npm run build` while an old dev server was active caused stale Next dev chunks in prior verification | 1 | Stop dev server before production builds, then restart it afterward |
|
||||
| White transparent logo was invisible on the light top bar unless wrapped in a dark frame | 1 | Switched to the black/blue logo variant, generated a cropped transparent PNG, and removed frame/background styling |
|
||||
| Current local machine does not expose Docker CLI | 1 | Verified script syntax, Next build, tests, and health locally; Docker build should be run on the deployment server |
|
||||
| Docker CLI is still unavailable while validating Phase 10 | 1 | Verified npm tests, production build, local health, API v1 calls, and worker tick locally; Compose container startup should be validated on the deployment server |
|
||||
|
||||
## Notes
|
||||
- EvoLink docs: submit `POST /v1/images/generations`, query `GET /v1/tasks/{task_id}`, completed task exposes `results[]`.
|
||||
@@ -99,3 +121,7 @@ Complete - latest update: product UI/UX polish, Seedance limits, and 智念AIGC
|
||||
- Before production build verification, stop the dev server first to avoid stale `.next` dev chunk references.
|
||||
- Latest product name is `智念AIGC平台`.
|
||||
- Current header logo asset is `public/logo/zhinian-logo.png`, generated from `/Users/inmanx/Documents/icon/logo/2d5b992caa14db16f594c4933e92e37e.png`.
|
||||
- Server one-command deployment entrypoint is `bash scripts/deploy.sh`.
|
||||
- Docker Compose persists local uploads/results/state through the bind mount `./.runtime:/app/.runtime`.
|
||||
- Public API v1 endpoints are under `/api/v1` and require `ZHINIAN_API_KEYS`.
|
||||
- Task processing is handled by `npm run worker` or the `zhinian-worker` Compose service through `/api/internal/worker/tick`.
|
||||
|
||||
Reference in New Issue
Block a user