The external flock on ${HOME}/.claude/session.lock in lib/agent-sdk.sh
is load-bearing, not belt-and-suspenders. Claude Code internally locks
OAuth refresh via proper-lockfile.lock(claudeDir) but uses the default
sibling lockfile path (<target>.lock), which lands in /home/agent/ —
the container-local overlay, not the bind-mounted .claude/ directory.
So the internal lock is a no-op across our containers.
Documents the rationale, the empirical verification, and a decision
matrix for future containers that need to run Claude Code (notably
the chat container in #623).
Refs: #623
|
||
|---|---|---|
| .. | ||
| AGENT-DESIGN.md | ||
| BLAST-RADIUS.md | ||
| CLAUDE-AUTH-CONCURRENCY.md | ||
| EVAL-MCP-SERVER.md | ||
| EVIDENCE-ARCHITECTURE.md | ||
| OBSERVABLE-DEPLOY.md | ||
| PHASE-PROTOCOL.md | ||
| updating-factory.md | ||
| VAULT.md | ||