[Feature/Backend] AirPrint queue detection and Stage 2 unmanaged-colour warning #202
Notifications
Due Date
No due date set.
Depends on
Reference: gronod/iccery-v2-mac#202
Reference in New Issue
Block a user
Summary
AirPrint queues apply mandatory driver-side color management and raster filtering that corrupt profiling targets. Detect AirPrint queues during printer enumeration and present a warning badge in Stage 2.
Implementation Plan
Implement detection heuristics per
docs/14-iccery-cpu-targetprint.md§10.2: flag as AirPrint if the device URI containsapple-airprint://— or if the PPD contains*APAirPrint: True— or ifprinter-make-and-modelcontains both "Apple" and "AirPrint" — or if the URI scheme isipps://(oripp://with mDNS subtypes) and the PPD text contains "airprint" or*cupsFilter2points toimage/urf. PopulatePrinter.isAirPrintinCupsService.listPrintersvia a single non-blockinglpstat -vcall. PresentairPrintWarningBadgeinStage2View("AirPrint queue — unmanaged color cannot be guaranteed.").Acceptance Criteria
Printer.isAirPrintcorrectly set for all detection rules, includingipp://driverless URIs andimage/urffilter chains.Dependencies
Blocked by #201.
References
docs/14-iccery-cpu-targetprint.md§10.2Packages/ICCeryCore/Sources/ICCeryCore/Print/CupsService.swiftSources/ICCery/Stage2View.swift