bda1f51c8a
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 32s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 52s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 1m13s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 41s
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Validate - Code Quality (pull_request) Failing after 2m37s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 1m44s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 1m1s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 3m16s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 50s
AI Code Review / AI Code Review (pull_request) Successful in 1m46s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m48s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 5m50s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m42s
CI/CD Pipeline / Unit Tests (pull_request) Failing after 3m11s
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / CI Gate (pull_request) 失败: CI/CD Pipeline / Validate - Code Quality (pull_request), CI/CD Pipeline / Unit Tests (pull_request) [backend-only]
36 lines
1.0 KiB
Python
36 lines
1.0 KiB
Python
from pathlib import Path
|
|
|
|
AGENT_DOCS = Path(__file__).parent.parent.parent / "docs" / "agents"
|
|
EXPECTED_AGENTS = [
|
|
"requirement_agent",
|
|
"arch_agent",
|
|
"code_dev_agent",
|
|
"lint_review_agent",
|
|
"test_agent",
|
|
"build_pack_agent",
|
|
"release_agent",
|
|
"ops_monitor_agent",
|
|
]
|
|
|
|
|
|
def test_agent_docs_use_canonical_eight_agents():
|
|
combined = "\n".join(path.read_text(encoding="utf-8") for path in AGENT_DOCS.rglob("*.md"))
|
|
|
|
for agent in EXPECTED_AGENTS:
|
|
assert agent in combined
|
|
|
|
|
|
def test_agent_runbook_defines_required_flow_order():
|
|
runbook = (AGENT_DOCS / "RUNBOOK.md").read_text(encoding="utf-8")
|
|
positions = [runbook.index(agent) for agent in EXPECTED_AGENTS]
|
|
|
|
assert positions == sorted(positions)
|
|
|
|
|
|
def test_auto_run_protocol_protects_openclaw_self_config_files():
|
|
protocol = (AGENT_DOCS / "AUTO-RUN-PROTOCOL.md").read_text(encoding="utf-8")
|
|
|
|
for filename in ["AGENTS.md", "SOUL.md", "MEMORY.md", "USER.md", "TOOLS.md", "META.md"]:
|
|
assert filename in protocol
|
|
assert "不得修改 OpenClaw" in protocol
|