-
Notifications
You must be signed in to change notification settings - Fork 0
Add CLAUDE.md documentation for AI-assisted development #15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,116 @@ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| # CLAUDE.md | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| This file provides context for Claude Code when working in the EventRelay repository. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ## Project Overview | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| EventRelay is an AI-powered video automation platform that transforms YouTube videos into actionable workflows. It captures transcripts, extracts events, dispatches them to MCP (Model Context Protocol) agents, and builds a RAG-based knowledge store. The backend is Python/FastAPI and the frontend is a Next.js/React/TypeScript monorepo. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ## Repository Structure | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ``` | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| src/ # Python backend | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| youtube_extension/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| backend/ # FastAPI app (api/v1/, services/, models/, middleware/) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
groupthinking marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| services/ # Orchestration (agents/, workflows/, ai/) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| mcp/ # MCP ecosystem coordinator | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| main.py # FastAPI entry point | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| apps/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| web/ # Next.js frontend (port 3000) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Comment on lines
+18
to
+19
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| apps/ | |
| web/ # Next.js frontend (port 3000) | |
| apps/ # Monorepo applications (Next.js and supporting apps) | |
| firebase/ # Firebase-related app/configuration | |
| uvai-frontend/ # Additional frontend application | |
| web/ # Next.js frontend (port 3000) at apps/web/ |
groupthinking marked this conversation as resolved.
Show resolved
Hide resolved
groupthinking marked this conversation as resolved.
Show resolved
Hide resolved
Copilot
AI
Jan 28, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The frontend commands reference a non-existent structure and workflow. The documentation shows standalone turbo run build, turbo run dev, etc., but these commands should be executed from the monorepo root (where they're defined in package.json as npm run build, npm run dev, etc.). Additionally, the frontend is Next.js-based at apps/web/, not a generic frontend, so commands like npm dev --prefix apps/web or working directly in the apps/web directory would be more accurate. The current commands don't match how the monorepo is actually structured or how Turbo is configured.
| # Install all workspace dependencies | |
| npm install | |
| # Build (all workspaces via Turbo) | |
| turbo run build | |
| # or: npm run build | |
| # Dev server | |
| turbo run dev | |
| # or: npm run dev | |
| # Lint | |
| turbo run lint | |
| # Test | |
| turbo run test | |
| # Install all workspace dependencies (from monorepo root) | |
| npm install | |
| # Start Next.js dev server for the web app | |
| npm run dev # runs Turbo dev pipeline from monorepo root | |
| # or, scoped directly to the web app: | |
| npm run dev --prefix apps/web | |
| # Build web app (and any dependent packages) | |
| npm run build # runs Turbo build pipeline from monorepo root | |
| # or: | |
| npm run build --prefix apps/web | |
| # Lint | |
| npm run lint # from monorepo root | |
| # or: | |
| npm run lint --prefix apps/web | |
| # Test | |
| npm test --prefix apps/web | |
| # or: | |
| npm run test --prefix apps/web |
groupthinking marked this conversation as resolved.
Show resolved
Hide resolved
Copilot
AI
Jan 28, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The coverage target stated as "90% minimum" is accurate according to pytest.ini (line 17: --cov-fail-under=90), but the coverage source is incorrectly specified. The document states source: src/youtube_extension, but pytest.ini (line 11-13) actually covers backend, enhanced_video_processor, and enterprise_mcp_server, while pyproject.toml covers src/youtube_extension. There's an inconsistency between pytest.ini and pyproject.toml coverage configuration that should be clarified in this documentation.
| - Config: `pyproject.toml` `[tool.pytest.ini_options]` | |
| - `pythonpath = src`, `testpaths = tests` | |
| - Async mode: `asyncio_mode = "auto"` | |
| - Markers: `unit`, `integration`, `slow`, `asyncio`, `database`, `security`, `e2e`, `performance` | |
| - Coverage target: 90% minimum, source: `src/youtube_extension` | |
| - Config: `pytest.ini` and `pyproject.toml` (`[tool.pytest.ini_options]`) | |
| - `pythonpath = src`, `testpaths = tests` | |
| - Async mode: `asyncio_mode = "auto"` | |
| - Markers: `unit`, `integration`, `slow`, `asyncio`, `database`, `security`, `e2e`, `performance` | |
| - Coverage: `--cov-fail-under=90` (90% minimum); sources from `pytest.ini` (`backend`, `enhanced_video_processor`, `enterprise_mcp_server`) and from `pyproject.toml` (`src/youtube_extension`) |
Copilot
AI
Jan 28, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The custom coding guidelines (CodingGuidelineID: 1000000) specify that the repository should have test coverage greater than 80% for new features, but the CLAUDE.md documentation states 90% minimum. While pytest.ini does enforce 90% (--cov-fail-under=90), this creates a discrepancy with the stated guideline policy. The documentation should either align with the 80% guideline threshold or explicitly note that the actual enforcement is stricter at 90%.
Copilot
AI
Jan 28, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The frontend test path apps/web/src/components/__tests__/ is correct and matches the actual structure, but the documentation should also mention the additional test patterns. According to the apps/web/package.json, tests may follow Next.js conventions, and the README.md mentions tests are also in apps/web/src/__tests__/. Both locations should be documented for completeness.
Copilot
AI
Jan 28, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The CLAUDE.md document contradicts the established custom coding guidelines (CodingGuidelineID: 1000000) in multiple ways. The custom guidelines reference a frontend/ directory extensively and use commands like npm start --prefix frontend, npm test --prefix frontend, etc. However, CLAUDE.md correctly identifies that the frontend is in the monorepo structure but then provides conflicting command examples. The inconsistency between these two documentation files will create confusion. Either the custom guidelines need to be updated to reflect the monorepo structure, or CLAUDE.md should align with the legacy frontend/ references until the custom guidelines are updated.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The description states "the frontend is a Next.js/React/TypeScript monorepo" which is accurate, but throughout the document the actual frontend location is incorrectly referenced. The frontend is located at
apps/web/(Next.js), not in a separatefrontend/directory. This needs to be consistent with the actual repository structure shown in the README.md and the monorepo layout.