Skip to content

test: fold channel message flows into qa e2e#93174

Merged
RomneyDa merged 3 commits into
mainfrom
qa-delete-channel-message-flows-script
Jun 18, 2026
Merged

test: fold channel message flows into qa e2e#93174
RomneyDa merged 3 commits into
mainfrom
qa-delete-channel-message-flows-script

Conversation

@RomneyDa

@RomneyDa RomneyDa commented Jun 15, 2026

Copy link
Copy Markdown
Member

Summary

  • delete scripts/dev/channel-message-flows.ts
  • fold Telegram channel flow parsing, preview clearing, and durable-final proof into the Telegram-owned QA e2e test at extensions/telegram/src/channel-message-flows.qa.e2e.test.ts
  • keep Telegram-specific flow helpers under extensions/telegram/src/test-support/channel-message-flows.ts, using existing plugin SDK formatter seams instead of adding Telegram public API exports
  • update the QA scenario and local channel-message-flows skill to use the Telegram-owned Vitest proof path

Stacked on #93114.

Verification

  • node scripts/run-vitest.mjs extensions/telegram/src/channel-message-flows.qa.e2e.test.ts test/extension-test-boundary.test.ts extensions/qa-lab/src/scenario-catalog.test.ts
  • pnpm check:test-types
  • pnpm openclaw qa suite --scenario channel-message-flows --output-dir .artifacts/qa-e2e/channel-message-flows-script-deleted
  • pnpm exec oxfmt --check --threads=1 test/e2e/qa-lab/channels/channel-message-flows.e2e.test.ts scripts/test-projects.test-support.mjs test/scripts/test-projects.test.ts
  • git diff --check
  • .agents/skills/autoreview/scripts/autoreview --mode local

Known local warning during QA commands: existing state migration warning for .openclaw/plugins/installs.json.migrated already being present.

@openclaw-barnacle openclaw-barnacle Bot added scripts Repository scripts size: L maintainer Maintainer-authored PR labels Jun 15, 2026
@clawsweeper

clawsweeper Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs maintainer review before merge. Reviewed June 18, 2026, 6:37 PM ET / 22:37 UTC.

Summary
The PR deletes the standalone channel-message-flows dev script, moves Telegram draft/final flow helpers and tests under the Telegram plugin, adds a QA Lab scenario, and updates the local channel-message-flows skill instructions.

PR surface: Source -89, Tests -43, Docs -10, Other +27. Total -115 across 5 files.

Reproducibility: not applicable. this is a cleanup PR, not a defect report. Current main still has the standalone script and test, while PR head moves the evidence into Telegram-owned QA test support and a QA scenario.

Review metrics: none identified.

Root-cause cluster
Relationship: canonical
Canonical: #93174
Summary: This PR is the canonical open channel-message-flows slice of the broader RFC 0007 QA/script consolidation work; related merged PRs cover adjacent scripts rather than replacing this one.

Members:

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

Merge readiness
Overall: 🐚 platinum hermit
Proof: 🌊 off-meta tidepool
Patch quality: 🐚 platinum hermit
Result: ready for maintainer review.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Rank-up moves:

  • Refresh the stale oxfmt verification path in the PR body or rely on current-head CI that covers the moved extension files before landing.

Risk before merge

  • [P1] The PR body still includes one stale oxfmt verification path under test/e2e/qa-lab after the final move to extensions/telegram, so landing proof should rely on current-head CI or a refreshed command for the extension path.

Maintainer options:

  1. Decide the mitigation before merge
    Land the maintainer cleanup after current-head QA/Vitest or CI proof confirms the extension path, keeping the standalone script removed and Telegram flow evidence owned by the Telegram plugin plus QA scenario metadata.
  2. Pause or close
    Do not merge this PR until maintainers decide whether the risk is worth taking.

Next step before merge

  • Maintainer-labeled PR should stay open for normal maintainer review and current-head CI/proof; there is no narrow automated repair to queue from this review.

Security
Cleared: The diff changes QA scenario/test support and local skill instructions only; no workflow, dependency, lockfile, secret, permission, publishing, or downloaded-code surface concern was found.

Review details

Best possible solution:

Land the maintainer cleanup after current-head QA/Vitest or CI proof confirms the extension path, keeping the standalone script removed and Telegram flow evidence owned by the Telegram plugin plus QA scenario metadata.

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

Not applicable: this is a cleanup PR, not a defect report. Current main still has the standalone script and test, while PR head moves the evidence into Telegram-owned QA test support and a QA scenario.

Is this the best way to solve the issue?

