Skip to content

[Think Tank] Decompose db #62

@rayketcham

Description

@rayketcham

src/project_forge/storage/db.py has 1230 lines

src/project_forge/storage/db.py is 1230 lines — past the 300-line split threshold. Largest top-level blocks (natural split candidates): class Database (1052 lines). class Database alone is 86% of the file — likely its own module. Splitting reduces cognitive load and makes future edits less risky.

Feasibility: 0.70
MVP Scope: Extract the top blocks (Database) into separate modules — e.g. src/project_forge/storage/database.py. Update imports in callers; keep public API unchanged.

Metadata

Metadata

Assignees

No one assigned

    Labels

    ci-queuePromoted self-improvement item — CI fails until addressed

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions