Skip to content

feat(sessions): add read-only diagnose command#96113

Open
zaidazmi wants to merge 22 commits into
openclaw:mainfrom
zaidazmi:codex/sessions-diagnose-v2
Open

feat(sessions): add read-only diagnose command#96113
zaidazmi wants to merge 22 commits into
openclaw:mainfrom
zaidazmi:codex/sessions-diagnose-v2

Conversation

@zaidazmi

Copy link
Copy Markdown
Contributor

Closes #94175
Supersedes #94192 (closed after the fork branch disappeared, not because the change was rejected).
Related: #86159, #88870, #77542

What Problem This Solves

OpenClaw operators currently have to piece together sessions, sessions tail, health output, logs, and Gateway state when a session looks stuck, silent, queued, terminal, or missing transcript evidence. That makes incident triage slow and risky, especially before using recovery actions that could disturb active work.

Why This Change Was Made

This adds an additive, read-only sessions.diagnose Gateway RPC with operator.read scope and a matching openclaw sessions diagnose CLI command. The diagnosis combines stored session state, visible Gateway runs, embedded-run state, diagnostic activity, command-lane state, bounded transcript metadata, and generic delivery metadata into stable finding codes.

The scope is intentionally conservative: no recovery, aborts, lane release, config/env changes, provider/channel connectivity checks, or changelog edit. The command rejects ambiguous selectors and avoids raw transcript content, secrets, and local transcript paths.

User Impact

Users and operators can run one command to understand whether a session is active, queued, stale, terminal, missing transcript evidence, unresolved, or simply not found before taking any recovery action. Bug reports can also include structured diagnosis output instead of scattered logs.

Evidence

Duplicate check:

  • Old PR [codex] feat(sessions): add read-only diagnose command #94192 was closed after the fork branch disappeared; its ClawSweeper review had ready for maintainer look and requested maintainer API/product review, not code changes.
  • gh pr list --repo openclaw/openclaw --state open --author zaidazmi returned no open replacement PRs.
  • gh search prs --repo openclaw/openclaw --match title,body --limit 20 -- "\"sessions.diagnose\" OR \"sessions diagnose\"" returned no open replacement PRs.

Focused validation run on the rebased branch:

PATH=<node-24-bin>:$PATH node scripts/run-vitest.mjs packages/gateway-protocol/src/index.test.ts src/config/sessions/session-accessor.test.ts src/gateway/server-methods/sessions.diagnose.test.ts src/gateway/server-methods/session-active-runs.test.ts src/agents/embedded-agent-runner/run-state.test.ts src/commands/sessions-diagnose.test.ts src/cli/program/register.status-health-sessions.test.ts src/cli/program/routes.test.ts src/gateway/method-scopes.test.ts src/gateway/server-methods-list.test.ts src/gateway/server.sessions.store-rpc.test.ts -- --reporter=verbose
# passed 6 Vitest shards in 45.35s
# gateway: 12 files, 354 tests
# runtime-config: 44 tests
# cli: 68 tests
# commands: 7 tests

Other local gates:

git diff --check origin/main
corepack pnpm exec oxfmt --check --threads=1 src/gateway/server-methods/sessions.ts src/gateway/server-methods/sessions.diagnose.test.ts
corepack pnpm protocol:check
corepack pnpm check:docs
.agents/skills/autoreview/scripts/autoreview --mode branch --base origin/main --stream-engine-output

Results:

  • git diff --check origin/main: passed.
  • focused oxfmt --check: passed.
  • corepack pnpm protocol:check: passed.
  • corepack pnpm check:docs: passed, including MDX and internal link audit (checked_internal_links=5464, broken_links=0).
  • Autoreview: clean, no accepted/actionable findings. It specifically reported the patch as correct and noted that the response construction avoids transcript contents and local transcript paths.

Live behavior proof from an isolated local Gateway:

corepack pnpm openclaw gateway run --dev --reset --port 41237 --auth token --token <redacted> --bind loopback --allow-unconfigured --ws-log compact
# Gateway reached ready state on loopback.