Yes: moving Telegram-specific helpers under extensions/telegram and exposing the QA Lab scenario as the entry point is the cleaner owner-boundary solution. Keeping a repo-level script would preserve the cross-boundary plugin-internal import pattern this cleanup is trying to remove.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against 84bcdaa98373.

Label changes

Label changes:

  • remove merge-risk: 🚨 other: Current PR review selected no merge-risk labels.

Label justifications:

  • P3: This is low-risk internal QA/test/skill cleanup with no direct production runtime behavior change.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🌊 off-meta tidepool and patch quality is 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Not applicable: Not applicable: this is a MEMBER-authored maintainer-labeled cleanup PR, and the external contributor proof gate does not apply even though the body lists targeted QA/Vitest commands.
Evidence reviewed

PR surface:

Source -89, Tests -43, Docs -10, Other +27. Total -115 across 5 files.

View PR surface stats
Area Files Added Removed Net
Source 1 54 143 -89
Tests 2 13 56 -43
Docs 1 16 26 -10
Config 0 0 0 0
Generated 0 0 0 0
Other 1 27 0 +27
Total 5 110 225 -115

What I checked:

Likely related people:

  • RomneyDa: Authored merged QA Lab scenario execution work and the merged base script-consolidation PR that this PR is stacked on, so they are the strongest routing owner for this cleanup slice. (role: recent QA Lab consolidation contributor; confidence: high; commits: 561b293c7a96, 0a6736af09f6, f7e5132ffd5f; files: extensions/qa-lab/src/test-file-scenario-runner.ts, extensions/qa-lab/src/scenario-catalog.test.ts, qa/scenarios/channels/channel-message-flows.yaml)
  • Patrick-Erichsen: Authored the merged PR that originally added the Telegram progress preview flow script, its tests, and the channel-message-flows skill now being folded into QA Lab evidence. (role: introduced behavior; confidence: high; commits: d60ab485114a; files: scripts/dev/channel-message-flows.ts, test/scripts/channel-message-flows.test.ts, .agents/skills/channel-message-flows/SKILL.md)
  • obviyus: Recent GitHub history shows Telegram flow fixture and native draft preview changes on the same script/test surface, useful for Telegram behavior review context. (role: recent Telegram flow fixture contributor; confidence: medium; commits: e8b142feb117, 4e8a52754282; files: scripts/dev/channel-message-flows.ts, test/scripts/channel-message-flows.test.ts, extensions/telegram/src/test-support/channel-message-flows.ts)
  • vincentkoc: Recent history on the channel-message-flows script and tests includes final-message-id and preview-cleanup fixes that define the behavior this PR preserves in the moved QA helper. (role: recent script repair contributor; confidence: medium; commits: ab41e25b2c95, 461999c06035; files: scripts/dev/channel-message-flows.ts, test/scripts/channel-message-flows.test.ts)
  • Solvely-Colin: Recent current-main history touched the QA scenario catalog expectations and evidence scenario shape adjacent to the catalog change in this PR. (role: recent adjacent QA scenario contributor; confidence: medium; commits: d5a27b0b9684; files: extensions/qa-lab/src/scenario-catalog.test.ts, qa/scenarios)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

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.

How this review workflow works
  • 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.

