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
1.4 KiB
1.4 KiB
apps/api (index)
dir: apps/api
role
FastAPI backend API that manages projects, git repositories, and development tools via Docker instances with PostgreSQL database and async Alembic migrations.
parent
index: apps/.pi-map.index.md map: apps/.pi-map.md
children
- apps/api/.mypy_cache index: apps/api/.mypy_cache/.pi-map.index.md map: apps/api/.mypy_cache/.pi-map.md
- apps/api/.pi-lens index: apps/api/.pi-lens/.pi-map.index.md map: apps/api/.pi-lens/.pi-map.md
- apps/api/.pytest_cache index: apps/api/.pytest_cache/.pi-map.index.md map: apps/api/.pytest_cache/.pi-map.md
- apps/api/.ruff_cache index: apps/api/.ruff_cache/.pi-map.index.md map: apps/api/.ruff_cache/.pi-map.md
- apps/api/.venv-test index: apps/api/.venv-test/.pi-map.index.md map: apps/api/.venv-test/.pi-map.md
- apps/api/alembic index: apps/api/alembic/.pi-map.index.md map: apps/api/alembic/.pi-map.md
- apps/api/src index: apps/api/src/.pi-map.index.md map: apps/api/src/.pi-map.md
- apps/api/tests index: apps/api/tests/.pi-map.index.md map: apps/api/tests/.pi-map.md
- apps/api/uploads index: apps/api/uploads/.pi-map.index.md map: apps/api/uploads/.pi-map.md
files
- .dockerignore
- Dockerfile
- README.md
- alembic.ini
- pyproject.toml
- uv.lock
- wait-for-db.sh
links
index: apps/api/.pi-map.index.md map: apps/api/.pi-map.md