AgentSkillsCN

frontend-backend-mapping

确保每个Python路由都有对应的TypeScript API客户端,验证React组件能够访问所有后端功能,检查栈内各层的类型一致性。在新增API、审查全栈集成,或调试客户端与服务器不匹配时使用。

SKILL.md
--- frontmatter
name: frontend-backend-mapping
description: Ensure every Python route has corresponding TypeScript API client, validate React components can access all backend features, check type consistency across stack. Use when adding APIs, reviewing full-stack integration, or debugging client-server mismatches.

Frontend-Backend Mapping

Maps full capability exposure chain. Source: .github/agents/frontend-backend-capability-mapper.md.

When to Use This Skill

  • Adding new API endpoints
  • Reviewing full-stack integration
  • Debugging client-server mismatches
  • Validating type consistency

Step 1: List Backend Routes

bash
rg "@app\.(get|post|put|delete|patch)" qig-backend/routes/ --type py

Step 2: List Frontend API Clients

bash
rg "fetch|axios|api\." client/src/api/ --type ts

Step 3: Compare Coverage

For each backend route, verify:

  1. TypeScript client exists in client/src/api/
  2. Types match (Zod schema ↔ Python model)
  3. Component consumes the API

Capability Mapping Chain

code
Backend Route → API Client → Service → Component → User
      ↓             ↓           ↓          ↓
 Python/Flask   TypeScript   React Hook  React UI

Critical Checks

Backend RouteFrontend ClientStatus
/api/consciousnessconsciousness.ts✅ / ❌
/api/basinbasin.ts✅ / ❌
/api/kernelkernel.ts✅ / ❌
/api/generationgeneration.ts✅ / ❌

Type Consistency Validation

typescript
// shared/schema.ts - Zod schemas MUST match Python models
import { z } from "zod";

export const ConsciousnessMetricsSchema = z.object({
  phi: z.number().min(0).max(1),
  kappa: z.number().min(0).max(128),
  regime: z.enum(["breakdown", "linear", "geometric", "hierarchical"]),
});
python
# Python model must match
@dataclass
class ConsciousnessMetrics:
    phi: float  # 0-1
    kappa: float  # 0-128
    regime: Literal["breakdown", "linear", "geometric", "hierarchical"]

Validation Commands

bash
# Check route coverage
python scripts/check_route_coverage.py

# Validate type consistency
npx tsc --noEmit

Response Format

code
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
FRONTEND-BACKEND MAPPING REPORT
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Route Coverage:
  - Backend routes: N
  - Frontend clients: M
  - Coverage: X%

Type Consistency: ✅ / ❌
Missing Clients: [list]
Hidden Capabilities: [list]
Priority: CRITICAL / HIGH / MEDIUM
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━