fix(web): clear deleted skill context from composer (#2637) - #7137
fix(web): clear deleted skill context from composer (#2637)#7137T-sanjay-ram wants to merge 2 commits into
Conversation
|
Thanks @T-sanjay-ram — this looks like a nicely scoped fix for keeping the composer context strip and inline mention state aligned after a deleted skill disappears from the catalog. I’m routing the PR and the required checks now. |
lefarcen
left a comment
There was a problem hiding this comment.
Hey @T-sanjay-ram — the regression write-up is clear and the validation context helps. Before pool review picks this up, could you add a short user-facing "what changes in the composer after deleting a skill" note and fill in the Surface area checklist so reviewers can scope the impact quickly?
|
🧪 This PR has changes that need a manual QA pass before merge — please hold off self-merging for now; we'll loop QA in once it's merge-ready (and design/product have signed off, where applicable). |
PerishCode
left a comment
There was a problem hiding this comment.
@T-sanjay-ram This keeps the composer’s staged skill chip and atomic inline mention synchronized when an authoritative refreshed catalog removes that skill, while preserving the omitted-catalog compatibility path. I verified the catalog lifecycle and draft-ref mutation paths, and the focused regression test, web typecheck, and repository guard all pass. Nicely scoped fix and solid regression coverage—thank you for closing this stale-context edge case.
🔁 Powered by Looper · runner=reviewer · agent=codex · An autonomous AI dev team for your GitHub repos.
Visual regression reviewHead:
0 changed · 21 unchanged · 0 new without baseline · 1 failed Capture or diff failures
Unchanged casesVisual diff is advisory only and does not block merging. |
|
CI note: Those jobs were cancelled during Playwright setup—specifically while Could a maintainer rerun the cancelled CI jobs when capacity permits? |
|
Thanks for digging into the failing |




























































Fixes #2637.
Why
Deleting a user skill refreshes the available skills catalog, but a composer that had already staged that skill could keep its stale context chip and inline mention. That leaves the composer context row and draft out of sync and can cause the reported layout break.
What users will see
If you delete a skill that is currently staged in the composer, its context chip and matching inline
@skillmention are cleared together. Other draft text and context remain unchanged.Surface area
apps/weborapps/desktop(including Electron menu bar)odsubcommand or flag, newtools-dev/tools-packflag, or newOD_*env var/api/*endpoint, new SSE event, or changed shape inpackages/contractsskills/,design-systems/,design-templates/, orcraft/, or change to the skills protocolTRANSLATIONS.mdfor the locale workflow)package.json(dependenciesordevDependencies); workspace-packagepackage.jsonfiles are out of scopeScreenshots
Not applicable: this fixes stale state in an existing composer flow and adds no new visual entry point.
Bug fix verification
apps/web/tests/components/ChatComposer.context-pickers.test.tsxmainand green on this branch? Not run locally: this machine's repository checkout stalled during download. The regression covers staging@Deck Builder, refreshing the supplied catalog without it, and verifying the staged context row and inline mention are cleared.Validation