fix(agents): surface unapplied draft changes and publish action

This commit is contained in:
2026-09-18 10:32:12 +08:00
parent c878ba940c
commit b28f6f0444
9 changed files with 316 additions and 41 deletions

View File

@@ -0,0 +1,55 @@
# Task: Make saved agent changes and apply action visible
## Identity
- Task ID: 20260918-agent-apply-visible-5a83c1e2
- Mode: Feature
- Branch: codex/20260918-agent-apply-visible-5a83c1e2-agent-apply-visible
- Worktree: D:\Datas\OthersProjects\.codex-worktrees\makelore\20260918-agent-apply-visible-5a83c1e2
- Base commit: c878ba940c42693251de5650ed4dc39d7cf279e0
- Owner: codex
- Status: Ready for Integration
## Scope
- Make the existing publish/apply action directly available in the MakeLore assistant workspace header.
- Distinguish unsaved draft, saved-but-unapplied draft, confirmed applied revision, and unknown/failed application state.
- Renderer components, focused tests, Electron fixture, and README only; no backend, model activation, billing, or channel routing changes.
## Intent And Constraints
- User confirmed that applying the latest changes fixed the WeChat model error; requested a more visible interaction.
- Continue using the existing Host API publish/access contracts. Saving remains separate from applying.
- Compare the current draft revision with the draft_revision of the current published version, not its version number.
- Share one in-flight/idempotent application operation between the header and access panel; retries retain the original input.
- Preserve draft inputs, current trial, immutable published versions, and first-publication behavior.
- Concurrent Task Gate and Planning Gate passed before implementation. Peer task records were inspected read-only; historical incomplete records were treated as unknown coordination state, without a concrete dependency on this owned change.
## Outcome
- Added the prominent header action and amber pending-change explanation on all workspace tabs.
- Successful application removes the pending notice; unchanged applied drafts disable repeat application.
- Read failures remain visible and retryable; a successful publish followed by failed status refresh remains confirmed and cannot accidentally publish again.
- Existing access page reuses the same operation and recovery state.
- Updated README and verified the actual Electron interface at 1366x768 and 1024x768.
- No merge, push, deployment, or worktree cleanup performed.
## Verification
- pnpm 10.33.4 install --frozen-lockfile passed; lockfile unchanged.
- pnpm run typecheck passed.
- Scoped ESLint on changed implementation and test files passed.
- Four relevant unit files: 51 tests passed. Added a final successful-publish/failed-refresh regression, then reran cloud-agents-page.test.tsx: 24 tests passed (52 distinct related tests across the final files).
- pnpm run build:vite passed. Existing Browserslist age and bundle-size/import warnings remain.
- Electron cloud-agents.spec.ts passed: creation, initial publication, save/apply, compact viewport, chat and schedules.
- Inspected cloud-agent-apply-visible.png and cloud-agent-apply-compact.png: header action and saved/unapplied state are visible with no overlap.
- Reviewed the complete implementation diff and new publication hook. Server contracts were source-checked in the companion read-only diagnostic tasks; no live cloud changes were made.
## Follow-ups
- Integrate this feature branch and rebuild the desktop client when requested.
- Production deployment is not part of this change.
## Promotion Candidates
- None. This is an interaction improvement using existing publication semantics; README records current product behavior. No canonical architecture or domain changes are proposed.