feat: awaiting_owner status, agent performance panel, CSP fixes, dispatch reliability#397
feat: awaiting_owner status, agent performance panel, CSP fixes, dispatch reliability#397jadye527 wants to merge 9 commits intobuilderz-labs:mainfrom
Conversation
Surface tmux sessions, systemd units, cron jobs, and known background processes in a new Active Runs panel. Includes stale-process detection (30min threshold), output snippets, owner inference, and status filters. Wires active/stale run counts into the dashboard overview strip. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
… duration Doctor banner was showing non-actionable warnings (mission-control.service detected as duplicate gateway, Telegram privacy hint, cleanup hints) on every page load with only a 24-hour dismiss window. This filters known false positives in the issue parser and extends dismiss to 7 days so the banner only surfaces real problems.
Agents complete tasks autonomously, but some require human action (e.g., create accounts, browser login, purchase). These now land in an "Awaiting Owner" column instead of going straight to "done" after Aegis approval, based on keyword detection in the resolution text. Also fixes: - CSP: use unsafe-inline for style-src and script-src fallback (Next.js injects inline styles/scripts without nonces) - Gateway dispatch: remove invalid `model` param from agent call params (was causing a dispatch-fail loop every 60s)
Previously Aegis rejections set status to in_progress, but the dispatcher only picks up assigned tasks — rejected work got stuck and never re-sent to the agent with feedback.
The gateway `call agent` WebSocket method was failing with "closed (1000)" causing all task dispatches and Aegis reviews to fail. `openclaw agent` works reliably, so switch both dispatch and review to use it directly.
Creates an MC notification for the admin user when Aegis approves a task but routes it to awaiting_owner (requires human action). Surfaces in the notifications panel so the owner sees what needs attention. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
New /api/agent-performance endpoint queries task DB for per-agent stats: success rate, completion count, rejection rate, avg completion time, and recent completions. AgentPerformancePanel shows expandable agent cards with progress bars, time-range filters (7/14/30/90 days), and status breakdown. Wired into NavRail and ContentRouter. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
# Conflicts: # src/app/[[...panel]]/page.tsx # src/components/layout/nav-rail.tsx
ReviewLarge feature PR (+1190/-70) with multiple independent features bundled together:
No CI has run. Please:
The feature scope is too large to safely merge without CI validation. |
|
Thanks for the contribution — there's a lot of good work here, but the scope makes it very difficult to review as a single PR. This touches 29 files across 7+ unrelated features. Merge blockers:
Scope — please split into separate PRs:
Smaller PRs are much easier to review, test, and merge. Each piece has independent value. Also note: the branch is pushed to your fork's |
0xNyk
left a comment
There was a problem hiding this comment.
Review: DO NOT MERGE
Summary
This PR bundles 7+ independent features into a single PR, making it impossible to review, test, or revert individual changes safely.
Issues Found
-
Too many features in one PR — This PR contains at least 10 independent changes:
awaiting_ownertask status + kanban column- Agent Performance panel + API route
- Active Runs panel + API route
- Owner Overview strip
- Quality Review evidence fields
- CSP
unsafe-inlinefallback - Dispatch switch from WebSocket to CLI
- 10-language translations
- Rejection auto-redispatch
- Doctor banner fixes
-
CSP approach conflicts with PR #415 — This PR adds
unsafe-inlineto CSP without adequate justification. PR #415 takes a more surgical approach (targetingstyle-srcspecifically for reagraph compatibility while keepingscript-srcnonce-based). PR #415's approach should take priority. Please drop CSP changes entirely from this PR. -
Dispatch mechanism switch is breaking — Switching from WebSocket to CLI dispatch is a significant breaking change that needs its own PR with a migration strategy and testing plan.
-
Merge conflicts — Branch is stale and has conflicts with main.
-
No CI validation — No tests for any of the new features.
Recommendation
Please close this PR and split into focused PRs:
- PR-A:
awaiting_ownerstatus + kanban column - PR-B: Agent Performance panel + API route
- PR-C: Active Runs panel + API route
- PR-D: Dispatch reliability improvements + doctor fixes
- PR-E: Drop CSP changes entirely (let PR #415 handle it)
Each PR should be independently reviewable, testable, and revertable.
Add awaiting_owner column to task board with keyword-based detection for tasks requiring human action. Tasks matching keywords like "waiting for", "needs human", "approval needed" are automatically placed in a dedicated column with orange styling. Supersedes #397
|
Thanks for the comprehensive PR! We've cherry-picked the |
|
Superseded by #428 (awaiting_owner). ErrorBoundary + useSmartPoll already on main. |
Add awaiting_owner column to task board with keyword-based detection for tasks requiring human action. Tasks matching keywords like "waiting for", "needs human", "approval needed" are automatically placed in a dedicated column with orange styling. Supersedes #397
Summary
openclaw agentCLI for task dispatch and Aegis reviewsassignedinstead ofin_progressso they auto-redispatch with feedbackTest plan
pnpm build)🤖 Generated with Claude Code