@clawsweeper clawsweeper Bot added rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. P3 Low-priority cleanup, docs, polish, ergonomics, or speculative work. labels Jun 15, 2026
@RomneyDa RomneyDa self-assigned this Jun 15, 2026
@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: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. labels Jun 15, 2026
@RomneyDa
RomneyDa force-pushed the script-to-test-conversion branch from 606494a to 4fa026e Compare June 16, 2026 21:00
@RomneyDa
RomneyDa force-pushed the qa-delete-channel-message-flows-script branch from 62df4f5 to ff54775 Compare June 16, 2026 21:01
@RomneyDa
RomneyDa force-pushed the script-to-test-conversion branch 2 times, most recently from e0571de to 6965711 Compare June 17, 2026 19:56
@RomneyDa
RomneyDa force-pushed the qa-delete-channel-message-flows-script branch from ff54775 to 66df6b5 Compare June 17, 2026 20:18
Base automatically changed from script-to-test-conversion to main June 17, 2026 21:22
@openclaw-barnacle openclaw-barnacle Bot added docker Docker and sandbox tooling size: XL and removed size: XS labels Jun 17, 2026
@RomneyDa
RomneyDa force-pushed the qa-delete-channel-message-flows-script branch from 66df6b5 to 06bde84 Compare June 17, 2026 21:30
@openclaw-barnacle openclaw-barnacle Bot added size: XS and removed docker Docker and sandbox tooling size: XL labels Jun 17, 2026
@RomneyDa
RomneyDa force-pushed the qa-delete-channel-message-flows-script branch from 06bde84 to f10709a Compare June 17, 2026 22:27
@openclaw-barnacle openclaw-barnacle Bot added size: M and removed scripts Repository scripts size: XS labels Jun 17, 2026
@RomneyDa
RomneyDa force-pushed the qa-delete-channel-message-flows-script branch 2 times, most recently from d0a19ff to 3f587ed Compare June 17, 2026 23:16
@clawsweeper clawsweeper Bot added rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. merge-risk: 🚨 other 🚨 Merging this PR has meaningful risk outside the owned taxonomy. and removed 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. labels Jun 18, 2026
@RomneyDa
RomneyDa force-pushed the qa-delete-channel-message-flows-script branch from 3f587ed to 84a53ff Compare June 18, 2026 21:39
@openclaw-barnacle openclaw-barnacle Bot added the channel: telegram Channel integration: telegram label Jun 18, 2026
@RomneyDa
RomneyDa force-pushed the qa-delete-channel-message-flows-script branch from 2c0113a to 458f5fb Compare June 18, 2026 22:23
@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: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. merge-risk: 🚨 other 🚨 Merging this PR has meaningful risk outside the owned taxonomy. labels Jun 18, 2026
@RomneyDa
RomneyDa merged commit 4ca0e52 into main Jun 18, 2026
190 of 194 checks passed
@RomneyDa
RomneyDa deleted the qa-delete-channel-message-flows-script branch June 18, 2026 22:45
vincentkoc added a commit that referenced this pull request Jun 19, 2026
* 'main' of https://github.com/openclaw/openclaw: (82 commits)
  fix(e2e): validate chat tools body limit
  fix(e2e): honor chat tools body limit
  fix(e2e): validate chat tools timeout
  fix(e2e): give cleanup smoke build heap headroom
  fix(e2e): validate plugin lifecycle limits
  refactor(auto-reply): add lifecycle storage seams (#93685)
  fix: preserve pending subagent completion announces (#94349)
  fix(e2e): validate plugin log limits before setup
  fix(e2e): validate codex media timeout
  fix(e2e): validate fixture log limits
  fix(e2e): validate cleanup log limits
  fix(e2e): validate docker log limits
  fix(live): validate docker pids limits
  fix(e2e): validate docker pids limits
  test: fold channel message flows into qa e2e (#93174)
  fix(e2e): validate docker build limits
  Prevent Codex thread rotation from losing next-step context (#94093)
  fix(e2e): validate fixture cleanup interval
  fix(agents): correct claw-score validation workflow
  fix(e2e): validate log tail limits
  ...
github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request Jun 19, 2026
* test: fold channel flows into qa e2e

* test: keep channel flow skill pointed at qa

* test: move channel flow proof under telegram
github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request Jun 19, 2026
* 'main' of https://github.com/openclaw/openclaw: (82 commits)
  fix(e2e): validate chat tools body limit
  fix(e2e): honor chat tools body limit
  fix(e2e): validate chat tools timeout
  fix(e2e): give cleanup smoke build heap headroom
  fix(e2e): validate plugin lifecycle limits
  refactor(auto-reply): add lifecycle storage seams (openclaw#93685)
  fix: preserve pending subagent completion announces (openclaw#94349)
  fix(e2e): validate plugin log limits before setup
  fix(e2e): validate codex media timeout
  fix(e2e): validate fixture log limits
  fix(e2e): validate cleanup log limits
  fix(e2e): validate docker log limits
  fix(live): validate docker pids limits
  fix(e2e): validate docker pids limits
  test: fold channel message flows into qa e2e (openclaw#93174)
  fix(e2e): validate docker build limits
  Prevent Codex thread rotation from losing next-step context (openclaw#94093)
  fix(e2e): validate fixture cleanup interval
  fix(agents): correct claw-score validation workflow
  fix(e2e): validate log tail limits
  ...
cxbAsDev pushed a commit to cxbAsDev/openclaw that referenced this pull request Jun 23, 2026
* test: fold channel flows into qa e2e

* test: keep channel flow skill pointed at qa

* test: move channel flow proof under telegram
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

channel: telegram Channel integration: telegram extensions: qa-lab maintainer Maintainer-authored PR P3 Low-priority cleanup, docs, polish, ergonomics, or speculative work. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. size: M 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.

1 participant