Problem
Every generation is a standalone item. No way to group related generations (e.g., variations of the same track, album drafts, project iterations).
Scope
- Introduce a "Project" concept: a named group that aggregates multiple generations
- DB schema:
projects table + generations.project_id foreign key
- Sidebar "Projects" group above "History"
- Assign/unassign generations to projects
- CLI
--project flag for openloop run and openloop list
Acceptance criteria
Problem
Every generation is a standalone item. No way to group related generations (e.g., variations of the same track, album drafts, project iterations).
Scope
projectstable +generations.project_idforeign key--projectflag foropenloop runandopenloop listAcceptance criteria
openloop run --project <name>groups the output under that projectopenloop list --project <name>filters by project