corepack pnpm openclaw sessions diagnose --json --tail 1 --timeout 10000
# outcome=no_sessions, session.found=false, exit=2 as expected for no stored sessions.

corepack pnpm openclaw sessions diagnose --session-key main --json --tail 1 --timeout 10000
# outcome=diagnosed
# session.key=agent:dev:main
# session.sessionId=sess-proof
# transcript.resolved=true
# transcript.recentEventCount=1
# delivery.uncertain=false

The stored-session proof used one synthetic session row and one fake transcript line in isolated temp state. The diagnosis output did not include the local transcript file path or the fake private transcript text.

@openclaw-barnacle openclaw-barnacle Bot added docs Improvements or additions to documentation app: web-ui App: web-ui gateway Gateway runtime cli CLI command changes commands Command implementations agents Agent runtime and tooling size: XL labels Jun 23, 2026
@zaidazmi

zaidazmi commented Jun 23, 2026

Copy link
Copy Markdown
Contributor Author

@clawsweeper review

Initial review request for replacement PR #96113. #94192 was closed after the fork branch disappeared; this PR supersedes it, keeps maintainer edits enabled, and CI is clean on 1a7f882.

@clawsweeper

clawsweeper Bot commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event repository_dispatch).
Result: the existing ClawSweeper review comment will be edited in place when the review finishes.

@zaidazmi

Copy link
Copy Markdown
Contributor Author

Status for reviewer:

  • This is the replacement for [codex] feat(sessions): add read-only diagnose command #94192, which was closed after the fork branch disappeared rather than because the change was rejected.
  • CI is clean on 1a7f8824; no failed or pending checks are showing.
  • Real behavior proof passed on GitHub, and the PR body includes local focused tests, docs/protocol checks, autoreview, and isolated Gateway live proof.
  • The earlier [codex] feat(sessions): add read-only diagnose command #94192 ClawSweeper verdict was rating: 🐚 platinum hermit / status: 👀 ready for maintainer look. I requested a fresh ClawSweeper review here as well, and the bot acknowledged/queued it, but no visible verdict has landed yet.

Remaining decision: maintainer acceptance of the additive public sessions.diagnose Gateway RPC and openclaw sessions diagnose CLI contract.

@zaidazmi

Copy link
Copy Markdown
Contributor Author

@clawsweeper review

@clawsweeper

clawsweeper Bot commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs maintainer review before merge. Reviewed July 25, 2026, 6:21 PM ET / 22:21 UTC.

ClawSweeper review

What this changes

This PR adds a read-only sessions.diagnose Gateway RPC and openclaw sessions diagnose CLI command that combine stored session records and live runtime evidence into bounded findings for operator triage.

Merge readiness

⚠️ Ready for maintainer review - 4 items remain

Keep open for maintainer product/API review. Current main has session listing, cleanup, tail, export, and compaction paths but no sessions.diagnose handler or CLI command; this PR remains the active implementation candidate for the linked feature issue. The patch has focused tests, successful CI, and live Gateway proof, but its new stable Gateway/CLI vocabulary and currently dirty merge state need an owner decision and refresh. Likely related people: steipete (low confidence; adjacent session-diagnostics work).

Priority: P2
Reviewed head: 03c202f380a7f1137b7002d724bf5cb31c06c6db
Owner decision: Required. See Decision needed.

Review scores

Measure Result What it means
Overall readiness 🐚 platinum hermit (4/6) Strong live proof and broad successful validation support a well-tested feature patch, while the new public contract and dirty merge state still require owner acceptance and refresh.
Proof confidence 🦞 diamond lobster (5/6) Sufficient (live_output): The PR body includes after-fix isolated Gateway/CLI output for no-session and stored-session cases, with an observed assertion that local transcript paths and fake private transcript text were not exposed.
Patch quality 🐚 platinum hermit (4/6) No actionable review findings were identified.

