fix(models): add explicit enum names to match migration types

SQLAlchemy's Enum() auto-generates type names from Python class names
(e.g., AutonomyLevel -> autonomylevel), but migrations defined them
with underscores (e.g., autonomy_level). This mismatch caused:

  "type 'autonomylevel' does not exist"

Added explicit name parameters to all enum columns to match the
migration-defined type names:
- autonomy_level, project_status, project_complexity, client_mode
- agent_status, sprint_status
- issue_type, issue_status, issue_priority, sync_status

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-06 02:48:10 +01:00
parent 92782bcb05
commit fcb0a5f86a
4 changed files with 10 additions and 10 deletions

View File

@@ -59,7 +59,7 @@ class Issue(Base, UUIDMixin, TimestampMixin):
# Issue type (Epic, Story, Task, Bug)
type: Column[IssueType] = Column(
Enum(IssueType),
Enum(IssueType, name="issue_type"),
default=IssueType.TASK,
nullable=False,
index=True,
@@ -78,14 +78,14 @@ class Issue(Base, UUIDMixin, TimestampMixin):
# Status and priority
status: Column[IssueStatus] = Column(
Enum(IssueStatus),
Enum(IssueStatus, name="issue_status"),
default=IssueStatus.OPEN,
nullable=False,
index=True,
)
priority: Column[IssuePriority] = Column(
Enum(IssuePriority),
Enum(IssuePriority, name="issue_priority"),
default=IssuePriority.MEDIUM,
nullable=False,
index=True,
@@ -132,7 +132,7 @@ class Issue(Base, UUIDMixin, TimestampMixin):
# Sync status with external tracker
sync_status: Column[SyncStatus] = Column(
Enum(SyncStatus),
Enum(SyncStatus, name="sync_status"),
default=SyncStatus.SYNCED,
nullable=False,
# Note: Index defined in __table_args__ as ix_issues_sync_status