From d14006c562b64c059b1db19c9ae4ddeff7584ff5 Mon Sep 17 00:00:00 2001 From: Jeffrey Phillips Freeman Date: Thu, 2 Apr 2026 23:00:11 +0000 Subject: [PATCH] =?UTF-8?q?chore(agents):=20improve=20ca-uat-tester=20?= =?UTF-8?q?=E2=80=94=20consolidate=20progress=20reports=20into=20comments?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Approved proposal: #1483 Pattern: workflow_fix — issue tracker pollution from progress report spam Evidence: UAT pool supervisor created 13+ separate issues for progress reports in 65 minutes during v3.7.0 session, polluting the issue tracker and inflating open issue count. Now at 400+ cycles with continued spam. Fix: Require single tracking issue at startup, post all progress as comments instead of new issues, reduce report frequency from every 2 cycles to every 10 cycles. ISSUES CLOSED: #1483 --- .opencode/agents/ca-uat-tester.md | 49 ++++++++++++++++++++++++++----- 1 file changed, 42 insertions(+), 7 deletions(-) diff --git a/.opencode/agents/ca-uat-tester.md b/.opencode/agents/ca-uat-tester.md index bcb18ae0a..d4d697f29 100644 --- a/.opencode/agents/ca-uat-tester.md +++ b/.opencode/agents/ca-uat-tester.md @@ -87,6 +87,24 @@ To wait 60 seconds: `bash("sleep 60", timeout=120000)` **The timeout parameter MUST be at least 1.5x the sleep duration.** Always set timeout explicitly. You MUST NOT voluntarily exit — sleep and re-poll. +### Progress Reporting — Single Tracking Issue + +**CRITICAL: NEVER create a new Forgejo issue for progress reports.** All +progress updates MUST be posted as **comments** on your single tracking +issue. Creating new issues for each progress cycle pollutes the issue +tracker and inflates the open issue count. + +At startup, create exactly ONE tracking issue: +``` +Title: "[UAT-SUPERVISOR] Pool Tracker — " +Body: "UAT pool supervisor launched. Tracking progress as comments below. + Milestone: . Workers: ." +Labels: ["Type/Automation"] +``` + +Store the tracking issue number. ALL subsequent progress reports are +posted as **comments** on this issue — never as new issues. + ### Pool Supervision Loop ``` @@ -98,6 +116,10 @@ bugs_found_total = 0 cycle = 0 SERVER = "http://localhost:4096" +# ── Create single tracking issue for progress reports ──────── +tracking_issue = create Forgejo issue (see "Progress Reporting" above) +tracking_issue_number = tracking_issue.number + # ── RESUME: Adopt existing UAT worker sessions from previous run ─ EXISTING_WORKERS = bash("curl -s ${SERVER}/session | python3 -c \" import sys, json @@ -181,13 +203,26 @@ LOOP: NEW_SID = create session + prompt_async for next_area active[next_area] = NEW_SID - # ── Step 4: Post progress ──────────────────────────────────── - if cycle % 2 == 0: - post comment on session state issue: - "UAT pool supervisor progress: - - Feature areas tested: / - - Total bugs filed: - - Test cycle: " + # ── Step 4: Post progress as COMMENT on tracking issue ─────── + # NEVER create a new issue. Always post as a comment. + if cycle % 10 == 0: + post COMMENT on tracking_issue_number (NOT a new issue): + "## UAT Pool Supervisor — Progress Report (Cycle ) + + **Time**: + **HEAD**: + + ### Worker Status + - Active: / + - Tested areas: / + - Coverage: % of areas completed + + ### UAT Bugs Filed ( total) + + + --- + **Automated by CleverAgents Bot** + Supervisor: UAT Testing | Agent: ca-uat-tester" # ── IMMEDIATELY loop back ──────────────────────────────────── ``` -- 2.52.0