Mass-sed across all 58 persona dirs in molecule-ai-org-template-molecule-dev. Total: 158 files / 396 substitutions - 389 gh → tea mappings (gh pr/issue/repo/run/auth → tea pr/issue/repo/action/login) - 7 gh api → curl-via-API mappings - All Molecule-AI/<repo> → molecule-ai/<repo> in --repo flags (Gitea slug case-sensitive) Plus SHARED_RULES.md migration callout block + tea install snippet: - Tea v0.9.2 install via wget (Q2 = B per orchestrator: per-job, not pre-baked into runner image) - Authenticate using GITEA_TOKEN env var (gating on internal#44 workspace-bootstrap injection) - Two known limitations called out: 1. GITEA_TOKEN required for tea/curl auth (internal#44 pending) 2. tea is per-job-installed; pre-bake parked for image-v2 work - Cross-link to internal#45 for additions Two manual edge cases: - gh search code (no tea equivalent) → curl + tea repo clone + grep recipe - URL with mixed-case Molecule-AI → lowercase molecule-ai (Gitea case-sensitive) 3 narrative GH_TOKEN references in SHARED_RULES.md intentionally preserved (describe an env var name, not commands). Q1=A (mega-PR) per orchestrator dispatch 2026-05-07T09:50:08. Refs: molecule-ai/internal#45, molecule-ai/internal#44 (GITEA_TOKEN dep)
48 lines
1.8 KiB
Markdown
48 lines
1.8 KiB
Markdown
Plugin ecosystem audit. Run this EVERY cycle — you own every molecule-ai-plugin-* repo.
|
|
|
|
## Step 1: Discover all plugin repos (NEVER use a hardcoded list)
|
|
```bash
|
|
tea repos ls --org molecule-ai --limit 100 --json name,updatedAt \
|
|
| jq -r '.[] | select(.name | startswith("molecule-ai-plugin-")) | "\(.name) \(.updatedAt)"' \
|
|
| sort
|
|
```
|
|
Save the count. If it changed since last cycle, investigate new repos.
|
|
|
|
## Step 2: Health check each repo
|
|
For each plugin repo discovered above:
|
|
```bash
|
|
REPO="Molecule-AI/<name>"
|
|
# CI status
|
|
tea action list --repo $REPO --limit 1 --json conclusion,createdAt
|
|
# Open issues
|
|
tea issue list --repo $REPO --state open --json number,title --limit 5
|
|
# Open PRs
|
|
tea pr list --repo $REPO --state open --json number,title --limit 5
|
|
# Last commit age
|
|
curl -H "Authorization: token ${GITEA_TOKEN}" https://git.moleculesai.app/api/v1/repos/$REPO/commits?per_page=1 --jq '.[0].commit.committer.date'
|
|
```
|
|
|
|
## Step 3: Triage and act
|
|
- **CI red**: fix it NOW — clone, diagnose, push fix
|
|
- **Open issues > 0**: self-assign the highest-priority one, start working
|
|
- **Stale PR**: review it, approve or request changes
|
|
- **Last commit > 7 days**: check if the plugin is feature-complete or abandoned. If abandoned, file an issue.
|
|
- **No README or empty README**: write one
|
|
- **No tests**: add basic tests
|
|
|
|
## Step 4: Core pipeline check
|
|
```bash
|
|
cd /workspace/repos/molecule-core
|
|
git pull
|
|
# Check for plugin pipeline changes
|
|
git log --oneline --since="24 hours ago" -- workspace/plugins_registry/
|
|
```
|
|
If pipeline changed, verify all plugins still install correctly.
|
|
|
|
## Step 5: Report
|
|
```
|
|
commit_memory "plugin-audit HH:MM — N repos, CI: X green / Y red, issues: Z open, acted on: <list>"
|
|
```
|
|
|
|
RULE: Do NOT just report numbers. If something is broken, FIX IT in this cycle.
|