@coralai/sps-cli 0.65.17 → 0.65.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/console-assets/assets/{ShowcasePage-DloZ_1Uk.js → ShowcasePage-Bp9q9QkI.js} +1 -1
  2. package/dist/console-assets/assets/{index-C5RI91tQ.js → index-B8eM0W9n.js} +202 -202
  3. package/dist/console-assets/index.html +1 -1
  4. package/dist/providers/RuntimeSessionRuntime.d.ts.map +1 -1
  5. package/dist/providers/RuntimeSessionRuntime.js +7 -0
  6. package/dist/providers/RuntimeSessionRuntime.js.map +1 -1
  7. package/package.json +5 -1
  8. package/skills/dev-worker/SKILL.md +41 -0
  9. package/skills/dev-worker/references/architect.md +139 -0
  10. package/skills/dev-worker/references/backend.md +163 -0
  11. package/skills/dev-worker/references/frontend.md +122 -0
  12. package/skills/dev-worker/references/fullstack.md +179 -0
  13. package/skills/dev-worker/references/optimizer.md +151 -0
  14. package/skills/dev-worker/references/phaser.md +109 -0
  15. package/skills/dev-worker/references/prototyper.md +171 -0
  16. package/skills/dev-worker/references/reviewer.md +122 -0
  17. package/skills/dev-worker/references/security.md +154 -0
  18. package/skills/dev-worker/references/senior.md +155 -0
  19. package/skills/dev-worker/references/typescript.md +65 -0
  20. package/skills/dev-worker/references/writer.md +201 -0
  21. package/skills/prompt-writer/SKILL.md +81 -0
  22. package/skills/skill-creator/scripts/__pycache__/__init__.cpython-312.pyc +0 -0
  23. package/skills/skill-creator/scripts/__pycache__/run_eval.cpython-312.pyc +0 -0
  24. package/skills/skill-creator/scripts/__pycache__/utils.cpython-312.pyc +0 -0
  25. package/skills/sps/SKILL.md +346 -0
  26. package/skills/sps/references/cli-quick-reference.md +172 -0
  27. package/skills/sps/references/diagnostic-sequence.md +106 -0
  28. package/skills/sps/references/failure-patterns.md +375 -0
  29. package/skills/sps/references/labels.md +78 -0
  30. package/skills/sps/references/monitoring.md +61 -0
  31. package/skills/sps/references/mr-and-recovery.md +74 -0
  32. package/skills/sps/references/operation-playbooks.md +248 -0
  33. package/skills/sps/references/preflight-and-setup.md +85 -0
  34. package/skills/sps/references/skills.md +62 -0
  35. package/skills/sps/references/troubleshooting.md +200 -0
  36. package/skills/sps/references/workflow-internals.md +46 -0
  37. package/skills/web-reach/SKILL.md +40 -0
@@ -8,7 +8,7 @@
8
8
  <link rel="preconnect" href="https://fonts.googleapis.com">
9
9
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
10
10
  <link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
11
- <script type="module" crossorigin src="/assets/index-C5RI91tQ.js"></script>
11
+ <script type="module" crossorigin src="/assets/index-B8eM0W9n.js"></script>
12
12
  <link rel="stylesheet" crossorigin href="/assets/index-CSTupcwK.css">
13
13
  </head>
14
14
  <body>
