Zwischenablage, Notizen und der Gesichtsvergleich
Drei neue Module nach dem Bauplan von `ShelfProvider`: reine Regeln getrennt vom Zustand, versionierte Indexdatei, Inhalte in Dateien statt in `UserDefaults` — was dort steht, liest jedes Programm mit `defaults read` mit. Die Zwischenablage achtet `ConcealedType`, `TransientType` und `AutoGeneratedType`. Diese Marken sind eine Verabredung zwischen Programmen und kein Systemdienst; wer sie missachtet, sammelt fremde Passwörter ein. Der Gesichtsvergleich stand im Plan als der eine echte Unsicherheitsfaktor. Ein Spike hat ihn erledigt: `VNGenerateFaceprintRequest` gibt es nicht, aber `VNGenerateImageFeaturePrintRequest` ist öffentlich, liefert 768 Elemente und ein Abstandsmaß — Faktor 3,5 Trennschärfe. Kein eigenes CoreML-Modell nötig. `FaceMatcher` entscheidet über mehrere Posen, mehrere Einzelbilder und eine Sperre nach Fehlversuchen. Die Schwelle liegt bewusst nicht mittig: ein falsches Ja ist ein Fremder am entsperrten Rechner, ein falsches Nein nur ein Passwort, das man ohnehin kennt. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
f289d02c37
commit
3da673662f
@@ -99,6 +99,12 @@ targets:
|
||||
product: AudioProvider
|
||||
- package: OnyxKit
|
||||
product: ShelfProvider
|
||||
- package: OnyxKit
|
||||
product: ActivityProvider
|
||||
- package: OnyxKit
|
||||
product: ClipboardProvider
|
||||
- package: OnyxKit
|
||||
product: NotesProvider
|
||||
postBuildScripts:
|
||||
# Der Helfer und seine Plist müssen an genau diese Stellen: SMAppService
|
||||
# sucht die Plist unter Contents/Library/LaunchDaemons und liest von dort
|
||||
|
||||
Reference in New Issue
Block a user