Skip to content

Commit 7c64fb8

Browse files
committed
fix: merge history
1 parent 95b5684 commit 7c64fb8

5 files changed

Lines changed: 29 additions & 16 deletions

File tree

CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1314,6 +1314,7 @@ The entries below are preserved from the upstream Roo Code project history befor
13141314
- Reposition Add Image button inside ChatTextArea (thanks @roomote!)
13151315
- Bring back a way to temporarily and globally pause auto-approve without losing your toggle state (thanks @brunobergher!)
13161316
- Makes text area buttons appear only when there's text (thanks @brunobergher!)
1317+
- CONTRIBUTING.md tweaks and issue template rewrite (thanks @hannesrudolph!)
13171318
- Bump axios from 1.9.0 to 1.12.0 (thanks @dependabot!)
13181319

13191320
## [3.28.2] - 2025-09-14
@@ -1773,6 +1774,7 @@ The entries below are preserved from the upstream Roo Code project history befor
17731774
- Fix Claude model detection by name for API protocol selection (thanks @daniel-lxs!)
17741775
- Move marketplace icon from overflow menu to top navigation
17751776
- Optional setting to prevent completion with open todos
1777+
- Added YouTube to website footer (thanks @thill2323!)
17761778

17771779
## [3.23.14] - 2025-07-17
17781780

@@ -2166,6 +2168,7 @@ The entries below are preserved from the upstream Roo Code project history befor
21662168
- Fix bug with context condensing in Amazon Bedrock
21672169
- Fix UTF-8 encoding in ExecaTerminalProcess (thanks @mr-ryan-james!)
21682170
- Set sidebar name bugfix (thanks @chrarnoldus!)
2171+
- Fix link to CONTRIBUTING.md in feature request template (thanks @cannuri!)
21692172
- Add task metadata to Unbound and improve caching logic (thanks @pugazhendhi-m!)
21702173

21712174
## [3.19.0] - 2025-05-29
@@ -3133,6 +3136,7 @@ The entries below are preserved from the upstream Roo Code project history befor
31333136
- Ask and Architect modes can now edit markdown files
31343137
- Custom modes can now be restricted to specific file patterns (for example, a technical writer who can only edit markdown files 👋)
31353138
- Support for configuring the Bedrock provider with AWS Profiles
3139+
- New Roo Code community Discord at https://roocode.com/discord!
31363140

31373141
## [3.2.8]
31383142

@@ -3172,6 +3176,8 @@ The entries below are preserved from the upstream Roo Code project history befor
31723176
- Create specialized assistants for any workflow
31733177
- Just type "Create a new mode for <X>" or visit the Prompts tab in the top menu to get started
31743178

3179+
Join us at https://www.reddit.com/r/RooCode to share your custom modes and be part of our next chapter!
3180+
31753181
## [3.1.7]
31763182

31773183
- DeepSeek-R1 support (thanks @philipnext!)
@@ -3219,8 +3225,12 @@ The entries below are preserved from the upstream Roo Code project history befor
32193225

32203226
## [3.0.1]
32213227

3228+
- Fix the reddit link and a small visual glitch in the chat input
3229+
32223230
## [3.0.0]
32233231

3232+
- This release adds chat modes! Now you can ask Roo Code questions about system architecture or the codebase without immediately jumping into writing code. You can even assign different API configuration profiles to each mode if you prefer to use different models for thinking vs coding. Would love feedback in the new Roo Code Reddit! https://www.reddit.com/r/RooCode
3233+
32243234
## [2.2.46]
32253235

32263236
- Only parse @-mentions in user input (not in files)

