caadd59441
Move the following audited-and-implemented changes into openspec/changes/archive/2026-06-12-completed-changes-archive/: - backend-frontend-refactoring - config-profile-git-mounts - config-profile-includes-ui - config-profile-multi-repo-mounts - container-monitoring-notifications - git-mount-url-validation - home-path-expansion - mobile-terminal-ux - mount-specificity-ordering - notification-center - persistent-terminal-sessions - session-list-overhaul - ssh-key-mounting - terminal-fullscreen-unified-header - tool-session-progress-and-updates Also regenerated .pi-map*.md files for openspec/changes so the remaining active changes (multi-session-terminal-ux, reorganize-long-files, working-copies, workspace-first-ui) reflect the new layout.
32 lines
1.8 KiB
Markdown
32 lines
1.8 KiB
Markdown
## Why
|
|
|
|
Config profiles currently only support inline file content, which is impractical for dotfiles and configuration repositories that users manage with git. Users need a way to include files from git repositories (similar to yadm) so they can version-control their dotfiles and mount them into containers at startup.
|
|
|
|
## What Changes
|
|
|
|
- Add `git_mounts` field to config profiles, allowing references to git repositories
|
|
- Mount specific paths from git repositories into containers at configurable target paths
|
|
- Support branch/tag selection for reproducible mounts
|
|
- Integrate with existing profile resolution and instance startup pipeline
|
|
- Update config profile UI to manage git repository mounts alongside existing mounts
|
|
- **No breaking changes** - existing profiles continue to work unchanged
|
|
|
|
## Capabilities
|
|
|
|
### New Capabilities
|
|
- `config-profile-git-mounts`: Mounting files from git repositories into containers via config profiles, including repo selection, path mapping, and branch pinning
|
|
|
|
### Modified Capabilities
|
|
- `tool-instances`: Instance startup pipeline now processes git mounts from resolved profiles before container creation
|
|
- `git-repo`: Repository model may need branch/tag listing for mount configuration
|
|
|
|
## Impact
|
|
|
|
- **Backend**: `apps/api/src/models/config_profile.py` - add git_mounts field
|
|
- **Backend**: `apps/api/src/services/config_profile_resolver.py` - resolve git mounts in profile resolution
|
|
- **Backend**: `apps/api/src/services/docker.py` or instance startup - bind mount from repo path to container
|
|
- **Backend**: `apps/api/src/api/config_profiles.py` - CRUD for git mounts
|
|
- **Frontend**: `apps/web/src/pages/config-profiles.tsx` - UI for managing git mounts
|
|
- **Frontend**: `apps/web/src/api/config_profiles.ts` - API types for git mounts
|
|
- **Database**: Migration to add git_mounts column to config_profiles table
|