Problem
A fresh Claude chat does not show a customization migration hint on its first request. Sending a second message in the same chat immediately shows the correct hint.
Reproduction
- Enable
chat.customizations.migrationHint and the file migration categories.
- Open a fresh Claude-backed chat in a workspace with migratable customizations.
- Send
hello.
- Observe no migration hint.
- Send a second
hello in the same session.
- Observe the correct hint:
Found 8 workspace and 1 user customizations that are present but not used by Claude and could be migrated.
Cause
The workbench calculates the migration hint before sending the first request. At that time, the newly-created Claude chat does not yet have a registered chat backing:
AgentService.createSession() asks ClaudeAgent.getChatCustomizations() for the initial snapshot.
ClaudeAgent.getChatCustomizations() calls _findChatByUri() and returns [] when there is no backing.
- The backing and live
ClaudeAgentSession are registered only as the first request resolves/materializes.
- That first request consequently publishes the customization snapshot too late for its own hint, but early enough for the following request.
Requested change
Make Claude provide its initial customization snapshot, including migration destinations, before the workbench computes the first request’s migration hint. The solution should establish or otherwise resolve the default chat backing during session creation without requiring an SDK request/materialization side effect.
The same pre-request snapshot should be used by getChatCustomizations() for a new provisional session, so customizations and migration source folders are available on the first user message.
Related
Problem
A fresh Claude chat does not show a customization migration hint on its first request. Sending a second message in the same chat immediately shows the correct hint.
Reproduction
chat.customizations.migrationHintand the file migration categories.hello.helloin the same session.Found 8 workspace and 1 user customizations that are present but not used by Claude and could be migrated.Cause
The workbench calculates the migration hint before sending the first request. At that time, the newly-created Claude chat does not yet have a registered chat backing:
AgentService.createSession()asksClaudeAgent.getChatCustomizations()for the initial snapshot.ClaudeAgent.getChatCustomizations()calls_findChatByUri()and returns[]when there is no backing.ClaudeAgentSessionare registered only as the first request resolves/materializes.Requested change
Make Claude provide its initial customization snapshot, including migration destinations, before the workbench computes the first request’s migration hint. The solution should establish or otherwise resolve the default chat backing during session creation without requiring an SDK request/materialization side effect.
The same pre-request snapshot should be used by
getChatCustomizations()for a new provisional session, so customizations and migration source folders are available on the first user message.Related