feat(watchdogs): add experimental self-mode watchdogs

- Add enableWatchdogEverything experimental instance setting and UI toggle.
- Add issue_watchdogs.mode and accept mode in the watchdog endpoint.
- Wake task assignees directly for stopped self-mode watchdogs.
- Add first-instruction guidance for assignment-shaped wakes.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
DottaandPaperclip committed 2026-07-29 19:07:29 +00:00
1 parent 9574cad3e8
commit 7b4722e26c
21 files changed
+554 -4

No files matched your search

@@ -0,0 +1 @@
ALTER TABLE "issue_watchdogs" ADD COLUMN IF NOT EXISTS "mode" text NOT NULL DEFAULT 'subtask';
@@ -1359,6 +1359,13 @@
"when": 1785170000001,
"tag": "0195_built_in_agent_unique_marker",
"breakpoints": true
},
{
"idx": 196,
"version": "7",
"when": 1785170000002,
"tag": "0196_issue_watchdog_mode",
"breakpoints": true
}
]
}
@@ -14,6 +14,9 @@ export const issueWatchdogs = pgTable(
watchdogAgentId: uuid("watchdog_agent_id").notNull().references(() => agents.id),
instructions: text("instructions"),
status: text("status").notNull().default("active"),
// "subtask" reviews stopped subtrees via a separate watchdog issue;
// "self" wakes the watchdog agent directly on the watched issue.
mode: text("mode").notNull().default("subtask"),
watchdogIssueId: uuid("watchdog_issue_id").references(() => issues.id, { onDelete: "set null" }),
lastObservedFingerprint: text("last_observed_fingerprint"),
lastReviewedFingerprint: text("last_reviewed_fingerprint"),