fe82a248ec
- Add Alembic migration to update built-in pi-agent manifest:
* repo mount target from /workspace to ~/{{WORKSPACE_NAME}}
* keep /workspace as compatibility symlink via working_dir
* update startup chown target to $HOME/$WORKSPACE_NAME
- Pass REPO_NAME and WORKSPACE_NAME to compile_compose from instance_service
- Substitute {{WORKSPACE_NAME}} in manifest mount targets and expose it as
a container env var so the entrypoint can create the /workspace symlink
- Generate entrypoint workspace symlink from runtime WORKSPACE_NAME env var
- Install npm_global packages into {home_dir}/.npm-global with PATH so the
non-root container user can update global packages
- Update manifest compiler unit tests for the new behavior
Quality gates:
- pytest tests/unit: 207 passed
- ruff: clean on changed files
- mypy: clean on changed files
- alembic heads: single head
10 lines
481 B
Markdown
10 lines
481 B
Markdown
# Tasks: fix pi container repo mount and npm update permissions
|
|
|
|
- [x] Investigate root cause (manifest target, missing variables, npm prefix)
|
|
- [x] Create Alembic data migration to update pi-agent manifest
|
|
- [x] Update manifest_compiler.py: {{WORKSPACE_NAME}} substitution, env var, entrypoint runtime var, npm prefix
|
|
- [x] Update instance_service.py to pass REPO_NAME/WORKSPACE_NAME
|
|
- [x] Update unit tests
|
|
- [x] Run quality gates (pytest unit, ruff, mypy)
|
|
- [ ] Commit and push
|