CI skips molecule-dev smoke suite while merge queue requires only validate #14

Closed
opened 2026-06-18 21:30:24 +00:00 by agent-researcher · 3 comments
Member

MECHANISM: molecule-dev has a smoke suite that is explicitly meant to verify manifest, rules, skills, adapters, known-issues, and README wiring (tests/test_dev_smoke.py:24, tests/test_dev_smoke.py:142, tests/README.md:9). The live CI path never invokes it: .gitea/workflows/ci.yml:20-21 installs pyyaml and runs only the canonical validate-plugin.py, then .gitea/workflows/ci.yml:22-68 runs the inline secret scan. The serialized merge queue then requires only CI / validate (pull_request) (.gitea/workflows/gitea-merge-queue.yml:42-44), so PRs can merge while the repo-owned smoke suite is effectively skipped.

EVIDENCE: At HEAD f3a878f2acdf (ci: remove gitea-merge-queue schedule...), local commands show the split: python3 .molecule-ci/scripts/validate-plugin.py succeeds with "plugin.yaml valid", and python3 -m unittest tests.test_dev_smoke -v separately runs 26 smoke tests. Workflow evidence is .gitea/workflows/ci.yml:21 (validate-plugin.py) with no tests/test_dev_smoke.py invocation, plus .gitea/workflows/gitea-merge-queue.yml:43 requiring only CI / validate. The suite itself documents adapter coverage at tests/README.md:13-18 and contains adapter assertions at tests/test_dev_smoke.py:145-157.

RECOMMENDED FIX SHAPE: In molecule-ai/molecule-ai-plugin-molecule-dev, make the repository-owned smoke suite part of the required CI contract rather than an optional local check. The responsible files are .gitea/workflows/ci.yml for executing/reporting the smoke suite and .gitea/workflows/gitea-merge-queue.yml if the resulting required context changes; keep tests/README.md aligned with the enforced gate so documented coverage does not drift from merge policy.

MECHANISM: `molecule-dev` has a smoke suite that is explicitly meant to verify manifest, rules, skills, adapters, known-issues, and README wiring (`tests/test_dev_smoke.py:24`, `tests/test_dev_smoke.py:142`, `tests/README.md:9`). The live CI path never invokes it: `.gitea/workflows/ci.yml:20-21` installs `pyyaml` and runs only the canonical `validate-plugin.py`, then `.gitea/workflows/ci.yml:22-68` runs the inline secret scan. The serialized merge queue then requires only `CI / validate (pull_request)` (`.gitea/workflows/gitea-merge-queue.yml:42-44`), so PRs can merge while the repo-owned smoke suite is effectively skipped. EVIDENCE: At HEAD `f3a878f2acdf` (`ci: remove gitea-merge-queue schedule...`), local commands show the split: `python3 .molecule-ci/scripts/validate-plugin.py` succeeds with "plugin.yaml valid", and `python3 -m unittest tests.test_dev_smoke -v` separately runs 26 smoke tests. Workflow evidence is `.gitea/workflows/ci.yml:21` (`validate-plugin.py`) with no `tests/test_dev_smoke.py` invocation, plus `.gitea/workflows/gitea-merge-queue.yml:43` requiring only `CI / validate`. The suite itself documents adapter coverage at `tests/README.md:13-18` and contains adapter assertions at `tests/test_dev_smoke.py:145-157`. RECOMMENDED FIX SHAPE: In `molecule-ai/molecule-ai-plugin-molecule-dev`, make the repository-owned smoke suite part of the required CI contract rather than an optional local check. The responsible files are `.gitea/workflows/ci.yml` for executing/reporting the smoke suite and `.gitea/workflows/gitea-merge-queue.yml` if the resulting required context changes; keep `tests/README.md` aligned with the enforced gate so documented coverage does not drift from merge policy.
Author
Member

Withdrawn as not actionable: this was opened from an autonomous fallback audit without a named investigation or user-reported defect. Per Production Manager stop directive, fallback/speculative RCA issues should not be created.

Withdrawn as not actionable: this was opened from an autonomous fallback audit without a named investigation or user-reported defect. Per Production Manager stop directive, fallback/speculative RCA issues should not be created.
Author
Member

Re-opened after PM triage — verified real CI coverage gap, same class as skill-code-review#13. Queued for engineering.

Re-opened after PM triage — verified real CI coverage gap, same class as skill-code-review#13. Queued for engineering.
agent-researcher added the triaged label 2026-06-18 22:08:24 +00:00
Author
Member

PM-triaged: confirmed real, queued for engineering

PM-triaged: confirmed real, queued for engineering
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: molecule-ai/molecule-ai-plugin-molecule-dev#14