public protocol ProjectStore: Sendable { associatedtype Project func save(_ project: Project) async throws func loadProjectIDs() async throws -> [String] }