Skip to content

Commit d270ea1

Browse files
authored
Consistently use Package.name for better support of the nightly app (#9240)
1 parent 5e6e601 commit d270ea1

File tree

8 files changed

+39
-19
lines changed

8 files changed

+39
-19
lines changed

src/api/providers/utils/timeout-config.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import * as vscode from "vscode"
2+
import { Package } from "../../../shared/package"
23

34
/**
45
* Gets the API request timeout from VSCode configuration with validation.
@@ -7,7 +8,7 @@ import * as vscode from "vscode"
78
*/
89
export function getApiRequestTimeout(): number {
910
// Get timeout with validation to ensure it's a valid non-negative number
10-
const configTimeout = vscode.workspace.getConfiguration("roo-cline").get<number>("apiRequestTimeout", 600)
11+
const configTimeout = vscode.workspace.getConfiguration(Package.name).get<number>("apiRequestTimeout", 600)
1112

1213
// Validate that it's actually a number and not NaN
1314
if (typeof configTimeout !== "number" || isNaN(configTimeout)) {

src/core/assistant-message/presentAssistantMessage.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import { TelemetryService } from "@roo-code/telemetry"
77

88
import { defaultModeSlug, getModeBySlug } from "../../shared/modes"
99
import type { ToolParamName, ToolResponse, ToolUse } from "../../shared/tools"
10+
import { Package } from "../../shared/package"
1011

1112
import { fetchInstructionsTool } from "../tools/FetchInstructionsTool"
1213
import { listFilesTool } from "../tools/ListFilesTool"
@@ -279,7 +280,7 @@ export async function presentAssistantMessage(cline: Task) {
279280
const pushToolResult = (content: ToolResponse) => {
280281
// Check if we're using native tool protocol
281282
const toolProtocol = vscode.workspace
282-
.getConfiguration("roo-cline")
283+
.getConfiguration(Package.name)
283284
.get<ToolProtocol>("toolProtocol", "xml")
284285
const isNative = isNativeProtocol(toolProtocol)
285286

@@ -503,7 +504,7 @@ export async function presentAssistantMessage(cline: Task) {
503504

504505
// Check if native protocol is enabled - if so, always use single-file class-based tool
505506
const toolProtocol = vscode.workspace
506-
.getConfiguration("roo-cline")
507+
.getConfiguration(Package.name)
507508
.get<ToolProtocol>("toolProtocol", "xml")
508509
if (isNativeProtocol(toolProtocol)) {
509510
await applyDiffToolClass.handle(cline, block as ToolUse<"apply_diff">, {

src/core/prompts/responses.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { RooIgnoreController, LOCK_TEXT_SYMBOL } from "../ignore/RooIgnoreContro
55
import { RooProtectedController } from "../protect/RooProtectedController"
66
import * as vscode from "vscode"
77
import { ToolProtocol, isNativeProtocol } from "@roo-code/types"
8+
import { Package } from "../../shared/package"
89

910
export const formatResponse = {
1011
toolDenied: () => `The user denied this operation.`,
@@ -250,6 +251,6 @@ Always ensure you provide all required parameters for the tool you wish to use.`
250251
*/
251252
function getToolInstructionsReminder(protocol?: ToolProtocol): string {
252253
const effectiveProtocol =
253-
protocol ?? vscode.workspace.getConfiguration("roo-cline").get<ToolProtocol>("toolProtocol", "xml")
254+
protocol ?? vscode.workspace.getConfiguration(Package.name).get<ToolProtocol>("toolProtocol", "xml")
254255
return isNativeProtocol(effectiveProtocol) ? toolUseInstructionsReminderNative : toolUseInstructionsReminder
255256
}

src/core/task/Task.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import OpenAI from "openai"
99
import delay from "delay"
1010
import pWaitFor from "p-wait-for"
1111
import { serializeError } from "serialize-error"
12+
import { Package } from "../../shared/package"
1213

1314
import {
1415
type TaskLike,
@@ -2514,7 +2515,7 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {
25142515
// we need to remove that message before retrying to avoid having two consecutive
25152516
// user messages (which would cause tool_result validation errors).
25162517
const toolProtocol = vscode.workspace
2517-
.getConfiguration("roo-cline")
2518+
.getConfiguration(Package.name)
25182519
.get<ToolProtocol>("toolProtocol", "xml")
25192520
const isNativeProtocol = toolProtocol === TOOL_PROTOCOL.NATIVE
25202521

@@ -2695,12 +2696,13 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {
26952696
{
26962697
maxConcurrentFileReads: maxConcurrentFileReads ?? 5,
26972698
todoListEnabled: apiConfiguration?.todoListEnabled ?? true,
2698-
useAgentRules: vscode.workspace.getConfiguration("roo-cline").get<boolean>("useAgentRules") ?? true,
2699+
useAgentRules:
2700+
vscode.workspace.getConfiguration(Package.name).get<boolean>("useAgentRules") ?? true,
26992701
newTaskRequireTodos: vscode.workspace
2700-
.getConfiguration("roo-cline")
2702+
.getConfiguration(Package.name)
27012703
.get<boolean>("newTaskRequireTodos", false),
27022704
toolProtocol: vscode.workspace
2703-
.getConfiguration("roo-cline")
2705+
.getConfiguration(Package.name)
27042706
.get<ToolProtocol>("toolProtocol", "xml"),
27052707
},
27062708
undefined, // todoList
@@ -2935,7 +2937,7 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {
29352937
// Determine if we should include native tools based on:
29362938
// 1. Tool protocol is set to NATIVE
29372939
// 2. Model supports native tools
2938-
const toolProtocol = vscode.workspace.getConfiguration("roo-cline").get<ToolProtocol>("toolProtocol", "xml")
2940+
const toolProtocol = vscode.workspace.getConfiguration(Package.name).get<ToolProtocol>("toolProtocol", "xml")
29392941
const modelInfo = this.api.getModel().info
29402942
const shouldIncludeTools = toolProtocol === TOOL_PROTOCOL.NATIVE && (modelInfo.supportsNativeTools ?? false)
29412943

src/core/tools/MultiApplyDiffTool.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import { applyDiffTool as applyDiffToolClass } from "./ApplyDiffTool"
1818
import { computeDiffStats, sanitizeUnifiedDiff } from "../diff/stats"
1919
import * as vscode from "vscode"
2020
import { ToolProtocol, isNativeProtocol } from "@roo-code/types"
21+
import { Package } from "../../shared/package"
2122

2223
interface DiffOperation {
2324
path: string
@@ -62,7 +63,7 @@ export async function applyDiffTool(
6263
removeClosingTag: RemoveClosingTag,
6364
) {
6465
// Check if native protocol is enabled - if so, always use single-file class-based tool
65-
const toolProtocol = vscode.workspace.getConfiguration("roo-cline").get<ToolProtocol>("toolProtocol", "xml")
66+
const toolProtocol = vscode.workspace.getConfiguration(Package.name).get<ToolProtocol>("toolProtocol", "xml")
6667
if (isNativeProtocol(toolProtocol)) {
6768
return applyDiffToolClass.handle(cline, block as ToolUse<"apply_diff">, {
6869
askApproval,

src/core/webview/generateSystemPrompt.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import { SYSTEM_PROMPT } from "../prompts/system"
88
import { MultiSearchReplaceDiffStrategy } from "../diff/strategies/multi-search-replace"
99
import { MultiFileSearchReplaceDiffStrategy } from "../diff/strategies/multi-file-search-replace"
1010
import { ToolProtocol } from "@roo-code/types"
11+
import { Package } from "../../shared/package"
1112

1213
import { ClineProvider } from "./ClineProvider"
1314

@@ -88,11 +89,11 @@ export const generateSystemPrompt = async (provider: ClineProvider, message: Web
8889
{
8990
maxConcurrentFileReads: maxConcurrentFileReads ?? 5,
9091
todoListEnabled: apiConfiguration?.todoListEnabled ?? true,
91-
useAgentRules: vscode.workspace.getConfiguration("roo-cline").get<boolean>("useAgentRules") ?? true,
92+
useAgentRules: vscode.workspace.getConfiguration(Package.name).get<boolean>("useAgentRules") ?? true,
9293
newTaskRequireTodos: vscode.workspace
93-
.getConfiguration("roo-cline")
94+
.getConfiguration(Package.name)
9495
.get<boolean>("newTaskRequireTodos", false),
95-
toolProtocol: vscode.workspace.getConfiguration("roo-cline").get<ToolProtocol>("toolProtocol", "xml"),
96+
toolProtocol: vscode.workspace.getConfiguration(Package.name).get<ToolProtocol>("toolProtocol", "xml"),
9697
},
9798
)
9899

src/services/search/__tests__/file-search.spec.ts

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,16 @@
11
import { describe, it, expect, vi } from "vitest"
22
import * as vscode from "vscode"
33

4+
// Mock Package
5+
vi.mock("../../../shared/package", () => ({
6+
Package: {
7+
name: "roo-cline",
8+
publisher: "RooVeterinaryInc",
9+
version: "1.0.0",
10+
outputChannel: "Roo-Code",
11+
},
12+
}))
13+
414
// Mock vscode
515
vi.mock("vscode", () => ({
616
workspace: {
@@ -50,6 +60,7 @@ describe("file-search", () => {
5060
})
5161

5262
it("should read maximumIndexedFilesForFileSearch configuration", async () => {
63+
const { Package } = await import("../../../shared/package")
5364
const mockRooConfig = {
5465
get: vi.fn((key: string, defaultValue: number) => {
5566
if (key === "maximumIndexedFilesForFileSearch") return 50000
@@ -58,28 +69,29 @@ describe("file-search", () => {
5869
}
5970

6071
;(vscode.workspace.getConfiguration as any).mockImplementation((section: string) => {
61-
if (section === "roo-cline") return mockRooConfig
72+
if (section === Package.name) return mockRooConfig
6273
return { get: vi.fn() }
6374
})
6475

6576
// The configuration should be readable
66-
const config = vscode.workspace.getConfiguration("roo-cline")
77+
const config = vscode.workspace.getConfiguration(Package.name)
6778
const limit = config.get("maximumIndexedFilesForFileSearch", 10000)
6879

6980
expect(limit).toBe(50000)
7081
})
7182

72-
it("should use default limit when configuration is not provided", () => {
83+
it("should use default limit when configuration is not provided", async () => {
84+
const { Package } = await import("../../../shared/package")
7385
const mockRooConfig = {
7486
get: vi.fn((key: string, defaultValue: number) => defaultValue),
7587
}
7688

7789
;(vscode.workspace.getConfiguration as any).mockImplementation((section: string) => {
78-
if (section === "roo-cline") return mockRooConfig
90+
if (section === Package.name) return mockRooConfig
7991
return { get: vi.fn() }
8092
})
8193

82-
const config = vscode.workspace.getConfiguration("roo-cline")
94+
const config = vscode.workspace.getConfiguration(Package.name)
8395
const limit = config.get("maximumIndexedFilesForFileSearch", 10000)
8496

8597
expect(limit).toBe(10000)

src/services/search/file-search.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import * as childProcess from "child_process"
55
import * as readline from "readline"
66
import { byLengthAsc, Fzf } from "fzf"
77
import { getBinPath } from "../ripgrep"
8+
import { Package } from "../../shared/package"
89

910
export type FileResult = { path: string; type: "file" | "folder"; label?: string }
1011

@@ -116,7 +117,7 @@ export async function executeRipgrepForFiles(
116117
): Promise<{ path: string; type: "file" | "folder"; label?: string }[]> {
117118
// Get limit from configuration if not provided
118119
const effectiveLimit =
119-
limit ?? vscode.workspace.getConfiguration("roo-cline").get<number>("maximumIndexedFilesForFileSearch", 10000)
120+
limit ?? vscode.workspace.getConfiguration(Package.name).get<number>("maximumIndexedFilesForFileSearch", 10000)
120121

121122
const args = [
122123
"--files",

0 commit comments

Comments
 (0)