Verification

Check Result Evidence
Real behavior Verified Sufficient (live_output): The PR body includes after-fix isolated Gateway/CLI output for no-session and stored-session cases, with an observed assertion that local transcript paths and fake private transcript text were not exposed.
Evidence reviewed 6 items Current-main gap: Current main registers session read, lifecycle, messaging, abort, mutation, group, and compaction handlers, but no diagnosis handler; the current CLI registration also has no diagnose subcommand.
Proposed implementation boundary: The PR adds a dedicated session-diagnosis handler, a CLI command, protocol schemas, documentation, native protocol declarations, and focused tests while keeping the operation read-only.
Existing session tooling is partial: Current main exposes session listing, cleanup, tailing, trajectory export, and compaction; none offers the PR’s single typed projection of stored and live session evidence.
Findings None None.
Security None None.

How this fits together

The session subsystem persists conversation metadata while the Gateway and embedded-agent runner track live work. The proposed diagnosis layer reads those sources, produces a privacy-bounded result through the Gateway protocol, and renders it in the CLI and native client models.

flowchart LR
  A[Session stores] --> D[Session diagnosis]
  B[Gateway active runs] --> D
  C[Embedded-run state] --> D
  D --> E[Read-only Gateway RPC]
  E --> F[CLI diagnosis]
  E --> G[Native protocol clients]
Loading

Decision needed

Question Recommendation
Should OpenClaw adopt sessions.diagnose and openclaw sessions diagnose as a stable core operator interface, including its public finding-code vocabulary and native-client protocol model? Sponsor the core diagnostic surface: Accept the read-only RPC and CLI as the supported session-triage interface, then require a clean rebase and final merge-result proof.

Why: The implementation is additive and evidence-backed, but it creates a durable cross-client Gateway and CLI contract rather than repairing an established broken behavior.

Before merge

  • Resolve merge risk (P1) - The PR adds a versioned public Gateway RPC, CLI command, result schema, and native client declarations; maintainers need to accept the long-term finding-code, selector, and privacy contract before users and integrations adopt it.
  • Resolve merge risk (P1) - GitHub currently reports the head as dirty against main; refresh/rebase and rerun the focused proof on the merge result before landing.
  • Complete next step (P2) - The remaining blocker is intentional maintainer ownership of a new public core API and a rebase refresh, not a narrow mechanical repair.
Agent review details

Security

None.

PR surface

Source +2748, Tests +2513, Docs +92, Generated 0, Other +97. Total +5450 across 49 files.

View PR surface stats
Area Files Added Removed Net
Source 28 2818 70 +2748
Tests 14 2560 47 +2513
Docs 4 93 1 +92
Config 0 0 0 0
Generated 1 1 1 0
Other 2 97 0 +97
Total 49 5569 119 +5450

Review metrics

Metric Value Why it matters
Public diagnostic contract 1 Gateway RPC, 1 CLI command, 12 bounded finding codes This is a durable cross-client API addition, so its vocabulary and privacy boundary need deliberate owner acceptance.

Stored data model

Persistent data-model change detected: serialized state: packages/gateway-protocol/src/schema/sessions-diagnose.ts, serialized state: src/commands/sessions-diagnose.test.ts, serialized state: src/commands/sessions-diagnose.ts, serialized state: src/config/sessions/session-accessor.sqlite-status.ts, serialized state: src/gateway/server-methods/session-active-runs.test.ts, serialized state: src/gateway/server-methods/session-active-runs.ts, and 16 more. Confirm migration or upgrade compatibility proof before merge.

Root-cause cluster

Relationship: fixed_by_candidate
Canonical: #94175
Summary: This PR is the active implementation candidate for the linked open request for a read-only session-diagnosis surface.

Members:

Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything.

Merge-risk options