webview-ui/src/context/ExtensionStateContext.tsx

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ export interface ExtensionStateContextType extends ExtensionState {
118118
setMaxImageFileSize: (value: number) => void
119119
maxTotalImageSize: number
120120
setMaxTotalImageSize: (value: number) => void
121+
machineId?: string
121122
pinnedApiConfigs?: Record<string, boolean>
122123
setPinnedApiConfigs: (value: Record<string, boolean>) => void
123124
togglePinnedApiConfig: (configName: string) => void
@@ -143,9 +144,6 @@ export interface ExtensionStateContextType extends ExtensionState {
143144
showWorktreesInHomeScreen: boolean
144145
setShowWorktreesInHomeScreen: (value: boolean) => void
145146
skills?: SkillMetadata[]
146-
telemetrySetting: ExtensionState["telemetrySetting"]
147-
telemetryKey?: string
148-
machineId?: string
149147
}
150148

151149
export const ExtensionStateContext = createContext<ExtensionStateContextType | undefined>(undefined)
@@ -166,7 +164,7 @@ export const mergeExtensionState = (prevState: ExtensionState, newState: Partial
166164
const rest = { ...prevRest, ...newRest }
167165

168166
// Protect clineMessages from stale state pushes using sequence numbering.
169-
// Multiple async event sources (settings, task streaming) can trigger
167+
// Multiple async event sources (cloud auth, settings, task streaming) can trigger
170168
// concurrent state pushes. If a stale push arrives after a newer one, its clineMessages
171169
// would overwrite the newer messages. The sequence number prevents this by only applying
172170
// clineMessages when the incoming seq is strictly greater than the last applied seq.
@@ -224,6 +222,7 @@ export const ExtensionStateContextProvider: React.FC<{ children: React.ReactNode
224222
maxOpenTabsContext: 20,
225223
maxWorkspaceFiles: 200,
226224
cwd: "",
225+
telemetrySetting: "unset",
227226
showRooIgnoredFiles: true, // Default to showing .rooignore'd files with lock symbol (current behavior).
228227
enableSubfolderRules: false, // Default to disabled - must be enabled to load rules from subdirectories
229228
renderContext: "sidebar",
@@ -264,7 +263,6 @@ export const ExtensionStateContextProvider: React.FC<{ children: React.ReactNode
264263
includeCurrentTime: true,
265264
includeCurrentCost: true,
266265
lockApiConfigAcrossModes: false,
267-
telemetrySetting: "unset",
268266
})
269267

270268
const [didHydrateState, setDidHydrateState] = useState(false)
@@ -332,6 +330,13 @@ export const ExtensionStateContextProvider: React.FC<{ children: React.ReactNode
332330
if ((newState as any).includeCurrentCost !== undefined) {
333331
setIncludeCurrentCost((newState as any).includeCurrentCost)
334332
}
333+
// Handle marketplace data if present in state message
334+
if (newState.marketplaceItems !== undefined) {
335+
setMarketplaceItems(newState.marketplaceItems)
336+
}
337+
if (newState.marketplaceInstalledMetadata !== undefined) {
338+
setMarketplaceInstalledMetadata(newState.marketplaceInstalledMetadata)
339+
}
335340
break
336341
}
337342
case "action": {
@@ -375,7 +380,7 @@ export const ExtensionStateContextProvider: React.FC<{ children: React.ReactNode
375380
return { ...prevState, clineMessages: newClineMessages }
376381
}
377382
// Log a warning if messageUpdated arrives for a timestamp not in the
378-
// frontend's clineMessages. With the sequence guard in place,
383+
// frontend's clineMessages. With the seq guard and cloud event isolation
379384
// (layers 1+2), this should not happen under normal conditions. If it
380385
// does, it signals a state synchronization issue worth investigating.
381386
console.warn(
@@ -483,16 +488,15 @@ export const ExtensionStateContextProvider: React.FC<{ children: React.ReactNode
483488
ttsSpeed: state.ttsSpeed,
484489
writeDelayMs: state.writeDelayMs,
485490
routerModels: extensionRouterModels,
486-
profileThresholds: state.profileThresholds ?? {},
487-
organizationSettingsVersion: state.organizationSettingsVersion ?? -1,
488491
cloudIsAuthenticated: state.cloudIsAuthenticated ?? false,
489-
cloudOrganizations: state.cloudOrganizations,
490-
sharingEnabled: state.sharingEnabled ?? false,
491-
publicSharingEnabled: state.publicSharingEnabled ?? false,
492+
cloudOrganizations: state.cloudOrganizations ?? [],
493+
organizationSettingsVersion: state.organizationSettingsVersion ?? -1,
492494
marketplaceItems,
493495
marketplaceInstalledMetadata,
496+
profileThresholds: state.profileThresholds ?? {},
494497
alwaysAllowFollowupQuestions,
495498
followupAutoApproveTimeoutMs,
499+
taskSyncEnabled: state.taskSyncEnabled,
496500
setExperimentEnabled: (id, enabled) =>
497501
setState((prevState) => ({ ...prevState, experiments: { ...prevState.experiments, [id]: enabled } })),
498502
setApiConfiguration,
@@ -530,8 +534,7 @@ export const ExtensionStateContextProvider: React.FC<{ children: React.ReactNode
530534
setState((prevState) => ({ ...prevState, terminalShellIntegrationDisabled: value })),
531535
setTerminalZdotdir: (value) => setState((prevState) => ({ ...prevState, terminalZdotdir: value })),
532536
setMcpEnabled: (value) => setState((prevState) => ({ ...prevState, mcpEnabled: value })),
533-
taskSyncEnabled: state.taskSyncEnabled ?? false,
534-
setTaskSyncEnabled: (value) => setState((prevState) => ({ ...prevState, taskSyncEnabled: value })),
537+
setTaskSyncEnabled: (value) => setState((prevState) => ({ ...prevState, taskSyncEnabled: value }) as any),
535538
setCurrentApiConfigName: (value) => setState((prevState) => ({ ...prevState, currentApiConfigName: value })),
536539
setListApiConfigMeta,
537540
setMode: (value: Mode) => setState((prevState) => ({ ...prevState, mode: value })),

webview-ui/src/i18n/locales/ja/mcp.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

webview-ui/src/i18n/locales/ko/mcp.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

webview-ui/src/i18n/locales/zh-CN/mcp.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)