refactor: migrate src/provider/models.ts from Bun.file()/Bun.write() to Filesystem module (#14131)

This commit is contained in:
Dax
2026-02-18 17:26:13 -05:00
committed by GitHub
parent b75a89776d
commit 97520c827e

View File

@@ -5,6 +5,7 @@ import z from "zod"
import { Installation } from "../installation" import { Installation } from "../installation"
import { Flag } from "../flag/flag" import { Flag } from "../flag/flag"
import { lazy } from "@/util/lazy" import { lazy } from "@/util/lazy"
import { Filesystem } from "../util/filesystem"
// Try to import bundled snapshot (generated at build time) // Try to import bundled snapshot (generated at build time)
// Falls back to undefined in dev mode when snapshot doesn't exist // Falls back to undefined in dev mode when snapshot doesn't exist
@@ -85,8 +86,7 @@ export namespace ModelsDev {
} }
export const Data = lazy(async () => { export const Data = lazy(async () => {
const file = Bun.file(Flag.OPENCODE_MODELS_PATH ?? filepath) const result = await Filesystem.readJson(Flag.OPENCODE_MODELS_PATH ?? filepath).catch(() => {})
const result = await file.json().catch(() => {})
if (result) return result if (result) return result
// @ts-ignore // @ts-ignore
const snapshot = await import("./models-snapshot") const snapshot = await import("./models-snapshot")
@@ -104,7 +104,6 @@ export namespace ModelsDev {
} }
export async function refresh() { export async function refresh() {
const file = Bun.file(filepath)
const result = await fetch(`${url()}/api.json`, { const result = await fetch(`${url()}/api.json`, {
headers: { headers: {
"User-Agent": Installation.USER_AGENT, "User-Agent": Installation.USER_AGENT,
@@ -116,7 +115,7 @@ export namespace ModelsDev {
}) })
}) })
if (result && result.ok) { if (result && result.ok) {
await Bun.write(file, await result.text()) await Filesystem.write(filepath, await result.text())
ModelsDev.Data.reset() ModelsDev.Data.reset()
} }
} }