Maintainer options:

  1. Sponsor, rebase, and retain the stable contract (recommended)
    Approve the Gateway/CLI surface only after an owner accepts the public schema and a merge-result refresh confirms the final head remains read-only and privacy-bounded.
  2. Narrow before accepting
    Reduce the externally stable diagnostic vocabulary or client exposure if maintainers do not want the current broad contract to become supported API.
  3. Pause the feature direction
    Close or defer the PR if a new core session-diagnostics API is not currently a product priority.

Technical review

Best possible solution:

Have a session/Gateway owner explicitly sponsor or narrow the stable sessions.diagnose contract, then rebase it onto current main and preserve its read-only, bounded, path-free output guarantees.

Do we have a high-confidence way to reproduce the issue?

Not applicable: this PR adds a new diagnostic capability rather than repairing an already-defined failed behavior. The contributor did provide high-confidence live after-fix Gateway evidence for the proposed command.

Is this the best way to solve the issue?

Unclear until a maintainer accepts the public contract. Current main does not provide an equivalent single typed session-diagnosis path, and this core implementation is plausible because it reads core-private session and runtime state, but the stable API shape is a product decision.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against 4cdd9b8d8563.

Labels

Label changes:

  • add rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🦞 diamond lobster and patch quality is 🐚 platinum hermit.
  • remove rating: 🦞 diamond lobster: Current PR rating is rating: 🐚 platinum hermit, so this older rating label is no longer current.

Label justifications:

  • P2: This is a useful operator-facing session-triage feature, but it is not a demonstrated urgent regression.
  • merge-risk: 🚨 compatibility: The PR introduces a versioned Gateway method, CLI interface, protocol schema, and native client models that become compatibility commitments if merged.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🦞 diamond lobster and patch quality is 🐚 platinum hermit.
  • feature: ✨ showcase: ClawSweeper spotlight: unusually compelling feature idea for maintainer attention. A privacy-bounded, read-only session diagnosis surface would give operators a coherent starting point for safe stuck-session triage before any recovery action.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (live_output): The PR body includes after-fix isolated Gateway/CLI output for no-session and stored-session cases, with an observed assertion that local transcript paths and fake private transcript text were not exposed.
  • proof: sufficient: Contributor real behavior proof is sufficient. The PR body includes after-fix isolated Gateway/CLI output for no-session and stored-session cases, with an observed assertion that local transcript paths and fake private transcript text were not exposed.

Evidence

What I checked:

  • Current-main gap: Current main registers session read, lifecycle, messaging, abort, mutation, group, and compaction handlers, but no diagnosis handler; the current CLI registration also has no diagnose subcommand. (src/gateway/server-methods/sessions.ts:18, 4cdd9b8d8563)
  • Proposed implementation boundary: The PR adds a dedicated session-diagnosis handler, a CLI command, protocol schemas, documentation, native protocol declarations, and focused tests while keeping the operation read-only. (src/gateway/server-methods/sessions-diagnose.ts:1, 03c202f380a7)
  • Existing session tooling is partial: Current main exposes session listing, cleanup, tailing, trajectory export, and compaction; none offers the PR’s single typed projection of stored and live session evidence. (src/cli/program/register.status-health-sessions.ts:1, 4cdd9b8d8563)
  • Proof and validation: The PR body records an isolated loopback Gateway run for the no-session and stored-session paths, including a check that transcript text and local transcript paths were absent; the supplied check rollup reports the real-behavior job and relevant protocol, type, docs, Android, iOS, boundary, and security jobs successful. (src/commands/sessions-diagnose.ts:1, 03c202f380a7)
  • Product boundary: Repository VISION.md prioritizes stability and a lean core, while permitting core work when an optional capability cannot be expressed through existing extension APIs. This diagnosis combines core-private session, Gateway, and embedded-run facts, so acceptance of a stable core contract needs maintainer intent. (VISION.md:244, 4cdd9b8d8563)
  • Related canonical work: The linked open feature issue requests the same read-only Gateway/CLI diagnosis surface; this PR is its implementation candidate and must remain open until it is merged or declined.

