Skip to content

fix: keep portable doctor checks read-only#124

Merged
steipete merged 1 commit into
mainfrom
fix/doctor-portable-sidecars
Jul 22, 2026
Merged

fix: keep portable doctor checks read-only#124
steipete merged 1 commit into
mainfrom
fix/doctor-portable-sidecars

Conversation

@steipete

Copy link
Copy Markdown
Contributor

Summary

  • inspect committed portable source databases through immutable SQLite URI connections
  • keep ordinary local databases and writable runtime mirrors on the existing normal read-only path
  • fail closed before opening SQLite when Git portability probing itself fails
  • add end-to-end coverage proving doctor --json leaves canonical portable checkouts clean, plus a probe-failure regression

Root cause

SQLite may create -wal and -shm files even for an ordinary read-only connection to a WAL-mode database. Gitcrawl used those connections while inspecting the committed portable source database, so a nominally read-only doctor command could dirty the portable checkout.

Verification

  • GOWORK=off go test ./...
  • GOWORK=off go vet ./...
  • total coverage: 85.0%
  • Windows amd64 cross-compilation of affected CLI/store tests
  • govulncheck ./...: no vulnerabilities found
  • deadcode: clean
  • release-script tests: passed
  • black-box validation: two consecutive doctor runs reported current portable source diagnostics, pending runtime migration, and a clean checkout without -wal or -shm
  • Codex autoreview: no accepted/actionable findings

@clawsweeper

clawsweeper Bot commented Jul 22, 2026

Copy link
Copy Markdown

ClawSweeper status: review started.

I am starting a fresh review of this pull request: fix: keep portable doctor checks read-only This is item 1/1 in the current shard. Shard 0/1.

This placeholder means the worker is alive and reading the current context. I will edit this same comment with the actual review when the claws are done clicking.

Crustacean status: shell secured, claws on keyboard, evidence pebbles being sorted.

@steipete
steipete merged commit 8670e46 into main Jul 22, 2026
10 checks passed
@steipete
steipete deleted the fix/doctor-portable-sidecars branch July 22, 2026 12:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant