feat: scaffold SvelteKit project with Tailwind, TypeScript, ESLint, Prettier
Initialize the llm-multiverse-ui project with: - SvelteKit + Svelte 5 (runes mode enabled) - Tailwind CSS v4 via @tailwindcss/vite plugin - TypeScript strict mode - ESLint 9 flat config with svelte and typescript-eslint plugins - Prettier with svelte plugin - Directory structure: src/lib/components/, src/lib/services/ - All required scripts: dev, build, preview, lint, format, check Closes #1 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -29,6 +29,7 @@ git diff main --name-only
|
||||
```
|
||||
|
||||
Read every changed file in full. Also read the diff for context on what changed:
|
||||
|
||||
```bash
|
||||
git diff main
|
||||
```
|
||||
@@ -38,12 +39,14 @@ git diff main
|
||||
Evaluate each changed file against these dimensions:
|
||||
|
||||
**Correctness:**
|
||||
|
||||
- Does the code do what the issue and plan require?
|
||||
- Are edge cases handled?
|
||||
- Are error conditions properly managed?
|
||||
- Do loading and empty states work correctly?
|
||||
|
||||
**Security:**
|
||||
|
||||
- No XSS vulnerabilities (dangerouslySetInnerHTML, unsanitized user input)
|
||||
- No credentials or API keys in client-side code
|
||||
- No sensitive data stored insecurely (localStorage, etc.)
|
||||
@@ -51,6 +54,7 @@ Evaluate each changed file against these dimensions:
|
||||
- No open redirects
|
||||
|
||||
**Architecture:**
|
||||
|
||||
- Component boundaries respected
|
||||
- State management follows project patterns
|
||||
- API communication uses established patterns
|
||||
@@ -58,6 +62,7 @@ Evaluate each changed file against these dimensions:
|
||||
- Proper separation of concerns (logic vs presentation)
|
||||
|
||||
**Code Quality:**
|
||||
|
||||
- Idiomatic TypeScript/framework patterns
|
||||
- Consistent error handling
|
||||
- Meaningful variable and function names
|
||||
@@ -66,18 +71,21 @@ Evaluate each changed file against these dimensions:
|
||||
- No `any` types without justification
|
||||
|
||||
**Testing:**
|
||||
|
||||
- Sufficient test coverage
|
||||
- Meaningful test cases (not just happy path)
|
||||
- Component tests for UI behavior
|
||||
- Proper mocking of external dependencies
|
||||
|
||||
**Accessibility:**
|
||||
|
||||
- Semantic HTML elements used
|
||||
- ARIA attributes where needed
|
||||
- Keyboard navigation support
|
||||
- Color contrast considerations
|
||||
|
||||
**Performance:**
|
||||
|
||||
- No unnecessary re-renders
|
||||
- Proper memoization where beneficial
|
||||
- Lazy loading for heavy components/routes
|
||||
@@ -87,12 +95,12 @@ Evaluate each changed file against these dimensions:
|
||||
|
||||
Each finding MUST be categorized:
|
||||
|
||||
| Severity | Description | Blocks Merge? |
|
||||
|---|---|---|
|
||||
| **Critical** | Security vulnerability, data loss risk, major architectural violation | Yes |
|
||||
| **Major** | Bug, missing error handling, test gap, significant design issue | Yes |
|
||||
| **Minor** | Style issue, naming improvement, small optimization, documentation gap | No |
|
||||
| **Suggestion** | Optional improvement, alternative approach worth considering | No |
|
||||
| Severity | Description | Blocks Merge? |
|
||||
| -------------- | ---------------------------------------------------------------------- | ------------- |
|
||||
| **Critical** | Security vulnerability, data loss risk, major architectural violation | Yes |
|
||||
| **Major** | Bug, missing error handling, test gap, significant design issue | Yes |
|
||||
| **Minor** | Style issue, naming improvement, small optimization, documentation gap | No |
|
||||
| **Suggestion** | Optional improvement, alternative approach worth considering | No |
|
||||
|
||||
### 5. Produce Review Report
|
||||
|
||||
@@ -130,6 +138,7 @@ Request Changes: one or more critical/major findings
|
||||
### 6. Handle Minor Findings (standalone mode only)
|
||||
|
||||
If the verdict is **APPROVE** but there are minor findings:
|
||||
|
||||
1. Create a single Gitea issue titled: "Tech debt: minor findings from issue #<NUMBER> review"
|
||||
2. List all minor findings in the issue body as checklist items
|
||||
3. Apply labels: `type:refactor`, `priority:low`, `cat:tech-debt`
|
||||
@@ -138,6 +147,7 @@ If the verdict is **APPROVE** but there are minor findings:
|
||||
### 7. Post Review to PR (standalone mode only)
|
||||
|
||||
If a pull request exists for the feature branch:
|
||||
|
||||
- Add a review comment via `mcp__gitea__pull_request_review_write`
|
||||
- If APPROVE: approve the PR
|
||||
- If REQUEST_CHANGES: request changes with the critical/major findings listed
|
||||
@@ -146,25 +156,23 @@ If a pull request exists for the feature branch:
|
||||
|
||||
```json
|
||||
{
|
||||
"status": "success | failed",
|
||||
"summary": "Code review of issue #N: APPROVE/REQUEST_CHANGES",
|
||||
"artifacts": [],
|
||||
"phase_data": {
|
||||
"verdict": "APPROVE",
|
||||
"findings": {
|
||||
"critical": 0,
|
||||
"major": 0,
|
||||
"minor": 2,
|
||||
"suggestion": 1
|
||||
},
|
||||
"critical_details": [],
|
||||
"major_details": [],
|
||||
"minor_details": [
|
||||
{"file": "src/components/Dashboard.tsx", "line": 42, "description": "..."}
|
||||
],
|
||||
"pr_number": null
|
||||
},
|
||||
"failure_reason": null
|
||||
"status": "success | failed",
|
||||
"summary": "Code review of issue #N: APPROVE/REQUEST_CHANGES",
|
||||
"artifacts": [],
|
||||
"phase_data": {
|
||||
"verdict": "APPROVE",
|
||||
"findings": {
|
||||
"critical": 0,
|
||||
"major": 0,
|
||||
"minor": 2,
|
||||
"suggestion": 1
|
||||
},
|
||||
"critical_details": [],
|
||||
"major_details": [],
|
||||
"minor_details": [{ "file": "src/components/Dashboard.tsx", "line": 42, "description": "..." }],
|
||||
"pr_number": null
|
||||
},
|
||||
"failure_reason": null
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user