Likely related people:

  • steipete: Authored related Gateway stall-diagnostics work that overlaps the session-runtime evidence this public contract would expose; current-main ownership history could not be fully inspected because the read-only shell backend failed before commands executed. (role: adjacent diagnostic contributor; confidence: low; commits: 659cc50f209e; files: src/logging/diagnostic-session-state.ts, src/gateway/server-methods/session-active-runs.ts)

Rank-up moves

Optional improvements that raise the rating; they are not merge blockers.

  • Obtain explicit maintainer sponsorship or narrowing of the public Gateway/CLI contract.
  • Rebase onto current main and rerun the focused live Gateway proof against the merge result.

Rating scale

Score Internal tier Crab rank Meaning
6/6 S 🦀 challenger crab Exceptional readiness
5/6 A 🦞 diamond lobster Very strong readiness
4/6 B 🐚 platinum hermit Good normal PR; ordinary maintainer review
3/6 C 🦐 gold shrimp Useful, but confidence is limited
2/6 D 🦪 silver shellfish Proof or implementation needs work
1/6 F 🧂 unranked krab Not merge-ready
N/A NA 🌊 off-meta tidepool Rating does not apply

Overall follows the weaker of proof and patch quality.
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

Workflow

  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

History

Review history (3 earlier review cycles)
  • reviewed 2026-07-02T20:35:12.486Z sha bf1387f :: needs maintainer review before merge. :: none
  • reviewed 2026-07-06T17:46:23.801Z sha f624013 :: needs maintainer review before merge. :: none
  • reviewed 2026-07-06T18:27:55.539Z sha f624013 :: needs maintainer review before merge. :: none

@clawsweeper clawsweeper Bot added proof: sufficient ClawSweeper judged the real behavior proof convincing. rating: 🦞 diamond lobster Very strong PR readiness with only minor maintainer review expected. feature: ✨ showcase ClawSweeper spotlight: unusually compelling feature idea for maintainer attention. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. P2 Normal backlog priority with limited blast radius. labels Jun 23, 2026
@zaidazmi
zaidazmi force-pushed the codex/sessions-diagnose-v2 branch from 1a7f882 to 98c0c6e Compare June 24, 2026 06:38
@clawsweeper clawsweeper Bot added merge-risk: 🚨 compatibility 🚨 May break existing users, config, migrations, defaults, or upgrade paths. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: 🔁 re-review loop A fresh ClawSweeper review was explicitly requested after the latest review. and removed rating: 🦞 diamond lobster Very strong PR readiness with only minor maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. labels Jun 24, 2026
@zaidazmi

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

Fixed the inherited parent-option finding on the current head.

What changed:

  • sessions diagnose now rejects unsupported inherited parent sessions options: --store, --all-agents, --active, --limit, and --verbose.
  • Parent --agent and --json still flow through to diagnose.
  • sessions compact now uses the same helper, preserving its existing safety behavior.

Proof run after the patch:

  • node scripts/run-vitest.mjs src/cli/program/register.status-health-sessions.test.ts src/commands/sessions-diagnose.test.ts passed: 2 shards, 41 tests.
  • git diff --check passed.
  • .agents/skills/autoreview/scripts/autoreview --mode local ... passed with no accepted/actionable findings.

@clawsweeper

clawsweeper Bot commented Jun 28, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event repository_dispatch).
Result: the existing ClawSweeper review comment will be edited in place when the review finishes.

@clawsweeper clawsweeper Bot added rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. and removed rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: 🔁 re-review loop A fresh ClawSweeper review was explicitly requested after the latest review. labels Jun 28, 2026
@zaidazmi

Copy link
Copy Markdown
Contributor Author

Maintainer decision requested on the remaining API/product question.

