-
Notifications
You must be signed in to change notification settings - Fork 5
Description
Diagnostic Information
| Property | Value |
|---|---|
| CLI Version | 0.5.3 |
| Node.js Version | v24.5.0 |
| OS | darwin |
| OS Version | 25.1.0 |
| Architecture | x64 |
| Capabilities | web |
| Claude CLI Version | 2.0.73 (Claude Code) |
I'm running a db locally with the .db files stored within the project structure. However they're gitignored, which means that they don't transfer to the loom when fixing an issue. As a result I can't test the changes in the loom without merging the fix first
Enhancement Request Analysis
Questions for Reporter
| Question | Answer |
|---|---|
| What type of database are you using (SQLite, PostgreSQL via Docker, etc.) and how is it configured in your main branch? | @Gromski, please edit this issue to answer these questions. |
| Are your .db files explicitly listed in .gitignore or matched by a pattern (e.g., *.db)? Could you share the relevant .gitignore entries? | |
| Would you prefer iloom to automatically copy database files to looms, or would you like a configuration option to control this behavior? | |
| Are there any security concerns with copying potentially sensitive database content to looms that we should consider? |
Problem Summary
When using local database files (.db, .sqlite, etc.) that are gitignored, these files don't get copied to iloom workspaces (looms), preventing proper testing of database-dependent features without first merging changes back to the main branch. This breaks the isolated testing environment that iloom provides.
User Impact
Developers working with local file-based databases (SQLite, etc.) cannot fully test their changes in isolated looms, forcing them to either merge untested code or manually copy database files to each workspace, defeating iloom's automation benefits.
Enhancement Goal
Enable iloom to handle gitignored database files intelligently, allowing developers to test database-dependent changes in isolated workspaces while maintaining security and not accidentally committing sensitive data.
Next Steps
- Reporter to answer questions above for full context
- Investigate adding a
copyGitIgnoredPatternsconfiguration option in.iloom/settings.json - Consider implementing automatic detection of common database file patterns with opt-in copying
📋 Complete Context & Details (click to expand)
Current Behavior
When il start creates a new loom workspace, it:
- Creates a Git worktree (which only includes tracked files)
- Copies environment files (.env, .env.local, etc.) from the main branch
- Sets up database branching for cloud databases (Neon)
- Does NOT copy gitignored database files (.db, .sqlite, etc.)
This means local file-based databases remain in the main branch directory and aren't accessible from the loom workspace.
Proposed Solution
Add configuration support for copying specific gitignored files/patterns to looms:
- Configuration in
.iloom/settings.json:
{
"workspace": {
"copyGitIgnoredPatterns": [
"*.db",
"*.sqlite",
"data/*.db"
]
}
}- Implementation in LoomManager:
- During workspace creation, after worktree setup
- Check for configured patterns
- Copy matching files from main branch to loom workspace
- Preserve file permissions and structure
- Log copied files for transparency
- Security Considerations:
- Never copy these files during
il finish(one-way copy only) - Add warning if large database files detected (>100MB)
- Document that these files should remain gitignored
- Consider adding
.iloom/workspace.ignorefor workspace-specific ignores
Benefits
- Maintains iloom's isolated testing promise for all project types
- Supports local development workflows without cloud database dependencies
- Preserves security by keeping database files gitignored
- Provides flexibility through configuration rather than hard-coding behavior
- Enables true parallel development with database-dependent features
Metadata
Metadata
Assignees
Labels
Type
Projects
Status