fix(session-manager): match todo filenames exactly

Stop sibling session IDs from colliding in stable JSON storage by requiring an exact todo filename match instead of a substring filter.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
Gujiassh
2026-03-12 19:58:57 +09:00
parent 50638cf783
commit edfa411684
2 changed files with 21 additions and 1 deletions
+1 -1
View File
@@ -277,7 +277,7 @@ export async function readSessionTodos(sessionID: string): Promise<TodoItem[]> {
try {
const allFiles = await readdir(TODO_DIR)
const todoFiles = allFiles.filter((f) => f.includes(sessionID) && f.endsWith(".json"))
const todoFiles = allFiles.filter((f) => f === `${sessionID}.json`)
for (const file of todoFiles) {
try {