Repository navigation
v0.1.2
Patch release — two bug fixes and a constitution-doc correction.
Fixes
PROJECT_NAMEsanitization — project directories whose name contains a dot, uppercase letters, or spaces (e.g.sideralith.com) failed to launch with aninvalid project nameerror from Docker Compose. The project name is now sanitized to a Compose-valid form before use; every derived name (compose project, container names, deploy-key path) inherits it.- Running-container conflict diagnostic — when a
drydock-<project>container is already running,drydocknow prints a clear drydock-level message with the exactdocker exec/docker stopcommands, instead of leaking the raw Docker daemon conflict error. The intentional refusal to kill a running session is unchanged. - INV-2 documentation correction —
CLAUDE.mdINV-2's "Why" attributed SQLite/WAL corruption to the~/.claudestate paths, which contain no SQLite. Rewritten to a four-reason model — two universal (last-writer-wins.claude.jsonclobber, OAuth refresh race), two engram-only (MCP-config divergence, SQLite WAL). INV-2's rule is unchanged.
Upgrade notes
- If a project directory name was normalized (e.g.
sideralith.com→sideralith-com), an existing SSH deploy key stored under the old filename will not be found. drydock prints a warning with the new filename — rename~/.config/drydock/keys/<old>_deployto<new>_deploy. - Two directories that normalize to the same sanitized name share container namespace and deploy-key path — a documented limitation.
No new flags, env vars, or commands. See CHANGELOG.md for the full entry.
Closes #2.