82 lines
3.9 KiB
Markdown
82 lines
3.9 KiB
Markdown
# Task: Merge AI Design image-to-image into current client main
|
|
|
|
## Identity
|
|
|
|
- Task ID: 20260813-integrate-i2i-client-main-5d9e
|
|
- Mode: Integration
|
|
- Branch: codex/20260813-integrate-i2i-client-main-5d9e-integrate-i2i-client-main
|
|
- Worktree: D:\Datas\OthersProjects\makelore-integrate-i2i-main-5d9e
|
|
- Base commit: a03043d048826609cb4f8cb7d782bde93e0e77f4
|
|
- Owner: codex
|
|
- Status: In Progress
|
|
|
|
## Scope
|
|
|
|
- Integrate the already reviewed AI Design single-reference image-to-image client
|
|
change (`809364e`) onto the current client `main` baseline `a03043d`.
|
|
- Preserve the already integrated local release-build and first-conversation
|
|
latency work while resolving any overlapping README, page, test, or canonical
|
|
documentation edits semantically.
|
|
- Re-run the focused page suite, typecheck, scoped lint and Renderer build on the
|
|
resulting integration head, then obtain an independent read-only review.
|
|
- Land the verified result on local `main` only if its existing updater task can
|
|
be left intact; never overwrite, stash, reset, or absorb that task's
|
|
uncommitted files.
|
|
|
|
## Intent And Constraints
|
|
|
|
- The picker continues to submit one real Workspace Asset ID through the
|
|
existing `attachmentAssetIds` transport; no parallel upload or local-file
|
|
description path is introduced.
|
|
- Only `brief.medium === 'image'` selects image-reference semantics. `video`,
|
|
null and missing medium retain the historical video-first-frame behavior.
|
|
- Preserve Workspace / Conversation / Task ownership from ADR-001 and keep
|
|
image/video tasks Workspace-scoped.
|
|
- Preserve the deployed exact quick reply `从作品列表选择图片` for this compatible
|
|
increment; a structured action/purpose remains future protocol work.
|
|
- Keep all Git and file mutations rooted in this isolated integration worktree
|
|
until the original `main` worktree is clean and ownership-safe.
|
|
|
|
## Outcome
|
|
|
|
- Merged reviewed feature commit `809364e` into the current `a03043d` client
|
|
baseline with merge commit `88281b8`; Git resolved the overlapping
|
|
`ImageCanvas` and page-test history without source conflicts and preserved the
|
|
existing first-conversation work.
|
|
- Promoted the generalized single-image picker, one-Asset attachment boundary,
|
|
image/video/null-medium behavior, exact-string compatibility risk and
|
|
production-smoke obligation into the current canonical project memory.
|
|
- README now describes text-to-image, single-reference image-to-image, project
|
|
work selection and local upload on top of the latest client product state.
|
|
|
|
## Verification
|
|
|
|
- Source merge preflight used `git merge-tree` against current `main`; only the
|
|
README paragraph needed an overlapping semantic merge and the final merge
|
|
completed automatically.
|
|
- `pnpm install --offline --frozen-lockfile`: passed with the pinned pnpm;
|
|
dependencies were restored entirely from the local store.
|
|
- `pnpm exec vitest run tests/unit/image-canvas-page.test.tsx`: `25 passed`.
|
|
- `pnpm run typecheck`: passed.
|
|
- `pnpm exec eslint src/pages/ImageCanvas/index.tsx
|
|
tests/unit/image-canvas-page.test.tsx`: passed.
|
|
- `pnpm run build:vite`: passed for Renderer, Main and Preload; emitted only the
|
|
repository's existing dynamic-import and chunk-size warnings.
|
|
- `git diff --check`: pending after final documentation edits.
|
|
- `check_project_docs.py`: passed.
|
|
- `check_doc_drift.py --task-id 20260813-integrate-i2i-client-main-5d9e`:
|
|
passed after keeping the source task record read-only on its source branch,
|
|
matching the repository's established Integration Gate pattern.
|
|
- Packaged desktop and live Works Square/Bailian provider smoke were not run.
|
|
|
|
## Follow-ups
|
|
|
|
- Replace exact localized quick-reply matching with a structured asset-picker
|
|
action/purpose before adding more input modes or changing that label.
|
|
- Run packaged-desktop and live Works Square/Bailian image-to-image smoke after
|
|
the matching client and server releases are deployed.
|
|
|
|
## Promotion Candidates
|
|
|
|
- None recorded.
|