Skip to content

Fix/config and docs#173

Open
phamkimhoan wants to merge 8 commits intohttps-deeplearning-ai:mainfrom
phamkimhoan:fix/config-and-docs
Open

Fix/config and docs#173
phamkimhoan wants to merge 8 commits intohttps-deeplearning-ai:mainfrom
phamkimhoan:fix/config-and-docs

Conversation

@phamkimhoan
Copy link
Copy Markdown

No description provided.

phamkimhoan and others added 8 commits February 25, 2026 17:30
- Switch Anthropic model from invalid claude-sonnet-4-20250514 to claude-haiku-4-5-20251001
- Add CLAUDE.md with project commands and architecture overview

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Support up to 2 sequential tool-call rounds in AIGenerator
- Add CourseOutlineTool (get_course_outline) for lesson listing queries
- Fix vector_store n_results crash and None metadata values
- Add DELETE /api/session/{id} endpoint for session cleanup
- Render source chips as clickable links in the frontend
- Add "New Chat" button that resets session client- and server-side
- Add pytest as a dev dependency

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…tion

- Add backend/tests/conftest.py with a create_test_app() factory that
  mirrors all API routes against an injected mock RAGSystem, avoiding
  the static-file mount and module-level RAGSystem init in app.py
- Add shared fixtures: mock_rag_system, test_client, sample_query_request,
  sample_course, sample_chunk
- Add backend/tests/test_api.py with 14 tests covering POST /api/query,
  GET /api/courses, and DELETE /api/session/{session_id} — including happy
  paths, session handling, error propagation, and input validation
- Add [tool.pytest.ini_options] to pyproject.toml: testpaths, pythonpath,
  and -v flag for cleaner output
- Add httpx dev dependency required by FastAPI's TestClient

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add Prettier (v3) for automatic formatting of JS, CSS, and HTML with
  consistent rules: 4-space indent, single quotes, trailing commas,
  100-char print width, LF line endings
- Add ESLint (v8) for JS linting: enforces no-var, strict equality,
  explicit curly braces, and registers `marked` as a known CDN global
- Add npm scripts in frontend/package.json: format, format:check, lint,
  lint:fix, quality (check-only), quality:fix (auto-fix all)
- Add scripts/check-frontend.sh for running quality checks from repo
  root; supports --fix flag for auto-correction
- Apply Prettier-consistent formatting across script.js, style.css, and
  index.html (single quotes, trailing commas, selector expansion,
  self-closing void elements, 4-space indentation throughout)
- Document all changes in frontend-changes.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add a fixed top-right toggle button (sun/moon SVG icons) with smooth
  cross-fade + rotate animation between icons on switch
- Persist theme preference to localStorage; restore on page load before
  first paint to avoid flash of unstyled content
- Update aria-label dynamically so screen readers announce the next action
- Introduce body.light-mode CSS class with a fully WCAG 2.1 AA/AAA
  compliant colour palette:
    * text-primary #1e293b  ~14.5:1 (AAA)
    * text-secondary #475569 ~5.9:1 (AA)
    * primary-color #1d4ed8  ~6.2:1 (AA) — stepped up from marginal #2563eb
    * error-color #b91c1c    ~7.5:1 (AAA)
    * success-color #15803d  ~7.1:1 (AAA)
    * source links #1d4ed8   ~6.2:1 (AA, was failing #60a5fa)
- Refactor all hard-coded rgba/hex colour values (code blocks, error/
  success banners, source chip links) into CSS custom properties so they
  respond correctly to both themes
- Add global 0.3s ease transitions on background-color, color, border-color,
  and box-shadow so every element cross-fades smoothly on toggle
- Document all changes in frontend-changes.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
# Conflicts:
#	frontend-changes.md
#	frontend/index.html
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant