From 125624489bc4a1e6191e66b345eee6d98ca94e22 Mon Sep 17 00:00:00 2001
From: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Date: Wed, 1 Oct 2025 22:20:35 -0500
Subject: [PATCH 1/2] docs: fix (#2910)
---
packages/console/app/src/routes/index.tsx | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/packages/console/app/src/routes/index.tsx b/packages/console/app/src/routes/index.tsx
index bf66b77b5..177fd129c 100644
--- a/packages/console/app/src/routes/index.tsx
+++ b/packages/console/app/src/routes/index.tsx
@@ -132,7 +132,7 @@ export default function Home() {
@@ -141,7 +141,7 @@ export default function Home() {
From b2440e92e7db391eddac17ed49e4db0cb7307e09 Mon Sep 17 00:00:00 2001
From: Dax Raad
Date: Thu, 2 Oct 2025 00:08:38 -0400
Subject: [PATCH 2/2] core: improve file search reliability and performance
---
packages/opencode/src/file/index.ts | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/packages/opencode/src/file/index.ts b/packages/opencode/src/file/index.ts
index 20e1f604c..80cff6303 100644
--- a/packages/opencode/src/file/index.ts
+++ b/packages/opencode/src/file/index.ts
@@ -88,6 +88,7 @@ export namespace File {
let current = file
while (true) {
const dir = path.dirname(current)
+ if (dir === ".") break
if (dir === current) break
current = dir
if (set.has(dir)) continue
@@ -113,6 +114,10 @@ export namespace File {
}
})
+ export function init() {
+ state()
+ }
+
export async function status() {
const project = Instance.project
if (project.vcs !== "git") return []
@@ -242,10 +247,13 @@ export namespace File {
}
export async function search(input: { query: string; limit?: number }) {
+ log.info("search", { query: input.query })
const limit = input.limit ?? 100
const result = await state().then((x) => x.files())
- const items = input.query ? [...result.files, ...result.dirs] : [...result.dirs]
+ if (!input.query) return result.dirs.toSorted()
+ const items = [...result.files, ...result.dirs]
const sorted = fuzzysort.go(input.query, items, { limit: limit }).map((r) => r.target)
+ log.info("search", { query: input.query, results: sorted.length })
return sorted
}
}