feat: cron agent binding + doctor UI refresh

This commit is contained in:
Peter Steinberger
2026-01-13 03:23:36 +00:00
parent bfdbaa5ab6
commit b41e75a15d
19 changed files with 127 additions and 32 deletions

View File

@@ -13,6 +13,7 @@ extension CronJobEditor {
guard let job else { return }
self.name = job.name
self.description = job.description ?? ""
self.agentId = job.agentId ?? ""
self.enabled = job.enabled
self.sessionTarget = job.sessionTarget
self.wakeMode = job.wakeMode
@@ -67,6 +68,7 @@ extension CronJobEditor {
userInfo: [NSLocalizedDescriptionKey: "Name is required."])
}
let description = self.description.trimmingCharacters(in: .whitespacesAndNewlines)
let agentId = self.agentId.trimmingCharacters(in: .whitespacesAndNewlines)
let schedule: [String: Any]
switch self.scheduleKind {
case .at:
@@ -148,6 +150,11 @@ extension CronJobEditor {
"payload": payload,
]
if !description.isEmpty { root["description"] = description }
if !agentId.isEmpty {
root["agentId"] = agentId
} else if self.job?.agentId != nil {
root["agentId"] = NSNull()
}
if self.sessionTarget == .isolated {
let trimmed = self.postPrefix.trimmingCharacters(in: .whitespacesAndNewlines)