bd94cc9bbf
The previous commit moved the pi-agent repo mount from /workspace to
/home/user/{repo_name}. This exposed a permission bug: the Dockerfile
creates /workspace as a root-owned symlink in the image, and the
non-root entrypoint could not replace it because / is owned by root.
- Update compile_entrypoint to recreate /workspace via sudo when running
as the container user, or directly when running as root
- Add unit test covering sudo/root symlink creation
- Update OpenSpec change docs with the additional root cause
Quality gates:
- pytest tests/unit: 208 passed
- ruff: clean on changed files
- mypy: clean on changed files
- alembic heads: single head
2.2 KiB
2.2 KiB
. (index)
dir: .
Project Map Protocol
- Read this protocol and the root
.pi-map.index.mdfirst. - Use
index:/map:references to open relevant directory indexes and maps. - Load indexes before rich maps during task-start navigation.
- Read the local rich map and actual source before editing.
- Treat non-empty
## dirtysections in either artifact as stale. - If source and generated artifacts disagree, trust source.
- If map and index disagree, trust neither blindly; verify from source and regenerate the pair.
- After editing source, run
project_map_patchfor each changed file. - Before broad architectural claims or final handoff, run
project_map_validatewhen freshness matters.
Trust boundary: index routes, map orients, source decides.
role
Infrastructure and deployment configuration for a self-hosted project management platform with OAuth2 authentication, providing Docker orchestration, environment templates, and development tooling.
parent
children
- .atl index: .atl/.pi-map.index.md map: .atl/.pi-map.md
- .claude index: .claude/.pi-map.index.md map: .claude/.pi-map.md
- .opencode index: .opencode/.pi-map.index.md map: .opencode/.pi-map.md
- .pi index: .pi/.pi-map.index.md map: .pi/.pi-map.md
- .sisyphus index: .sisyphus/.pi-map.index.md map: .sisyphus/.pi-map.md
- .stoneforge index: .stoneforge/.pi-map.index.md map: .stoneforge/.pi-map.md
- apps index: apps/.pi-map.index.md map: apps/.pi-map.md
- docs index: docs/.pi-map.index.md map: docs/.pi-map.md
- e2e index: e2e/.pi-map.index.md map: e2e/.pi-map.md
- minerv3 index: minerv3/.pi-map.index.md map: minerv3/.pi-map.md
- openspec index: openspec/.pi-map.index.md map: openspec/.pi-map.md
- scripts index: scripts/.pi-map.index.md map: scripts/.pi-map.md
- tool-images index: tool-images/.pi-map.index.md map: tool-images/.pi-map.md
- uploads index: uploads/.pi-map.index.md map: uploads/.pi-map.md
files
- .env.example
- .gitignore
- AGENTS.md
- CHANGELOG.md
- Makefile
- README.md
- docker-compose.traefik.yml
- docker-compose.yml
- progress.md
- swap-pane
links
index: ./.pi-map.index.md map: ./.pi-map.md