fix(opencode): Mac review of the Linux fixes - a clean db has no sidecars on Mac either, the placeholder needs its example, a home install must run, status and reconcile read the db read-only (Issue #60, PR #62)

- tests: macOS SQLite keeps -wal/-shm after the last close (persistent WAL);
  the `clean` state removes them after the checkpointing close
- the 2.x placeholder pattern requires the quoted example, so a typed
  `Ask anything…` is read as a draft
- auth_ok takes ~/.opencode/bin/opencode only as an executable file
- status.sh and reconcile.sh (drift C) open opencode.db with _ro_connect

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VCgu9Fa9iT7TbJUSzdq4Ff
This commit is contained in:
GodopuandClaude Opus 5.5 committed 2026-10-19 10:57:40 +09:00
1 parent 6a4e385a78
commit 6a37c0019b
4 files changed
+40 -7

No files matched your search

@@ -112,8 +112,9 @@ def resume_on_disk(s):
if not odb or not os.path.exists(odb):
return 'MISSING'
try:
import sqlite3
conn = sqlite3.connect(odb)
# read-only: nothing is created or removed beside the agent's db (Issue #60)
from lib_py.agents.adapters.opencode import _ro_connect
conn = _ro_connect(odb)
r = conn.execute("SELECT 1 FROM session_v2 WHERE id=?", (u,)).fetchone() # opencode 2.x
conn.close()
return 'yes' if r else 'MISSING'
@@ -312,8 +313,9 @@ def resume_on_disk(s):
if not odb or not os.path.exists(odb):
return 'MISSING'
try:
import sqlite3
conn = sqlite3.connect(odb)
# read-only: nothing is created or removed beside the agent's db (Issue #60)
from lib_py.agents.adapters.opencode import _ro_connect
conn = _ro_connect(odb)
r = conn.execute("SELECT 1 FROM session_v2 WHERE id=?", (u,)).fetchone() # opencode 2.x
conn.close()
return 'yes' if r else 'MISSING'