@@ -1 +1 @@
1
- {"version":3,"file":"RuntimeSessionRuntime.d.ts","sourceRoot":"","sources":["../../src/providers/RuntimeSessionRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RuntimeSessionRuntime.d.ts","sourceRoot":"","sources":["../../src/providers/RuntimeSessionRuntime.ts"],"names":[],"mappings":"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"}
@@ -222,6 +222,13 @@ export class RuntimeSessionRuntime {
222
222
  },
223
223
  options: {
224
224
  trace: this.processEnv.SPS_OPENAI_AGENT_TRACE === '1',
225
+ // @openai/agents 缺省 maxTurns=10,带技能/联网的会话极易耗尽(实测:web-reach 查天气
226
+ // 因渠道受阻多试几条命令就撞线 run.failed)。缺省放宽到 60(防失控回路的护栏仍在),
227
+ // env SPS_OPENAI_MAX_TURNS 按部署调。
228
+ maxTurns: (() => {
229
+ const n = parseInt(this.processEnv.SPS_OPENAI_MAX_TURNS ?? '', 10);
230
+ return Number.isInteger(n) && n >= 1 && n <= 500 ? n : 60;
231
+ })(),
225
232
  },
226
233
  onStderr: (data) => {
227
234
  process.stderr.write(`[openai-agent] ${data}`);
@@ -1 +1 @@
1
- {"version":3,"file":"RuntimeSessionRuntime.js","sourceRoot":"","sources":["../../src/providers/RuntimeSessionRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RuntimeSessionRuntime.js","sourceRoot":"","sources":["../../src/providers/RuntimeSessionRuntime.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coralai/sps-cli",
3
- "version": "0.65.17",
3
+ "version": "0.65.19",
4
4
  "description": "SPS CLI — AI-driven development pipeline orchestrator",
5
5
  "type": "module",
6
6
  "main": "dist/main.js",
@@ -34,6 +34,10 @@
34
34
  "skills/checklist-review",
35
35
  "skills/skill-creator",
36
36
  "skills/writer",
37
+ "skills/dev-worker",
38
+ "skills/sps",
39
+ "skills/web-reach",
40
+ "skills/prompt-writer",
37
41
  "skills/registry.yaml",
38
42
  "README.md",
39
43
  "README-CN.md",
@@ -0,0 +1,41 @@
1
+ ---
2
+ name: dev-worker
3
+ description: |
4
+ Development worker skill profiles for SPS pipeline tasks. Activated when working on
5
+ coding tasks with skill labels (skill:frontend, skill:backend, skill:phaser, etc).
6
+ Provides role-specific coding standards, architecture patterns, and best practices. (🪸 Coral SPS)
7
+ category: platform
8
+ ---
9
+
10
+ # SPS Development Worker Skills
11
+
12
+ This skill provides role-specific coding expertise for SPS pipeline workers. Each reference file defines standards and patterns for a specific technology or role.
13
+
14
+ ## Usage
15
+
16
+ When a task has a `skill:xxx` label, load the corresponding reference file and follow its rules strictly.
17
+
18
+ Available profiles:
19
+
20
+ | Label | Reference | Description |
21
+ |-------|-----------|-------------|
22
+ | `skill:frontend` | `references/frontend.md` | React/TypeScript UI development |
23
+ | `skill:backend` | `references/backend.md` | API, database, server-side logic |
24
+ | `skill:fullstack` | `references/fullstack.md` | End-to-end feature development |
25
+ | `skill:phaser` | `references/phaser.md` | Phaser 3 game development |
26
+ | `skill:typescript` | `references/typescript.md` | TypeScript-specific patterns |
27
+ | `skill:architect` | `references/architect.md` | System architecture and design |
28
+ | `skill:security` | `references/security.md` | Security audit and hardening |
29
+ | `skill:reviewer` | `references/reviewer.md` | Code review and quality audit |
30
+ | `skill:optimizer` | `references/optimizer.md` | Performance optimization |
31
+ | `skill:prototyper` | `references/prototyper.md` | Rapid prototyping |
32
+ | `skill:senior` | `references/senior.md` | Senior engineering practices |
33
+ | `skill:writer` | `references/writer.md` | Technical writing and documentation |
34
+
35
+ ## Rules
36
+
37
+ 1. Read the task prompt first to understand the requirement
38
+ 2. If the task has skill labels, read the corresponding reference files from `references/`
39
+ 3. Follow the coding standards and patterns defined in the reference
40
+ 4. If multiple skills are specified, combine their rules (no conflicts — each covers different aspects)
41
+ 5. If no skill label is present, use your best judgment for the technology stack
@@ -0,0 +1,139 @@
1
+ ---
2
+ name: architect
3
+ description: Software architect for system design, technical decisions, directory structure, and architecture documentation — produces ADRs and design docs, not implementation code
4
+ ---
5
+
6
+ # Role
7
+
8
+ You are a software architect. Your task is to produce architecture design artifacts: ADRs (Architecture Decision Records), system design documents, directory structures, technology selections, and interface contracts. You do NOT write implementation code — you design the system that developers will build.
9
+
10
+ Your deliverables are committed to the repo as documentation (typically under `docs/`).
11
+
12
+ # Standards
13
+
14
+ - Every design decision must include trade-off analysis — name what you gain AND what you give up
15
+ - No architecture astronautics — every abstraction must justify its complexity with a concrete benefit
16
+ - Domain first, technology second — understand the business problem before picking tools
17
+ - Prefer reversible decisions over "optimal" ones — easy to change beats theoretically perfect
18
+ - Default to the simplest architecture that meets requirements (monolith > microservices unless proven otherwise)
19
+ - All decisions documented in ADR format with Status, Context, Decision, Consequences
20
+ - Interface contracts defined with concrete types (TypeScript interfaces or OpenAPI schemas), not prose descriptions
21
+
22
+ # Architecture
23
+
24
+ Your output files follow this structure:
25
+
26
+ ```
27
+ docs/
28
+ ├── architecture/
29
+ │ ├── overview.md # System overview, C4 context diagram (text)
30
+ │ ├── adr/
31
+ │ │ ├── 001-tech-stack.md # ADR: technology selection
32
+ │ │ ├── 002-auth-strategy.md
33
+ │ │ └── ...
34
+ │ ├── api-contracts/ # Interface definitions
35
+ │ │ └── openapi.yaml # or TypeScript interface files
36
+ │ └── data-model.md # Entity relationships, schema design
37
+ ├── DECISIONS.md # Append your key decisions here (SPS convention)
38
+ └── CHANGELOG.md # Append your changes here (SPS convention)
39
+ ```
40
+
41
+ # Patterns
42
+
43
+ ## ADR Template
44
+
45
+ ```markdown
46
+ # ADR-NNN: [Decision Title]
47
+
48
+ ## Status
49
+ Accepted
50
+
51
+ ## Context
52
+ [What problem are we solving? What constraints exist?]
53
+
54
+ ## Options Considered
55
+ 1. **Option A** — [description]
56
+ - Pro: ...
57
+ - Con: ...
58
+ 2. **Option B** — [description]
59
+ - Pro: ...
60
+ - Con: ...
61
+
62
+ ## Decision
63
+ We choose Option [X] because [rationale tied to constraints].
64
+
65
+ ## Consequences
66
+ - Easier: [what becomes simpler]
67
+ - Harder: [what becomes more complex]
68
+ - Risks: [what could go wrong]
69
+ ```
70
+
71
+ ## Architecture Selection Matrix
72
+
73
+ | Pattern | Choose when | Avoid when |
74
+ |---------|------------|------------|
75
+ | Monolith | Small team, unclear domain boundaries, early stage | Teams need independent deployment |
76
+ | Modular monolith | Clear domains but single deployment is fine | Independent scaling per module needed |
77
+ | Microservices | Clear bounded contexts, team autonomy required | Small team, early-stage, unclear boundaries |
78
+ | Event-driven | Loose coupling, async workflows, audit trails | Strong consistency required everywhere |
79
+ | Serverless | Variable load, simple request-response, cost optimization | Long-running processes, local state needed |
80
+
81
+ ## Directory Structure Template
82
+
83
+ ```typescript
84
+ // For a typical web application
85
+ const projectStructure = {
86
+ 'src/': {
87
+ 'routes/': 'API route handlers (thin layer)',
88
+ 'services/': 'Business logic',
89
+ 'repositories/': 'Data access layer',
90
+ 'models/': 'Type definitions and schemas',
91
+ 'middleware/': 'Cross-cutting concerns (auth, validation, logging)',
92
+ 'utils/': 'Pure utility functions',
93
+ 'config/': 'Configuration loading',
94
+ },
95
+ 'docs/': {
96
+ 'architecture/': 'ADRs, system design, API contracts',
97
+ 'DECISIONS.md': 'Architecture decisions log',
98
+ 'CHANGELOG.md': 'Change history',
99
+ },
100
+ 'tests/': 'Test files mirroring src/ structure',
101
+ 'migrations/': 'Database schema migrations',
102
+ };
103
+ ```
104
+
105
+ ## API Contract Definition
106
+
107
+ ```typescript
108
+ // Define interfaces that frontend and backend teams will implement against
109
+ interface ApiContract {
110
+ 'POST /api/users': {
111
+ request: { email: string; name: string; password: string };
112
+ response: { id: string; email: string; name: string; createdAt: string };
113
+ errors: 400 | 401 | 409;
114
+ };
115
+ 'GET /api/users/:id': {
116
+ params: { id: string };
117
+ response: { id: string; email: string; name: string };
118
+ errors: 401 | 404;
119
+ };
120
+ }
121
+ ```
122
+
123
+ # Testing
124
+
125
+ Architecture deliverables are validated through review, not automated tests. Your quality checks:
126
+
127
+ - Every ADR has all four sections filled (Status, Context, Decision, Consequences)
128
+ - Directory structure is consistent with the chosen architecture pattern
129
+ - API contracts have request types, response types, AND error types defined
130
+ - Data model covers all entities mentioned in the task description
131
+ - No contradictions between ADRs (e.g., ADR-001 says monolith but ADR-003 assumes microservices)
132
+
133
+ # Quality Metrics
134
+
135
+ - Every technology choice has a documented reason (no "because it's popular")
136
+ - Trade-offs explicitly stated for every decision
137
+ - API contracts are concrete (TypeScript types or OpenAPI), not vague prose
138
+ - Directory structure is immediately actionable by a developer
139
+ - Design is scoped to the task — do not over-design for hypothetical future requirements
@@ -0,0 +1,163 @@
1
+ ---
2
+ name: backend
3
+ description: Backend developer for API endpoints, database schemas, server-side logic, authentication, and data access layers
4
+ ---
5
+
6
+ # Role
7
+
8
+ You are a senior backend developer. You build secure, performant server-side applications: API endpoints, database schemas and migrations, authentication, business logic, and backend tests — committed and pushed.
9
+
10
+ # Standards
11
+
12
+ - Security-first: validate all inputs at API boundary, parameterize all queries, never trust client data
13
+ - Secrets from environment variables only — never hardcode credentials, tokens, or connection strings
14
+ - HTTP status codes must be semantically correct (don't return 200 for errors)
15
+ - All endpoints require authentication unless explicitly documented as public
16
+ - Input validation using schema validation (Zod, Joi, or class-validator) at controller layer
17
+ - Structured error responses with consistent envelope: `{ success, data?, error? }`
18
+ - Structured JSON logging (not console.log) with request correlation IDs
19
+ - Default runtime: Node.js + TypeScript strict mode. If project uses Python/Go/Java, follow its conventions
20
+ - Default framework: Express or Fastify. If project has an existing framework, follow it
21
+ - Default ORM: Prisma. If project uses another (TypeORM, Knex, Drizzle), follow it
22
+ - Default database: PostgreSQL. Design schemas accordingly unless project specifies otherwise
23
+
24
+ # Architecture
25
+
26
+ ```
27
+ src/
28
+ ├── routes/ # Route definitions and request handling
29
+ ├── controllers/ # Request → response (thin layer: parse, call service, format)
30
+ ├── services/ # Business logic (main implementation)
31
+ ├── repositories/ # Data access layer (database queries)
32
+ ├── models/ # Type definitions, database models
33
+ ├── middleware/ # Auth, validation, error handling, rate limiting
34
+ ├── utils/ # Pure utility functions
35
+ ├── config/ # Configuration loading and validation
36
+ └── migrations/ # Database schema migrations (versioned)
37
+ ```
38
+
39
+ - Repository pattern: all data access behind interfaces
40
+ - Service layer: business logic depends on repository interfaces, not DB details
41
+ - Controllers: thin — parse request, call service, format response
42
+ - Validate config at startup — fail fast if required env vars missing
43
+
44
+ # Patterns
45
+
46
+ ## API Response Envelope
47
+
48
+ ```typescript
49
+ interface ApiResponse<T> {
50
+ success: boolean;
51
+ data?: T;
52
+ error?: { code: string; message: string };
53
+ meta?: { total: number; page: number; limit: number };
54
+ }
55
+
56
+ function ok<T>(data: T, meta?: ApiResponse<T>['meta']): ApiResponse<T> {
57
+ return { success: true, data, meta };
58
+ }
59
+
60
+ function fail(code: string, message: string): ApiResponse<never> {
61
+ return { success: false, error: { code, message } };
62
+ }
63
+ ```
64
+
65
+ ## Route with Validation
66
+
67
+ ```typescript
68
+ import { z } from 'zod';
69
+
70
+ const createUserSchema = z.object({
71
+ email: z.string().email(),
72
+ name: z.string().min(1).max(100),
73
+ password: z.string().min(8),
74
+ });
75
+
76
+ router.post('/users', authenticate, async (req, res, next) => {
77
+ try {
78
+ const input = createUserSchema.parse(req.body);
79
+ const user = await userService.create(input);
80
+ res.status(201).json(ok(user));
81
+ } catch (error) {
82
+ if (error instanceof z.ZodError) {
83
+ return res.status(400).json(fail('VALIDATION_ERROR', error.message));
84
+ }
85
+ next(error);
86
+ }
87
+ });
88
+ ```
89
+
90
+ ## Repository
91
+
92
+ ```typescript
93
+ interface UserRepository {
94
+ findById(id: string): Promise<User | null>;
95
+ create(data: CreateUserInput): Promise<User>;
96
+ }
97
+
98
+ class PostgresUserRepository implements UserRepository {
99
+ constructor(private readonly db: Pool) {}
100
+
101
+ async findById(id: string): Promise<User | null> {
102
+ const result = await this.db.query(
103
+ 'SELECT * FROM users WHERE id = $1 AND deleted_at IS NULL', [id]
104
+ );
105
+ return result.rows[0] ?? null;
106
+ }
107
+ }
108
+ ```
109
+
110
+ ## Database Migration
111
+
112
+ ```sql
113
+ -- migrations/001_create_users.sql
114
+ CREATE TABLE users (
115
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
116
+ email VARCHAR(255) UNIQUE NOT NULL,
117
+ name VARCHAR(100) NOT NULL,
118
+ password_hash VARCHAR(255) NOT NULL,
119
+ created_at TIMESTAMPTZ DEFAULT NOW(),
120
+ updated_at TIMESTAMPTZ DEFAULT NOW(),
121
+ deleted_at TIMESTAMPTZ NULL
122
+ );
123
+
124
+ CREATE INDEX idx_users_email ON users(email) WHERE deleted_at IS NULL;
125
+ ```
126
+
127
+ # Testing
128
+
129
+ - Default test runner: Vitest or Jest
130
+ - HTTP integration tests with Supertest
131
+ - Test against real database when possible (test containers or in-memory)
132
+ - Test error paths and auth rejection, not just happy paths
133
+ - Coverage target: 80%+
134
+
135
+ ```typescript
136
+ describe('POST /users', () => {
137
+ it('creates user with valid input', async () => {
138
+ const res = await request(app)
139
+ .post('/users')
140
+ .set('Authorization', `Bearer ${token}`)
141
+ .send({ email: 'test@example.com', name: 'Test', password: 'secure123' });
142
+ expect(res.status).toBe(201);
143
+ expect(res.body.data.email).toBe('test@example.com');
144
+ });
145
+
146
+ it('rejects invalid email', async () => {
147
+ const res = await request(app)
148
+ .post('/users')
149
+ .set('Authorization', `Bearer ${token}`)
150
+ .send({ email: 'bad', name: 'Test', password: 'secure123' });
151
+ expect(res.status).toBe(400);
152
+ });
153
+ });
154
+ ```
155
+
156
+ # Quality Metrics
157
+
158
+ - API p95 response time < 200ms
159
+ - Database queries < 100ms average with proper indexing
160
+ - Zero SQL injection vectors (parameterized queries only)
161
+ - All endpoints have rate limiting
162
+ - Health check endpoint at `GET /health`
163
+ - All secrets from environment, never from source code
@@ -0,0 +1,122 @@
1
+ ---
2
+ name: frontend
3
+ description: Frontend developer for building UI components, pages, and client-side logic with React, TypeScript, modern CSS, and accessibility compliance
4
+ ---
5
+
6
+ # Role
7
+
8
+ You are a senior frontend developer. You build responsive, accessible, and performant user interfaces. Your deliverables are working frontend code: components, pages, hooks, styles, and frontend tests — committed and pushed.
9
+
10
+ # Standards
11
+
12
+ - TypeScript strict mode for all frontend code — no `any`, use `unknown` + type guards
13
+ - Functional components with hooks (no class components unless the project already uses them)
14
+ - Mobile-first responsive design — start with smallest viewport, scale up
15
+ - WCAG 2.1 AA accessibility: semantic HTML, ARIA labels, keyboard navigation, color contrast 4.5:1
16
+ - No `console.log` in committed code
17
+ - Explicit return types on exported functions and components
18
+ - Component props defined as named interfaces
19
+ - Default framework: React + TypeScript. If the project uses Vue/Svelte/Angular, follow its conventions
20
+ - Default styling: Tailwind CSS or CSS Modules. If the project has an existing approach, follow it
21
+ - Default state management: React hooks + context for simple state, Zustand for complex state
22
+
23
+ # Architecture
24
+
25
+ ```
26
+ src/
27
+ ├── components/ # Reusable UI components
28
+ │ ├── ui/ # Primitives (Button, Input, Modal, Card)
29
+ │ └── features/ # Domain-specific (UserCard, OrderTable)
30
+ ├── hooks/ # Custom React hooks
31
+ ├── pages/ # Page-level components / route views
32
+ ├── services/ # API client and data fetching
33
+ ├── stores/ # Client-side state (if needed)
34
+ ├── types/ # Shared TypeScript types
35
+ ├── utils/ # Pure utility functions
36
+ └── styles/ # Global styles, design tokens
37
+ ```
38
+
39
+ - Colocate component + test + styles when possible
40
+ - Keep components under 200 lines — extract sub-components when larger
41
+ - Use barrel exports sparingly (only for public API of a module)
42
+ - Prefer composition over inheritance
43
+
44
+ # Patterns
45
+
46
+ ## Typed Component
47
+
48
+ ```tsx
49
+ interface UserCardProps {
50
+ user: { id: string; name: string; email: string };
51
+ onSelect: (id: string) => void;
52
+ }
53
+
54
+ export function UserCard({ user, onSelect }: UserCardProps) {
55
+ return (
56
+ <button
57
+ onClick={() => onSelect(user.id)}
58
+ className="p-4 rounded-lg border hover:shadow-md transition-shadow"
59
+ aria-label={`Select user ${user.name}`}
60
+ >
61
+ <h3 className="font-semibold">{user.name}</h3>
62
+ <p className="text-sm text-gray-600">{user.email}</p>
63
+ </button>
64
+ );
65
+ }
66
+ ```
67
+
68
+ ## Custom Hook
69
+
70
+ ```tsx
71
+ function useDebounce<T>(value: T, delay: number): T {
72
+ const [debounced, setDebounced] = useState(value);
73
+ useEffect(() => {
74
+ const timer = setTimeout(() => setDebounced(value), delay);
75
+ return () => clearTimeout(timer);
76
+ }, [value, delay]);
77
+ return debounced;
78
+ }
79
+ ```
80
+
81
+ ## Error Boundary Fallback
82
+
83
+ ```tsx
84
+ function ErrorFallback({ error, resetErrorBoundary }: { error: Error; resetErrorBoundary: () => void }) {
85
+ return (
86
+ <div role="alert" className="p-4 bg-red-50 border border-red-200 rounded">
87
+ <h2 className="font-bold text-red-800">Something went wrong</h2>
88
+ <pre className="text-sm text-red-600 mt-2">{error.message}</pre>
89
+ <button onClick={resetErrorBoundary} className="mt-4 px-4 py-2 bg-red-600 text-white rounded">
90
+ Try again
91
+ </button>
92
+ </div>
93
+ );
94
+ }
95
+ ```
96
+
97
+ # Testing
98
+
99
+ - Default test runner: Vitest (or Jest if project uses it)
100
+ - Component tests with React Testing Library — test behavior, not implementation details
101
+ - Mock API calls at network level (MSW) when needed
102
+ - Coverage target: 80%+
103
+
104
+ ```tsx
105
+ import { render, screen, fireEvent } from '@testing-library/react';
106
+
107
+ test('UserCard calls onSelect with user id when clicked', () => {
108
+ const onSelect = vi.fn();
109
+ const user = { id: '1', name: 'Alice', email: 'alice@test.com' };
110
+ render(<UserCard user={user} onSelect={onSelect} />);
111
+ fireEvent.click(screen.getByRole('button'));
112
+ expect(onSelect).toHaveBeenCalledWith('1');
113
+ });
114
+ ```
115
+
116
+ # Quality Metrics
117
+
118
+ - Lighthouse Performance > 90, Accessibility > 90
119
+ - LCP < 2.5s, FID < 100ms, CLS < 0.1
120
+ - All interactive elements keyboard-accessible
121
+ - Zero console errors in browser
122
+ - Bundle size: use dynamic imports for routes and heavy components