Files
headquarter/apps/api/alembic/versions/.pi-map.index.md
T
Developer ddd92e3dd4 feat: implement configurable tool container home directory
- Add ToolType.home_directory column with default /home/user
- Add Alembic migration to add column, set existing rows, and rewrite
  /workspace to /home/user/{{WORKSPACE_NAME}} in legacy templates
- Add merge migration fc8f1a20cbf6 to resolve Alembic multiple heads
- Update manifest compiler to honor manifest.home_directory for HOME,
  WORKDIR, /workspace symlink, and default repo mount target
- Update legacy dockerfile/compose instance generation to use
  tool_type.home_directory
- Thread resolved home_dir through config profile and git mount expansion
- Generate entrypoint permission fixer to chown home/mounts at startup
- Update base.dockerfile with sudo/passwordless sudo for permission fixer
- Add unit tests for manifest compiler, instance service, and migrations
- Add placeholder integration test for container lifecycle
- Update openspec/tasks/home-path-expansion.md task checkboxes
- Update project maps for modified files

Quality gates: py_compile, ruff, mypy, pytest tests/unit (205 passed),
pytest tests/integration (110 passed, 35 skipped). Alembic round-trip
and container lifecycle integration tests require Docker/PostgreSQL.
2026-06-14 13:09:41 +00:00

72 lines
2.5 KiB
Markdown

# apps/api/alembic/versions (index)
dir: apps/api/alembic/versions
## role
Database schema evolution and versioning management for the API application using Alembic migration scripts.
## parent
index: apps/api/alembic/.pi-map.index.md
map: apps/api/alembic/.pi-map.md
## children
-
## files
- 0001_initial_schema.py
- 0002_refresh_tokens.py
- 0003_user_configs.py
- 0004_tool_types.py
- 0005_ssh_keys_timestamps.py
- 0006_tool_instances.py
- 0007_instance_container_name.py
- 0008_tool_type_category.py
- 0009_tool_configs.py
- 0010_tool_type_default_port.py
- 0011_tool_instance_tunnel_fields.py
- 0012_default_port_req.py
- 0013_add_config_profiles.py
- 0013_add_probe_result.py
- 0014_add_profile_resolver_fields.py
- 0014_merge_heads.py
- 0015_single_interface.py
- 069d3da4dc9b_add_ssh_key_id_to_config_profiles.py
- 20260527160017_add_pi_agent_tool_type.py
- 2026_05_22_add_clone_mode.py
- 2026_05_23_remove_is_builtin.py
- 2026_05_24_220141_add_startup_command.py
- 2026_05_24_add_config_profiles.py
- 2026_05_26_add_git_mounts.py
- 2026_05_27_external_repos.py
- 2026_05_28_add_monitoring_tables.py
- 2026_05_28_add_terminal_sessions_table.py
- 2026_05_28_add_tool_definition_manifests.py
- 2026_05_28_drop_tool_configs_and_config_folders.py
- 2026_05_29_add_notifications_table.py
- 2026_05_29_add_ssh_key_ids_to_tool_instances.py
- 2026_05_29_drop_ssh_key_id_from_config_profiles.py
- 2026_05_29_fix_code_server_bind_addr.py
- 2026_05_29_fix_code_server_bind_addr_port.py
- 2026_05_29_fix_web_tool_bind_address.py
- 2026_05_29_remove_lsio_command_override.py
- 2026_05_29_remove_ssh_keys_mount_from_manifest.py
- 2026_06_01_add_workspaces.py
- 2026_06_13_make_clone_mode_nullable.py
- 2026_06_14_104415_add_tool_type_home_directory.py
- 398082499c30_add_tool_config_fields.py
- 6fc7bfcf199f_merge_remove_is_builtin_and_add_config_.py
- 86cec91fdb00_merge_profile_resolver_and_workspaces_.py
- 8c6d1dbd4798_remove_pi_config_and_state_mounts_from_.py
- 8ed7dd80973d_create_config_folders_table.py
- af8512103d67_add_tool_type_fields.py
- f3d2dc90ba3a_merge_single_interface_and_clone_mode.py
- fc8f1a20cbf6_merge_home_directory_and_pi_agent_mount_.py
## links
index: apps/api/alembic/versions/.pi-map.index.md
map: apps/api/alembic/versions/.pi-map.md
## workflows
- change versions behavior
read: 0001_initial_schema.py, 0002_refresh_tokens.py, 0003_user_configs.py
- change versions CLI
read: 2026_05_24_220141_add_startup_command.py, 2026_05_29_remove_lsio_command_override.py
- change versions config
read: 0003_user_configs.py, 0009_tool_configs.py, 0013_add_config_profiles.py
## dirty
-