Skip to content

Commit bc7ac44

Browse files
Aegisclaude
authored andcommitted
feat: add issue proposer — auto-file GitHub issues from detection systems (#11)
Port issue-proposer scheduled task with 5 detectors: 1. Task failure patterns (repeated failure_kind in cc_tasks) 2. Repo failure rates (>50% fail rate over 7d) 3. Scheduled task errors (>50% error rate in 24h) 4. Argus/RuntimeGuard correlations (high-severity findings) 5. LLM trace anomalies (executor error rates >40% in 48h) Dedup via web_events watermarks and GitHub issue search. Configurable labels, repo target from env config, 6-hourly cadence with governance limits (max 3 issues per run). Closes #11 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 2307173 commit bc7ac44

2 files changed

Lines changed: 428 additions & 0 deletions

File tree

web/src/kernel/scheduled/index.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import { runConversationFactExtraction } from './conversation-facts.js';
2929
import { runEntropyDetection } from './entropy.js';
3030
import { runSocialEngagement } from './social-engage.js';
3131
import { runDevActivity } from './dev-activity.js';
32+
import { runIssueProposer } from './issue-proposer.js';
3233
import { InMemoryErrorTracker } from '../../lib/observability/errors.js';
3334
import { getChainHead, writeTaskAuditRecord } from './task-audit.js';
3435

@@ -175,6 +176,9 @@ async function runCronPhase(env: EdgeEnv): Promise<void> {
175176
await runTask(env, 'feed-watcher', 'cron', runFeedWatcher);
176177
await runTask(env, 'cost-report', 'cron', runCostReport);
177178

179+
// Issue proposer — auto-file GitHub issues from detection systems (6-hourly, self-gated)
180+
await runTask(env, 'issue-proposer', 'cron', runIssueProposer);
181+
178182
// Heavy tasks -- mutually exclusive to stay under 50 subrequest limit
179183
const isSelfImprovementHour = hour % 6 === 0;
180184

0 commit comments

Comments
 (0)