tribunal-kit 4.5.0 → 4.6.0
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.
- package/.agent/.shared/ui-ux-pro-max/README.md +4 -4
- package/.agent/ARCHITECTURE.md +279 -277
- package/.agent/GEMINI.md +127 -121
- package/.agent/agents/accessibility-reviewer.md +187 -187
- package/.agent/agents/ai-code-reviewer.md +199 -199
- package/.agent/agents/api-architect.md +71 -66
- package/.agent/agents/backend-specialist.md +219 -215
- package/.agent/agents/cloud-engineer.md +98 -0
- package/.agent/agents/code-archaeologist.md +168 -161
- package/.agent/agents/database-architect.md +184 -184
- package/.agent/agents/db-latency-auditor.md +213 -216
- package/.agent/agents/debugger.md +198 -191
- package/.agent/agents/dependency-reviewer.md +106 -103
- package/.agent/agents/devops-engineer.md +218 -218
- package/.agent/agents/documentation-writer.md +209 -201
- package/.agent/agents/explorer-agent.md +167 -160
- package/.agent/agents/frontend-reviewer.md +162 -160
- package/.agent/agents/frontend-specialist.md +257 -248
- package/.agent/agents/game-developer.md +48 -48
- package/.agent/agents/logic-reviewer.md +118 -116
- package/.agent/agents/mobile-developer.md +197 -200
- package/.agent/agents/mobile-reviewer.md +159 -162
- package/.agent/agents/orchestrator.md +187 -181
- package/.agent/agents/penetration-tester.md +160 -157
- package/.agent/agents/performance-optimizer.md +183 -183
- package/.agent/agents/performance-reviewer.md +178 -178
- package/.agent/agents/precedence-reviewer.md +251 -250
- package/.agent/agents/product-manager.md +149 -142
- package/.agent/agents/product-owner.md +81 -80
- package/.agent/agents/project-planner.md +152 -142
- package/.agent/agents/qa-automation-engineer.md +216 -225
- package/.agent/agents/resilience-reviewer.md +88 -88
- package/.agent/agents/schema-reviewer.md +67 -67
- package/.agent/agents/security-auditor.md +180 -174
- package/.agent/agents/seo-specialist.md +188 -193
- package/.agent/agents/sql-reviewer.md +159 -161
- package/.agent/agents/supervisor-agent.md +173 -184
- package/.agent/agents/swarm-worker-contracts.md +170 -166
- package/.agent/agents/swarm-worker-registry.md +92 -92
- package/.agent/agents/system-architect.md +85 -0
- package/.agent/agents/test-coverage-reviewer.md +158 -160
- package/.agent/agents/test-engineer.md +118 -118
- package/.agent/agents/throughput-optimizer.md +291 -299
- package/.agent/agents/type-safety-reviewer.md +182 -175
- package/.agent/agents/ui-ux-auditor.md +300 -292
- package/.agent/agents/vitals-reviewer.md +223 -223
- package/.agent/mcp_config.json +37 -40
- package/.agent/patterns/generator.md +11 -9
- package/.agent/patterns/inversion.md +14 -12
- package/.agent/patterns/pipeline.md +11 -9
- package/.agent/patterns/reviewer.md +15 -13
- package/.agent/patterns/tool-wrapper.md +11 -9
- package/.agent/routing_index.json +654 -0
- package/.agent/rules/GEMINI.md +358 -352
- package/.agent/scripts/compile_router.py +112 -0
- package/.agent/scripts/migrate_skills_frontmatter.py +64 -0
- package/.agent/scripts/strengthen_skills.js +1 -1
- package/.agent/skills/advanced-rag-pipelines/SKILL.md +56 -0
- package/.agent/skills/agent-organizer/SKILL.md +156 -150
- package/.agent/skills/agentic-patterns/SKILL.md +313 -315
- package/.agent/skills/ai-prompt-injection-defense/SKILL.md +190 -184
- package/.agent/skills/api-patterns/SKILL.md +253 -247
- package/.agent/skills/api-security-auditor/SKILL.md +195 -193
- package/.agent/skills/app-builder/SKILL.md +573 -572
- package/.agent/skills/app-builder/templates/SKILL.md +108 -115
- package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -76
- package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -92
- package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -88
- package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -88
- package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +83 -83
- package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -90
- package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -90
- package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +126 -122
- package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +127 -122
- package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +172 -169
- package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +139 -134
- package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -83
- package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +122 -119
- package/.agent/skills/appflow-wireframe/SKILL.md +146 -145
- package/.agent/skills/architecture/SKILL.md +226 -219
- package/.agent/skills/authentication-best-practices/SKILL.md +197 -189
- package/.agent/skills/backend-security-expert/SKILL.md +16 -2
- package/.agent/skills/bash-linux/SKILL.md +179 -179
- package/.agent/skills/behavioral-modes/SKILL.md +239 -223
- package/.agent/skills/brainstorming/SKILL.md +498 -486
- package/.agent/skills/browser-native-ai/SKILL.md +57 -4
- package/.agent/skills/building-native-ui/SKILL.md +202 -202
- package/.agent/skills/cicd-pro/SKILL.md +442 -0
- package/.agent/skills/clean-code/SKILL.md +400 -381
- package/.agent/skills/cloud-architect/SKILL.md +439 -0
- package/.agent/skills/code-review-checklist/SKILL.md +203 -194
- package/.agent/skills/config-validator/SKILL.md +165 -165
- package/.agent/skills/containerization-pro/SKILL.md +452 -0
- package/.agent/skills/csharp-developer/SKILL.md +518 -518
- package/.agent/skills/data-validation-schemas/SKILL.md +333 -328
- package/.agent/skills/database-design/SKILL.md +247 -240
- package/.agent/skills/deployment-procedures/SKILL.md +172 -169
- package/.agent/skills/devops-engineer/SKILL.md +345 -345
- package/.agent/skills/devops-incident-responder/SKILL.md +143 -137
- package/.agent/skills/doc.md +209 -177
- package/.agent/skills/documentation-templates/SKILL.md +291 -279
- package/.agent/skills/edge-computing/SKILL.md +183 -181
- package/.agent/skills/error-resilience/SKILL.md +411 -428
- package/.agent/skills/extract-design-system/SKILL.md +160 -158
- package/.agent/skills/framer-motion-expert/SKILL.md +253 -244
- package/.agent/skills/frontend-design/SKILL.md +208 -201
- package/.agent/skills/frontend-security-expert/SKILL.md +16 -3
- package/.agent/skills/game-design-expert/SKILL.md +132 -129
- package/.agent/skills/game-engineering-expert/SKILL.md +148 -146
- package/.agent/skills/generative-ui-expert/SKILL.md +57 -1
- package/.agent/skills/geo-fundamentals/SKILL.md +148 -147
- package/.agent/skills/git-pro/SKILL.md +435 -0
- package/.agent/skills/github-operations/SKILL.md +335 -329
- package/.agent/skills/gsap-core/SKILL.md +319 -308
- package/.agent/skills/gsap-frameworks/SKILL.md +213 -207
- package/.agent/skills/gsap-performance/SKILL.md +139 -133
- package/.agent/skills/gsap-plugins/SKILL.md +486 -480
- package/.agent/skills/gsap-react/SKILL.md +202 -189
- package/.agent/skills/gsap-scrolltrigger/SKILL.md +357 -350
- package/.agent/skills/gsap-timeline/SKILL.md +165 -161
- package/.agent/skills/gsap-utils/SKILL.md +344 -338
- package/.agent/skills/harness-protocol/SKILL.md +48 -0
- package/.agent/skills/i18n-localization/SKILL.md +174 -163
- package/.agent/skills/intelligent-routing/SKILL.md +202 -246
- package/.agent/skills/knowledge-graph/SKILL.md +60 -52
- package/.agent/skills/lint-and-validate/SKILL.md +261 -261
- package/.agent/skills/llm-engineering/SKILL.md +400 -394
- package/.agent/skills/local-first/SKILL.md +178 -178
- package/.agent/skills/mcp-builder/SKILL.md +143 -142
- package/.agent/skills/mobile-design/SKILL.md +272 -263
- package/.agent/skills/monorepo-management/SKILL.md +335 -334
- package/.agent/skills/motion-engineering/SKILL.md +266 -234
- package/.agent/skills/nextjs-react-expert/SKILL.md +236 -234
- package/.agent/skills/nodejs-best-practices/SKILL.md +547 -548
- package/.agent/skills/observability/SKILL.md +343 -343
- package/.agent/skills/parallel-agents/SKILL.md +143 -146
- package/.agent/skills/performance-profiling/SKILL.md +259 -267
- package/.agent/skills/plan-writing/SKILL.md +150 -142
- package/.agent/skills/platform-engineer/SKILL.md +148 -147
- package/.agent/skills/playwright-best-practices/SKILL.md +188 -187
- package/.agent/skills/powershell-windows/SKILL.md +162 -162
- package/.agent/skills/project-idioms/SKILL.md +137 -137
- package/.agent/skills/python-patterns/SKILL.md +260 -259
- package/.agent/skills/python-pro/SKILL.md +324 -323
- package/.agent/skills/react-specialist/SKILL.md +305 -277
- package/.agent/skills/readme-builder/SKILL.md +310 -300
- package/.agent/skills/realtime-patterns/SKILL.md +323 -319
- package/.agent/skills/red-team-tactics/SKILL.md +231 -218
- package/.agent/skills/rust-pro/SKILL.md +671 -673
- package/.agent/skills/seo-fundamentals/SKILL.md +179 -179
- package/.agent/skills/server-management/SKILL.md +218 -214
- package/.agent/skills/shadcn-ui-expert/SKILL.md +231 -231
- package/.agent/skills/skill-creator/SKILL.md +87 -86
- package/.agent/skills/sql-pro/SKILL.md +629 -629
- package/.agent/skills/supabase-postgres-best-practices/SKILL.md +97 -97
- package/.agent/skills/swiftui-expert/SKILL.md +204 -201
- package/.agent/skills/system-design-pro/SKILL.md +345 -0
- package/.agent/skills/systematic-debugging/SKILL.md +153 -142
- package/.agent/skills/tailwind-patterns/SKILL.md +610 -566
- package/.agent/skills/tdd-workflow/SKILL.md +169 -161
- package/.agent/skills/test-result-analyzer/SKILL.md +313 -309
- package/.agent/skills/testing-patterns/SKILL.md +566 -579
- package/.agent/skills/trend-researcher/SKILL.md +243 -237
- package/.agent/skills/typescript-advanced/SKILL.md +336 -335
- package/.agent/skills/ui-ux-pro-max/SKILL.md +590 -562
- package/.agent/skills/ui-ux-researcher/SKILL.md +244 -244
- package/.agent/skills/vue-expert/SKILL.md +294 -275
- package/.agent/skills/vulnerability-scanner/SKILL.md +416 -404
- package/.agent/skills/web-accessibility-auditor/SKILL.md +219 -218
- package/.agent/skills/web-design-guidelines/SKILL.md +192 -186
- package/.agent/skills/webapp-testing/SKILL.md +167 -169
- package/.agent/skills/webgpu-performance/SKILL.md +56 -2
- package/.agent/skills/whimsy-injector/SKILL.md +346 -325
- package/.agent/skills/workflow-optimizer/SKILL.md +231 -229
- package/.agent/workflows/acf.md +141 -0
- package/.agent/workflows/api-tester.md +176 -151
- package/.agent/workflows/audit.md +150 -127
- package/.agent/workflows/brainstorm.md +134 -110
- package/.agent/workflows/changelog.md +140 -112
- package/.agent/workflows/create.md +168 -124
- package/.agent/workflows/debug.md +190 -165
- package/.agent/workflows/deploy.md +201 -180
- package/.agent/workflows/enhance.md +154 -128
- package/.agent/workflows/fix.md +136 -114
- package/.agent/workflows/generate.md +198 -183
- package/.agent/workflows/marathon.md +37 -11
- package/.agent/workflows/migrate.md +184 -160
- package/.agent/workflows/orchestrate.md +192 -168
- package/.agent/workflows/performance-benchmarker.md +135 -114
- package/.agent/workflows/plan.md +196 -173
- package/.agent/workflows/preview.md +103 -80
- package/.agent/workflows/refactor.md +192 -161
- package/.agent/workflows/review-ai.md +125 -101
- package/.agent/workflows/review.md +141 -116
- package/.agent/workflows/session.md +122 -94
- package/.agent/workflows/status.md +101 -79
- package/.agent/workflows/strengthen-skills.md +164 -138
- package/.agent/workflows/super-prompt.md +24 -0
- package/.agent/workflows/swarm.md +193 -179
- package/.agent/workflows/test.md +211 -189
- package/.agent/workflows/tribunal-backend.md +136 -105
- package/.agent/workflows/tribunal-database.md +122 -95
- package/.agent/workflows/tribunal-frontend.md +221 -96
- package/.agent/workflows/tribunal-full.md +129 -100
- package/.agent/workflows/tribunal-mobile.md +122 -95
- package/.agent/workflows/tribunal-performance.md +136 -110
- package/.agent/workflows/tribunal-speed.md +209 -183
- package/.agent/workflows/ui-ux-pro-max.md +145 -122
- package/README.md +107 -55
- package/bin/mcp-server.js +159 -0
- package/bin/tribunal-kit.js +105 -29
- package/bin/wrapper.js +16 -7
- package/mcp_config.json +9 -0
- package/package.json +94 -86
- package/scripts/changelog.js +4 -3
- package/scripts/validate-payload.js +6 -1
- package/scripts/postinstall.js +0 -127
|
@@ -1,151 +1,176 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Automated multi-stage API endpoint testing. Generates and runs auth-aware request sequences (login → use token → test CRUD → verify errors). Reports response codes, schema mismatches, and unexpected data.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
-H "
|
|
76
|
-
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
#
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
echo "---
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
/api
|
|
151
|
-
|
|
1
|
+
---
|
|
2
|
+
description: Automated multi-stage API endpoint testing. Generates and runs auth-aware request sequences (login → use token → test CRUD → verify errors). Reports response codes, schema mismatches, and unexpected data.
|
|
3
|
+
required-skills: testing-patterns, api-patterns
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /api-tester — Automated API Testing
|
|
7
|
+
|
|
8
|
+
$ARGUMENTS
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## $CONTEXT_REQUIRED
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
Read BEFORE testing:
|
|
16
|
+
□ Target endpoint files → Understand the expected parameters and auth needs
|
|
17
|
+
□ package.json → Check testing frameworks available
|
|
18
|
+
□ .env.example / .env.test → Check for test database or mock API URLs
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## When to Use /api-tester
|
|
24
|
+
|
|
25
|
+
| Use `/api-tester` when... | Use something else when... |
|
|
26
|
+
| :------------------------------------ | :---------------------------------------- |
|
|
27
|
+
| Testing REST API endpoints manually | Unit tests needed → `/test` |
|
|
28
|
+
| Verifying auth token flows end-to-end | Full security audit → `/audit` |
|
|
29
|
+
| After generating new endpoints | Load testing → `/performance-benchmarker` |
|
|
30
|
+
| Checking response schemas | |
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Phase 1 — Endpoint Discovery
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
# Find all defined routes
|
|
38
|
+
grep -r "app.get\|app.post\|app.put\|app.delete\|app.patch" src/ --include="*.ts"
|
|
39
|
+
grep -r "router.get\|router.post\|router.put" src/ --include="*.ts"
|
|
40
|
+
|
|
41
|
+
# Next.js Route Handlers
|
|
42
|
+
find src/app/api -name "route.ts" | sort
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Phase 2 — Auth Flow (Token Acquisition)
|
|
48
|
+
|
|
49
|
+
Before testing protected endpoints, acquire auth token:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
# Acquire JWT
|
|
53
|
+
curl -X POST http://localhost:3000/api/auth/login \
|
|
54
|
+
-H "Content-Type: application/json" \
|
|
55
|
+
-d '{"email":"test@example.com","password":"testpassword"}' \
|
|
56
|
+
-s | jq '.token'
|
|
57
|
+
|
|
58
|
+
# Assign to variable
|
|
59
|
+
TOKEN=$(curl -X POST http://localhost:3000/api/auth/login \
|
|
60
|
+
-H "Content-Type: application/json" \
|
|
61
|
+
-d '{"email":"test@example.com","password":"testpassword"}' \
|
|
62
|
+
-s | jq -r '.token')
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## Phase 3 — CRUD Sequence Testing
|
|
68
|
+
|
|
69
|
+
Test endpoints in the correct order (create before read, read before delete):
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
# 1. CREATE (POST)
|
|
73
|
+
CREATE_RESPONSE=$(curl -X POST http://localhost:3000/api/users \
|
|
74
|
+
-H "Authorization: Bearer $TOKEN" \
|
|
75
|
+
-H "Content-Type: application/json" \
|
|
76
|
+
-d '{"name":"Test User","email":"new@test.com"}')
|
|
77
|
+
CREATED_ID=$(echo $CREATE_RESPONSE | jq -r '.id')
|
|
78
|
+
echo "Created: $CREATED_ID"
|
|
79
|
+
|
|
80
|
+
# 2. READ (GET)
|
|
81
|
+
curl -X GET "http://localhost:3000/api/users/$CREATED_ID" \
|
|
82
|
+
-H "Authorization: Bearer $TOKEN" \
|
|
83
|
+
| jq .
|
|
84
|
+
|
|
85
|
+
# 3. UPDATE (PATCH)
|
|
86
|
+
curl -X PATCH "http://localhost:3000/api/users/$CREATED_ID" \
|
|
87
|
+
-H "Authorization: Bearer $TOKEN" \
|
|
88
|
+
-H "Content-Type: application/json" \
|
|
89
|
+
-d '{"name":"Updated Name"}'
|
|
90
|
+
|
|
91
|
+
# 4. DELETE
|
|
92
|
+
curl -X DELETE "http://localhost:3000/api/users/$CREATED_ID" \
|
|
93
|
+
-H "Authorization: Bearer $TOKEN"
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Phase 4 — Error Case Testing
|
|
99
|
+
|
|
100
|
+
Test that errors are handled correctly:
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
# 4xx errors (client errors — must NOT return 200!)
|
|
104
|
+
echo "--- Unauthenticated request (expect 401) ---"
|
|
105
|
+
curl -X GET http://localhost:3000/api/users -s -o /dev/null -w "%{http_code}\n"
|
|
106
|
+
|
|
107
|
+
echo "--- Invalid ID (expect 404 or 400) ---"
|
|
108
|
+
curl -X GET "http://localhost:3000/api/users/not-a-real-id" \
|
|
109
|
+
-H "Authorization: Bearer $TOKEN" \
|
|
110
|
+
-s -o /dev/null -w "%{http_code}\n"
|
|
111
|
+
|
|
112
|
+
echo "--- Invalid body (expect 400) ---"
|
|
113
|
+
curl -X POST http://localhost:3000/api/users \
|
|
114
|
+
-H "Authorization: Bearer $TOKEN" \
|
|
115
|
+
-H "Content-Type: application/json" \
|
|
116
|
+
-d '{"invalid":"field"}' \
|
|
117
|
+
-s -o /dev/null -w "%{http_code}\n"
|
|
118
|
+
|
|
119
|
+
echo "--- Rate limiting (expect 429 after N requests) ---"
|
|
120
|
+
for i in {1..15}; do
|
|
121
|
+
STATUS=$(curl -X POST http://localhost:3000/api/auth/login \
|
|
122
|
+
-H "Content-Type: application/json" \
|
|
123
|
+
-d '{"email":"x","password":"wrong"}' \
|
|
124
|
+
-s -o /dev/null -w "%{http_code}")
|
|
125
|
+
echo "Attempt $i: $STATUS"
|
|
126
|
+
done
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
## Phase 5 — Test Report
|
|
132
|
+
|
|
133
|
+
```
|
|
134
|
+
━━━ API Test Report ━━━━━━━━━━━━━━━━━━━━━━
|
|
135
|
+
|
|
136
|
+
Auth Flow: ✅ Login → token acquired
|
|
137
|
+
POST /users: ✅ 201 Created — id returned
|
|
138
|
+
GET /users: ✅ 200 — data matches expected schema
|
|
139
|
+
PATCH /users: ✅ 200 — update reflected
|
|
140
|
+
DELETE /users: ✅ 204 No Content
|
|
141
|
+
|
|
142
|
+
Error Cases:
|
|
143
|
+
Unauthenticated: ✅ 401 (expected)
|
|
144
|
+
Invalid ID: ✅ 404 (expected)
|
|
145
|
+
Invalid body: ✅ 400 (expected) — Zod error returned
|
|
146
|
+
Rate limiting: ✅ 429 on attempt 11 (expected)
|
|
147
|
+
|
|
148
|
+
━━━ Issues Found ━━━━━━━━━━━━━━━━━━━━━━━━
|
|
149
|
+
|
|
150
|
+
❌ GET /api/users returns 200 with no auth (should be 401)
|
|
151
|
+
⚠️ PATCH /api/users doesn't validate Content-Type (accepts any body)
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## Usage Examples
|
|
157
|
+
|
|
158
|
+
```
|
|
159
|
+
/api-tester POST /api/auth/login then test /api/users CRUD
|
|
160
|
+
/api-tester test the /api/checkout flow with Stripe test card
|
|
161
|
+
/api-tester verify all auth routes return 401 for unauthenticated requests
|
|
162
|
+
/api-tester test rate limiting on /api/auth/login
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
---
|
|
166
|
+
|
|
167
|
+
## After /api-tester — Next Steps
|
|
168
|
+
|
|
169
|
+
| Outcome | Next Command |
|
|
170
|
+
| :-------------------------- | :-------------------------------------------------- |
|
|
171
|
+
| Tests fail due to code bugs | → `/debug` to isolate the fix |
|
|
172
|
+
| Tests pass, coverage needed | → `/test` to convert to automated Jest/Vitest suite |
|
|
173
|
+
| API is slow | → `/tribunal-speed` to profile latency |
|
|
174
|
+
| Ready to ship | → `/deploy` with full pre-flight |
|
|
175
|
+
|
|
176
|
+
---
|
|
@@ -1,127 +1,150 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Full project audit combining security scan, lint, schema validation, test coverage, dependency analysis, and bundle analysis. Runs all scripts in priority order. Human review required before applying any fixes.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
##
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
Priority
|
|
41
|
-
node .agent/scripts/
|
|
42
|
-
|
|
43
|
-
Priority
|
|
44
|
-
node .agent/scripts/
|
|
45
|
-
|
|
46
|
-
Priority
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
━━━
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
1
|
+
---
|
|
2
|
+
description: Full project audit combining security scan, lint, schema validation, test coverage, dependency analysis, and bundle analysis. Runs all scripts in priority order. Human review required before applying any fixes.
|
|
3
|
+
required-skills: vulnerability-scanner, clean-code
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /audit — Complete Project Health Assessment
|
|
7
|
+
|
|
8
|
+
$ARGUMENTS
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## $CONTEXT_REQUIRED
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
Read BEFORE auditing:
|
|
16
|
+
□ package.json → Identify all configured scripts and dependencies
|
|
17
|
+
□ Config files → tsconfig.json, eslint.config.js, jest.config.js
|
|
18
|
+
□ .agent/scripts/ → Check which audit scripts exist and are executable
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## When to Use /audit
|
|
24
|
+
|
|
25
|
+
| Use `/audit` when... | Use something else when... |
|
|
26
|
+
| :------------------------------- | :-------------------------------------------- |
|
|
27
|
+
| Before a major release or launch | Single file review → `/review` |
|
|
28
|
+
| After a security incident | Just lint errors → `/fix` |
|
|
29
|
+
| Onboarding to a new codebase | Performance only → `/performance-benchmarker` |
|
|
30
|
+
| Weekly/monthly health check | Testing only → `/test` |
|
|
31
|
+
| Before major dependency updates | |
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Execution Order (Fixed — Do Not Reorder)
|
|
36
|
+
|
|
37
|
+
Security failures early in the pipeline halt subsequent steps. Lint/test failures continue with flags.
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
Priority 1 — Security (HALT if critical finding)
|
|
41
|
+
node .agent/scripts/security_scan.js .
|
|
42
|
+
|
|
43
|
+
Priority 2 — Dependencies (HALT if exploitable CVE found)
|
|
44
|
+
node .agent/scripts/dependency_analyzer.js . --audit
|
|
45
|
+
|
|
46
|
+
Priority 3 — Type Checking (CONTINUE but flag)
|
|
47
|
+
npx tsc --noEmit
|
|
48
|
+
|
|
49
|
+
Priority 4 — Lint (CONTINUE but flag as deployment blocker)
|
|
50
|
+
node .agent/scripts/lint_runner.js .
|
|
51
|
+
|
|
52
|
+
Priority 5 — Schema Validation (CONTINUE but flag)
|
|
53
|
+
node .agent/scripts/schema_validator.js .
|
|
54
|
+
|
|
55
|
+
Priority 6 — Tests (CONTINUE but mark incomplete)
|
|
56
|
+
node .agent/scripts/test_runner.js . --coverage
|
|
57
|
+
|
|
58
|
+
Priority 7 — Bundle Analysis (INFORM only)
|
|
59
|
+
node .agent/scripts/bundle_analyzer.js . --build
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Cascade Failure Rules
|
|
63
|
+
|
|
64
|
+
| Check | Failure Behavior |
|
|
65
|
+
| :--------------------------------- | :---------------------------------------- |
|
|
66
|
+
| Security scan (critical) | **HALT** — all subsequent steps cancelled |
|
|
67
|
+
| Dependency audit (exploitable CVE) | **HALT** — fix before proceeding |
|
|
68
|
+
| Lint + type errors | **CONTINUE** — flag as deployment blocker |
|
|
69
|
+
| Tests failing | **CONTINUE** — mark task as incomplete |
|
|
70
|
+
| Bundle analysis (large) | **INFORM** — no blocking |
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Script Retry Protocol
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
Script exits 0: Success — continue pipeline
|
|
78
|
+
Script exits 1: Failure — report and decide: retry or skip?
|
|
79
|
+
Script not found: Skip with warning — do not block pipeline
|
|
80
|
+
Script times out: Kill after 5 min — report timeout — continue
|
|
81
|
+
Script crashes: Catch exception — report stack trace — continue
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**Hard limit: 3 retries per script.** After 3 failures, report to human and continue with remaining scripts.
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## Audit Report Format
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
━━━ Audit Report: [Project Name] ━━━━━━━━━━━━━━━━━━━━
|
|
92
|
+
|
|
93
|
+
Score: [N/7 checks passed]
|
|
94
|
+
|
|
95
|
+
1. Security Scan: ✅ PASSED | ❌ FAILED (CRITICAL — HALTED) | ⚠️ WARNINGS
|
|
96
|
+
2. Dependency Audit: ✅ PASSED | ❌ FAILED (CVE-XXXX-XXXX found) | ⚠️ WARNINGS
|
|
97
|
+
3. TypeScript: ✅ PASSED | ❌ FAILED (N errors)
|
|
98
|
+
4. Lint: ✅ PASSED | ❌ FAILED (N errors, M warnings)
|
|
99
|
+
5. Schema Validation: ✅ PASSED | ❌ FAILED | N/A
|
|
100
|
+
6. Test Coverage: ✅ PASSED | ❌ FAILED (N% — below 80% threshold)
|
|
101
|
+
7. Bundle Size: ✅ GOOD (310kb) | ⚠️ LARGE (>500kb) | ❌ CRITICAL (>1mb)
|
|
102
|
+
|
|
103
|
+
━━━ Critical Issues (Fix Before Deploy) ━━━━━━━━━━━━━
|
|
104
|
+
- [CRITICAL] SQL injection in src/routes/users.ts:47
|
|
105
|
+
- [HIGH] JWT secret from hardcoded fallback in src/lib/auth.ts:12
|
|
106
|
+
|
|
107
|
+
━━━ Important Issues (Fix Before Release) ━━━━━━━━━━
|
|
108
|
+
- [MEDIUM] 4 TypeScript 'any' types in src/components/
|
|
109
|
+
- [MEDIUM] Test coverage: 58% (target: 80%)
|
|
110
|
+
|
|
111
|
+
━━━ Recommendations ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
112
|
+
- Update lodash 4.17.20 → 4.17.21 (Prototype pollution CVE)
|
|
113
|
+
- Add @types/node to devDependencies (missing)
|
|
114
|
+
- Bundle size: chart library causes +240kb — use dynamic import
|
|
115
|
+
|
|
116
|
+
━━━ Suggested Next Steps ━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
117
|
+
Critical items → /tribunal-backend to fix injection and JWT issues
|
|
118
|
+
Test gaps → /test to add coverage for checkout and auth flows
|
|
119
|
+
Bundle → /enhance to add dynamic import for chart component
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
## Human Review Gate
|
|
125
|
+
|
|
126
|
+
After the audit report is produced:
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
Human Gate required before any fixes are applied.
|
|
130
|
+
|
|
131
|
+
Approve a fix plan?
|
|
132
|
+
Y = proceed with automated fixes where safe
|
|
133
|
+
N = report only, no changes
|
|
134
|
+
S = select specific items to fix
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
No files are modified without explicit approval.
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
## After /audit — Next Steps
|
|
142
|
+
|
|
143
|
+
| Outcome | Next Command |
|
|
144
|
+
| :--------------------------- | :---------------------------------------------- |
|
|
145
|
+
| Security/Dependency failures | → `/tribunal-backend` to implement secure fixes |
|
|
146
|
+
| Lint/Type errors | → `/fix` for automated cleanup |
|
|
147
|
+
| Test coverage missing | → `/test` to generate missing tests |
|
|
148
|
+
| Audit clean | → `/deploy` if preparing for release |
|
|
149
|
+
|
|
150
|
+
---
|