Skip to content

Mod metadata cache #29

Description

@PyXiion

Origin of idea

Every app launch re-parses every mod's About/About.xml. For 300+ mods this is wasteful — XML parsing is expensive.

Suggestion / proposed solution

Cache parsed AboutXmlMod data keyed by mod path + mtime. Store in an aiosqlite database (reuse pattern from StartupImpactDb at core/services/startup_impact_service/db.py). On refresh, check mtime — if unchanged, use cached data. Invalidate on mod deletion or path change.
Piggyback cache invalidation on the mod discovery pipeline in core/mod_service.py.

Alternatives considered

No response

Additional context

Parsing at core/models/metadata/parsing.py. Discovery at core/mod_service.py. Existing DB pattern at core/services/startup_impact_service/db.py.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions