Persist agent attempt facts, resume metadata, bounded retry policy, and task diagnostics across worker and API boundaries. Add the database migration, OpenSpec artifacts, and regression coverage.
持久化 Agent 尝试事实、续跑元数据、有界重试策略和任务诊断信息,贯通 Worker 与 API 边界。补充数据库迁移、OpenSpec 工件和回归测试。
Add default image selection and a modal for full or per-stage retries. Submit selected core stages through the batch image-processing API and cover the workflow with frontend, backend, and E2E tests.
增加默认图片选择和完整或分阶段重试对话框。通过批量图片处理 API 提交选中的核心阶段,并补充前端、后端和 E2E 测试。
Document the frozen processing options, fourth-stage lifecycle, API behavior, and implementation proposal for image ingestion and task recovery.
记录冻结处理选项、自动重命名第四阶段生命周期、API 行为以及图片接入和任务恢复实现方案。
- Implement tests for the ImageProcessingWorker to validate task deduplication and policy interactions.
- Create tests for operation policy to ensure proper grant handling and error responses.
- Add tests for reverse image provider response structure to validate empty and malformed results.
- Develop comprehensive tests for scope resolution and service validation to ensure correct behavior in various scenarios.
Replace directory-scoped image APIs with flat PostgreSQL-backed storage and stable meme_id resource contracts. Remove directory endpoints, sidecar assumptions, and path-based media access while preserving task, upload, rename, delete, repair, and search workflows. Archive the image ingestion and library OpenSpec change with migration and contract coverage.
将按目录组织的图片接口替换为基于 PostgreSQL 的扁平存储和稳定 meme_id 资源契约。删除目录接口、sidecar 假设和路径媒体访问,同时保留任务、上传、重命名、删除、修复与检索流程。归档图片摄取与图片库 OpenSpec,并补充迁移和契约测试。
BREAKING CHANGE: image and context APIs now require stable meme_id values; directory-based endpoints and path media URLs are removed.
破坏性变更:图片和语境接口现在要求稳定 meme_id,目录接口与路径媒体 URL 已移除。
- Introduced output schema for meme retrieval records in JSON format.
- Created documentation for using SerpApi Google Lens for image retrieval.
- Implemented a script for persistent caching of Google Lens results, reducing redundant API calls.
- Added tests for OpenCode candidate extraction, validation, and persistent task handling.
- Introduced a new sidecar JSON structure for each image to maintain a versioned, evidence-bound meme context.
- Established a schema for the sidecar JSON, including fields for image metadata and meme context.
- Updated image ingestion processes to create and manage sidecar JSON files during upload and renaming.
- Enhanced visual labeling to persist structured descriptions and prevent overwriting confirmed fields.
- Developed a semantic search index that utilizes the structured fields from the sidecar while excluding non-relevant data.
- Implemented repair mechanisms for missing or corrupted sidecar files, ensuring data integrity.
- Added comprehensive tests for metadata service, image processing, and caching mechanisms.