Ariver
2026-05-25 94c5e7e2dbda6c311f5685c8a211c04bc06438db
Apptag/SmartCategorization/SmartCategorizationDraft.swift
@@ -44,6 +44,13 @@
    }
}
struct SmartDefaultNoteProvenance: Codable, Hashable {
    let entryID: String
    let languageCode: String
    let notesVersion: Int
    let noteFingerprint: String
}
struct SmartAppCategorizationAssignment: Codable, Hashable, Identifiable {
    let appName: String
    let bundleIdentifier: String?
@@ -55,6 +62,7 @@
    let provenance: [String]
    let defaultNote: String?
    let defaultNoteCandidates: [String]
    let defaultNoteProvenance: SmartDefaultNoteProvenance?
    var id: String {
        if let bundleIdentifier, !bundleIdentifier.isEmpty {
@@ -80,7 +88,8 @@
        reason: String,
        provenance: [String] = [],
        defaultNote: String? = nil,
        defaultNoteCandidates: [String] = []
        defaultNoteCandidates: [String] = [],
        defaultNoteProvenance: SmartDefaultNoteProvenance? = nil
    ) {
        self.appName = appName
        self.bundleIdentifier = bundleIdentifier
@@ -92,6 +101,7 @@
        self.provenance = provenance
        self.defaultNote = defaultNote
        self.defaultNoteCandidates = defaultNoteCandidates
        self.defaultNoteProvenance = defaultNoteProvenance
    }
    private static func uniqueOrdered(_ ids: [SmartCategoryID]) -> [SmartCategoryID] {