ClawSweeper has no contributor-facing blocker left on the current head 587d228e; CI is green, proof is sufficient, and the previous inherited parent-option finding is fixed. The remaining decision is whether to accept this additive public contract:

  • Gateway RPC: sessions.diagnose, read-only operator.read.
  • CLI: openclaw sessions diagnose.
  • Public result vocabulary: bounded diagnosis outcomes, finding codes, evidence, and next-check fields.
  • Privacy boundary: no raw transcript content, no tool payloads, no local transcript paths.
  • Scope boundary: no recovery, abort, lane release, migration, provider/channel health probe, config/env change, or mutation.
  • CLI compatibility boundary: unsupported inherited parent sessions options are now rejected instead of silently ignored; supported --agent and --json still work.

My recommendation is to accept the contract as the durable read-only operator diagnosis surface. If maintainers want a narrower public vocabulary before merge, I can trim that now; otherwise this should be ready for normal maintainer review/merge gates.

@zaidazmi

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

Fixed the failed checks-node-compact-large-2 lane on the current head 463fcfc906f79f56bc5614a9045aae7e2796ec30.

Cause: sessions.diagnose was correctly registered with since: "2026.7", but src/gateway/methods/core-descriptors.since.test.ts was missing that method from CURRENT_TRAIN_METHODS.

Fix: added sessions.diagnose to the release-train inventory test.

Local verification:

  • node scripts/run-vitest.mjs src/gateway/methods/core-descriptors.since.test.ts passed.
  • node_modules/.bin/oxfmt --check src/gateway/methods/core-descriptors.since.test.ts passed.
  • git diff --check and git diff --check origin/main...HEAD passed.
  • .agents/skills/autoreview/scripts/autoreview --mode local passed clean with no accepted/actionable findings.

Fresh GitHub checks are now rerunning on this head.

@clawsweeper

clawsweeper Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event repository_dispatch).
Result: the existing ClawSweeper review comment will be edited in place when the review finishes.

Re-review progress:

@zaidazmi
zaidazmi force-pushed the codex/sessions-diagnose-v2 branch from 463fcfc to 6ab3f83 Compare July 22, 2026 16:43
@zaidazmi

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

Rebased the CI-fix commit onto latest origin/main after main moved again. Current head is 6ab3f8347068c7e318707264524c80f1f314fe42.

The previous failed lane is fixed on this head:

  • checks-node-compact-large-2 now passes in GitHub Actions.
  • The failed assertion was caused by sessions.diagnose missing from CURRENT_TRAIN_METHODS despite being registered with since: "2026.7".
  • The fix adds sessions.diagnose to src/gateway/methods/core-descriptors.since.test.ts.

Verification on the rebased head:

  • node scripts/run-vitest.mjs src/gateway/methods/core-descriptors.since.test.ts passed.
  • corepack pnpm plugin-sdk:api:check passed.
  • corepack pnpm deadcode:dependencies passed.
  • node_modules/.bin/oxfmt --check src/gateway/methods/core-descriptors.since.test.ts passed.
  • git diff --check and git diff --check origin/main...HEAD passed.

Fresh GitHub check rollup currently has no failed or pending checks.

@clawsweeper

clawsweeper Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event repository_dispatch).
Result: the existing ClawSweeper review comment will be edited in place when the review finishes.

Re-review progress:

@openclaw-barnacle openclaw-barnacle Bot removed the stale Marked as stale due to inactivity label Jul 23, 2026
@clawsweeper clawsweeper Bot added rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. and removed rating: 🦞 diamond lobster Very strong PR readiness with only minor maintainer review expected. labels Jul 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agents Agent runtime and tooling app: android App: android app: web-ui App: web-ui cli CLI command changes commands Command implementations docs Improvements or additions to documentation feature: ✨ showcase ClawSweeper spotlight: unusually compelling feature idea for maintainer attention. gateway Gateway runtime merge-risk: 🚨 compatibility 🚨 May break existing users, config, migrations, defaults, or upgrade paths. P2 Normal backlog priority with limited blast radius. proof: sufficient ClawSweeper judged the real behavior proof convincing. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. size: XL status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature]: Add read-only sessions diagnose command for stuck-session triage

1 participant