The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Failed to build DewdropAPI, reference main (5f0146), with Swift 6.0 for macOS (SPM) on 16 Nov 2024 04:41:02 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

23 |
24 | 		try self.init(
25 | 			user: .init(from: decoder),
   |                              `- error: missing argument for parameter 'email' in call
26 | 			hasPassword: container.decode(for: .hasPassword),
27 | 			fileStorage: container.decode(for: .fileStorage),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/Account.swift:7:1: note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 5 | import struct Foundation.Date
 6 |
 7 | @MemberwiseInit(.public)
   | `- note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 8 | public struct Account: Sendable {
 9 | 	public let user: User
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:17:16: error: extra arguments at positions #2, #3 in call
15 | 	public init(from decoder: any Decoder) throws {
16 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
17 | 		try self.init(
   |                `- error: extra arguments at positions #2, #3 in call
18 | 			fullName: container.decodeIfPresent(for: .fullName) ?? container.decode(for: .name),
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:5:1: note: 'init(fullName:hasProSubscription:)' declared here
 3 | import MemberwiseInit
 4 |
 5 | @MemberwiseInit(.public)
   | `- note: 'init(fullName:hasProSubscription:)' declared here
 6 | public struct User: Sendable {
 7 | 	public let fullName: String
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: generic parameter 'T' could not be inferred
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: generic parameter 'T' could not be inferred
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AutoCodable/Sources/AutoCodable/Extensions/KeyedDecodingContainer+Decode.swift:8:10: note: in call to function 'decodeIfPresent(for:)'
 6 |     }
 7 |
 8 |     func decodeIfPresent<T: Decodable>(for key: KeyedDecodingContainer<K>.Key) throws -> T? {
   |          `- note: in call to function 'decodeIfPresent(for:)'
 9 |         try decodeIfPresent(T.self, forKey: key)
10 |     }
[487/555] Compiling DewdropRESTAPI Tag+Decodable.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/Account+Decodable.swift:25:30: error: missing argument for parameter 'email' in call
23 |
24 | 		try self.init(
25 | 			user: .init(from: decoder),
   |                              `- error: missing argument for parameter 'email' in call
26 | 			hasPassword: container.decode(for: .hasPassword),
27 | 			fileStorage: container.decode(for: .fileStorage),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/Account.swift:7:1: note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 5 | import struct Foundation.Date
 6 |
 7 | @MemberwiseInit(.public)
   | `- note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 8 | public struct Account: Sendable {
 9 | 	public let user: User
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:17:16: error: extra arguments at positions #2, #3 in call
15 | 	public init(from decoder: any Decoder) throws {
16 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
17 | 		try self.init(
   |                `- error: extra arguments at positions #2, #3 in call
18 | 			fullName: container.decodeIfPresent(for: .fullName) ?? container.decode(for: .name),
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:5:1: note: 'init(fullName:hasProSubscription:)' declared here
 3 | import MemberwiseInit
 4 |
 5 | @MemberwiseInit(.public)
   | `- note: 'init(fullName:hasProSubscription:)' declared here
 6 | public struct User: Sendable {
 7 | 	public let fullName: String
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: generic parameter 'T' could not be inferred
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: generic parameter 'T' could not be inferred
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AutoCodable/Sources/AutoCodable/Extensions/KeyedDecodingContainer+Decode.swift:8:10: note: in call to function 'decodeIfPresent(for:)'
 6 |     }
 7 |
 8 |     func decodeIfPresent<T: Decodable>(for key: KeyedDecodingContainer<K>.Key) throws -> T? {
   |          `- note: in call to function 'decodeIfPresent(for:)'
 9 |         try decodeIfPresent(T.self, forKey: key)
10 |     }
[488/555] Compiling DewdropRESTAPI Account+Decodable.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/Account+Decodable.swift:25:30: error: missing argument for parameter 'email' in call
23 |
24 | 		try self.init(
25 | 			user: .init(from: decoder),
   |                              `- error: missing argument for parameter 'email' in call
26 | 			hasPassword: container.decode(for: .hasPassword),
27 | 			fileStorage: container.decode(for: .fileStorage),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/Account.swift:7:1: note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 5 | import struct Foundation.Date
 6 |
 7 | @MemberwiseInit(.public)
   | `- note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 8 | public struct Account: Sendable {
 9 | 	public let user: User
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:17:16: error: extra arguments at positions #2, #3 in call
15 | 	public init(from decoder: any Decoder) throws {
16 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
17 | 		try self.init(
   |                `- error: extra arguments at positions #2, #3 in call
18 | 			fullName: container.decodeIfPresent(for: .fullName) ?? container.decode(for: .name),
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:5:1: note: 'init(fullName:hasProSubscription:)' declared here
 3 | import MemberwiseInit
 4 |
 5 | @MemberwiseInit(.public)
   | `- note: 'init(fullName:hasProSubscription:)' declared here
 6 | public struct User: Sendable {
 7 | 	public let fullName: String
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: generic parameter 'T' could not be inferred
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: generic parameter 'T' could not be inferred
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AutoCodable/Sources/AutoCodable/Extensions/KeyedDecodingContainer+Decode.swift:8:10: note: in call to function 'decodeIfPresent(for:)'
 6 |     }
 7 |
 8 |     func decodeIfPresent<T: Decodable>(for key: KeyedDecodingContainer<K>.Key) throws -> T? {
   |          `- note: in call to function 'decodeIfPresent(for:)'
 9 |         try decodeIfPresent(T.self, forKey: key)
10 |     }
[489/555] Compiling DewdropRESTAPI BrokenLevel+Decodable.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/Account+Decodable.swift:25:30: error: missing argument for parameter 'email' in call
23 |
24 | 		try self.init(
25 | 			user: .init(from: decoder),
   |                              `- error: missing argument for parameter 'email' in call
26 | 			hasPassword: container.decode(for: .hasPassword),
27 | 			fileStorage: container.decode(for: .fileStorage),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/Account.swift:7:1: note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 5 | import struct Foundation.Date
 6 |
 7 | @MemberwiseInit(.public)
   | `- note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 8 | public struct Account: Sendable {
 9 | 	public let user: User
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:17:16: error: extra arguments at positions #2, #3 in call
15 | 	public init(from decoder: any Decoder) throws {
16 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
17 | 		try self.init(
   |                `- error: extra arguments at positions #2, #3 in call
18 | 			fullName: container.decodeIfPresent(for: .fullName) ?? container.decode(for: .name),
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:5:1: note: 'init(fullName:hasProSubscription:)' declared here
 3 | import MemberwiseInit
 4 |
 5 | @MemberwiseInit(.public)
   | `- note: 'init(fullName:hasProSubscription:)' declared here
 6 | public struct User: Sendable {
 7 | 	public let fullName: String
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: generic parameter 'T' could not be inferred
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: generic parameter 'T' could not be inferred
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AutoCodable/Sources/AutoCodable/Extensions/KeyedDecodingContainer+Decode.swift:8:10: note: in call to function 'decodeIfPresent(for:)'
 6 |     }
 7 |
 8 |     func decodeIfPresent<T: Decodable>(for key: KeyedDecodingContainer<K>.Key) throws -> T? {
   |          `- note: in call to function 'decodeIfPresent(for:)'
 9 |         try decodeIfPresent(T.self, forKey: key)
10 |     }
[490/555] Compiling DewdropRESTAPI FileStorage+Decodable.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/Account+Decodable.swift:25:30: error: missing argument for parameter 'email' in call
23 |
24 | 		try self.init(
25 | 			user: .init(from: decoder),
   |                              `- error: missing argument for parameter 'email' in call
26 | 			hasPassword: container.decode(for: .hasPassword),
27 | 			fileStorage: container.decode(for: .fileStorage),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/Account.swift:7:1: note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 5 | import struct Foundation.Date
 6 |
 7 | @MemberwiseInit(.public)
   | `- note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 8 | public struct Account: Sendable {
 9 | 	public let user: User
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:17:16: error: extra arguments at positions #2, #3 in call
15 | 	public init(from decoder: any Decoder) throws {
16 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
17 | 		try self.init(
   |                `- error: extra arguments at positions #2, #3 in call
18 | 			fullName: container.decodeIfPresent(for: .fullName) ?? container.decode(for: .name),
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:5:1: note: 'init(fullName:hasProSubscription:)' declared here
 3 | import MemberwiseInit
 4 |
 5 | @MemberwiseInit(.public)
   | `- note: 'init(fullName:hasProSubscription:)' declared here
 6 | public struct User: Sendable {
 7 | 	public let fullName: String
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: generic parameter 'T' could not be inferred
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: generic parameter 'T' could not be inferred
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AutoCodable/Sources/AutoCodable/Extensions/KeyedDecodingContainer+Decode.swift:8:10: note: in call to function 'decodeIfPresent(for:)'
 6 |     }
 7 |
 8 |     func decodeIfPresent<T: Decodable>(for key: KeyedDecodingContainer<K>.Key) throws -> T? {
   |          `- note: in call to function 'decodeIfPresent(for:)'
 9 |         try decodeIfPresent(T.self, forKey: key)
10 |     }
[491/555] Compiling DewdropRESTAPI Group+Decodable.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/Account+Decodable.swift:25:30: error: missing argument for parameter 'email' in call
23 |
24 | 		try self.init(
25 | 			user: .init(from: decoder),
   |                              `- error: missing argument for parameter 'email' in call
26 | 			hasPassword: container.decode(for: .hasPassword),
27 | 			fileStorage: container.decode(for: .fileStorage),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/Account.swift:7:1: note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 5 | import struct Foundation.Date
 6 |
 7 | @MemberwiseInit(.public)
   | `- note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 8 | public struct Account: Sendable {
 9 | 	public let user: User
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:17:16: error: extra arguments at positions #2, #3 in call
15 | 	public init(from decoder: any Decoder) throws {
16 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
17 | 		try self.init(
   |                `- error: extra arguments at positions #2, #3 in call
18 | 			fullName: container.decodeIfPresent(for: .fullName) ?? container.decode(for: .name),
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:5:1: note: 'init(fullName:hasProSubscription:)' declared here
 3 | import MemberwiseInit
 4 |
 5 | @MemberwiseInit(.public)
   | `- note: 'init(fullName:hasProSubscription:)' declared here
 6 | public struct User: Sendable {
 7 | 	public let fullName: String
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: generic parameter 'T' could not be inferred
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: generic parameter 'T' could not be inferred
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AutoCodable/Sources/AutoCodable/Extensions/KeyedDecodingContainer+Decode.swift:8:10: note: in call to function 'decodeIfPresent(for:)'
 6 |     }
 7 |
 8 |     func decodeIfPresent<T: Decodable>(for key: KeyedDecodingContainer<K>.Key) throws -> T? {
   |          `- note: in call to function 'decodeIfPresent(for:)'
 9 |         try decodeIfPresent(T.self, forKey: key)
10 |     }
[492/555] Compiling DewdropRESTAPI Network+Decodable.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/Account+Decodable.swift:25:30: error: missing argument for parameter 'email' in call
23 |
24 | 		try self.init(
25 | 			user: .init(from: decoder),
   |                              `- error: missing argument for parameter 'email' in call
26 | 			hasPassword: container.decode(for: .hasPassword),
27 | 			fileStorage: container.decode(for: .fileStorage),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/Account.swift:7:1: note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 5 | import struct Foundation.Date
 6 |
 7 | @MemberwiseInit(.public)
   | `- note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 8 | public struct Account: Sendable {
 9 | 	public let user: User
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:17:16: error: extra arguments at positions #2, #3 in call
15 | 	public init(from decoder: any Decoder) throws {
16 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
17 | 		try self.init(
   |                `- error: extra arguments at positions #2, #3 in call
18 | 			fullName: container.decodeIfPresent(for: .fullName) ?? container.decode(for: .name),
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:5:1: note: 'init(fullName:hasProSubscription:)' declared here
 3 | import MemberwiseInit
 4 |
 5 | @MemberwiseInit(.public)
   | `- note: 'init(fullName:hasProSubscription:)' declared here
 6 | public struct User: Sendable {
 7 | 	public let fullName: String
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: generic parameter 'T' could not be inferred
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: generic parameter 'T' could not be inferred
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AutoCodable/Sources/AutoCodable/Extensions/KeyedDecodingContainer+Decode.swift:8:10: note: in call to function 'decodeIfPresent(for:)'
 6 |     }
 7 |
 8 |     func decodeIfPresent<T: Decodable>(for key: KeyedDecodingContainer<K>.Key) throws -> T? {
   |          `- note: in call to function 'decodeIfPresent(for:)'
 9 |         try decodeIfPresent(T.self, forKey: key)
10 |     }
[493/555] Compiling DewdropRESTAPI User+Decodable.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/Account+Decodable.swift:25:30: error: missing argument for parameter 'email' in call
23 |
24 | 		try self.init(
25 | 			user: .init(from: decoder),
   |                              `- error: missing argument for parameter 'email' in call
26 | 			hasPassword: container.decode(for: .hasPassword),
27 | 			fileStorage: container.decode(for: .fileStorage),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/Account.swift:7:1: note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 5 | import struct Foundation.Date
 6 |
 7 | @MemberwiseInit(.public)
   | `- note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 8 | public struct Account: Sendable {
 9 | 	public let user: User
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:17:16: error: extra arguments at positions #2, #3 in call
15 | 	public init(from decoder: any Decoder) throws {
16 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
17 | 		try self.init(
   |                `- error: extra arguments at positions #2, #3 in call
18 | 			fullName: container.decodeIfPresent(for: .fullName) ?? container.decode(for: .name),
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:5:1: note: 'init(fullName:hasProSubscription:)' declared here
 3 | import MemberwiseInit
 4 |
 5 | @MemberwiseInit(.public)
   | `- note: 'init(fullName:hasProSubscription:)' declared here
 6 | public struct User: Sendable {
 7 | 	public let fullName: String
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: generic parameter 'T' could not be inferred
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: generic parameter 'T' could not be inferred
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AutoCodable/Sources/AutoCodable/Extensions/KeyedDecodingContainer+Decode.swift:8:10: note: in call to function 'decodeIfPresent(for:)'
 6 |     }
 7 |
 8 |     func decodeIfPresent<T: Decodable>(for key: KeyedDecodingContainer<K>.Key) throws -> T? {
   |          `- note: in call to function 'decodeIfPresent(for:)'
 9 |         try decodeIfPresent(T.self, forKey: key)
10 |     }
[494/555] Compiling DewdropRESTAPI GrantType+Encodable.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/Account+Decodable.swift:25:30: error: missing argument for parameter 'email' in call
23 |
24 | 		try self.init(
25 | 			user: .init(from: decoder),
   |                              `- error: missing argument for parameter 'email' in call
26 | 			hasPassword: container.decode(for: .hasPassword),
27 | 			fileStorage: container.decode(for: .fileStorage),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/Account.swift:7:1: note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 5 | import struct Foundation.Date
 6 |
 7 | @MemberwiseInit(.public)
   | `- note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 8 | public struct Account: Sendable {
 9 | 	public let user: User
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:17:16: error: extra arguments at positions #2, #3 in call
15 | 	public init(from decoder: any Decoder) throws {
16 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
17 | 		try self.init(
   |                `- error: extra arguments at positions #2, #3 in call
18 | 			fullName: container.decodeIfPresent(for: .fullName) ?? container.decode(for: .name),
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:5:1: note: 'init(fullName:hasProSubscription:)' declared here
 3 | import MemberwiseInit
 4 |
 5 | @MemberwiseInit(.public)
   | `- note: 'init(fullName:hasProSubscription:)' declared here
 6 | public struct User: Sendable {
 7 | 	public let fullName: String
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: generic parameter 'T' could not be inferred
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: generic parameter 'T' could not be inferred
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AutoCodable/Sources/AutoCodable/Extensions/KeyedDecodingContainer+Decode.swift:8:10: note: in call to function 'decodeIfPresent(for:)'
 6 |     }
 7 |
 8 |     func decodeIfPresent<T: Decodable>(for key: KeyedDecodingContainer<K>.Key) throws -> T? {
   |          `- note: in call to function 'decodeIfPresent(for:)'
 9 |         try decodeIfPresent(T.self, forKey: key)
10 |     }
[495/555] Compiling DewdropRESTAPI Role+Encodable.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/Account+Decodable.swift:25:30: error: missing argument for parameter 'email' in call
23 |
24 | 		try self.init(
25 | 			user: .init(from: decoder),
   |                              `- error: missing argument for parameter 'email' in call
26 | 			hasPassword: container.decode(for: .hasPassword),
27 | 			fileStorage: container.decode(for: .fileStorage),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/Account.swift:7:1: note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 5 | import struct Foundation.Date
 6 |
 7 | @MemberwiseInit(.public)
   | `- note: 'init(user:email:hasPassword:fileStorage:registrationDate:proSubscriptionExpirationDate:facebook:twitter:vkontakte:google:dropbox:gdrive:)' declared here
 8 | public struct Account: Sendable {
 9 | 	public let user: User
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:17:16: error: extra arguments at positions #2, #3 in call
15 | 	public init(from decoder: any Decoder) throws {
16 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
17 | 		try self.init(
   |                `- error: extra arguments at positions #2, #3 in call
18 | 			fullName: container.decodeIfPresent(for: .fullName) ?? container.decode(for: .name),
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:5:1: note: 'init(fullName:hasProSubscription:)' declared here
 3 | import MemberwiseInit
 4 |
 5 | @MemberwiseInit(.public)
   | `- note: 'init(fullName:hasProSubscription:)' declared here
 6 | public struct User: Sendable {
 7 | 	public let fullName: String
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: optional type 'T?' cannot be used as a boolean; test for '!= nil' instead
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Serialization/Decoding/User/User+Decodable.swift:21:34: error: generic parameter 'T' could not be inferred
19 | 			email: container.decode(String.self, forKey: .email).filledValue,
20 | 			avatarURL: container.decode(String.self, forKey: .avatarURL).filledValue.flatMap(URL.init(string:)),
21 | 			hasProSubscription: container.decodeIfPresent(for: .hasProSubscription)
   |                                  `- error: generic parameter 'T' could not be inferred
22 | 		)
23 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AutoCodable/Sources/AutoCodable/Extensions/KeyedDecodingContainer+Decode.swift:8:10: note: in call to function 'decodeIfPresent(for:)'
 6 |     }
 7 |
 8 |     func decodeIfPresent<T: Decodable>(for key: KeyedDecodingContainer<K>.Key) throws -> T? {
   |          `- note: in call to function 'decodeIfPresent(for:)'
 9 |         try decodeIfPresent(T.self, forKey: key)
10 |     }
[496/555] Compiling DewdropRESTAPI CollaboratorDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:13:32: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 | public struct CollectionDetails: CollectionFields {
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
   |                                `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
14 | 	public let owner: User.IDFields
15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:14:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
14 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
15 |
16 | 	private let collection: Collection
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:3:24: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 1 | public init(
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   |   |                        `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
   | 4 |     owner: User.IDFields,
   | 5 |     collection: Collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
macro expansion @_UncheckedMemberwiseInit:4:17: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   | 4 |     owner: User.IDFields,
   |   |                 `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
   | 5 |     collection: Collection
   | 6 | ) {
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:8:10: error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 6 | ) {
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
   | 9 |     self.owner = owner
   |10 |     self.collection = collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
macro expansion @_UncheckedMemberwiseInit:9:10: error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   | 9 |     self.owner = owner
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
   |10 |     self.collection = collection
   |11 | }
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:37:12: error: type of expression is ambiguous without a type annotation
35 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
36 |
37 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
38 | 			id: container.decode(for: .id),
39 | 			parent: container.decodeIfPresent(for: .parent),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:10:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 8 | @dynamicMemberLookup
 9 | public struct GroupDetails: GroupFields {
10 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 |
12 | 	private let group: Group
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:19:8: error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
17 | 	) {
18 | 		self.group = group
19 | 		self.collections = collectionIDs.map(IDFields.init)
   |        `- error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
20 | 	}
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:15:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
13 | public struct RaindropDetails<CreatorFields: UserFields & Decodable>: RaindropFields {
14 | 	public let id: Raindrop.ID
15 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:17:36: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
15 | 	public let owner: User.IDFields
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
   |                                    `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
18 | 	public let tags: [TagNameFields]
19 | 	public let highlights: [HighlightInRaindropDetails]?
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:45:12: error: type of expression is ambiguous without a type annotation
43 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
44 |
45 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
46 | 			id: container.decode(for: .id),
47 | 			owner: container.decode(for: .owner),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:7:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 5 | import struct Dewdrop.User
 6 | import struct Dewdrop.Account
 7 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 8 |
 9 | @dynamicMemberLookup
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:10:41: error: cannot find type 'UserAuthenticatedFields' in scope
 8 |
 9 | @dynamicMemberLookup
10 | public struct UserAuthenticatedDetails: UserAuthenticatedFields {
   |                                         `- error: cannot find type 'UserAuthenticatedFields' in scope
11 | 	public let id: User.ID
12 | 	public let config: ConfigFields
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/User/ConfigFields.swift:9:46: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 | @dynamicMemberLookup
 8 | public struct ConfigFields: Sendable /* TODO */ {
 9 | 	public let lastViewedCollection: Collection.IDFields
   |                                              `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 |
11 | 	private let config: User.Config
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
[497/555] Compiling DewdropRESTAPI CollectionDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:13:32: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 | public struct CollectionDetails: CollectionFields {
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
   |                                `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
14 | 	public let owner: User.IDFields
15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:14:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
14 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
15 |
16 | 	private let collection: Collection
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:3:24: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 1 | public init(
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   |   |                        `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
   | 4 |     owner: User.IDFields,
   | 5 |     collection: Collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
macro expansion @_UncheckedMemberwiseInit:4:17: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   | 4 |     owner: User.IDFields,
   |   |                 `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
   | 5 |     collection: Collection
   | 6 | ) {
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:8:10: error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 6 | ) {
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
   | 9 |     self.owner = owner
   |10 |     self.collection = collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
macro expansion @_UncheckedMemberwiseInit:9:10: error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   | 9 |     self.owner = owner
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
   |10 |     self.collection = collection
   |11 | }
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:37:12: error: type of expression is ambiguous without a type annotation
35 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
36 |
37 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
38 | 			id: container.decode(for: .id),
39 | 			parent: container.decodeIfPresent(for: .parent),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:10:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 8 | @dynamicMemberLookup
 9 | public struct GroupDetails: GroupFields {
10 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 |
12 | 	private let group: Group
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:19:8: error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
17 | 	) {
18 | 		self.group = group
19 | 		self.collections = collectionIDs.map(IDFields.init)
   |        `- error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
20 | 	}
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:15:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
13 | public struct RaindropDetails<CreatorFields: UserFields & Decodable>: RaindropFields {
14 | 	public let id: Raindrop.ID
15 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:17:36: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
15 | 	public let owner: User.IDFields
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
   |                                    `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
18 | 	public let tags: [TagNameFields]
19 | 	public let highlights: [HighlightInRaindropDetails]?
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:45:12: error: type of expression is ambiguous without a type annotation
43 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
44 |
45 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
46 | 			id: container.decode(for: .id),
47 | 			owner: container.decode(for: .owner),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:7:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 5 | import struct Dewdrop.User
 6 | import struct Dewdrop.Account
 7 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 8 |
 9 | @dynamicMemberLookup
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:10:41: error: cannot find type 'UserAuthenticatedFields' in scope
 8 |
 9 | @dynamicMemberLookup
10 | public struct UserAuthenticatedDetails: UserAuthenticatedFields {
   |                                         `- error: cannot find type 'UserAuthenticatedFields' in scope
11 | 	public let id: User.ID
12 | 	public let config: ConfigFields
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/User/ConfigFields.swift:9:46: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 | @dynamicMemberLookup
 8 | public struct ConfigFields: Sendable /* TODO */ {
 9 | 	public let lastViewedCollection: Collection.IDFields
   |                                              `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 |
11 | 	private let config: User.Config
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
[498/555] Compiling DewdropRESTAPI FolderDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:13:32: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 | public struct CollectionDetails: CollectionFields {
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
   |                                `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
14 | 	public let owner: User.IDFields
15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:14:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
14 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
15 |
16 | 	private let collection: Collection
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:3:24: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 1 | public init(
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   |   |                        `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
   | 4 |     owner: User.IDFields,
   | 5 |     collection: Collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
macro expansion @_UncheckedMemberwiseInit:4:17: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   | 4 |     owner: User.IDFields,
   |   |                 `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
   | 5 |     collection: Collection
   | 6 | ) {
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:8:10: error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 6 | ) {
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
   | 9 |     self.owner = owner
   |10 |     self.collection = collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
macro expansion @_UncheckedMemberwiseInit:9:10: error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   | 9 |     self.owner = owner
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
   |10 |     self.collection = collection
   |11 | }
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:37:12: error: type of expression is ambiguous without a type annotation
35 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
36 |
37 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
38 | 			id: container.decode(for: .id),
39 | 			parent: container.decodeIfPresent(for: .parent),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:10:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 8 | @dynamicMemberLookup
 9 | public struct GroupDetails: GroupFields {
10 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 |
12 | 	private let group: Group
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:19:8: error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
17 | 	) {
18 | 		self.group = group
19 | 		self.collections = collectionIDs.map(IDFields.init)
   |        `- error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
20 | 	}
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:15:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
13 | public struct RaindropDetails<CreatorFields: UserFields & Decodable>: RaindropFields {
14 | 	public let id: Raindrop.ID
15 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:17:36: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
15 | 	public let owner: User.IDFields
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
   |                                    `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
18 | 	public let tags: [TagNameFields]
19 | 	public let highlights: [HighlightInRaindropDetails]?
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:45:12: error: type of expression is ambiguous without a type annotation
43 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
44 |
45 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
46 | 			id: container.decode(for: .id),
47 | 			owner: container.decode(for: .owner),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:7:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 5 | import struct Dewdrop.User
 6 | import struct Dewdrop.Account
 7 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 8 |
 9 | @dynamicMemberLookup
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:10:41: error: cannot find type 'UserAuthenticatedFields' in scope
 8 |
 9 | @dynamicMemberLookup
10 | public struct UserAuthenticatedDetails: UserAuthenticatedFields {
   |                                         `- error: cannot find type 'UserAuthenticatedFields' in scope
11 | 	public let id: User.ID
12 | 	public let config: ConfigFields
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/User/ConfigFields.swift:9:46: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 | @dynamicMemberLookup
 8 | public struct ConfigFields: Sendable /* TODO */ {
 9 | 	public let lastViewedCollection: Collection.IDFields
   |                                              `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 |
11 | 	private let config: User.Config
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
[499/555] Compiling DewdropRESTAPI GroupDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:13:32: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 | public struct CollectionDetails: CollectionFields {
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
   |                                `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
14 | 	public let owner: User.IDFields
15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:14:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
14 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
15 |
16 | 	private let collection: Collection
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:3:24: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 1 | public init(
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   |   |                        `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
   | 4 |     owner: User.IDFields,
   | 5 |     collection: Collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
macro expansion @_UncheckedMemberwiseInit:4:17: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   | 4 |     owner: User.IDFields,
   |   |                 `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
   | 5 |     collection: Collection
   | 6 | ) {
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:8:10: error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 6 | ) {
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
   | 9 |     self.owner = owner
   |10 |     self.collection = collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
macro expansion @_UncheckedMemberwiseInit:9:10: error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   | 9 |     self.owner = owner
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
   |10 |     self.collection = collection
   |11 | }
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:37:12: error: type of expression is ambiguous without a type annotation
35 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
36 |
37 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
38 | 			id: container.decode(for: .id),
39 | 			parent: container.decodeIfPresent(for: .parent),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:10:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 8 | @dynamicMemberLookup
 9 | public struct GroupDetails: GroupFields {
10 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 |
12 | 	private let group: Group
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:19:8: error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
17 | 	) {
18 | 		self.group = group
19 | 		self.collections = collectionIDs.map(IDFields.init)
   |        `- error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
20 | 	}
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:15:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
13 | public struct RaindropDetails<CreatorFields: UserFields & Decodable>: RaindropFields {
14 | 	public let id: Raindrop.ID
15 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:17:36: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
15 | 	public let owner: User.IDFields
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
   |                                    `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
18 | 	public let tags: [TagNameFields]
19 | 	public let highlights: [HighlightInRaindropDetails]?
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:45:12: error: type of expression is ambiguous without a type annotation
43 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
44 |
45 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
46 | 			id: container.decode(for: .id),
47 | 			owner: container.decode(for: .owner),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:7:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 5 | import struct Dewdrop.User
 6 | import struct Dewdrop.Account
 7 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 8 |
 9 | @dynamicMemberLookup
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:10:41: error: cannot find type 'UserAuthenticatedFields' in scope
 8 |
 9 | @dynamicMemberLookup
10 | public struct UserAuthenticatedDetails: UserAuthenticatedFields {
   |                                         `- error: cannot find type 'UserAuthenticatedFields' in scope
11 | 	public let id: User.ID
12 | 	public let config: ConfigFields
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/User/ConfigFields.swift:9:46: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 | @dynamicMemberLookup
 8 | public struct ConfigFields: Sendable /* TODO */ {
 9 | 	public let lastViewedCollection: Collection.IDFields
   |                                              `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 |
11 | 	private let config: User.Config
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
[500/555] Compiling DewdropRESTAPI HighlightDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:13:32: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 | public struct CollectionDetails: CollectionFields {
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
   |                                `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
14 | 	public let owner: User.IDFields
15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:14:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
14 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
15 |
16 | 	private let collection: Collection
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:3:24: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 1 | public init(
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   |   |                        `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
   | 4 |     owner: User.IDFields,
   | 5 |     collection: Collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
macro expansion @_UncheckedMemberwiseInit:4:17: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   | 4 |     owner: User.IDFields,
   |   |                 `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
   | 5 |     collection: Collection
   | 6 | ) {
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:8:10: error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 6 | ) {
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
   | 9 |     self.owner = owner
   |10 |     self.collection = collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
macro expansion @_UncheckedMemberwiseInit:9:10: error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   | 9 |     self.owner = owner
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
   |10 |     self.collection = collection
   |11 | }
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:37:12: error: type of expression is ambiguous without a type annotation
35 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
36 |
37 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
38 | 			id: container.decode(for: .id),
39 | 			parent: container.decodeIfPresent(for: .parent),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:10:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 8 | @dynamicMemberLookup
 9 | public struct GroupDetails: GroupFields {
10 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 |
12 | 	private let group: Group
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:19:8: error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
17 | 	) {
18 | 		self.group = group
19 | 		self.collections = collectionIDs.map(IDFields.init)
   |        `- error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
20 | 	}
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:15:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
13 | public struct RaindropDetails<CreatorFields: UserFields & Decodable>: RaindropFields {
14 | 	public let id: Raindrop.ID
15 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:17:36: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
15 | 	public let owner: User.IDFields
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
   |                                    `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
18 | 	public let tags: [TagNameFields]
19 | 	public let highlights: [HighlightInRaindropDetails]?
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:45:12: error: type of expression is ambiguous without a type annotation
43 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
44 |
45 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
46 | 			id: container.decode(for: .id),
47 | 			owner: container.decode(for: .owner),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:7:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 5 | import struct Dewdrop.User
 6 | import struct Dewdrop.Account
 7 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 8 |
 9 | @dynamicMemberLookup
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:10:41: error: cannot find type 'UserAuthenticatedFields' in scope
 8 |
 9 | @dynamicMemberLookup
10 | public struct UserAuthenticatedDetails: UserAuthenticatedFields {
   |                                         `- error: cannot find type 'UserAuthenticatedFields' in scope
11 | 	public let id: User.ID
12 | 	public let config: ConfigFields
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/User/ConfigFields.swift:9:46: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 | @dynamicMemberLookup
 8 | public struct ConfigFields: Sendable /* TODO */ {
 9 | 	public let lastViewedCollection: Collection.IDFields
   |                                              `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 |
11 | 	private let config: User.Config
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
[501/555] Compiling DewdropRESTAPI HighlightInRaindropDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:13:32: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 | public struct CollectionDetails: CollectionFields {
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
   |                                `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
14 | 	public let owner: User.IDFields
15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:14:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
14 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
15 |
16 | 	private let collection: Collection
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:3:24: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 1 | public init(
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   |   |                        `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
   | 4 |     owner: User.IDFields,
   | 5 |     collection: Collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
macro expansion @_UncheckedMemberwiseInit:4:17: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   | 4 |     owner: User.IDFields,
   |   |                 `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
   | 5 |     collection: Collection
   | 6 | ) {
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:8:10: error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 6 | ) {
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
   | 9 |     self.owner = owner
   |10 |     self.collection = collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
macro expansion @_UncheckedMemberwiseInit:9:10: error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   | 9 |     self.owner = owner
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
   |10 |     self.collection = collection
   |11 | }
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:37:12: error: type of expression is ambiguous without a type annotation
35 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
36 |
37 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
38 | 			id: container.decode(for: .id),
39 | 			parent: container.decodeIfPresent(for: .parent),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:10:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 8 | @dynamicMemberLookup
 9 | public struct GroupDetails: GroupFields {
10 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 |
12 | 	private let group: Group
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:19:8: error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
17 | 	) {
18 | 		self.group = group
19 | 		self.collections = collectionIDs.map(IDFields.init)
   |        `- error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
20 | 	}
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:15:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
13 | public struct RaindropDetails<CreatorFields: UserFields & Decodable>: RaindropFields {
14 | 	public let id: Raindrop.ID
15 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:17:36: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
15 | 	public let owner: User.IDFields
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
   |                                    `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
18 | 	public let tags: [TagNameFields]
19 | 	public let highlights: [HighlightInRaindropDetails]?
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:45:12: error: type of expression is ambiguous without a type annotation
43 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
44 |
45 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
46 | 			id: container.decode(for: .id),
47 | 			owner: container.decode(for: .owner),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:7:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 5 | import struct Dewdrop.User
 6 | import struct Dewdrop.Account
 7 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 8 |
 9 | @dynamicMemberLookup
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:10:41: error: cannot find type 'UserAuthenticatedFields' in scope
 8 |
 9 | @dynamicMemberLookup
10 | public struct UserAuthenticatedDetails: UserAuthenticatedFields {
   |                                         `- error: cannot find type 'UserAuthenticatedFields' in scope
11 | 	public let id: User.ID
12 | 	public let config: ConfigFields
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/User/ConfigFields.swift:9:46: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 | @dynamicMemberLookup
 8 | public struct ConfigFields: Sendable /* TODO */ {
 9 | 	public let lastViewedCollection: Collection.IDFields
   |                                              `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 |
11 | 	private let config: User.Config
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
[502/555] Compiling DewdropRESTAPI RaindropDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:13:32: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 | public struct CollectionDetails: CollectionFields {
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
   |                                `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
14 | 	public let owner: User.IDFields
15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:14:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
14 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
15 |
16 | 	private let collection: Collection
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:3:24: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 1 | public init(
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   |   |                        `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
   | 4 |     owner: User.IDFields,
   | 5 |     collection: Collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
macro expansion @_UncheckedMemberwiseInit:4:17: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   | 4 |     owner: User.IDFields,
   |   |                 `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
   | 5 |     collection: Collection
   | 6 | ) {
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:8:10: error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 6 | ) {
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
   | 9 |     self.owner = owner
   |10 |     self.collection = collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
macro expansion @_UncheckedMemberwiseInit:9:10: error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   | 9 |     self.owner = owner
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
   |10 |     self.collection = collection
   |11 | }
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:37:12: error: type of expression is ambiguous without a type annotation
35 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
36 |
37 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
38 | 			id: container.decode(for: .id),
39 | 			parent: container.decodeIfPresent(for: .parent),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:10:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 8 | @dynamicMemberLookup
 9 | public struct GroupDetails: GroupFields {
10 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 |
12 | 	private let group: Group
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:19:8: error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
17 | 	) {
18 | 		self.group = group
19 | 		self.collections = collectionIDs.map(IDFields.init)
   |        `- error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
20 | 	}
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:15:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
13 | public struct RaindropDetails<CreatorFields: UserFields & Decodable>: RaindropFields {
14 | 	public let id: Raindrop.ID
15 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:17:36: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
15 | 	public let owner: User.IDFields
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
   |                                    `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
18 | 	public let tags: [TagNameFields]
19 | 	public let highlights: [HighlightInRaindropDetails]?
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:45:12: error: type of expression is ambiguous without a type annotation
43 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
44 |
45 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
46 | 			id: container.decode(for: .id),
47 | 			owner: container.decode(for: .owner),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:7:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 5 | import struct Dewdrop.User
 6 | import struct Dewdrop.Account
 7 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 8 |
 9 | @dynamicMemberLookup
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:10:41: error: cannot find type 'UserAuthenticatedFields' in scope
 8 |
 9 | @dynamicMemberLookup
10 | public struct UserAuthenticatedDetails: UserAuthenticatedFields {
   |                                         `- error: cannot find type 'UserAuthenticatedFields' in scope
11 | 	public let id: User.ID
12 | 	public let config: ConfigFields
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/User/ConfigFields.swift:9:46: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 | @dynamicMemberLookup
 8 | public struct ConfigFields: Sendable /* TODO */ {
 9 | 	public let lastViewedCollection: Collection.IDFields
   |                                              `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 |
11 | 	private let config: User.Config
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
[503/555] Compiling DewdropRESTAPI RaindropHighlightDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:13:32: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 | public struct CollectionDetails: CollectionFields {
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
   |                                `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
14 | 	public let owner: User.IDFields
15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:14:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
14 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
15 |
16 | 	private let collection: Collection
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:3:24: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 1 | public init(
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   |   |                        `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
   | 4 |     owner: User.IDFields,
   | 5 |     collection: Collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
macro expansion @_UncheckedMemberwiseInit:4:17: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   | 4 |     owner: User.IDFields,
   |   |                 `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
   | 5 |     collection: Collection
   | 6 | ) {
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:8:10: error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 6 | ) {
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
   | 9 |     self.owner = owner
   |10 |     self.collection = collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
macro expansion @_UncheckedMemberwiseInit:9:10: error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   | 9 |     self.owner = owner
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
   |10 |     self.collection = collection
   |11 | }
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:37:12: error: type of expression is ambiguous without a type annotation
35 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
36 |
37 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
38 | 			id: container.decode(for: .id),
39 | 			parent: container.decodeIfPresent(for: .parent),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:10:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 8 | @dynamicMemberLookup
 9 | public struct GroupDetails: GroupFields {
10 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 |
12 | 	private let group: Group
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:19:8: error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
17 | 	) {
18 | 		self.group = group
19 | 		self.collections = collectionIDs.map(IDFields.init)
   |        `- error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
20 | 	}
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:15:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
13 | public struct RaindropDetails<CreatorFields: UserFields & Decodable>: RaindropFields {
14 | 	public let id: Raindrop.ID
15 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:17:36: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
15 | 	public let owner: User.IDFields
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
   |                                    `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
18 | 	public let tags: [TagNameFields]
19 | 	public let highlights: [HighlightInRaindropDetails]?
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:45:12: error: type of expression is ambiguous without a type annotation
43 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
44 |
45 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
46 | 			id: container.decode(for: .id),
47 | 			owner: container.decode(for: .owner),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:7:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 5 | import struct Dewdrop.User
 6 | import struct Dewdrop.Account
 7 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 8 |
 9 | @dynamicMemberLookup
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:10:41: error: cannot find type 'UserAuthenticatedFields' in scope
 8 |
 9 | @dynamicMemberLookup
10 | public struct UserAuthenticatedDetails: UserAuthenticatedFields {
   |                                         `- error: cannot find type 'UserAuthenticatedFields' in scope
11 | 	public let id: User.ID
12 | 	public let config: ConfigFields
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/User/ConfigFields.swift:9:46: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 | @dynamicMemberLookup
 8 | public struct ConfigFields: Sendable /* TODO */ {
 9 | 	public let lastViewedCollection: Collection.IDFields
   |                                              `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 |
11 | 	private let config: User.Config
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
[504/555] Compiling DewdropRESTAPI UserAuthenticatedDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:13:32: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 | public struct CollectionDetails: CollectionFields {
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
   |                                `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
14 | 	public let owner: User.IDFields
15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:14:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
14 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
15 |
16 | 	private let collection: Collection
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:3:24: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 1 | public init(
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   |   |                        `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
   | 4 |     owner: User.IDFields,
   | 5 |     collection: Collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
macro expansion @_UncheckedMemberwiseInit:4:17: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   | 4 |     owner: User.IDFields,
   |   |                 `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
   | 5 |     collection: Collection
   | 6 | ) {
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:8:10: error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 6 | ) {
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
   | 9 |     self.owner = owner
   |10 |     self.collection = collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
macro expansion @_UncheckedMemberwiseInit:9:10: error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   | 9 |     self.owner = owner
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
   |10 |     self.collection = collection
   |11 | }
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:37:12: error: type of expression is ambiguous without a type annotation
35 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
36 |
37 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
38 | 			id: container.decode(for: .id),
39 | 			parent: container.decodeIfPresent(for: .parent),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:10:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 8 | @dynamicMemberLookup
 9 | public struct GroupDetails: GroupFields {
10 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 |
12 | 	private let group: Group
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:19:8: error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
17 | 	) {
18 | 		self.group = group
19 | 		self.collections = collectionIDs.map(IDFields.init)
   |        `- error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
20 | 	}
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:15:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
13 | public struct RaindropDetails<CreatorFields: UserFields & Decodable>: RaindropFields {
14 | 	public let id: Raindrop.ID
15 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:17:36: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
15 | 	public let owner: User.IDFields
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
   |                                    `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
18 | 	public let tags: [TagNameFields]
19 | 	public let highlights: [HighlightInRaindropDetails]?
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:45:12: error: type of expression is ambiguous without a type annotation
43 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
44 |
45 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
46 | 			id: container.decode(for: .id),
47 | 			owner: container.decode(for: .owner),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:7:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 5 | import struct Dewdrop.User
 6 | import struct Dewdrop.Account
 7 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 8 |
 9 | @dynamicMemberLookup
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:10:41: error: cannot find type 'UserAuthenticatedFields' in scope
 8 |
 9 | @dynamicMemberLookup
10 | public struct UserAuthenticatedDetails: UserAuthenticatedFields {
   |                                         `- error: cannot find type 'UserAuthenticatedFields' in scope
11 | 	public let id: User.ID
12 | 	public let config: ConfigFields
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/User/ConfigFields.swift:9:46: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 | @dynamicMemberLookup
 8 | public struct ConfigFields: Sendable /* TODO */ {
 9 | 	public let lastViewedCollection: Collection.IDFields
   |                                              `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 |
11 | 	private let config: User.Config
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
[505/555] Compiling DewdropRESTAPI UserPublicDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:13:32: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 | public struct CollectionDetails: CollectionFields {
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
   |                                `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
14 | 	public let owner: User.IDFields
15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:14:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
14 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
15 |
16 | 	private let collection: Collection
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:3:24: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 1 | public init(
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   |   |                        `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
   | 4 |     owner: User.IDFields,
   | 5 |     collection: Collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
macro expansion @_UncheckedMemberwiseInit:4:17: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   | 4 |     owner: User.IDFields,
   |   |                 `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
   | 5 |     collection: Collection
   | 6 | ) {
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:8:10: error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 6 | ) {
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'parent' using key path from root type 'Collection'
   | 9 |     self.owner = owner
   |10 |     self.collection = collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
macro expansion @_UncheckedMemberwiseInit:9:10: error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 7 |     self.id = id
   | 8 |     self.parent = parent
   | 9 |     self.owner = owner
   |   |          `- error: value of type 'CollectionDetails' has no dynamic member 'owner' using key path from root type 'Collection'
   |10 |     self.collection = collection
   |11 | }
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:37:12: error: type of expression is ambiguous without a type annotation
35 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
36 |
37 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
38 | 			id: container.decode(for: .id),
39 | 			parent: container.decodeIfPresent(for: .parent),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:10:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 8 | @dynamicMemberLookup
 9 | public struct GroupDetails: GroupFields {
10 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 |
12 | 	private let group: Group
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:19:8: error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
17 | 	) {
18 | 		self.group = group
19 | 		self.collections = collectionIDs.map(IDFields.init)
   |        `- error: value of type 'GroupDetails' has no dynamic member 'collections' using key path from root type 'Group'
20 | 	}
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:15:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
13 | public struct RaindropDetails<CreatorFields: UserFields & Decodable>: RaindropFields {
14 | 	public let id: Raindrop.ID
15 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:17:36: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
15 | 	public let owner: User.IDFields
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
   |                                    `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
18 | 	public let tags: [TagNameFields]
19 | 	public let highlights: [HighlightInRaindropDetails]?
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:45:12: error: type of expression is ambiguous without a type annotation
43 | 		let container = try decoder.container(keyedBy: CodingKeys.self)
44 |
45 | 		try self.init(
   |            `- error: type of expression is ambiguous without a type annotation
46 | 			id: container.decode(for: .id),
47 | 			owner: container.decode(for: .owner),
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:7:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 5 | import struct Dewdrop.User
 6 | import struct Dewdrop.Account
 7 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 8 |
 9 | @dynamicMemberLookup
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:10:41: error: cannot find type 'UserAuthenticatedFields' in scope
 8 |
 9 | @dynamicMemberLookup
10 | public struct UserAuthenticatedDetails: UserAuthenticatedFields {
   |                                         `- error: cannot find type 'UserAuthenticatedFields' in scope
11 | 	public let id: User.ID
12 | 	public let config: ConfigFields
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/User/ConfigFields.swift:9:46: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 | @dynamicMemberLookup
 8 | public struct ConfigFields: Sendable /* TODO */ {
 9 | 	public let lastViewedCollection: Collection.IDFields
   |                                              `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 |
11 | 	private let config: User.Config
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
[506/555] Compiling DewdropRESTAPI CollaboratorEmailsFields.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:3:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
1 | // Copyright © Fleuronic LLC. All rights reserved.
2 |
3 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:5:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
3 | import protocol DewdropService.CollaboratorFields
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
6 | 	public let emails: [String]
7 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:4:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
2 |
3 | import struct Dewdrop.Collaborator
4 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:6:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
4 | import protocol DewdropService.CollaboratorFields
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
7 | 	public let role: Collaborator.Role
8 | }
[507/555] Compiling DewdropRESTAPI CollaboratorRoleFields.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:3:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
1 | // Copyright © Fleuronic LLC. All rights reserved.
2 |
3 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:5:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
3 | import protocol DewdropService.CollaboratorFields
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
6 | 	public let emails: [String]
7 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:4:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
2 |
3 | import struct Dewdrop.Collaborator
4 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:6:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
4 | import protocol DewdropService.CollaboratorFields
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
7 | 	public let role: Collaborator.Role
8 | }
[508/555] Compiling DewdropRESTAPI CollectionCountFields.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:3:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
1 | // Copyright © Fleuronic LLC. All rights reserved.
2 |
3 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:5:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
3 | import protocol DewdropService.CollaboratorFields
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
6 | 	public let emails: [String]
7 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:4:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
2 |
3 | import struct Dewdrop.Collaborator
4 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:6:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
4 | import protocol DewdropService.CollaboratorFields
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
7 | 	public let role: Collaborator.Role
8 | }
[509/555] Compiling DewdropRESTAPI CollectionMergeFields.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:3:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
1 | // Copyright © Fleuronic LLC. All rights reserved.
2 |
3 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:5:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
3 | import protocol DewdropService.CollaboratorFields
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
6 | 	public let emails: [String]
7 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:4:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
2 |
3 | import struct Dewdrop.Collaborator
4 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:6:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
4 | import protocol DewdropService.CollaboratorFields
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
7 | 	public let role: Collaborator.Role
8 | }
[510/555] Compiling DewdropRESTAPI CoverFields.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:3:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
1 | // Copyright © Fleuronic LLC. All rights reserved.
2 |
3 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:5:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
3 | import protocol DewdropService.CollaboratorFields
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
6 | 	public let emails: [String]
7 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:4:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
2 |
3 | import struct Dewdrop.Collaborator
4 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:6:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
4 | import protocol DewdropService.CollaboratorFields
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
7 | 	public let role: Collaborator.Role
8 | }
[511/555] Compiling DewdropRESTAPI FilterCountFields.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:3:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
1 | // Copyright © Fleuronic LLC. All rights reserved.
2 |
3 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:5:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
3 | import protocol DewdropService.CollaboratorFields
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
6 | 	public let emails: [String]
7 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:4:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
2 |
3 | import struct Dewdrop.Collaborator
4 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:6:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
4 | import protocol DewdropService.CollaboratorFields
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
7 | 	public let role: Collaborator.Role
8 | }
[512/555] Compiling DewdropRESTAPI FilterOverviewFields.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:3:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
1 | // Copyright © Fleuronic LLC. All rights reserved.
2 |
3 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:5:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
3 | import protocol DewdropService.CollaboratorFields
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
6 | 	public let emails: [String]
7 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:4:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
2 |
3 | import struct Dewdrop.Collaborator
4 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:6:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
4 | import protocol DewdropService.CollaboratorFields
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
7 | 	public let role: Collaborator.Role
8 | }
[513/555] Compiling DewdropRESTAPI FilterOverviewTotalFields.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:3:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
1 | // Copyright © Fleuronic LLC. All rights reserved.
2 |
3 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:5:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
3 | import protocol DewdropService.CollaboratorFields
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
6 | 	public let emails: [String]
7 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:4:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
2 |
3 | import struct Dewdrop.Collaborator
4 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:6:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
4 | import protocol DewdropService.CollaboratorFields
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
7 | 	public let role: Collaborator.Role
8 | }
[514/555] Compiling DewdropRESTAPI HighlightImportFields.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:3:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
1 | // Copyright © Fleuronic LLC. All rights reserved.
2 |
3 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:5:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
3 | import protocol DewdropService.CollaboratorFields
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
6 | 	public let emails: [String]
7 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:4:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
2 |
3 | import struct Dewdrop.Collaborator
4 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:6:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
4 | import protocol DewdropService.CollaboratorFields
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
7 | 	public let role: Collaborator.Role
8 | }
[515/555] Compiling DewdropRESTAPI ImportFolderCountFields.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:3:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
1 | // Copyright © Fleuronic LLC. All rights reserved.
2 |
3 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:5:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
3 | import protocol DewdropService.CollaboratorFields
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
6 | 	public let emails: [String]
7 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:4:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
2 |
3 | import struct Dewdrop.Collaborator
4 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:6:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
4 | import protocol DewdropService.CollaboratorFields
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
7 | 	public let role: Collaborator.Role
8 | }
[516/555] Compiling DewdropRESTAPI IconSet+Decodable.swift
[517/555] Compiling DewdropRESTAPI Level+Decodable.swift
[518/555] Compiling DewdropRESTAPI Role+Decodable.swift
[519/555] Compiling DewdropRESTAPI View+Decodable.swift
[520/555] Compiling DewdropRESTAPI Decoder.swift
[521/555] Compiling DewdropRESTAPI Filled.swift
[522/555] Compiling DewdropRESTAPI Filter+Decodable.swift
[523/555] Compiling DewdropRESTAPI Color+Decodable.swift
[524/555] Compiling DewdropRESTAPI Highlight+Decodable.swift
[525/555] Compiling DewdropRESTAPI Count+Decodable.swift
[526/555] Compiling DewdropRESTAPI Folder+Decodable.swift
[527/555] Compiling DewdropRESTAPI MediaType+Decodable.swift
[528/555] Compiling DewdropRESTAPI IDFields+Decodable.swift
[529/555] Compiling DewdropRESTAPI IDListFields+Decodable.swift
[530/555] Compiling DewdropRESTAPI ModelFields+Decodable.swift
[531/555] Compiling DewdropRESTAPI Cache+Decodable.swift
[532/555] Compiling DewdropRESTAPI Info+Decodable.swift
[533/555] Compiling DewdropRESTAPI ItemType+Decodable.swift
[534/555] Compiling DewdropRESTAPI Raindrop+Decodable.swift
[535/555] Compiling DewdropRESTAPI RaindropSort+Decodable.swift
[536/555] Compiling DewdropRESTAPI CollectionSort+Encodable.swift
[537/555] Compiling DewdropRESTAPI View+Encodable.swift
[538/555] Compiling DewdropRESTAPI Color+Encodable.swift
[539/555] Compiling DewdropRESTAPI Content+Encodable.swift
[540/555] Compiling DewdropRESTAPI ItemType+Encodable.swift
[541/555] Compiling DewdropRESTAPI RaindropSort+Encodable.swift
[542/555] Compiling DewdropRESTAPI TagSort+Encodable.swift
[543/555] Compiling DewdropRESTAPI BrokenLevel+Encodable.swift
[544/555] Compiling DewdropRESTAPI Identifier.swift
[545/555] Compiling DewdropRESTAPI AuthenticationEndpoints.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:52: error: cannot find type 'UserAuthenticatedFields' in scope
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                    `- error: cannot find type 'UserAuthenticatedFields' in scope
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:91: error: type 'Fields' does not conform to protocol 'UserFields'
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                                                           `- error: type 'Fields' does not conform to protocol 'UserFields'
 9 |
10 | // MARK: -
[546/555] Compiling DewdropRESTAPI BackupEndpoints.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:52: error: cannot find type 'UserAuthenticatedFields' in scope
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                    `- error: cannot find type 'UserAuthenticatedFields' in scope
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:91: error: type 'Fields' does not conform to protocol 'UserFields'
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                                                           `- error: type 'Fields' does not conform to protocol 'UserFields'
 9 |
10 | // MARK: -
[547/555] Compiling DewdropRESTAPI CollectionEndpoints.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:52: error: cannot find type 'UserAuthenticatedFields' in scope
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                    `- error: cannot find type 'UserAuthenticatedFields' in scope
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:91: error: type 'Fields' does not conform to protocol 'UserFields'
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                                                           `- error: type 'Fields' does not conform to protocol 'UserFields'
 9 |
10 | // MARK: -
[548/555] Compiling DewdropRESTAPI FilterEndpoints.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:52: error: cannot find type 'UserAuthenticatedFields' in scope
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                    `- error: cannot find type 'UserAuthenticatedFields' in scope
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:91: error: type 'Fields' does not conform to protocol 'UserFields'
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                                                           `- error: type 'Fields' does not conform to protocol 'UserFields'
 9 |
10 | // MARK: -
[549/555] Compiling DewdropRESTAPI HighlightEndpoints.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:52: error: cannot find type 'UserAuthenticatedFields' in scope
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                    `- error: cannot find type 'UserAuthenticatedFields' in scope
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:91: error: type 'Fields' does not conform to protocol 'UserFields'
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                                                           `- error: type 'Fields' does not conform to protocol 'UserFields'
 9 |
10 | // MARK: -
[550/555] Compiling DewdropRESTAPI ImportEndpoints.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:52: error: cannot find type 'UserAuthenticatedFields' in scope
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                    `- error: cannot find type 'UserAuthenticatedFields' in scope
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:91: error: type 'Fields' does not conform to protocol 'UserFields'
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                                                           `- error: type 'Fields' does not conform to protocol 'UserFields'
 9 |
10 | // MARK: -
[551/555] Compiling DewdropRESTAPI RaindropEndpoints.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:52: error: cannot find type 'UserAuthenticatedFields' in scope
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                    `- error: cannot find type 'UserAuthenticatedFields' in scope
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:91: error: type 'Fields' does not conform to protocol 'UserFields'
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                                                           `- error: type 'Fields' does not conform to protocol 'UserFields'
 9 |
10 | // MARK: -
[552/555] Compiling DewdropRESTAPI TagEndpoints.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:52: error: cannot find type 'UserAuthenticatedFields' in scope
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                    `- error: cannot find type 'UserAuthenticatedFields' in scope
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:91: error: type 'Fields' does not conform to protocol 'UserFields'
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                                                           `- error: type 'Fields' does not conform to protocol 'UserFields'
 9 |
10 | // MARK: -
[553/555] Compiling DewdropRESTAPI UserEndpoints.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:52: error: cannot find type 'UserAuthenticatedFields' in scope
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                    `- error: cannot find type 'UserAuthenticatedFields' in scope
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:91: error: type 'Fields' does not conform to protocol 'UserFields'
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                                                           `- error: type 'Fields' does not conform to protocol 'UserFields'
 9 |
10 | // MARK: -
[554/555] Compiling DewdropRESTAPI BackupCreationDateFields.swift
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:52: error: cannot find type 'UserAuthenticatedFields' in scope
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                    `- error: cannot find type 'UserAuthenticatedFields' in scope
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:91: error: type 'Fields' does not conform to protocol 'UserFields'
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                                                           `- error: type 'Fields' does not conform to protocol 'UserFields'
 9 |
10 | // MARK: -
error: emit-module command failed with exit code 1 (use -v to see invocation)
[555/555] Emitting module DewdropRESTAPI
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:13:32: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 | public struct CollectionDetails: CollectionFields {
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
   |                                `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
14 | 	public let owner: User.IDFields
15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:14:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
12 | 	public let id: Collection.ID
13 | 	public let parent: Collection.IDFields?
14 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
15 |
16 | 	private let collection: Collection
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
macro expansion @_UncheckedMemberwiseInit:3:24: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 1 | public init(
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   |   |                        `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
   | 4 |     owner: User.IDFields,
   | 5 |     collection: Collection
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
macro expansion @_UncheckedMemberwiseInit:4:17: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
`- /Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/CollectionDetails.swift:17:1: note: expanded code originates here
15 |
16 | 	private let collection: Collection
17 | }
   +--- macro expansion @_UncheckedMemberwiseInit ----------------------
   | 2 |     id: Collection.ID,
   | 3 |     parent: Collection.IDFields?,
   | 4 |     owner: User.IDFields,
   |   |                 `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
   | 5 |     collection: Collection
   | 6 | ) {
   +--------------------------------------------------------------------
18 |
19 | // MARK: -
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/GroupDetails.swift:10:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 8 | @dynamicMemberLookup
 9 | public struct GroupDetails: GroupFields {
10 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
11 |
12 | 	private let group: Group
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:15:25: error: 'IDFields' is not a member type of struct 'Dewdrop.User'
13 | public struct RaindropDetails<CreatorFields: UserFields & Decodable>: RaindropFields {
14 | 	public let id: Raindrop.ID
15 | 	public let owner: User.IDFields
   |                         `- error: 'IDFields' is not a member type of struct 'Dewdrop.User'
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/User/User.swift:6:15: note: 'User' declared here
 4 |
 5 | @MemberwiseInit(.public)
 6 | public struct User: Sendable {
   |               `- note: 'User' declared here
 7 | 	public let fullName: String
 8 | 	public let hasProSubscription: Bool
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/RaindropDetails.swift:17:36: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
15 | 	public let owner: User.IDFields
16 | 	public let creator: CreatorFields
17 | 	public let collection: Collection.IDFields
   |                                    `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
18 | 	public let tags: [TagNameFields]
19 | 	public let highlights: [HighlightInRaindropDetails]?
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:7:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 5 | import struct Dewdrop.User
 6 | import struct Dewdrop.Account
 7 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 8 |
 9 | @dynamicMemberLookup
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Details/UserAuthenticatedDetails.swift:10:41: error: cannot find type 'UserAuthenticatedFields' in scope
 8 |
 9 | @dynamicMemberLookup
10 | public struct UserAuthenticatedDetails: UserAuthenticatedFields {
   |                                         `- error: cannot find type 'UserAuthenticatedFields' in scope
11 | 	public let id: User.ID
12 | 	public let config: ConfigFields
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/User/ConfigFields.swift:9:46: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 | @dynamicMemberLookup
 8 | public struct ConfigFields: Sendable /* TODO */ {
 9 | 	public let lastViewedCollection: Collection.IDFields
   |                                              `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 |
11 | 	private let config: User.Config
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:52: error: cannot find type 'UserAuthenticatedFields' in scope
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                    `- error: cannot find type 'UserAuthenticatedFields' in scope
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:8:91: error: type 'Fields' does not conform to protocol 'UserFields'
 6 | import struct Identity.Identifier
 7 |
 8 | public typealias AuthenticatedUserResponse<Fields: UserAuthenticatedFields & Decodable> = UserResponse<Fields>
   |                                                                                           `- error: type 'Fields' does not conform to protocol 'UserFields'
 9 |
10 | // MARK: -
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:3:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
1 | // Copyright © Fleuronic LLC. All rights reserved.
2 |
3 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorEmailsFields.swift:5:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
3 | import protocol DewdropService.CollaboratorFields
4 |
5 | public struct CollaboratorEmailsFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
6 | 	public let emails: [String]
7 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:4:17: error: 'CollaboratorFields' was imported as 'protocol', but is a struct
2 |
3 | import struct Dewdrop.Collaborator
4 | import protocol DewdropService.CollaboratorFields
  |                 `- error: 'CollaboratorFields' was imported as 'protocol', but is a struct
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/DewdropService/Sources/DewdropService/Fields/Collection/CollaboratorFields.swift:7:18: note: 'CollaboratorFields' declared here
5 | import struct Identity.Identifier
6 |
7 | public typealias CollaboratorFields = ModelFields<Collaborator, User.ID>
  |                  `- note: 'CollaboratorFields' declared here
8 |
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Collection/CollaboratorRoleFields.swift:6:15: error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
4 | import protocol DewdropService.CollaboratorFields
5 |
6 | public struct CollaboratorRoleFields: CollaboratorFields, Decodable {
  |               `- error: inheritance from non-protocol type 'CollaboratorFields' (aka 'ModelFields<Collaborator, Identifier<IdentifiedUser>>')
7 | 	public let role: Collaborator.Role
8 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Raindrop/RaindropSuggestionsFields.swift:9:38: error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
 7 |
 8 | public struct RaindropSuggestionsFields: Fields, Decodable {
 9 | 	public let collections: [Collection.IDFields]
   |                                      `- error: 'IDFields' is not a member type of struct 'Dewdrop.Collection'
10 | 	public let tags: [TagNameFields]
11 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Dewdrop/Sources/Dewdrop/Collection/Collection.swift:9:15: note: 'Collection' declared here
 7 |
 8 | @MemberwiseInit(.public)
 9 | public struct Collection: Sendable {
   |               `- note: 'Collection' declared here
10 | 	public let title: String
11 | 	public let count: Int
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Fields/Raindrop/RaindropSuggestionsFields.swift:8:15: error: type 'RaindropSuggestionsFields' does not conform to protocol 'Decodable'
 6 | import protocol Catenary.Fields
 7 |
 8 | public struct RaindropSuggestionsFields: Fields, Decodable {
   |               `- error: type 'RaindropSuggestionsFields' does not conform to protocol 'Decodable'
 9 | 	public let collections: [Collection.IDFields]
   |             `- note: cannot automatically synthesize 'Decodable' because '[Collection.IDFields]' does not conform to 'Decodable'
10 | 	public let tags: [TagNameFields]
11 | }
Swift.Decodable:2:5: note: protocol requires initializer 'init(from:)' with type 'Decodable'
1 | public protocol Decodable {
2 |     init(from decoder: any Decoder) throws
  |     `- note: protocol requires initializer 'init(from:)' with type 'Decodable'
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/DewdropRESTAPI/Response/UserResponse.swift:5:17: error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 3 | import struct Dewdrop.User
 4 | import protocol DewdropService.UserFields
 5 | import protocol DewdropService.UserAuthenticatedFields
   |                 `- error: protocol 'UserAuthenticatedFields' does not exist in module 'DewdropService'
 6 | import struct Identity.Identifier
 7 |
BUILD FAILURE 6.0 macosSpm