feat: integrate Cloudflare Turnstile for enhanced security in sign-up and email verification processes. Implement rate limiting for sign-up attempts and add Turnstile validation to prevent abuse. Update environment configuration to support Turnstile keys and enhance user experience with improved error handling and feedback.
feat: implement PasswordInput component for enhanced password handling in sign-in and sign-up forms. Update forms to utilize the new component, improving user experience with password visibility toggle and validation feedback.
feat: add sitemap.xml endpoint and improve SEO metadata across web application. Update landing page and root route with Open Graph and Twitter Card tags, enhance environment configuration for site URL, and introduce robots.txt for better search engine indexing. Include Umami analytics script for tracking user interactions.
feat: improve JSON parsing and error handling by introducing isLikelyTruncatedJson function to detect incomplete JSON responses. Update client logic to handle truncation retries more effectively and enhance error messaging for truncated responses. Add tests to validate new functionality and ensure robust error reporting.
feat: enhance question repair and parsing logic by introducing strict explanation checks. Update related functions to support lenient parsing options, improving flexibility in question validation. Adjust tests to verify behavior under different explanation strictness settings.
feat: refactor AI response handling by introducing parseAiJsonResponse and related utilities to improve JSON parsing and error handling. Streamline response processing in client and pipeline modules, enhancing robustness against HTML error pages and reasoning blocks. Add tests for new parsing functions to ensure reliability.
feat: add db:seed command to package.json and update README.md for seeding reference data. Enhance job status handling in generation logic to support completed_partial status, improving error reporting and user feedback. Introduce new utility functions for job outcome resolution and non-retryable error detection, along with corresponding tests. Update database migration scripts to include new tables and fields for improved data management.
feat: update deployment documentation for Coolify, clarifying post-deployment commands and environment variable setup. Enhance error handling in drizzle.config.ts to ensure DATABASE_URL is properly configured for production and local development.
feat: refactor AttemptResultComponent to calculate percentage based on question statistics instead of attempt scores. Update integration tests to validate maxScore calculation across multiple sections. Ensure proper type handling for question counts in attempt router, enhancing data integrity and performance.
feat: revamp README.md for enhanced project clarity and user engagement. Introduce a new project description, features list, and supported exams section. Update environment variable examples in .env.example for better developer onboarding. Refactor GeneratePage and job state management to improve user experience with job dismissal functionality. Enhance AI question generation with new language rules and regeneration capabilities, ensuring compliance with exam standards.
feat: update accessibility guidelines and enhance component structure. Introduce new frontend accessibility conventions in AGENTS.md, including heading hierarchy and ARIA roles for dialogs and buttons. Refactor TourGuide and related components for lazy loading and improved user experience. Update ESLint configuration to enforce stricter TypeScript rules and add new dependencies for linting. Enhance various components with accessibility features and ensure consistent styling across the application.
feat: implement admin panel with multiple routes for user management, credits, jobs, and content moderation. Add admin dashboard for platform overview and integrate visibility controls for featured content. Enhance sidebar navigation for admin access and ensure proper session handling for admin users.
feat: add visibility filter for packages and enhance bulk publishing functionality. Introduce visibility options (all, private, public) in the package query and update the UI to support filtering. Implement a callout for private packages with a dismiss option and improve success messages for bulk publishing actions. Update API to handle visibility conditions in package management.
feat: enhance testing capabilities and introduce new components for question management. Add testing section in AGENTS.md with instructions for running tests and configuring the test environment. Update package.json files to include test scripts and integrate @electric-sql/pglite for in-memory database testing. Introduce CalloutCard and update FilterBar and SoalBrowser components to support visibility filters for private and public questions. Implement new test cases for various functionalities across the application.
feat: add new skills and enhance server configuration. Introduce 'security-review' and 'test-driven-development' skills in skills-lock.json. Update turbo.json to include a test dependency. Create .env.example files for server and web applications to standardize environment variables. Implement security headers in server index.ts for improved security. Enhance ResultSection component to support onClear callback and update generation job handling for better session management. Add encryption for API keys in the backend and implement rate limiting across various routers to prevent abuse.
feat: enhance password validation across forms and improve button styling. Update password requirements to include uppercase, lowercase, and numeric characters in sign-up and account settings. Adjust button styles in sign-in and sign-up forms for a consistent look.
feat: update package dependencies and enhance routing for email verification and password recovery. Add nodemailer and related types for email handling, and implement new routes for verify-email and forgot-password in the application. Improve sign-in and sign-up forms to support email verification flow.
feat: enhance question formats by adding support for matching pairs, error recognition, and text insertion. Update related components and schemas to accommodate new formats, including UI adjustments for displaying options and handling user answers. Implement partial credit scoring for matching pairs and improve answer validation logic in the backend.
feat: integrate react-joyride for guided tours and add GettingStartedCard and PageGuide components for user onboarding. Enhance sidebar with a help tour button and update bank components to support new features. Implement bulk selection in SoalBrowser and improve question management with additional props for locking and selection states.
feat: add API key management components including ApiKeyForm, ApiKeyList, SecurityInfo, TipsCard, and TokenUsageChart. Enhance settings route to integrate these components for improved API key configuration and token usage tracking. Implement backend support for token usage history with new query options.
feat: integrate leaderboard features with new MyRankCard and RankingPodium components. Enhance sidebar navigation to include leaderboard links and update routing to support new setup-avatar and leaderboard routes. Refactor job management logic to utilize useGenerationJobs hook for improved job tracking and error handling.
feat: enhance backend conventions for tRPC and Hono with new error handling, pagination, authorization, and logging guidelines. Introduce shared utilities for error management, ownership assertions, and visibility conditions. Update routers to utilize new pagination schema and improve error responses. Add comprehensive documentation in AGENTS.md for better developer onboarding.
feat: refactor Sidebar component to use grouped navigation items and enhance mobile navigation. Introduce AdvancedFilters, BundleSidebar, FilterBar, and other components for improved question and section management. Implement SoalBrowser and SectionBrowser for better content display, and add hooks for local storage management. Update bank route to integrate new components and enhance filtering capabilities.
feat: add AGPL-3.0 license to project and update package.json files across applications. Introduce new job statuses in the GlobalGenerationProgress component and enhance job management logic in useGenerationJob hook. Implement improved status handling in jobs route and update AI package with new generation options and strategies.
feat: enhance TestBlueprintCard component to support multiple selected sections and improve error handling. Update generation job logic to handle section splits and ensure proper validation of selected formats and sections. Refactor API interactions for better error management and user experience.
feat: add job retry functionality and enhance question generation with JSON schema descriptions. Update UI to allow job retries for failed or canceled jobs, and improve API handling for job input configurations. Include new utility functions for generating JSON schema descriptions for questions and passages.
feat: add comprehensive AGENTS.md documentation and enhance UI components with new images and card layouts for sign-in and sign-up forms. Update routing to include landing and attempt routes, and improve sidebar functionality with state management.
Update PWA assets configuration, replace logo image, and enhance routing with new history and profile routes. Add sidebar navigation for user profile and history, and implement EditPackageModal component for package management. Refactor API key management to support multiple keys and improve test session handling.
Add analytics components including BreakdownCharts, OverviewCards, ScoreTrendChart, TimeAnalyticsPanel, and WeaknessPanel. Update routing to include analytics routes and enhance sidebar navigation. Add recharts dependency for data visualization.
Add job cancellation functionality, including UI updates for canceling jobs in the TestBlueprintCard and jobs route. Enhance job management with cancellation handling in the API and database schema, ensuring proper status updates and error messages for canceled jobs.
Enhance application by adding new routes for jobs and attempt details, updating sidebar navigation, and implementing combo package builder functionality. Also, include new dependencies in the lock files and modify API key structure to support maxTokens.