Files
APAW/archive/scripts/run-pipeline-test.sh
¨NW¨ 5a77528b23 refactor: clean up root directory - move deprecated files to archive
Archive:
- docker-compose.yml, Dockerfile.playwright
- scripts/ (legacy test scripts)
- docs/, .test/ (old documentation and tests)
- IMPROVEMENT_PROPOSAL.md (superseded by .kilo/)
- BROWSER_VISIBILITY.md, README.Docker.md
- cleanup-packages.sh, fix-permissions.sh, install-apaw.sh

Keep in root:
- .kilo/ (active system)
- .claude/ (Claude Code runtime)
- AGENTS.md (agent reference)
- README.md (main documentation)
- src/ (utility code)
- package.json, tsconfig.json (project config)
2026-04-05 03:52:10 +01:00

168 lines
8.3 KiB
Bash

#!/bin/bash
# Autonomous Pipeline Test Runner
# Runs complete system test for all agents, workflows, and skills
echo "╔══════════════════════════════════════════════════════════════╗"
echo "║ APAW Autonomous Pipeline - System Test Runner ║"
echo "╚══════════════════════════════════════════════════════════════╝"
echo ""
# Configuration
GITEA_URL="https://git.softuniq.eu"
API_URL="https://git.softuniq.eu/api/v1"
OWNER="UniqueSoft"
REPO="APAW"
# Check for token
if [ -z "$GITEA_TOKEN" ]; then
echo "❌ GITEA_TOKEN not set!"
echo " Run: export GITEA_TOKEN=your_token"
exit 1
fi
# Colors
GREEN='\033[0;32m'
RED='\033[0;31m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'
# Test counters
TESTS_PASSED=0
TESTS_FAILED=0
TESTS_TOTAL=0
# Function to run test
run_test() {
local test_name="$1"
local test_command="$2"
TESTS_TOTAL=$((TESTS_TOTAL + 1))
echo -e "${BLUE}▶ Testing: ${test_name}${NC}"
if eval "$test_command" > /dev/null 2>&1; then
TESTS_PASSED=$((TESTS_PASSED + 1))
echo -e " ${GREEN}✅ PASSED${NC}"
return 0
else
TESTS_FAILED=$((TESTS_FAILED + 1))
echo -e " ${RED}❌ FAILED${NC}"
return 1
fi
}
echo "╔══════════════════════════════════════════════════════════════╗"
echo "║ PHASE 1: Agent Testing ║"
echo "╚══════════════════════════════════════════════════════════════╝"
echo ""
# Test each agent file exists
echo "Testing agent configurations..."
for agent in orchestrator requirement-refiner history-miner system-analyst product-owner lead-developer frontend-developer sdet-engineer code-skeptic the-fixer performance-engineer security-auditor release-manager evaluator prompt-optimizer capability-analyst agent-architect markdown-validator; do
run_test "Agent file: $agent" "[ -f .kilo/agents/${agent}.md ]"
done
echo ""
echo "Testing agent models..."
# Check that no unavailable models are used (anthropic, openai direct)
run_test "No unavailable models" "! grep -r 'model:.*anthropic' .kilo/agents/ 2>/dev/null"
echo ""
echo "╔══════════════════════════════════════════════════════════════╗"
echo "║ PHASE 2: Commands Testing ║"
echo "╚══════════════════════════════════════════════════════════════╝"
echo ""
for cmd in pipeline status evaluate plan ask debug code review review-watcher feature hotfix; do
run_test "Command: /$cmd" "[ -f .kilo/commands/${cmd}.md ]"
done
echo ""
echo "╔══════════════════════════════════════════════════════════════╗"
echo "║ PHASE 3: Skills Testing ║"
echo "╚══════════════════════════════════════════════════════════════╝"
echo ""
for skill in gitea scoped-labels fix-workflow; do
run_test "Skill: $skill" "[ -f .kilo/skills/${skill}/SKILL.md ]"
done
echo ""
echo "╔══════════════════════════════════════════════════════════════╗"
echo "║ PHASE 4: TypeScript Modules Testing ║"
echo "╚══════════════════════════════════════════════════════════════╝"
echo ""
for module in index workflow router evaluator git-ops gitea-client pipeline-runner prompt-loader types; do
run_test "Module: ${module}.ts" "[ -f src/kilocode/agent-manager/${module}.ts ]"
done
echo ""
echo "╔══════════════════════════════════════════════════════════════╗"
echo "║ PHASE 5: Gitea Integration ║"
echo "╚══════════════════════════════════════════════════════════════╝"
echo ""
# Test Gitea API connectivity
echo "Testing Gitea API..."
run_test "API connectivity" "curl -s '$API_URL/repos/$OWNER/$REPO' -H 'Authorization: token $GITEA_TOKEN' | grep -q '\"name\"'"
# Test scoped labels
echo ""
echo "Testing scoped labels..."
run_test "Status labels" "curl -s '$API_URL/repos/$OWNER/$REPO/labels' -H 'Authorization: token $GITEA_TOKEN' | grep -q 'status::new'"
run_test "Priority labels" "curl -s '$API_URL/repos/$OWNER/$REPO/labels' -H 'Authorization: token $GITEA_TOKEN' | grep -q 'priority::critical'"
run_test "Type labels" "curl -s '$API_URL/repos/$OWNER/$REPO/labels' -H 'Authorization: token $GITEA_TOKEN' | grep -q 'type::feature'"
echo ""
echo "╔══════════════════════════════════════════════════════════════╗"
echo "║ PHASE 6: Pipeline Flow Test ║"
echo "╚══════════════════════════════════════════════════════════════╝"
echo ""
# Test workflow state machine
echo "Testing workflow transitions..."
run_test "Workflow graph" "[ -f src/kilocode/agent-manager/workflow.ts ]"
run_test "Router" "[ -f src/kilocode/agent-manager/router.ts ]"
run_test "Pipeline runner" "[ -f src/kilocode/agent-manager/pipeline-runner.ts ]"
echo ""
echo "╔══════════════════════════════════════════════════════════════╗"
echo "║ PHASE 7: Autonomous Components ║"
echo "╚══════════════════════════════════════════════════════════════╝"
echo ""
run_test "Capability analyst" "[ -f .kilo/agents/capability-analyst.md ]"
run_test "Agent architect" "[ -f .kilo/agents/agent-architect.md ]"
run_test "Review watcher" "[ -f .kilo/commands/review-watcher.md ]"
run_test "Fix workflow" "[ -f .kilo/skills/fix-workflow/SKILL.md ]"
echo ""
echo "╔══════════════════════════════════════════════════════════════╗"
echo "║ TEST RESULTS SUMMARY ║"
echo "╚══════════════════════════════════════════════════════════════╝"
echo ""
echo "Total Tests: ${TESTS_TOTAL}"
echo -e "Passed: ${GREEN}${TESTS_PASSED}${NC}"
echo -e "Failed: ${RED}${TESTS_FAILED}${NC}"
echo ""
if [ $TESTS_FAILED -eq 0 ]; then
echo -e "${GREEN}✅ ALL TESTS PASSED${NC}"
echo ""
echo "System is ready for autonomous operation!"
echo ""
echo "Next steps:"
echo " 1. Run: ./scripts/run-pipeline-test.sh (or /pipeline 5 in KiloCode)"
echo " 2. Test individual agents: @agent-name <task>"
echo " 3. View milestone: https://git.softuniq.eu/${OWNER}/${REPO}/milestone/43"
echo ""
exit 0
else
echo -e "${RED}❌ SOME TESTS FAILED${NC}"
echo ""
echo "Please fix the issues above before running pipeline."
exit 1
fi