mirror of
https://github.com/anomalyco/opencode.git
synced 2026-05-01 14:00:30 +00:00
fix: delete 9 dead functions with zero callers (#22697)
This commit is contained in:
parent
70aeebf2df
commit
34213d4446
8 changed files with 0 additions and 107 deletions
|
|
@ -65,22 +65,6 @@ function runAll(list: Array<() => Promise<unknown>>) {
|
||||||
return Promise.allSettled(list.map((item) => item()))
|
return Promise.allSettled(list.map((item) => item()))
|
||||||
}
|
}
|
||||||
|
|
||||||
function showErrors(input: {
|
|
||||||
errors: unknown[]
|
|
||||||
title: string
|
|
||||||
translate: (key: string, vars?: Record<string, string | number>) => string
|
|
||||||
formatMoreCount: (count: number) => string
|
|
||||||
}) {
|
|
||||||
if (input.errors.length === 0) return
|
|
||||||
const message = formatServerError(input.errors[0], input.translate)
|
|
||||||
const more = input.errors.length > 1 ? input.formatMoreCount(input.errors.length - 1) : ""
|
|
||||||
showToast({
|
|
||||||
variant: "error",
|
|
||||||
title: input.title,
|
|
||||||
description: message + more,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
export async function bootstrapGlobal(input: {
|
export async function bootstrapGlobal(input: {
|
||||||
globalSDK: OpencodeClient
|
globalSDK: OpencodeClient
|
||||||
requestFailedTitle: string
|
requestFailedTitle: string
|
||||||
|
|
|
||||||
|
|
@ -12,20 +12,6 @@ type Env = {
|
||||||
WEB_DOMAIN: string
|
WEB_DOMAIN: string
|
||||||
}
|
}
|
||||||
|
|
||||||
async function getFeishuTenantToken(): Promise<string> {
|
|
||||||
const response = await fetch("https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal", {
|
|
||||||
method: "POST",
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
body: JSON.stringify({
|
|
||||||
app_id: Resource.FEISHU_APP_ID.value,
|
|
||||||
app_secret: Resource.FEISHU_APP_SECRET.value,
|
|
||||||
}),
|
|
||||||
})
|
|
||||||
const data = (await response.json()) as { tenant_access_token?: string }
|
|
||||||
if (!data.tenant_access_token) throw new Error("Failed to get Feishu tenant token")
|
|
||||||
return data.tenant_access_token
|
|
||||||
}
|
|
||||||
|
|
||||||
export class SyncServer extends DurableObject<Env> {
|
export class SyncServer extends DurableObject<Env> {
|
||||||
constructor(ctx: DurableObjectState, env: Env) {
|
constructor(ctx: DurableObjectState, env: Env) {
|
||||||
super(ctx, env)
|
super(ctx, env)
|
||||||
|
|
|
||||||
|
|
@ -85,18 +85,6 @@ function prepareBinDirectory(binaryName) {
|
||||||
return { binDir, targetPath }
|
return { binDir, targetPath }
|
||||||
}
|
}
|
||||||
|
|
||||||
function symlinkBinary(sourcePath, binaryName) {
|
|
||||||
const { targetPath } = prepareBinDirectory(binaryName)
|
|
||||||
|
|
||||||
fs.symlinkSync(sourcePath, targetPath)
|
|
||||||
console.log(`opencode binary symlinked: ${targetPath} -> ${sourcePath}`)
|
|
||||||
|
|
||||||
// Verify the file exists after operation
|
|
||||||
if (!fs.existsSync(targetPath)) {
|
|
||||||
throw new Error(`Failed to symlink binary to ${targetPath}`)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async function main() {
|
async function main() {
|
||||||
try {
|
try {
|
||||||
if (os.platform() === "win32") {
|
if (os.platform() === "win32") {
|
||||||
|
|
|
||||||
|
|
@ -26,10 +26,6 @@ const Headers = Schema.Struct({
|
||||||
})
|
})
|
||||||
|
|
||||||
export namespace ExperimentalHttpApiServer {
|
export namespace ExperimentalHttpApiServer {
|
||||||
function text(input: string, status: number, headers?: Record<string, string>) {
|
|
||||||
return HttpServerResponse.text(input, { status, headers })
|
|
||||||
}
|
|
||||||
|
|
||||||
function decode(input: string) {
|
function decode(input: string) {
|
||||||
try {
|
try {
|
||||||
return decodeURIComponent(input)
|
return decodeURIComponent(input)
|
||||||
|
|
|
||||||
|
|
@ -596,35 +596,11 @@ function hit(url: string, body: unknown) {
|
||||||
} satisfies Hit
|
} satisfies Hit
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Auto-acknowledging tool-result follow-ups avoids requiring tests to queue two responses per tool call. */
|
|
||||||
function isToolResultFollowUp(body: unknown): boolean {
|
|
||||||
if (!body || typeof body !== "object") return false
|
|
||||||
// OpenAI chat format: last message has role "tool"
|
|
||||||
if ("messages" in body && Array.isArray(body.messages)) {
|
|
||||||
const last = body.messages[body.messages.length - 1]
|
|
||||||
return last?.role === "tool"
|
|
||||||
}
|
|
||||||
// Responses API: input contains function_call_output
|
|
||||||
if ("input" in body && Array.isArray(body.input)) {
|
|
||||||
return body.input.some((item: Record<string, unknown>) => item?.type === "function_call_output")
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
function isTitleRequest(body: unknown): boolean {
|
function isTitleRequest(body: unknown): boolean {
|
||||||
if (!body || typeof body !== "object") return false
|
if (!body || typeof body !== "object") return false
|
||||||
return JSON.stringify(body).includes("Generate a title for this conversation")
|
return JSON.stringify(body).includes("Generate a title for this conversation")
|
||||||
}
|
}
|
||||||
|
|
||||||
function requestSummary(body: unknown): string {
|
|
||||||
if (!body || typeof body !== "object") return "empty body"
|
|
||||||
if ("messages" in body && Array.isArray(body.messages)) {
|
|
||||||
const roles = body.messages.map((m: Record<string, unknown>) => m.role).join(",")
|
|
||||||
return `messages=[${roles}]`
|
|
||||||
}
|
|
||||||
return `keys=[${Object.keys(body).join(",")}]`
|
|
||||||
}
|
|
||||||
|
|
||||||
namespace TestLLMServer {
|
namespace TestLLMServer {
|
||||||
export interface Service {
|
export interface Service {
|
||||||
readonly url: string
|
readonly url: string
|
||||||
|
|
|
||||||
|
|
@ -143,25 +143,6 @@ async function assistant(sessionID: SessionID, parentID: MessageID, root: string
|
||||||
return msg
|
return msg
|
||||||
}
|
}
|
||||||
|
|
||||||
async function tool(sessionID: SessionID, messageID: MessageID, tool: string, output: string) {
|
|
||||||
return svc.updatePart({
|
|
||||||
id: PartID.ascending(),
|
|
||||||
messageID,
|
|
||||||
sessionID,
|
|
||||||
type: "tool",
|
|
||||||
callID: crypto.randomUUID(),
|
|
||||||
tool,
|
|
||||||
state: {
|
|
||||||
status: "completed",
|
|
||||||
input: {},
|
|
||||||
output,
|
|
||||||
title: "done",
|
|
||||||
metadata: {},
|
|
||||||
time: { start: Date.now(), end: Date.now() },
|
|
||||||
},
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
function fake(
|
function fake(
|
||||||
input: Parameters<SessionProcessorModule.SessionProcessor.Interface["create"]>[0],
|
input: Parameters<SessionProcessorModule.SessionProcessor.Interface["create"]>[0],
|
||||||
result: "continue" | "compact",
|
result: "continue" | "compact",
|
||||||
|
|
|
||||||
|
|
@ -25,20 +25,6 @@ export type ViewDiff = {
|
||||||
|
|
||||||
const cache = new Map<string, FileDiffMetadata>()
|
const cache = new Map<string, FileDiffMetadata>()
|
||||||
|
|
||||||
function empty(file: string, key: string) {
|
|
||||||
return {
|
|
||||||
name: file,
|
|
||||||
type: "change",
|
|
||||||
hunks: [],
|
|
||||||
splitLineCount: 0,
|
|
||||||
unifiedLineCount: 0,
|
|
||||||
isPartial: true,
|
|
||||||
deletionLines: [],
|
|
||||||
additionLines: [],
|
|
||||||
cacheKey: key,
|
|
||||||
} satisfies FileDiffMetadata
|
|
||||||
}
|
|
||||||
|
|
||||||
function patch(diff: ReviewDiff) {
|
function patch(diff: ReviewDiff) {
|
||||||
if (typeof diff.patch === "string") {
|
if (typeof diff.patch === "string") {
|
||||||
const [patch] = parsePatch(diff.patch)
|
const [patch] = parsePatch(diff.patch)
|
||||||
|
|
|
||||||
|
|
@ -555,10 +555,6 @@ function toolPart(sample: (typeof TOOL_SAMPLES)[keyof typeof TOOL_SAMPLES], stat
|
||||||
} as ToolPart
|
} as ToolPart
|
||||||
}
|
}
|
||||||
|
|
||||||
function compactionPart(): CompactionPart {
|
|
||||||
return { id: uid(), type: "compaction", auto: true } as CompactionPart
|
|
||||||
}
|
|
||||||
|
|
||||||
// ---------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------
|
||||||
// CSS Controls definition
|
// CSS Controls definition
|
||||||
// ---------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue